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

Update stdlib to Ruby 2.5.3. #5505

Merged
merged 28 commits into from Dec 13, 2018

Conversation

Projects
None yet
4 participants
@headius
Copy link
Member

headius commented Dec 10, 2018

No description provided.

@headius headius added this to the JRuby 9.2.6.0 milestone Dec 10, 2018

@headius headius force-pushed the headius:update_stdlib_2.5 branch from 5b964e2 to bd27274 Dec 10, 2018

@initialized = false
end

def lazy_initialize

This comment has been minimized.

Copy link
@ahorek

ahorek Dec 11, 2018

Contributor

just for confirmation, this was backported to ruby 2.3, 2.4 and 2.6?
isn't 2.5 also affected?
see https://bugs.ruby-lang.org/issues/14571 and #5074

This comment has been minimized.

Copy link
@headius

headius Dec 11, 2018

Author Member

Yes, this was originally filed against 2.5 it appears and backported as far as 2.3.

This comment has been minimized.

Copy link
@ahorek

ahorek Dec 13, 2018

Contributor

yeah, but this change reverts the fix. Maybe MRI guys forgot to backport it?

kares added a commit to kares/jruby that referenced this pull request Dec 11, 2018

[fix] handle pack/unpack tainting based on String input
- pass String instance (when possible) directly to unpack
- or retrieved array elements should affect created string

related to jrubyGH-5505

kares added a commit to kares/jruby that referenced this pull request Dec 11, 2018

[fix] handle pack/unpack tainting based on String input
- pass String instance (when possible) directly to unpack
- or retrieved array elements should affect created string

related to jrubyGH-5505
@@ -857,4 +860,20 @@ def test_unpack1
assert_equal "hogefuga", "aG9nZWZ1Z2E=".unpack1("m")
assert_equal "01000001", "A".unpack1("B*")
end

def test_pack_infection

This comment has been minimized.

Copy link
@kares

kares Dec 11, 2018

Member

fix for pack/unpack tainting is already on master: 1d1bb5d
... but you will need to tag this one since JRuby does not do much with 'P' (or 'p')

This comment has been minimized.

Copy link
@headius

headius Dec 11, 2018

Author Member

I think @enebo was looking into this...maybe it doesn't need to be done.

headius and others added some commits Dec 10, 2018

Taint ARGV values.
This is a new test for ARGV tainting that we never would have
passed, because we don't taint ARGV strings.

Note that MRI always taints all strings that come from "external"
bytes, which is similar to our "external" Java strings. We are
opting to localize this fix to ARGV only due to the unknown impact
of suddenly tainting all strings imported from Java via our
version of the "external" string construction.

https://bugs.ruby-lang.org/issues/14941
zsuper can have any argument changed between original params and when…
… super

is actually invoked.  Therefore we cannot assume any argument which we think
we need to splat is actually in need of splatting.  Simple instanceof checks
solves it.  MRI core tests caught this in stdlib update to 2.5.4.
END blocks can contain return and break. We catch the somewhat weird
IRWrappedLambdaReturnValue exception coming out because END blocks are
internally modelled as closures.  This change also changed this exception
to know whether it had been initiated by break or return.
Pull back on String#each_grapheme allowing single byte optimizable path
so that "\u{0D 0A}" ends up as a single point.
Support key swapping in Hash#transform_keys!.
This also updates Ruby compat version to run post-2.5.1 specs for
this behavior.

https://bugs.ruby-lang.org/issues/14380

@headius headius force-pushed the headius:update_stdlib_2.5 branch from 04c3b9b to abe5c19 Dec 12, 2018

@headius headius referenced this pull request Dec 12, 2018

Open

Backward traces #5510

headius added some commits Dec 12, 2018

Exclude tests and specs for reverse or highlighted MRI trace.
These tests were imported with #5505 and will be reenabled once
@headius

This comment has been minimized.

Copy link
Member Author

headius commented Dec 13, 2018

The final completed build failed because an earlier exclude was accidentally removed. I am merging after having restored that tag.

@headius headius merged commit d03c357 into jruby:master Dec 13, 2018

1 check failed

continuous-integration/travis-ci/pr The Travis CI build could not complete due to an error
Details

@headius headius deleted the headius:update_stdlib_2.5 branch Dec 13, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.