What this package is like to depend on
Last release 6 years ago
no release in 18 months
Release timing varies
gaps range from 2 weeks to 1.2 years
Most releases are documented
notes for 27 of 31 stable releases
Nothing withdrawn
no release was ever pulled
8 years old
31 releases · first in 2018
0 releases in the last 12 months
see the full history below
Release timeline
31 releases · Mar 2018 to Mar 2020
2019
2020
2021
2022
2023
2024
2025
2026
Releases
latest 31-
0.11.119 Mar 2020Release notes
Open source →Fixed
- Checks invariants after deserialization. (Thanks, @Mrmaxmeier!)
Changed
- Oldest supported rustc version is now 1.31.0.
-
0.11.016 Jan 2019Release notes
Open source →Fixed
BitVec::gettakes&self, not&mut self.
Changed
- Oldest supported rustc version is now 1.24.0.
-
0.10.020 Jun 2018Release notes
Open source →Added
BitsMutExtextension trait with methodsbit_assign,bit_zip_assign,bit_and_assign,bit_or_assign, andbit_xor_assign.BitSliceableMuthelper trait with one method,bit_slice_mut. This trait is automatically implemented for allBitSliceabletypes that slice to aBitsMuttype. Callingbit_slice_mutforces auto-ref to choose such a type.Bits::get_raw_blockmethod, which may return spurious bits in the last block of a bit vector. This enables some fast paths where we don't mind the spurious bits.From<Box<[Block]>>andFrom<Vec<Block>>impls forBitVec<Block>.
Changed
Bitsis now a super trait ofBitSliceable<R>, and the block type of the slice matches the block type ofSelf.- The function passed to
BitsExt::bit_zipno longer takes a third,usizeargument.
Removed
BlockType::last_block_bitsin favor ofBlockType::block_bits.- Alias of trait
BitsExtis moved in theadaptermodule. (Deprecated in 0.8.1.)
-
0.9.018 Jun 2018Release notes
Open source →Added
- Impls of
BitsandBitsMutforVec<Block>. The impls for[Block]already caught most causes because of autoderef, but this is helpful when you want to pass aVecto a generic method.
Changed
BitSlice::from_raw_partsandBitSliceMut::from_raw_partsnow take an offset of typeu64rather thanu8, and the offset doesn't have to be less than the block size.- Removed 12
BitSliceableimpls for array slices with two blanket impls. I don't believe this is a breaking change.
Improved
- Single-bit
BitVecoperations are significantly faster now.
Fixed
- Bit-slicing
&[bool]and&mut [bool]usingBitSliceablenow requiresu64ranges rather thanusizeranges. Now allBitSliceableinstances useu64ranges.
- Impls of
-
0.8.215 Jun 2018 -
0.8.115 Jun 2018Release notes
Open source →Added
BitsExt::bit_zipmethod generalizesbit_and,bit_or, etc.BlockType::block_bitsstatic method, for finding out the number of bits in the block at the given position.
Changed
- Trait
BitsExtis moved from theadaptermodule to the root. (There's still apub usefor it inadapter, but that alias is deprecated and will be removed in 0.10.0.)
Fixed
- Performance problem with
BitVec::block_reserve, which was growing way too much.
-
0.8.014 Jun 2018Release notes
Open source →Added
adaptermodule, including:BitsExttrait, for adapter operations over types that implementBits. Methods include:- bit-wise logic:
bit_not,bit_and,bit_or, andbit_xor; bit_concatandbit_pad.
- bit-wise logic:
- constant adapter
BitFill; BoolAdapterfor adapting unpackedVec<bool>or&[bool]; and- slicing adapter
BitSliceAdapter. (Note thatBitSliceAdapterdoes not replace the more specializedBitSlice.)
Bits::to_bit_vecmethod, which copies the bits of aBitsinto a newBitVec.bit_vec!macro allows trailing comma.BitVec::getandBitVec::setmethods, aliasingBits::get_bitandBitsMut::set_bit, respectively.Fromimpls for converting array slices toBitSlice, mutable array slices toBitSliceMut, andBitSliceMuttoBitSlice.Bits,BitsMut, andBitSliceableimpls for sized arrays from sizes 0 to 31.
Changed
BitSliceMut::as_immutrenamed toBitSliceMut::as_bit_slice.
Removed
Bits::bit_offsetmethod. Blocks returned from aBitsinstance are now assumed to be aligned. This makesBitSlicemore complicated but significantly simplifies everything else and removes some infelicities.BitSliceBlockIterstruct and methods for creating it. I'm rethinking how iteration over bit vectors and bit-vector-likes should work.
-
0.7.430 May 2018 -
0.7.330 May 2018 -
0.7.216 May 2018Release notes
Open source →Added
- A good number of doc examples.
html_doc_rootfor cross-linking of docs.
-
0.7.113 May 2018 -
0.7.013 May 2018Release notes
Open source →Changed
- Renamed about half the types in the library. Doing this while it
has no users! Changes are:
- structures
BitVec{,Mut,Push}->Bits{,Mut,Push} - structure
Bv->BitVec - module
bv->bit_vec - macro
bv!->bit_vec!
- structures
- Renamed about half the types in the library. Doing this while it
has no users! Changes are:
-
0.6.612 May 2018 -
0.6.512 May 2018Nothing published for this version
-
0.6.412 May 2018Release notes
Open source →Added
- Optional
serdesupport, via Cargo feature"serde".
Removed
- Cargo feature
"u128", asu128support is now detected.
- Optional
-
0.6.312 May 2018Nothing published for this version
-
0.6.212 May 2018Nothing published for this version
-
0.6.111 May 2018Nothing published for this version
-
0.6.011 May 2018Release notes
Open source →Changed
- Support for
u128is now detected. - No longer depends on
num-traitscrate.
- Support for
-
0.5.011 May 2018Release notes
Open source →Added
- Support for
u128, enabled by Cargo feature"u128". - Version support statement: rustc 1.20.0.
- Support for
-
0.4.411 May 2018 -
0.4.301 Apr 2018Release notes
Open source →Added
- Impl of
DefaultforBV. - Methods
BitSlice::is_emptyandBitSliceMut::is_empty.
- Impl of
-
0.4.231 Mar 2018 -
0.4.130 Mar 2018 -
0.4.030 Mar 2018Release notes
Open source →Added
- Impl
BitSliceablefor[bool]andVec<bool>.
Changed
- Renamed method
BitSliceable::slicetoBitSliceable::bit_slice.
- Impl
-
0.3.130 Mar 2018 -
0.3.028 Mar 2018Release notes
Open source →Added
bv!macro.BitSlice::lenandBitSliceMut::lenmethods.BV::resizemethod.
-
0.2.028 Mar 2018 -
0.1.228 Mar 2018Release notes
Open source →Added
- Better crate summary in README.
- Documentation on bit slice representation.
-
0.1.128 Mar 2018 -
0.1.028 Mar 2018