Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: jruby/jruby
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: jruby/jruby
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: ruby-4.1
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 14 commits
  • 42 files changed
  • 3 contributors

Commits on Jul 16, 2026

  1. Implement Proc#refined

    Add Proc#refined(mod1, ...), which returns a new Proc whose body runs
    with the given modules' refinements active. The receiver is unchanged
    and the captured closure environment is shared; only the refinement
    scope differs.
    
    In JRuby whether a call resolves refinements is decided at IR build
    time: CallInstr.create reads scope.maybeUsingRefinements() and, when
    true, builds a RefinedCachingCallSite that captures the static scope.
    So a refinement-aware copy of the receiver proc's IR is required (the
    analog of CRuby recursively deep-copying the block iseq); merely
    swapping an overlay at runtime is not enough.
    
    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
    Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
    shugo and claude committed Jul 16, 2026
    Configuration menu
    Copy the full SHA
    328c587 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2026

  1. Merge pull request #9486 from shugo/proc-with-refinements-ruby-4.1

    Implement Proc#refined
    headius authored Jul 17, 2026
    Configuration menu
    Copy the full SHA
    36738a3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    57bdaee View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    300360a View commit details
    Browse the repository at this point in the history
  4. Remove deprecated ObjectSpace#_id2ref

    Officially removed for Ruby 4.1.
    
    See https://bugs.ruby-lang.org/issues/22135
    headius committed Jul 17, 2026
    Configuration menu
    Copy the full SHA
    d68eeb4 View commit details
    Browse the repository at this point in the history

Commits on Jul 18, 2026

  1. Configuration menu
    Copy the full SHA
    87accb2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5c05b1c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6c73024 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a7406fc View commit details
    Browse the repository at this point in the history
  5. Reduce Proc#refined tests to JRuby-specific ones

    Implementation-agnostic behavior is covered by
    spec/ruby/core/proc/refined_spec.rb (synced from ruby/spec) and by
    CRuby's test/ruby/test_proc.rb (synced as test/mri), so keep only the
    tests tied to JRuby internals: clone retention in the IR lexical
    parent, JIT compilation of the clone, concurrent refine/refined,
    backtrace construction through a top-level clone, and GC survival.
    
    Requested in #9486
    
    Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
    shugo and claude committed Jul 18, 2026
    Configuration menu
    Copy the full SHA
    d9e7fc0 View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2026

  1. Merge pull request #9533 from headius/remote_id2ref

    Remove deprecated ObjectSpace#_id2ref
    headius authored Jul 20, 2026
    Configuration menu
    Copy the full SHA
    bfe1e44 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #9535 from shugo/proc-refined-test-trim

    Reduce Proc#refined tests to JRuby-specific ones
    headius authored Jul 20, 2026
    Configuration menu
    Copy the full SHA
    7bb32af View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2026

  1. Configuration menu
    Copy the full SHA
    5d8c5c3 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2026

  1. Deprecate ruby2_keywords at a Java level

    The ruby2_keywords method will be deprecated for removal in CRuby
    starting with 4.1, with removal currently planned in Ruby 4.5. We
    duplicate the documentation change here in preparation for that
    process.
    headius committed Jul 28, 2026
    Configuration menu
    Copy the full SHA
    ea9e71e View commit details
    Browse the repository at this point in the history
Loading