Skip to content

1.0 release planning #753

Closed
Closed
@sunfishcode

Description

@sunfishcode

Here's a planning issue for a 1.0 release, similar to the one for the 0.38 release. Hopefully we won't need a semver bump for a good long while, but when we do, here's the list of changes we can make:

Deferring for now:

  • move rustix::thread sleep functions into a new rustix::sleep module, because they're usable from single-threaded programs too
  • Move Dir into its own crate, and have rustix export getdents directly?
  • Split open and openat into separate functions for "create" which needs a mode vs. "open existing" which doesn't need a mode?
  • Make RecvAncillaryBuffer::drain always remove all messages, even if the iterator isn't exhausted. With that, we can remove the read_and_length in AncillaryDrain.
  • Replace rustix::cstr! with something like rustix::nativestr! so that users don't hard code "native strings are C strings" in their code?
  • rename Arg::as_str to avoid "a method with this name may be added to the standard library in the future" warnings
  • rustix::process::waitpid has no way to wait for specific process groups (Pid now requires non-negative values). waitpgid has been added as a temporary workaround.
  • remove libc from the public API (Port 1.0-staging to main #1152) (Remove most linux-raw-sys types from the public API #1277)

Don't do these:

  • set_ip_add_membership/get_ip_add_membership should take address and ifindex arguments and *_with_ifindex should be removed.
  • Rename ClockId::Uptime on FreeBSD to Boottime, since it's an alias

Metadata

Metadata

Assignees

No one assigned

    Labels

    semver bumpIssues that will require a semver-incompatible fix

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions