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

[pull] master from ugorji:master #99

Open
wants to merge 91 commits into
base: master
Choose a base branch
from
Open

[pull] master from ugorji:master #99

wants to merge 91 commits into from

Conversation

pull[bot]
Copy link

@pull pull bot commented Dec 20, 2022

See Commits and Changes for more details.


Created by pull[bot]

Can you help keep this open source service alive? 💖 Please sponsor : )

@pull pull bot added the ⤵️ pull label Dec 20, 2022
This updates formats, adds go:build constraints, etc
ugorji and others added 29 commits February 19, 2023 13:34
…} keys of a map in canonical mode

Without this, MapKeyAsString option is not supported correctly.

Fixes #390
We previously used base64 with duplicate letters.
This fails from go1.22

Fixes #407
* Test UTF-8 validation of indefinite-length CBOR text string chunks.

Per the CBOR spec, each chunk of an indefinite-length text string must be valid, or the entire
indefinite-length string is invalid.

* Test indefinite-length CBOR string chunks match parent type.

An indefinite-length text or byte string is not well-formed unless all of its chunks are of the same
major type as the indefinite-length string.

* CBOR: Reject malformed/invalid indefinite strings.

This addresses two conformance issues:

1. All chunks of an indefinite-length text string must be valid, so if UTF-8 validation is enabled
for text strings in DecodeOptions, it should be applied to each chunk.

2. All of the chunks of an indefinite-length text or byte string must have the same major type as
the indefinite-length string itself. Indefinitely-length text strings can't contain byte strings and
vice versa.
This saves on some possible allocation, at the expense of a 5-word
increase in the cborEncDriver structure.

Fixes #394
- case sensitive struct name matching
- etc

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

Successfully merging this pull request may close these issues.

3 participants