forked from Sereal/Sereal
-
Notifications
You must be signed in to change notification settings - Fork 1
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
Update master #8
Open
sapk
wants to merge
77
commits into
Weborama:master
Choose a base branch
from
sapk-fork:update-master
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Bumps [junit](https://github.com/junit-team/junit4) from 4.13 to 4.13.1. - [Release notes](https://github.com/junit-team/junit4/releases) - [Changelog](https://github.com/junit-team/junit4/blob/main/doc/ReleaseNotes4.13.1.md) - [Commits](junit-team/junit4@r4.13...r4.13.1) Signed-off-by: dependabot[bot] <[email protected]>
…close() is called
…oder-java add cleanup method to Sereal decoder Java
Perl v5.35.5 now uses some C99 features. This means that Perl's headers now contain some code with mixed declarations and code. Earlier versions of Perl support long obsolete compilers that are strict in rejecting certain C99 features, particularly mixed declarations and code, hence it still makes sense to audit that our code does not violate this. However, doing this is now only possible on these earlier versions of Perl, hence only add -Werror=declaration-after-statement for 5.035004 and earlier.
This is so that it is built in the correct order when running make with `MAKEFLAGS=-j$N` in order to build in parallel. Fixes <Sereal#260>.
Add GitHub Actions workflow
Specify how to build bundled zstd directly
We can only "catch_violations" on perl v5.35.4 and earlier
…9 on threaded DEBUGGING perls
…al::Decoder 4.019 on threaded DEBUGGING perls
…019 on threaded debugging builds
Frozen objects previously did not work as expected when their frozen form contained objects. We were calling THAW far too early before anything was blessed. This then produced spurious errors. We also didn't well define the calling order. Another issue was that the docs say that FREEZE() can't return a list when it certainly can, and like THAW can handle it.
Support quadmath __float128. Support the new PL_Yes and PL_No stuff from Perl 5.36.x. Note, upgrade your decoders BEFORE you upgrade your decoders.
…-junit-4.13.1 Bump junit from 4.13 to 4.13.1 in /Java
use 2.12.3 jackson-databind
This validates that the decoder can handle actual output from older versions of the encoder. It was generated under 5.18 as older versions don't build on newer perl versions but new versions build fine on older... This should add some extra confidence that upgrading the decoder wont break things.
In a previous commit I forgot we support back to 5.8 and used // in the test. This patch removes it so our test results for 5.8 go back into the green.
…improvments during test
Supports a CPAN_COMPAT=1 env var which controls whether we compile the same as we would on CPAN. When not set we build a bit differently in the repo by default as we would via CPAN.
This adds support to the Makefile.PL's for the Encoder and Decoder so that the env var USE_UNALIGNED can be used to control if miniz uses unaligned stores and loads. If USE_UNALIGNED is 1 or "yes" then we will build miniz with support for unaligned loads and stores. It defaults to not doing so. The CPAN mode build will prompt() the user if they want to do this if the env var is not set.
This also includes some necessary and some nice-to-have improvements to zstd/Makefle.PL. We now have support for building zstd with the assembly code. I ended up hand rolling some of the Makefile logic to avoid unnecessary rebuilds. By default we will build with ZSTD assembly code for performance. The NO_ASM or ZSTD_DISABLE_ASM env var can be set to a true value to disable this, and the Makefile.PL should prompt() the user to use it or not when neither env var is defined. See https://github.com/facebook/zstd/blob/dev/lib/Makefile for the original Makefile that ours is derived from.
CPAN_COMPAT should only control if we prompt() during Makefile.PL execution
Bumps [jackson-databind](https://github.com/FasterXML/jackson) from 2.13.4.1 to 2.13.4.2. - [Release notes](https://github.com/FasterXML/jackson/releases) - [Commits](https://github.com/FasterXML/jackson/commits) --- updated-dependencies: - dependency-name: com.fasterxml.jackson.core:jackson-databind dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]>
…asterxml.jackson.core-jackson-databind-2.13.4.2 Bump jackson-databind from 2.13.4.1 to 2.13.4.2 in /Java
…t (including header)
Before this change: v1, v2 := 1, 1 a1 := [&v1, &v2] a2 := [&v1, &v1] unmarshal(marshal(a1)) -> [1, 1] unmarshal(marshal(a2)) -> [1, &1] While this preserves referential integrity for all values, it makes the decoded data structure harder to use. This commit adds an option to make both cases above round-trip to [1, 1]. This makes the resulting structure easier to manipulate at the small price of breaking referential integrity for scalar values.
go: add decoder option to treat REFP more similarly to REFN
Might as well make sure everything works as expected on 5.36.
Currently we aren't THAWing in LIFO order, we are doing it in FIFO order, which isnt correct, if A contains B and both need to be THAWed we should THAW B first, then A. This merges srl_track_frozen_object() into srl_read_frozen_object(). Previously we were calling srl_read_single_value() before we called srl_track_frozen_object(), but really we want do half of what srl_track_frozen_object() does BEFORE we call srl_read_single_value(), and the other half AFTER. Since the only function calling srl_track_frozen_object() was srl_read_frozen_object() merging the two together is the easiest way to achieve the "wrapping" behavior we want. Fixes Sereal#283
THAW ordering fixes
…ction signatures shorter
go: add MaxRecursionLimit to encoder (defaults to unlimited)
... which wasn't yet supported by it.
hobodecoder.pl: support SRL_PROTOCOL_ENCODING_ZSTD
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.