{"id":13672199,"url":"https://github.com/petgraph/fixedbitset","last_synced_at":"2025-05-16T04:03:38.839Z","repository":{"id":29815767,"uuid":"33360229","full_name":"petgraph/fixedbitset","owner":"petgraph","description":"A simple bitset container for Rust","archived":false,"fork":false,"pushed_at":"2025-04-26T01:25:10.000Z","size":175,"stargazers_count":140,"open_issues_count":12,"forks_count":48,"subscribers_count":6,"default_branch":"master","last_synced_at":"2025-05-14T02:22:59.096Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://docs.rs/fixedbitset/","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/petgraph.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE-APACHE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2015-04-03T11:23:14.000Z","updated_at":"2025-05-11T06:33:58.000Z","dependencies_parsed_at":"2024-06-18T18:06:01.814Z","dependency_job_id":"2970fa96-e2a1-49ec-b3c5-9726a57c7626","html_url":"https://github.com/petgraph/fixedbitset","commit_stats":{"total_commits":126,"total_committers":24,"mean_commits":5.25,"dds":0.6587301587301587,"last_synced_commit":"bfc667c6b148f18a18cf43093fb6a2f0761b6e9b"},"previous_names":[],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petgraph%2Ffixedbitset","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petgraph%2Ffixedbitset/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petgraph%2Ffixedbitset/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/petgraph%2Ffixedbitset/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/petgraph","download_url":"https://codeload.github.com/petgraph/fixedbitset/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254464891,"owners_count":22075570,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T09:01:29.062Z","updated_at":"2025-05-16T04:03:38.820Z","avatar_url":"https://github.com/petgraph.png","language":"Rust","funding_links":[],"categories":["Rust"],"sub_categories":[],"readme":"fixedbitset\n---\n\nA simple fixed size bitset container for Rust.\n\nPlease read the [API documentation here](https://docs.rs/fixedbitset/)\n\n[![build\\_status](https://github.com/petgraph/fixedbitset/workflows/Continuous%20integration/badge.svg?branch=master)](https://github.com/petgraph/fixedbitset/actions)\n[![crates](https://img.shields.io/crates/v/fixedbitset.svg)](https://crates.io/crates/fixedbitset)\n\n# Recent Changes\n\n-   0.5.7\n    - [#127](https://github.com/petgraph/fixedbitset/pull/127) and [#128](https://github.com/petgraph/fixedbitset/pull/128): Optimize `Clone::clone_from` to avoid\n      extra allocations and copies.\n-   0.5.6\n    - Fixed FixedBitset not implementing Send/Sync due to the stack size shrink.\n-   0.5.5 (yanked)\n    - [#116](https://github.com/petgraph/fixedbitset/pull/116): Add functions for counting the results of a set operation (`union_count`, \n       `intersection_count`, `difference_count`, `symmetric_difference_count`) by @james7132.\n    - [#118](https://github.com/petgraph/fixedbitset/pull/118): Shrink the stack size of FixedBitset. There should be zero stack size overhead\n      compared to a Vec.\n    - [#119](https://github.com/petgraph/fixedbitset/pull/119): Fix builds for wasm32.\n    - [#120](https://github.com/petgraph/fixedbitset/pull/119): Add more utility functions that were previously missing from the public interface:\n       `contains_any_in_range`, `contains_all_in_range`, `minimum`, `maximum`, `is_full`, `count_zeroes`, and `remove_range`.\n    - [#121](https://github.com/petgraph/fixedbitset/pull/121): Add support for SIMD acceleration for AVX builds.\n-   0.5.4\n    - [#112](https://github.com/petgraph/fixedbitset/pull/112): Fix undefined behavior in IntoOnes and setup testing with MIRI by @SkiFire13\n-   0.5.3 (yanked)\n    - [#109](https://github.com/petgraph/fixedbitset/pull/109): Fix non-x86(_64) builds by @james7132\n-   0.5.2 (yanked)\n    - [#86](https://github.com/petgraph/fixedbitset/pull/86): Explicit SIMD vectorization for set operations by @james7132.\n-   0.5.1\n    - [#102](https://github.com/petgraph/fixedbitset/pull/102): Added `contains_unchecked`, `insert_unchecked`, `put_unchecked`,\n      `set_unchecked`, `toggle_unchecked`, `removed_unchecked`, `copy_bit_unchecked` unsafe variants of the safe functions, by @james7132\n    - [#103](https://github.com/petgraph/fixedbitset/pull/103): Added `into_ones` which returns a owned iterator over the one\n      values from a bitset, by @james7132.\n    - [#104](https://github.com/petgraph/fixedbitset/pull/104): Implemented `DoubleEndedIterator` for `Union`, `Intersection`,\n      `Difference`, and `SymmetricDifference` , by @james7132.\n-   0.5.0\n    - [#74](https://github.com/petgraph/fixedbitset/pull/74): Accelerated set operations (union, intersection, difference, \n      symmetric difference) by using larger blocks internally, by @james7132.\n    - [#88](https://github.com/petgraph/fixedbitset/pull/88): Added `FixedBitSet::remove` by @james7132.\n    - [#89](https://github.com/petgraph/fixedbitset/pull/89): Added `FixedBitSet::zeros`  and the `Zeros` iterator by @james7132.\n    - [#92](https://github.com/petgraph/fixedbitset/pull/92): Added `FixedBitSet::grow_and_insert` function, a \n      non-panicking version of `insert` that grows the underlying storage as need, by @shuoli84.\n    - [#98](https://github.com/petgraph/fixedbitset/pull/98): `Ones` now implements `DoubleEndedIterator`, by @tikhu.\n    - [#99](https://github.com/petgraph/fixedbitset/pull/99): **Breaking change**: serde now serializes and deserializes from a little-endian encoded\n      raw byte buffer. Existing stored instances of the serialized bitsets will need to be\n      re-encoded.\n    - Bumped MSRV to 1.56.\n-   0.4.2\n    - [#79](https://github.com/petgraph/fixedbitset/pull/79): Add `is_clear`,\n    clarify `is_empty` and `len` documentation by \\@nicopap.\n-   0.4.1\n    - Documentation and formatting fixes.\n-   0.4.0\n    -   [#61](https://github.com/petgraph/fixedbitset/pull/61): Require\n        Rust 1.39.\n    -   [#60](https://github.com/petgraph/fixedbitset/pull/60): Add\n        `const` `FixedBitSet::new` consructor\n        by \\@jakobhellermann.\n    -   [#59](https://github.com/petgraph/fixedbitset/pull/59): Add\n        optional `serde` support by \\@keshavsn.\n-   0.3.2\n    -   [#18](https://github.com/petgraph/fixedbitset/pull/18): Optimize\n        `ones` using `trailing_zeroes` by \\@vks\n-   0.3.1\n    -   Add bit assign operators for references by \\@flaghacker\n    -   Improve assertion error messages by \\@lovasoa\n    -   Add documentation examples for `with_capacity_and_blocks`\n-   0.3.0\n    -   Add `with_capacity_and_blocks` by \\@luizirber\n    -   Add `difference_with` by \\@sunshowers\n    -   Implement `Binary` and `Display` traits by \\@Dolphindalt\n    -   Add `toggle_range` by \\@wirelyre\n-   0.2.0\n    -   Add assign operators for the bit operations by \\@jrraymond\n    -   Add `symmetric_difference`, `union_with`, `intersection_with` by\n        \\@jrraymond\n    -   Add `is_subset`, `is_superset`, `is_disjoint` by \\@nwn\n    -   Add `.toggle(i)` method by \\@ShiroUsagi-san\n    -   Add default feature \\\"std\\\" which can be disabled to make the\n        crate not link the std library. By \\@jonimake and \\@bluss\n    -   Require Rust 1.31.\n-   0.1.9\n    -   Add intersection, union, difference iterators by \\@jrraymond\n    -   Add intersection: `\u0026` and union: `|` operator implementations by\n        \\@jrraymond\n    -   Add Extend and FromIterator implementations (from sequences of\n        bit indices) by \\@jrraymond\n-   0.1.8\n    -   Add missing `#[inline]` on the ones iterator\n    -   Fix docs for `insert_range, set_range`\n-   0.1.7\n    -   Add fast methods `.insert_range`, `.set_range` by \\@kennytm\n-   0.1.6\n    -   Add iterator `.ones()` by \\@mneumann\n    -   Fix bug with `.count_ones()` where it would erronously have an\n        out-of-bounds panic for even block endpoints\n-   0.1.5\n    -   Add method `.count_ones(range)`.\n-   0.1.4\n    -   Remove an assertion in `.copy_bit(from, to)` so that it is in\n        line with the documentation. The `from` bit does not need to be\n        in bounds.\n    -   Improve `.grow()` to use `Vec::resize` internally.\n-   0.1.3\n    -   Add method `.put()` to enable a bit and return previous value\n-   0.1.2\n    -   Add method `.copy_bit()` (by fuine)\n    -   impl Default\n-   0.1.1\n    -   Update documentation URL\n-   0.1.0\n    -   Add method `.grow()`\n\n# License\n\nDual-licensed to be compatible with the Rust project.\n\nLicensed under the [Apache License, Version 2.0](https://www.apache.org/licenses/LICENSE-2.0)\n or the [MIT license](https://opensource.org/licenses/MIT),\n at your option. This file may not be copied, modified, or distributed except\naccording to those terms.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetgraph%2Ffixedbitset","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpetgraph%2Ffixedbitset","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpetgraph%2Ffixedbitset/lists"}