Skip to content

Bump bitvec from 0.17.4 to 0.20.1#13

Open
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/cargo/bitvec-0.20.1
Open

Bump bitvec from 0.17.4 to 0.20.1#13
dependabot[bot] wants to merge 1 commit intomasterfrom
dependabot/cargo/bitvec-0.20.1

Conversation

@dependabot
Copy link

@dependabot dependabot bot commented on behalf of github Dec 24, 2020

Bumps bitvec from 0.17.4 to 0.20.1.

Changelog

Sourced from bitvec's changelog.

0.20.1

This largely addresses defect reports. In addition, the IterOnes and IterZeros bit-finding iterators are accelerated by specialization.

0.20.0

This is a major expansion of the crate’s foundation, and has a great deal of user-visible changes. There are breaking changes to type signatures, but in practice most of them should be managed through type inference or deprecation notices.

Added

  • GitHub user [@arucil] requested in [Issue #83] that additional APIs be added to match some of those found in the [bit-set] crate.

    The methods .iter_ones() and .iter_zeros() now yield each index where the stored bit is set to 1 or 0, respectively.

  • BitArray implements IntoIterator, matching the standard library’s still-unstable implementation and, more importantly, allowing BitArray to be used as the right-hand-side argument to the crate’s binary operator implementations.

  • Additionally, BitVec can be constructed from iterators of unsigned integers. The implementation collects these integers into an ordinary Vector, then converts it in-place into a BitVec.

  • Mutable iterators over BitSlice now have a method, .remove_alias(), which removes the aliasing marker they use to access memory. This method may only be used in loops that do not collect multiple yielded references to the slice into the same scope.

    This adapter permits loops that satisfy this condition to remove the performance cost of alias-safed memory accesses where the user has ensured that no alias conditions will exist.

    As an example, the following loop may safely use .remove_alias():

    use bitvec::prelude::*;
    let bits = bits![mut 0; 10];
    for chunk in unsafe { bits.chunks_exact_mut(3).remove_alias() } {
    chunk.set_all(true);
    }

    because the loop body creates and destroys exactly one subslice per iteration,

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually

Bumps [bitvec](https://github.com/myrrlyn/bitvec) from 0.17.4 to 0.20.1.
- [Release notes](https://github.com/myrrlyn/bitvec/releases)
- [Changelog](https://github.com/myrrlyn/bitvec/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/myrrlyn/bitvec/commits)

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot @github
Copy link
Author

dependabot bot commented on behalf of github Dec 24, 2020

The following labels could not be found: A2-insubstantial, B0-silent, C1-low.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants