technocreatives / core2

The bare essentials of std::io for use in no_std. Alloc support is optional.
https://docs.rs/core2
Apache License 2.0
71 stars 23 forks source link

Drop `memchr` dependency #23

Open TheBlueMatt opened 1 year ago

TheBlueMatt commented 1 year ago

While memchr has served us well, it finally bumped its MSRV substantially such that its no longer really practical in a particularly MSRV-constrained environment (e.g. when building on machines with validated toolchains or Debian stable).

Luckily, its barely used, and not really worth retaining. A trivial scan should be something LLVM can optimize at least somewhat reasonably.

rmsyn commented 1 year ago

Many more things with this crate are broken.

The CI runs the following for no-std tests:

 /home/runner/.cargo/bin/cargo test --tests --no-default-features --features nightly

If you removes the extra --tests flag, a large number of other tests fail. This is independent of the changes in this PR.

A potential fix for the macos-latest, 1.47 build could be to change the CI to only build 1.47 with a fixed older version of macOS.

The fixes for the <platform>-latest, latest builds are discussed in https://github.com/technocreatives/core2/pull/21.

TheBlueMatt commented 1 year ago

Indeed. I'll clean it up if/when the maintainer shows up again :)