Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support serde w/o std and update base64 dependency #153

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

mina86
Copy link

@mina86 mina86 commented Aug 20, 2023

By using base64’s encode_slice and decode_slice it’s possible to
implement serde serialisation without std or alloc. Take advantage of
that and allow enabling serde support separate from std. This is
gated by a new serde feature which.

To maintain backwards-compatibility make std feature enables serde
feature. Ideally, it should be possible to enable std without
bringing in serde support. We're still in 0.x releases so there’s
technically no semver issue in breaking builds, but for now it’s
probably nicer to keep std enabling serde support. It probably
makes sense to remove that in 0.8.

With all that, make serde and base64 dependencies optional.
Previously, they were always included even though they were only used
if std feature was enabled. Now, they are enabled only if
explicitly requested.

While at it, update base64 dependency to the newest 0.21.2 release.

By using base64’s encode_slice and decode_slice it’s possible to
implement serde serialisation without std or alloc.  Take advantage of
that and allow enabling serde support separate from std.  This is
gated by a new `serde` feature which.

To maintain backwards-compatibility make `std` feature enables `serde`
feature.  Ideally, it should be possible to enable `std` without
bringing in serde support.  We're still in 0.x releases so there’s
technically no semver issue in breaking builds, but for now it’s
probably nicer to keep `std` enabling serde support.  It probably
makes sense to remove that in 0.8.

With all that, make serde and base64 dependencies optional.
Previously, they were always included even though they were only used
if `std` feature was enabled.  Now, they are enabled only if
explicitly requested.

While at it, update base64 dependency to the newest 0.21.2 release.
@mina86
Copy link
Author

mina86 commented Nov 11, 2023

@sorpaas, @alvicsam, friendly ping

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant