chore(deps): update rust crate base64 to 0.22.0 #11
No reviewers
Labels
No labels
renovate-bot
renovate-security
security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
ForgeFlux/ftest!11
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "renovate/base64-0.x"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
This PR contains the following updates:
0.13.0->0.22.0Release Notes
marshallpierce/rust-base64 (base64)
v0.22.1Compare Source
alphabet::BIN_HEX.v0.22.0Compare Source
DecodeSliceError::OutputSliceTooSmallis now conservative rather than precise. That is, the error will only occur if the decoded output cannot fit, meaning thatEngine::decode_slicecan now be used with exactly-sized output slices. As part of this,Engine::internal_decodenow returnsDecodeSliceErrorinstead ofDecodeError, but that is not expected to affect any external callers.DecodeError::InvalidLengthnow refers specifically to the number of valid symbols being invalid (i.e.len % 4 == 1), rather than just the number of input bytes. This avoids confusing scenarios when based on interpretation you could make a case for eitherInvalidLengthorInvalidBytebeing appropriate.v0.21.7Compare Source
Alphabet::as_str()v0.21.6Compare Source
v0.21.5Compare Source
DebugandCloneimpls for the general purpose Enginev0.21.4Compare Source
encoded_lenconst, allowing the creation of arrays sized to encode compile-time-known data lengthsv0.21.3Compare Source
sourceinstead ofcauseon Error typesv0.21.2Compare Source
v0.21.1Compare Source
DecoderReaderno longer sometimes erroneously ignorespadding #226
Breaking changes
Engine.internal_decodereturn type changedv0.21.0Compare Source
Migration
Functions
encode()engine::general_purpose::STANDARD.encode()orprelude::BASE64_STANDARD.encode()encode_config()engine.encode()encode_config_buf()engine.encode_string()encode_config_slice()engine.encode_slice()decode()engine::general_purpose::STANDARD.decode()orprelude::BASE64_STANDARD.decode()decode_config()engine.decode()decode_config_buf()engine.decode_vec()decode_config_slice()engine.decode_slice()The short-lived 0.20 functions were the 0.13 functions with
configreplaced withengine.Padding
If applicable, use the preset engines
engine::STANDARD,engine::STANDARD_NO_PAD,engine::URL_SAFE,or
engine::URL_SAFE_NO_PAD.The
NO_PADones require that padding is absent when decoding, and the others require thatcanonical padding is present .
If you need the < 0.20 behavior that did not care about padding, or want to recreate < 0.20.0's predefined
Configsprecisely, see the following table.
encode_paddingdecode_padding_modev0.20.0Compare Source
Breaking changes
correct padding.
NO_PADconfig now requires that padding be absent when decoding.0.20.0-alpha.1
Breaking changes
Configconcept into theEngineabstraction, allowing the user to pick different encoding / decodingimplementations.
FastPortableengine, so named because it's portable (works onany CPU) and relatively fast.
implementation (#153,
presumably
ConstantTimePortable?) for security-sensitive applications that need side-channel resistance, andCPU-specific SIMD implementations for more speed.
DEFAULT_ENGINE. To use different alphabets or other settings (padding, etc), create your own engine instance.
CharacterSetis nowAlphabet(per the RFC), and allows creating custom alphabets. The corresponding tables thatwere previously code-generated are now built dynamically.
discoverable.
const fn.DecoderReadernow owns its inner reader, and can expose it viainto_inner(). For symmetry,EncoderWritercan dothe same with its writer.
encoded_lenis now public so you can size encode buffers precisely.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot.
⚠️ Artifact update problem
Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.
♻ Renovate will retry this branch, including artifacts, only when one of the following happens:
The artifact failure details are included below:
File name: Cargo.lock
807bbe7024a12b1c0ae8