Zeeshan Ali Khan
0b027b1ff8
Implements zeroization support across all heapless data structures to securely clear sensitive data from memory:
...
- When the zeroize feature is enabled, the LenType sealed trait now has Zeroize as a supertrait
- This simplifies the bound for deriving Zeroize for VecInner and other types
- Added tests to verify VecView also implements Zeroize correctly
This feature is essential for security-sensitive applications needing to prevent data leaks from memory dumps.
Note: Zeroize initially worked on Vector purely via derivation, however was not complete without proper bound checks. Without these checks, the deref implementation of Zeroize was used instead, which led to incomplete zeroization of the Vector's contents.
2025-09-24 13:06:10 -04:00
Zeeshan Ali Khan
284955a2d7
Switch from serde
to serde_core
...
This new split of `serde` crate, enables faster compilation by allowing
non-derive needing parts (such as this library) to be compiled in
parallel to `serde_derive` crate.
2025-09-16 14:57:55 +02:00
Mortano
ca2368dd7f
Update CHANGELOG.md to more concise description
...
Co-authored-by: Soso <51865119+sgued@users.noreply.github.com>
2025-09-08 15:51:33 +02:00
Pascal
66dab53263
Added missing CHANGELOG entry
2025-09-08 15:51:33 +02:00
William Hicklin
75dbe63466
Implements TryFrom for Deque from array
2025-09-08 13:12:41 +01:00
Süha Ünüvar
381269b3b9
add missing dots
2025-09-03 22:42:42 +08:00
Süha Ünüvar
0b21ca3e0d
Implement defmt::Format for CapacityError
2025-09-03 11:49:38 +08:00
Sosthène Guédon
e6e615a6de
Implement default for capacity error
...
Fix https://github.com/rust-embedded/heapless/issues/601
2025-08-27 11:57:31 +02:00
Quetzal Bradley
26bae14ea2
Remove duplicate documentation line
2025-08-27 00:04:56 +00:00
Zeeshan Ali Khan
5fda686479
Fix a broken link
2025-08-21 13:56:28 +02:00
Zeeshan Ali Khan
628b52f1b5
Declare MSRV in Cargo.toml
...
Let's make our MSRV explicit.
2025-08-20 21:17:48 +02:00
Sosthène Guédon
0a764cd4ba
Prepare release 0.9.1
...
This is a breaking change, 0.9.0 should be yanked. See
https://github.com/rust-embedded/heapless/issues/568
2025-08-19 12:48:41 +02:00
Sosthène Guédon
2f1744351b
De-monomorphize spsc consumer, producer and iterators
...
This needs a workaround for the `const` use case however
2025-08-18 11:45:49 +02:00
Riley Williams
8247cf2f8b
Update changelog
2025-08-13 12:07:50 -04:00
Zeeshan Ali Khan
a290cec514
Add missing Debug
derive to vec::IntoIter
2025-08-13 11:45:38 +02:00
Zeeshan Ali Khan
2a8bc61696
Minor fixes to pool::boxed
docs
2025-08-08 18:27:46 +02:00
Riley Williams
090f7cad3c
Update changelog
2025-07-15 10:08:43 -04:00
Sosthène Guédon
76797513f4
Remove DefaultLenType functionality and the ZeroLengthType implementation
2025-04-29 21:56:22 +02:00
Sosthène Guédon
5e7fefdc5d
Make LenType opt-in
2025-04-29 21:56:06 +02:00
Markus Reiter
fb6b0b1674
Merge pull request #570 from Nitrokey/oldest-ordered-de-monomorphize
...
Remove generic from history_buf::OldestOrdered
2025-04-29 19:43:29 +00:00
Sosthène Guédon
6bf9a98c50
Remove generic from history_buf::OldestOrdered
2025-04-29 20:28:42 +02:00
Alex Martens
b99dd94f94
CHANGELOG: mark 0.9.0 as yanked
...
There is an unexpected regression in 0.9.0 with generics that is going
to break a lot of code.
https://github.com/rust-embedded/heapless/issues/568
2025-04-29 07:59:30 -07:00
Markus Reiter
fe124c0b15
Add changelog entries.
2025-04-29 12:28:01 +02:00
Zeeshan Ali Khan
92b476a486
Release 0.9.0
...
Fixes #529 .
2025-04-28 11:20:38 +02:00
Alex Martens
481de1592c
CHANGELOG: fix formatting
2025-04-28 11:19:31 +02:00
Markus Reiter
f692384ad7
Merge pull request #443 from reitermarkus/const-split
...
Make `Queue::split` `const`.
2025-04-26 19:47:48 +00:00
Markus Reiter
c46858aee3
Add changelog entry.
2025-04-26 20:41:48 +02:00
Phil Rutschman
daa9196f70
Changelog
2025-04-25 16:47:32 -07:00
Artem Kryvokrysenko
a81931c078
Optimize size of heapless::Vec<_, 0> to 0 bytes
...
If `Vec` has 0 capacity, it can store only 0 elements, so its len can be assumed to be always 0.
I'm updating `DefaultLenType` to have a special case: `DefaultLenType<0>` will be represented by zero
sized type which always has value 0.
This allows reducing size of `heapless::Vec<u8, 0>` from 8 bytes to 0 bytes.
2025-04-23 22:44:51 +00:00
Markus Reiter
00c106345d
Make Queue::split
const
.
...
# Conflicts:
# Cargo.toml
2025-04-23 22:24:39 +02:00
GnomedDev
d1993c5634
Add generic LenType to String
2025-04-23 22:00:52 +02:00
GnomedDev
c92e770960
Migrate SortedLinkedList to LenType
2025-04-20 13:03:17 +01:00
Yota Toyama
493768f83f
Merge branch 'main' into cstring
2025-04-15 07:23:36 +09:00
Yota Toyama
120a059abe
Merge branch 'main' into cstring
2025-04-11 08:00:18 +09:00
Christian Poveda
03738160b1
Update changelog
2025-04-10 15:54:12 -05:00
Markus Reiter
fb62d12ad5
Merge pull request #504 from GnomedDev/vec-generic-length
...
Implement a generic length parameter for Vec<T, N>
2025-04-10 17:45:39 +00:00
GnomedDev
a16a927a33
Implement a generic length parameter for Vec<T, N>
2025-04-10 17:55:22 +01:00
Christian Poveda
0e8f01103e
Update changelog
2025-04-10 10:40:42 -05:00
Yota Toyama
ce6d252f7f
Merge branch 'main' into cstring
2025-04-09 13:45:09 +09:00
Yota Toyama
4060b0db36
Update change log
2025-04-06 17:49:35 -07:00
Alex Martens
bee84f9e77
Merge branch 'main' into impl-alloc-interop
2025-04-06 17:34:50 -07:00
Markus Reiter
6d52751ad1
Add changelog entry.
2025-04-06 21:36:11 +02:00
Lucas Bollen
d51cc11618
Add inline
annotations to wrapping function calls in ufmt
...
This should make the compiler inline the function calls to increase performance.
2025-04-06 19:29:42 +02:00
Lucas Bollen
b21563dfa7
Add the uDisplay
trait for String
incl test.
...
Did not add `uDisplay` for `Vec` because there is no trivial implementation.
# Conflicts:
# Cargo.toml
# src/ufmt.rs
2025-04-06 19:28:42 +02:00
Markus Reiter
df33331075
Fix formatting.
2025-04-06 02:24:02 +02:00
Pavel Ivanov
894937c219
feat(indexmap): added get_index
, get_index_mut
and get_index_of
2025-04-06 02:23:10 +02:00
Markus Reiter
1052f4d783
Also relax bounds on PartialEq
for LinearMap
.
2025-04-06 01:16:49 +02:00
Yuhan Lin
acbfe7d1ff
Update CHANGELOG.md
...
Co-authored-by: Markus Reiter <me@reitermark.us>
2025-04-06 01:12:17 +02:00
YuhanLiin
a18a0d5fb2
Update CHANGELOG
2025-04-06 01:12:17 +02:00
Markus Reiter
877db4253f
Merge pull request #546 from newAM/defmt-1
...
defmt: 0.3 -> 1
2025-04-05 22:47:44 +00:00