Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

std: Convert deprecated aliases to compile errors and fix usages #19847

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

squeek502
Copy link
Collaborator

@squeek502 squeek502 commented May 3, 2024

Deprecated aliases that are now compile errors:

  • std.fs.MAX_PATH_BYTES (renamed to std.fs.max_path_bytes)
  • std.mem.tokenize (split into tokenizeAny, tokenizeSequence, tokenizeScalar)
  • std.mem.split (split into splitSequence, splitAny, splitScalar)
  • std.mem.splitBackwards (split into splitBackwardsSequence, splitBackwardsAny, splitBackwardsScalar)
  • std.unicode
    • utf16leToUtf8Alloc, utf16leToUtf8AllocZ, utf16leToUtf8, fmtUtf16le (all renamed to have capitalized Le)
    • utf8ToUtf16LeWithNull (renamed to utf8ToUtf16LeAllocZ)
  • std.zig.CrossTarget (moved to std.Target.Query)

Deprecated lib/std/std.zig decls were deleted instead of made a @compileError because the refAllDecls in the test block would trigger the @compileError. The deleted top-level std namespaces are:

  • std.rand (renamed to std.Random)
  • std.TailQueue (renamed to std.DoublyLinkedList)
  • std.ChildProcess (renamed/moved to std.process.Child)

This is not exhaustive. Deprecated aliases that I didn't touch:

@squeek502 squeek502 force-pushed the deprecations-post-0.12 branch 3 times, most recently from d29bdec to c4d2276 Compare May 3, 2024 08:59
@andrewrk
Copy link
Member

andrewrk commented May 7, 2024

Better to wait and merge this later in the release cycle as it makes it more difficult to cherry pick bug fixes into the 0.12.x branch.

@squeek502
Copy link
Collaborator Author

squeek502 commented May 7, 2024

Sounds good, in the meantime would a separate PR with just the callsite updates (but not the @compileErrors) be a good idea?

EDIT: Went ahead and made one just in case: #19892

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants