Robin Krahl and Sosthène Guédon
c0e68c70d1
Never inline map value deserialization
...
Inlining it means that the deserialization of basic datatypes is inlined
into all deserialization functions, leading to a significant overhead.
2024-10-03 16:07:04 +02:00
Sosthène Guédon
8ce6e24c9a
Support multiple versions of heapless and heapless bytes
...
This allows better backwards compatibility and serializing to heapless directly.
Given https://github.com/trussed-dev/cbor-smol/issues/11 I went with a breaking change update
(the `Serializer` field was public and existing implementations are put behind a breaking change)
2024-10-02 15:30:08 +02:00
Robin Krahl and Sosthène Guédon
ced13e423a
Handle bytes identifier as UTF-8 strings
...
Previously, we visited either strings or bytes so that the visitor had
to handle both cases. With this change, we always visit strings so that
the bytes visitor function can be optimized out. This significantly
reduces binary size.
2024-10-02 12:09:13 +02:00
Sosthène Guédon
a0d0296424
deserialize_identifier: add support for all types expected by serde
...
The default serde deserialize derive accepts 3 types for identifiers:
- The name of the field as `str`
- The name of the field as ascii bytes
- The index of the field as u64
This PR changes deserialize_identifier to have compatibility with all of these
This is necessary for https://github.com/Nitrokey/fido-authenticator/issues/57 ,
which needs compatibility with both the str variant and the index variant
2024-10-02 12:09:13 +02:00
Sosthène Guédon and sosthene-nitrokey
da58de381d
Add feature for deserializing bytes from an array
2024-10-02 12:04:54 +02:00
Sosthène Guédon and sosthene-nitrokey
cbd34a5616
deserialize_bytes: accept arrays
2024-10-02 12:04:54 +02:00
Sosthène Guédon and sosthene-nitrokey
336941c342
Use constants in match statement
2024-10-02 12:04:03 +02:00
Sosthène Guédon and sosthene-nitrokey
620f8c0c61
Fuzz added support for i64 and fix crash in fuzzing
2024-10-02 12:04:03 +02:00
Sosthène Guédon and sosthene-nitrokey
0326d75fee
Implement deserializing ignored_any
2024-10-02 12:04:03 +02:00
Sosthène Guédon and sosthene-nitrokey
5d9247c34b
Add ?Sized trait bound
...
Fix #9
2024-10-02 10:34:17 +02:00
Sosthène Guédon and sosthene-nitrokey
f1774814ca
Fix deserialization of u64
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
538a6f147f
Fix enum struct variant deserialization
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
4a8ef46d19
Improve readability with consts
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
812cbb8f5d
Migrate to edition 2021
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
b9c1b9a80c
Fix clippy warnings
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
c75337e658
Add basic fuzzing
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
baf84e4811
Fix enum struct variant deserialization bug
2024-09-13 17:18:40 +02:00
Sosthène Guédon and sosthene-nitrokey
acf5a84acc
Run cargo fmt
2024-09-13 17:18:40 +02:00
Nicolas Stalder
899b74f352
Bump heapless, no more generic-array
0.4.0
2021-06-10 22:56:15 +02:00
Nicolas Stalder and Nicolas Stalder
71b72fd6fc
Release v0.3.1
0.3.1
2021-04-13 22:10:47 +02:00
Nicolas Stalder and Nicolas Stalder
4d55f665aa
PRs can't publish the docs
2021-03-19 01:29:02 +01:00
Conor Patrick and Nicolas Stalder
f598fc123c
add logging features
2021-03-19 01:21:09 +01:00
Nicolas Stalder
fe1541c663
Change names of high-level serialization methods to heapless_bytes::Bytes
2021-03-06 13:20:16 +01:00
Nicolas Stalder
d04819669b
Bump heapless, and hence generic-array
2021-02-26 23:59:11 +01:00
Nicolas Stalder
5a9b31874a
Fix tests, use Bytes, add GH CI
2021-01-31 16:13:43 +01:00