Skip to content

Internalize and threadsafetify String#unicode_normalize#9232

Merged
headius merged 1 commit intojruby:masterfrom
headius:intern_unicode_normalize
Feb 11, 2026
Merged

Internalize and threadsafetify String#unicode_normalize#9232
headius merged 1 commit intojruby:masterfrom
headius:intern_unicode_normalize

Conversation

@headius
Copy link
Member

@headius headius commented Feb 11, 2026

In CRuby, this code was moved into C in 2017 and the .rb file was removed shortly after (released in Ruby 2.5.0).

This patch does the following:

Fixes #9231 and relates to #6362.

In CRuby, this code was moved into C in 2017 and the .rb file was
removed shortly after (released in Ruby 2.5.0).

This patch does the following:

* Move the script into the JRuby jar so it can be loaded as part of
  our boot logic.
* Fix the race to load UnicodeNormalize by removing the constant
  definition check and restoring the method redefinition (see
  jruby#9231).

Fixes jruby#9231 and relates to jruby#6362.
@headius headius added this to the JRuby 10.0.4.0 milestone Feb 11, 2026
@headius
Copy link
Member Author

headius commented Feb 11, 2026

CRuby changes to move this into C code:

@headius headius merged commit 146ac6a into jruby:master Feb 11, 2026
77 of 78 checks passed
@headius headius deleted the intern_unicode_normalize branch February 11, 2026 22:51
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.

Thread safety of require and implications on stdlib string.normalize()

1 participant