614 lines
18 KiB
Markdown
614 lines
18 KiB
Markdown
# Change Log
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](http://keepachangelog.com/)
|
|
and this project adheres to [Semantic Versioning](http://semver.org/).
|
|
|
|
## [Unreleased]
|
|
|
|
## [v0.8.0] - 2023-11-07
|
|
|
|
### Added
|
|
|
|
- Add `Clone` and `PartialEq` implementations to `HistoryBuffer`.
|
|
- Added an object pool API. see the `pool::object` module level doc for details
|
|
- Add `HistoryBuffer::as_slices()`
|
|
- Implemented `retain` for `IndexMap` and `IndexSet`.
|
|
- Recover `StableDeref` trait for `pool::object::Object` and `pool::boxed::Box`.
|
|
- Add polyfills for ESP32S2
|
|
- Added `String::from_utf8` and `String::from_utf8_unchecked`.
|
|
|
|
### Changed
|
|
|
|
- updated from edition 2018 to edition 2021
|
|
- [breaking-change] `IndexMap` and `IndexSet` now require that keys implement the `core::hash::Hash`
|
|
trait instead of the `hash32::Hash` (v0.2.0) trait
|
|
- move `pool::singleton::Box` to the `pool::box` module
|
|
- renamed `pool::singleton::Pool` to `BoxPool` and moved it into the `pool::box` module
|
|
- move `pool::singleton::arc::Arc` to the `pool::arc` module
|
|
- renamed `pool::singleton::arc::Pool` to `ArcPool` and moved it into the `pool::arc` module
|
|
- [breaking-change] changed the target support of memory pool API to only support 32-bit x86 and a
|
|
subset of ARM targets. See the module level documentation of the `pool` module for details
|
|
- relax trait requirements on `IndexMap` and `IndexSet`.
|
|
- export `IndexSet` and `IndexMap` iterator types.
|
|
- [breaking-change] export `IndexMapKeys`, `IndexMapValues` and
|
|
`IndexMapValuesMut` iterator types.
|
|
- [breaking-change] this crate now uses `portable-atomic` v1.0 instead of `atomic-polyfill` for emulating
|
|
CAS instructions on targets where they're not natively available.
|
|
- [breaking-change] `From<&str>` for `String` was replaced with `TryFrom<&str>` because the `From` trait must not fail.
|
|
- [breaking-change] Renamed Cargo features
|
|
- `defmt-impl` is now `defmt-03`
|
|
- `ufmt-impl` is now `ufmt`
|
|
- `cas` is removed, atomic polyfilling is now opt-in via the `portable-atomic` feature.
|
|
- `Vec::as_mut_slice` is now a public method.
|
|
|
|
### Fixed
|
|
|
|
- Fixed a `dropping_references` warning in `LinearMap`.
|
|
- Fixed IndexMap entry API returning wrong slot after an insert on vacant entry. (#360)
|
|
|
|
### Removed
|
|
|
|
- [breaking-change] this crate no longer has a Minimum Supported Rust Version (MSRV) guarantee and
|
|
should be used with the latest stable version of the Rust toolchain.
|
|
|
|
- [breaking-change] removed the `Init` and `Uninint` type states from `pool::singleton::Box`
|
|
- [breaking-change] removed the following `pool::singleton::Box` methods: `freeze`, `forget` and `init`
|
|
- [breaking-change] removed the `pool::singleton::arc::ArcInner` type
|
|
- [breaking-change] removed support for attributes from `pool!` and `arc_pool!`
|
|
|
|
## [v0.7.16] - 2022-08-09
|
|
|
|
### Added
|
|
|
|
- add more `PartialEq` implementations to `Vec` where `Vec` is the RHS
|
|
|
|
### Changed
|
|
|
|
### Fixed
|
|
|
|
- clarify in the docs that the capacity `heapless::String` is in bytes, not characters
|
|
- Fixed some broken links in the documentation.
|
|
|
|
## [v0.7.15] - 2022-07-05
|
|
|
|
### Added
|
|
|
|
- Added `Vec::insert(index, element)`
|
|
- Added `Vec::remove(index)`
|
|
- Added `Vec::retain(f)`
|
|
- Added `Vec::retain_mut(f)`
|
|
|
|
## [v0.7.14] - 2022-06-15
|
|
|
|
### Added
|
|
|
|
- Added support for AVR architecture.
|
|
|
|
### Fixed
|
|
|
|
- `IndexSet` and `IndexMap`'s `default` method now compile time checks that their capacity is a power of two.
|
|
|
|
## [v0.7.13] - 2022-05-16
|
|
|
|
### Added
|
|
|
|
- Added `into_vec` to `BinaryHeap`
|
|
|
|
## [v0.7.12] - 2022-05-12
|
|
|
|
### Added
|
|
|
|
- Added support for AVR architecture.
|
|
- Add `entry` API to `IndexMap`
|
|
- Implement `IntoIterator` trait for `Indexmap`
|
|
- Implement `FromIterator` for `String`
|
|
- Add `first` and `last` methods to `IndexMap` and `IndexSet`
|
|
- Add `pop_{front_back}_unchecked` methods to `Deque`
|
|
|
|
### Changed
|
|
|
|
- Optimize the codegen of `Vec::clone`
|
|
- `riscv32i` and `riscv32imc` targets unconditionally (e.g. `build --no-default-features`) depends on `atomic-polyfill`
|
|
|
|
### Fixed
|
|
|
|
- Inserting an item that replaces an already present item will no longer
|
|
fail with an error
|
|
|
|
## [v0.7.11] - 2022-05-09
|
|
|
|
### Fixed
|
|
|
|
- Fixed `pool` example in docstring.
|
|
- Fixed undefined behavior in `Vec::truncate()`, `Vec::swap_remove_unchecked()`,
|
|
and `Hole::move_to()` (internal to the binary heap implementation).
|
|
- Fixed `BinaryHeap` elements are being dropped twice
|
|
|
|
## [v0.7.10] - 2022-01-21
|
|
|
|
### Fixed
|
|
|
|
- `cargo test` can now run on non-`x86` hosts
|
|
|
|
### Added
|
|
|
|
- Added `OldestOrdered` iterator for `HistoryBuffer`
|
|
|
|
### Changed
|
|
|
|
- `atomic-polyfill` is now enabled and used for `cas` atomic emulation on `riscv` targets
|
|
|
|
## [v0.7.9] - 2021-12-16
|
|
|
|
### Fixed
|
|
|
|
- Fix `IndexMap` and `IndexSet` bounds
|
|
- Make `IndexSet::new()` a `const fn`
|
|
|
|
## [v0.7.8] - 2021-11-11
|
|
|
|
### Added
|
|
|
|
- A span of `defmt` versions is now supported (`0.2` and `0.3`)
|
|
|
|
## [v0.7.7] - 2021-09-22
|
|
|
|
### Fixed
|
|
|
|
- Fixed so `Pool` is `Sync` on ARMv6
|
|
|
|
## [v0.7.6] - 2021-09-21
|
|
|
|
### Added
|
|
|
|
- Added `ArcPool`
|
|
- Added `Debug` impl for `Deque`
|
|
|
|
### Fixed
|
|
|
|
- ZSTs in `Pool` now works correctly
|
|
- Some MIRI errors were resolved
|
|
- Allow `pool!` on thumbv6
|
|
- Fixed possible UB in `Pool` on x86
|
|
|
|
## [v0.7.5] - 2021-08-16
|
|
|
|
### Added
|
|
|
|
- Added `SortedLinkedList`
|
|
- Added `Vec::is_empty`, one does not need to go through a slice anymore
|
|
|
|
### Changed
|
|
|
|
- `Vec::pop_unchecked` is now public
|
|
|
|
## [v0.7.4] - 2021-08-06
|
|
|
|
### Added
|
|
|
|
- Implement `Default` for `MpMcQueue`, `Queue` and `HistoryBuffer`
|
|
- Implement `PartialOrd` and `Ord` for `Vec` and `String`
|
|
|
|
### Fixed
|
|
|
|
- Fixed comments in SPSC
|
|
|
|
## [v0.7.3] - 2021-07-01
|
|
|
|
### Added
|
|
|
|
- Added `Deque`
|
|
|
|
### Changed
|
|
|
|
- `Box::freeze` is deprecated due to possibility of undefined behavior.
|
|
|
|
## [v0.7.2] - 2021-06-30
|
|
|
|
### Added
|
|
|
|
- Added new `Vec::into_array` method
|
|
- Added const-asserts to all data structures
|
|
|
|
## [v0.7.1] - 2021-05-23
|
|
|
|
### Changed
|
|
|
|
- MPMC is now more generic
|
|
|
|
### Added
|
|
|
|
- `defmt` for `Vec` and `String`
|
|
|
|
## [v0.7.0] - 2021-04-23
|
|
|
|
### Changed
|
|
|
|
- [breaking-change] Converted all data structures to use the `const generics` MVP
|
|
- [breaking-change] `HistoryBuffer` is now working with const constructors and non-`Copy` data
|
|
- [breaking-change] `HistoryBuffer::as_slice` and others now only return initialized values
|
|
- Added missing `Deref`, `AsRef` and `Debug` for `HistoryBuffer`
|
|
- [breaking-change] `MultiCore`/`SingleCore` and `Uxx` is now removed from `spsc::Queue`
|
|
- [breaking-change] `spsc::Queue` is now `usize` only
|
|
- [breaking-change] `spsc::Queue` now sacrifices one element for correctness (see issue #207), i.e. it creates an `N - 1` sized queue instead of the old that generated an size `N` queue
|
|
- [breaking-change] `String` has had `utf8` related methods removed as this can be done via `str`
|
|
- [breaking-change] No data structures implement `AsSlice` traits any more, now using `AsRef` and `AsMut` as they work with any size of array now
|
|
|
|
### Fixed
|
|
|
|
- `Pool` and `MPMC` now works on `thumbv6m`
|
|
- `IndexMap::new()` is now a `const-fn`
|
|
|
|
## [v0.6.1] - 2021-03-02
|
|
|
|
### Fixed
|
|
|
|
- Security issue.
|
|
|
|
## [v0.6.0] - 2021-02-02
|
|
|
|
### Changed
|
|
|
|
- [breaking-change] The version of the `generic-array` dependency has been
|
|
bumped to v0.14.2.
|
|
|
|
## [v0.5.6] - 2020-09-18
|
|
|
|
### Added
|
|
|
|
- Added `as_mut_vec` for `String`
|
|
- Added `set_len` for `Vec`
|
|
- Performance improvements in `histbuf`
|
|
|
|
### Fixed
|
|
|
|
- `Producer` was made `Send` for single core applications
|
|
|
|
## [v0.5.5] - 2020-05-04
|
|
|
|
### Added
|
|
|
|
- Added `HistoryBuffer`
|
|
- Added extra methods to `Vec`: `from_slice`, `starts_with`, `ends_with`
|
|
- Optional `ufmt` support for `String` and `Vec`
|
|
- Added `pool` support for bare-metal `armebv7r-` targets
|
|
- Added Sync to `pool` for `x86`
|
|
|
|
## [v0.5.4] - 2020-04-06
|
|
|
|
### Added
|
|
|
|
- Added `StableDeref` implementation for `pool::Box` and `pool::singleton::Box`.
|
|
|
|
## [v0.5.3] - 2020-01-27
|
|
|
|
### Added
|
|
|
|
- Extend the ARMv7-A `Pool` support to the bare-metal `armv7a-` targets.
|
|
|
|
## [v0.5.2] - 2020-01-15
|
|
|
|
### Fixed
|
|
|
|
- Fixed incorrect overflow behavior in computation of capacities
|
|
- Fixed edge case in `mpmc::Queue::dqueue` that led to an infinite loop
|
|
- IndexMap and LinerMap are now deserialized as maps, rather than as sequences
|
|
- Fixed compilation of this crates on built-in targets that don't have CAS instructions
|
|
|
|
### Changed
|
|
|
|
- `spsc::Queue` iterators now implement the double ended iterator trait
|
|
|
|
### Added
|
|
|
|
- opt-out `cas` feature to disable parts of the API that use CAS instructions.
|
|
Useful if using a custom (i.e. not built-in) rustc target that does not have CAS
|
|
instructions.
|
|
|
|
- singleton `Pool` support on ARMv7-A devices
|
|
|
|
## [v0.5.1] - 2019-08-29
|
|
|
|
### Added
|
|
|
|
- Added armv8 support
|
|
- Added `Queue::peek`
|
|
- Added `BinaryHeap::peek_mut`
|
|
|
|
## [v0.5.0] - 2019-07-12
|
|
|
|
### Added
|
|
|
|
- `Pool` now implements the `Sync` trait when targeting ARMv7-R.
|
|
|
|
- Most data structures can now be constructed in "const context" (e.g. `static
|
|
[mut]` variables) using a newtype in `heapless::i`.
|
|
|
|
- `Pool` has gained a `grow_exact` method to more efficiently use statically
|
|
allocated memory.
|
|
|
|
- The `pool!` macro now accepts attributes.
|
|
|
|
- `mpmc::Q*` a family of fixed capacity multiple-producer multiple-consumer
|
|
lock-free queues.
|
|
|
|
### Changed
|
|
|
|
- [breaking-change] `binary_heap::Kind` is now a sealed trait.
|
|
|
|
### Removed
|
|
|
|
- [breaking-change] The "smaller-atomics" feature has been removed. It is now
|
|
always enabled.
|
|
|
|
- [breaking-change] The "min-const-fn" feature has been removed. It is now
|
|
always enabled.
|
|
|
|
- [breaking-change] The MSRV has been bumped to Rust 1.36.0.
|
|
|
|
- [breaking-change] The version of the `generic-array` dependency has been
|
|
bumped to v0.13.0.
|
|
|
|
## [v0.4.4] - 2019-05-02
|
|
|
|
### Added
|
|
|
|
- Implemented `PartialEq`, `PartialOrd`, `Eq`, `Ord` and `Hash` for `pool::Box`
|
|
and `pool::singleton::Box`.
|
|
|
|
### Fixed
|
|
|
|
- Fixed UB in our internal, stable re-implementation of `core::mem::MaybeUninit`
|
|
that occurred when using some of our data structures with types that implement
|
|
`Drop`.
|
|
|
|
## [v0.4.3] - 2019-04-22
|
|
|
|
### Added
|
|
|
|
- Added a memory pool that's lock-free and interrupt-safe on the ARMv7-M
|
|
architecture.
|
|
|
|
- `IndexMap` have gained `Eq` and `PartialEq` implementations.
|
|
|
|
## [v0.4.2] - 2019-02-12
|
|
|
|
### Added
|
|
|
|
- All containers now implement `Clone`
|
|
|
|
- `spsc::Queue` now implements `Debug`, `Hash`, `PartialEq` and `Eq`
|
|
|
|
- `LinearMap` now implements `Debug`, `FromIterator`, `IntoIter`, `PartialEq`,
|
|
`Eq` and `Default`
|
|
|
|
- `BinaryHeap` now implements `Debug` and `Default`
|
|
|
|
- `String` now implements `FromStr`, `Hash`, `From<uxx>` and `Default`
|
|
|
|
- `Vec` now implements `Hash` and `Default`
|
|
|
|
- A "serde" Cargo feature that when enabled adds a `serde::Serialize` and
|
|
`serde::Deserialize` implementations to each collection.
|
|
|
|
## [v0.4.1] - 2018-12-16
|
|
|
|
### Changed
|
|
|
|
- Add a new type parameter to `spsc::Queue` that indicates whether the queue is
|
|
only single-core safe, or multi-core safe. By default the queue is multi-core
|
|
safe; this preserves the current semantics. New `unsafe` constructors have
|
|
been added to create the single-core variant.
|
|
|
|
## [v0.4.0] - 2018-10-19
|
|
|
|
### Changed
|
|
|
|
- [breaking-change] All Cargo features are disabled by default. This crate now
|
|
compiles on stable by default.
|
|
|
|
- [breaking-change] RingBuffer has been renamed to spsc::Queue. The ring_buffer
|
|
module has been renamed to spsc.
|
|
|
|
- [breaking-change] The bounds on spsc::Queue have changed.
|
|
|
|
### Removed
|
|
|
|
- [breaking-change] The sealed `Uxx` trait has been removed from the public API.
|
|
|
|
## [v0.3.7] - 2018-08-19
|
|
|
|
### Added
|
|
|
|
- Implemented `IntoIterator` and `FromIterator` for `Vec`
|
|
- `ready` methods to `ring_buffer::{Consumer,Producer}`
|
|
- An opt-out "const-fn" Cargo feature that turns `const` functions into normal functions when
|
|
disabled.
|
|
- An opt-out "smaller-atomics" Cargo feature that removes the ability to shrink the size of
|
|
`RingBuffer` when disabled.
|
|
|
|
### Changed
|
|
|
|
- This crate now compiles on stable when both the "const-fn" and "smaller-atomics" features are
|
|
disabled.
|
|
|
|
### Fixed
|
|
|
|
- The `RingBuffer.len` function
|
|
- Compilation on recent nightlies
|
|
|
|
## [v0.3.6] - 2018-05-04
|
|
|
|
### Fixed
|
|
|
|
- The capacity of `RingBuffer`. It should be the requested capacity plus not twice that plus one.
|
|
|
|
## [v0.3.5] - 2018-05-03
|
|
|
|
### Added
|
|
|
|
- `RingBuffer.enqueue_unchecked` an unchecked version of `RingBuffer.enqueue`
|
|
|
|
## [v0.3.4] - 2018-04-28
|
|
|
|
### Added
|
|
|
|
- `BinaryHeap.pop_unchecked` an unchecked version of `BinaryHeap.pop`
|
|
|
|
## [v0.3.3] - 2018-04-28
|
|
|
|
### Added
|
|
|
|
- `BinaryHeap.push_unchecked` an unchecked version of `BinaryHeap.push`
|
|
|
|
## [v0.3.2] - 2018-04-27
|
|
|
|
### Added
|
|
|
|
- A re-export of `generic_array::ArrayLength`, for convenience.
|
|
|
|
## [v0.3.1] - 2018-04-23
|
|
|
|
### Added
|
|
|
|
- Fixed capacity implementations of `IndexMap` and `IndexSet`.
|
|
- A `Extend` implementation to `Vec`
|
|
- More `PartialEq` implementations to `Vec`
|
|
|
|
## [v0.3.0] - 2018-04-22
|
|
|
|
### Changed
|
|
|
|
- [breaking-change] The capacity of all data structures must now be specified using type level
|
|
integers (cf. `typenum`). See documentation for details.
|
|
|
|
- [breaking-change] `BufferFullError` has been removed in favor of (a) returning ownership of the
|
|
item that couldn't be added to the collection (cf. `Vec.push`), or (b) returning the unit type
|
|
when the argument was not consumed (cf. `Vec.extend_from_slice`).
|
|
|
|
## [v0.2.7] - 2018-04-20
|
|
|
|
### Added
|
|
|
|
- Unchecked methods to dequeue and enqueue items into a `RingBuffer` via the `Consumer` and
|
|
`Producer` end points.
|
|
|
|
### Changed
|
|
|
|
- `RingBuffer` now has a generic index type, which default to `usize` for backward compatibility.
|
|
Changing the index type to `u8` or `u16` reduces the footprint of the `RingBuffer` but limits its
|
|
maximum capacity (254 and 65534, respectively).
|
|
|
|
## [v0.2.6] - 2018-04-18
|
|
|
|
### Added
|
|
|
|
- A `BinaryHeap` implementation. `BinaryHeap` is a priority queue implemented with a binary heap.
|
|
|
|
## [v0.2.5] - 2018-04-13
|
|
|
|
### Fixed
|
|
|
|
- Dereferencing `heapless::Vec` no longer incurs in a bounds check.
|
|
|
|
## [v0.2.4] - 2018-03-12
|
|
|
|
### Fixed
|
|
|
|
- `LinerMap::new` is now a const fn
|
|
|
|
## [v0.2.3] - 2018-03-11
|
|
|
|
### Added
|
|
|
|
- A `swap_remove` method to `Vec`
|
|
- A `LinearMap` implementation. `LinearMap` is a map / dict backed by an array and that performs
|
|
lookups via linear search.
|
|
|
|
## [v0.2.2] - 2018-03-01
|
|
|
|
### Added
|
|
|
|
- Fixed size version of `std::String`
|
|
|
|
## [v0.2.1] - 2017-12-21
|
|
|
|
### Added
|
|
|
|
- `Vec` now implements both `fmt::Debug`, `PartialEq` and `Eq`.
|
|
|
|
- `resize` and `resize_default` methods to `Vec`.
|
|
|
|
## [v0.2.0] - 2017-11-22
|
|
|
|
### Added
|
|
|
|
- A single producer single consumer mode to `RingBuffer`.
|
|
|
|
- A `truncate` method to `Vec`.
|
|
|
|
### Changed
|
|
|
|
- [breaking-change] Both `Vec::new` and `RingBuffer::new` no longer require an initial value. The
|
|
signature of `new` is now `const fn() -> Self`.
|
|
|
|
- [breaking-change] The error type of all operations that may fail has changed from `()` to
|
|
`BufferFullError`.
|
|
|
|
- Both `RingBuffer` and `Vec` now support arrays of _any_ size for their backup storage.
|
|
|
|
## [v0.1.0] - 2017-04-27
|
|
|
|
- Initial release
|
|
|
|
[Unreleased]: https://github.com/rust-embedded/heapless/compare/v0.8.0...HEAD
|
|
[v0.8.0]: https://github.com/rust-embedded/heapless/compare/v0.7.16...v0.8.0
|
|
[v0.7.16]: https://github.com/rust-embedded/heapless/compare/v0.7.15...v0.7.16
|
|
[v0.7.15]: https://github.com/rust-embedded/heapless/compare/v0.7.14...v0.7.15
|
|
[v0.7.14]: https://github.com/rust-embedded/heapless/compare/v0.7.13...v0.7.14
|
|
[v0.7.13]: https://github.com/rust-embedded/heapless/compare/v0.7.12...v0.7.13
|
|
[v0.7.12]: https://github.com/rust-embedded/heapless/compare/v0.7.11...v0.7.12
|
|
[v0.7.11]: https://github.com/rust-embedded/heapless/compare/v0.7.10...v0.7.11
|
|
[v0.7.10]: https://github.com/rust-embedded/heapless/compare/v0.7.9...v0.7.10
|
|
[v0.7.9]: https://github.com/rust-embedded/heapless/compare/v0.7.8...v0.7.9
|
|
[v0.7.8]: https://github.com/rust-embedded/heapless/compare/v0.7.7...v0.7.8
|
|
[v0.7.7]: https://github.com/rust-embedded/heapless/compare/v0.7.6...v0.7.7
|
|
[v0.7.6]: https://github.com/rust-embedded/heapless/compare/v0.7.5...v0.7.6
|
|
[v0.7.5]: https://github.com/rust-embedded/heapless/compare/v0.7.4...v0.7.5
|
|
[v0.7.4]: https://github.com/rust-embedded/heapless/compare/v0.7.3...v0.7.4
|
|
[v0.7.3]: https://github.com/rust-embedded/heapless/compare/v0.7.2...v0.7.3
|
|
[v0.7.2]: https://github.com/rust-embedded/heapless/compare/v0.7.1...v0.7.2
|
|
[v0.7.1]: https://github.com/rust-embedded/heapless/compare/v0.7.0...v0.7.1
|
|
[v0.7.0]: https://github.com/rust-embedded/heapless/compare/v0.6.1...v0.7.0
|
|
[v0.6.1]: https://github.com/rust-embedded/heapless/compare/v0.6.0...v0.6.1
|
|
[v0.6.0]: https://github.com/rust-embedded/heapless/compare/v0.5.5...v0.6.0
|
|
[v0.5.5]: https://github.com/rust-embedded/heapless/compare/v0.5.4...v0.5.5
|
|
[v0.5.4]: https://github.com/rust-embedded/heapless/compare/v0.5.3...v0.5.4
|
|
[v0.5.3]: https://github.com/rust-embedded/heapless/compare/v0.5.2...v0.5.3
|
|
[v0.5.2]: https://github.com/rust-embedded/heapless/compare/v0.5.1...v0.5.2
|
|
[v0.5.1]: https://github.com/rust-embedded/heapless/compare/v0.5.0...v0.5.1
|
|
[v0.5.0]: https://github.com/rust-embedded/heapless/compare/v0.4.4...v0.5.0
|
|
[v0.4.4]: https://github.com/rust-embedded/heapless/compare/v0.4.3...v0.4.4
|
|
[v0.4.3]: https://github.com/rust-embedded/heapless/compare/v0.4.2...v0.4.3
|
|
[v0.4.2]: https://github.com/rust-embedded/heapless/compare/v0.4.1...v0.4.2
|
|
[v0.4.1]: https://github.com/rust-embedded/heapless/compare/v0.4.0...v0.4.1
|
|
[v0.4.0]: https://github.com/rust-embedded/heapless/compare/v0.3.7...v0.4.0
|
|
[v0.3.7]: https://github.com/rust-embedded/heapless/compare/v0.3.6...v0.3.7
|
|
[v0.3.6]: https://github.com/rust-embedded/heapless/compare/v0.3.5...v0.3.6
|
|
[v0.3.5]: https://github.com/rust-embedded/heapless/compare/v0.3.4...v0.3.5
|
|
[v0.3.4]: https://github.com/rust-embedded/heapless/compare/v0.3.3...v0.3.4
|
|
[v0.3.3]: https://github.com/rust-embedded/heapless/compare/v0.3.2...v0.3.3
|
|
[v0.3.2]: https://github.com/rust-embedded/heapless/compare/v0.3.1...v0.3.2
|
|
[v0.3.1]: https://github.com/rust-embedded/heapless/compare/v0.3.0...v0.3.1
|
|
[v0.3.0]: https://github.com/rust-embedded/heapless/compare/v0.2.7...v0.3.0
|
|
[v0.2.7]: https://github.com/rust-embedded/heapless/compare/v0.2.6...v0.2.7
|
|
[v0.2.6]: https://github.com/rust-embedded/heapless/compare/v0.2.5...v0.2.6
|
|
[v0.2.5]: https://github.com/rust-embedded/heapless/compare/v0.2.4...v0.2.5
|
|
[v0.2.4]: https://github.com/rust-embedded/heapless/compare/v0.2.3...v0.2.4
|
|
[v0.2.3]: https://github.com/rust-embedded/heapless/compare/v0.2.2...v0.2.3
|
|
[v0.2.2]: https://github.com/rust-embedded/heapless/compare/v0.2.1...v0.2.2
|
|
[v0.2.1]: https://github.com/rust-embedded/heapless/compare/v0.2.0...v0.2.1
|
|
[v0.2.0]: https://github.com/rust-embedded/heapless/compare/v0.1.0...v0.2.0
|