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
Merged

Update stdlib to Ruby 2.5.3. #5505

merged 28 commits into from Dec 13, 2018

Conversation

headius
Copy link
Member

@headius headius commented Dec 10, 2018

No description provided.

@initialized = false
end

def lazy_initialize
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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
- 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
- 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
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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')

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

headius and others added 21 commits December 11, 2018 18:57
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
… 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.
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.
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 mentioned this pull request Dec 12, 2018
@headius
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
@headius headius deleted the update_stdlib_2.5 branch December 13, 2018 01:01
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.

None yet

4 participants