zero_sum icon indicating copy to clipboard operation
zero_sum copied to clipboard

Modernize the library so that it compiles on stable Rust

Open MortenLohne opened this issue 2 years ago • 0 comments

Thanks for this library! I found it quite interesting, especially Takkerus. Unfortunately, it no longer compiles on recent Rust versions, neither nightly nor stable. This PR makes the project compile with no warnings on the stable compiler, and allows Takkerus to do so as well.

You don't have to pull this as-is, as I had to make some sacrifices. In particular:

  • I removed the benchmarks from the tests directory, as they aren't available in stable Rust, and probably never will be. They could be re-added using an external crate.
  • The with_tak_ann feature does not compile. It seems to have relied on old nightly features, that are no longer available even on current nightly. I decided to simply leave it, as Takkerus doesn't rely on it.

Otherwise, I didn't have to make many changes, the PR is much smaller than it looks. I basically:

  • Removed #![feature(test)], so that it runs on stable
  • Fixed all try!and dyn warnings
  • Updated dependencies. This required some small changes to JKiss32Rng
  • Bumped version to 1.3

MortenLohne avatar Sep 13 '21 12:09 MortenLohne