Triple Buffer Versions Save

Implementation of triple buffering in Rust

v6.2.0

1 year ago

Added

  • A triple_buffer() shorthand is now available for the common TripleBuffer::new().split() pattern.

Changed

  • The documentation example now features multi-threading to clarify ownership.

v6.1.0

2 years ago

Added

  • triple-buffer is now usable in no_std contexts where an implementation of the alloc crate is available.

v6.0.0

2 years ago

Changed

  • Latest dependency versions require Rust 1.46, we bump MSRV accordingly.
  • ...and since that's a breaking change, I'm also flushing the breaking change pipeline along the way:
    • TripleBuffer::new now takes a reference to its input.
    • The deprecated raw feature is now removed.

v5.0.6

3 years ago

Added

  • As a result of the bugfix mentioned below, there is no performance motivation to gate raw features behind a feature flag, so those features are now available by default without a raw_ prefix. Usage of the raw_ prefix and the raw feature flag is deprecated and these may be removed in a future major release, but it doesn't harm to keep them indefinitely for now.

Changed

  • Benchmarks now use criterion, and have been significantly cleaned up along the way. They are now more extensive and more reliable.
  • Moved MSRV to Rust 1.36 because we now use crossbeam for testing, which requires that much. The crate itself should still support Rust 1.34 for now, but we cannot test that it continues doing so...

Fixed

v5.0.5

3 years ago

Changed

  • Use only cache-padded instead of the full crossbeam-utils crate
  • Clean up CI config and cache Rust toolchain there

v5.0.4

4 years ago

Added

  • Add a changelog to the repository.

Changed

  • Deduplicate CI configuration some more.

Fixed

  • Drop now-unnecessary manual rustfmt configuration.
  • Avoid false sharing of back-buffer information.

v5.0.3

4 years ago

Changed

  • Clean up and deduplicate GitHub Actions configuration.
  • Tune down concurrent test speed to reduce CI false positives.

v5.0.2

4 years ago

Changed

  • Move continuous integration to GitHub Actions.

v5.0.1

4 years ago

Fixed

  • Update to current version of dependencies.

v5.0.0

4 years ago

Changed

  • Bump travis CI configuration to Ubuntu Xenial.
  • Bump minimal supported Rust version to 1.34.0.

Fixed

  • Don't use an usize for buffer indices where an u8 will suffice.
  • Improve Rust API guidelines compliance.