Skip to content

CI: Use JRuby 9.4.8.0#9654

Merged
jekyllbot merged 1 commit intojekyll:masterfrom
olleolleolle:use-jruby9480
Aug 29, 2024
Merged

CI: Use JRuby 9.4.8.0#9654
jekyllbot merged 1 commit intojekyll:masterfrom
olleolleolle:use-jruby9480

Conversation

@olleolleolle
Copy link
Copy Markdown
Contributor

@olleolleolle olleolleolle commented Aug 29, 2024

This is maintenance PR to keep CI green 💚 .

Summary

This change keeps us using the same JRuby release series, 9.4.

Release blog post:
https://www.jruby.org/2024/07/02/jruby-9-4-8-0.html

Context

Extracted from another PR. #9614

Details:

Error output in JRuby 9.4.0.0, what CI looked like before this change
+ ruby -S bundle exec rake TESTOPTS=--profile test
rake aborted!
LoadError: load error: /home/runner/work/jekyll/jekyll/vendor/bundle/jruby/3.1.0/gems/csv-3.3.0/lib/csv/parser -- java.lang.NoSuchMethodError: 'org.joni.Region org.joni.Region.newRegion(int, int)'
/home/runner/work/jekyll/jekyll/vendor/bundle/jruby/3.1.0/gems/csv-3.3.0/lib/csv.rb:98:in `require_relative'
/home/runner/work/jekyll/jekyll/vendor/bundle/jruby/3.1.0/gems/csv-3.3.0/lib/csv.rb:98:in `<main>'
/home/runner/work/jekyll/jekyll/lib/jekyll.rb:28:in `require'
/home/runner/work/jekyll/jekyll/lib/jekyll.rb:28:in `<main>'
/home/runner/work/jekyll/jekyll/rake/profile.rake:3:in `require'
/home/runner/work/jekyll/jekyll/rake/profile.rake:3:in `<main>'
/home/runner/work/jekyll/jekyll/vendor/bundle/jruby/3.1.0/gems/rake-13.2.1/exe/rake:27:in `<main>'
/home/runner/.rubies/jruby-9.4.0.0/bin/bundle:23:in `load'
/home/runner/.rubies/jruby-9.4.0.0/bin/bundle:23:in `<main>'

Caused by:
Java::JavaLang::NoSuchMethodError: 'org.joni.Region org.joni.Region.newRegion(int, int)'
org.jruby.ext.strscan.RubyStringScanner.initialize(RubyStringScanner.java:135)
org.jruby.ext.strscan.RubyStringScanner.initialize(RubyStringScanner.java:128)
org.jruby.ext.strscan.RubyStringScanner$INVOKER$i$initialize.call(RubyStringScanner$INVOKER$i$initialize.gen)
org.jruby.dist/org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrN.call(JavaMethod.java:967)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:383)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:185)
org.jruby.dist/org.jruby.RubyClass.newInstance(RubyClass.java:904)
org.jruby.dist/org.jruby.RubyClass$INVOKER$i$newInstance.call(RubyClass$INVOKER$i$newInstance.gen)
org.jruby.dist/org.jruby.internal.runtime.methods.JavaMethod$JavaMethodZeroOrOneOrNBlock.call(JavaMethod.java:354)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:372)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:175)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:314)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:76)
org.jruby.dist/org.jruby.ir.instructions.DefineClassInstr.INTERPRET_CLASS(DefineClassInstr.java:89)
org.jruby.dist/org.jruby.ir.instructions.DefineClassInstr.interpret(DefineClassInstr.java:77)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.processOtherOp(StartupInterpreterEngine.java:166)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:98)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:76)
org.jruby.dist/org.jruby.ir.instructions.DefineClassInstr.INTERPRET_CLASS(DefineClassInstr.java:89)
org.jruby.dist/org.jruby.ir.instructions.DefineClassInstr.interpret(DefineClassInstr.java:77)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.processOtherOp(StartupInterpreterEngine.java:166)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:98)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.INTERPRET_ROOT(Interpreter.java:96)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.execute(Interpreter.java:81)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.execute(Interpreter.java:30)
org.jruby.dist/org.jruby.ir.IRTranslator.execute(IRTranslator.java:42)
org.jruby.dist/org.jruby.Ruby.runInterpreter(Ruby.java:1290)
org.jruby.dist/org.jruby.Ruby.loadFile(Ruby.java:2944)
org.jruby.dist/org.jruby.runtime.load.LibrarySearcher$ResourceLibrary.load(LibrarySearcher.java:925)
org.jruby.dist/org.jruby.runtime.load.LibrarySearcher$FoundLibrary.load(LibrarySearcher.java:883)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:76)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:164)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:151)
org.jruby.dist/org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:212)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:351)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:144)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:346)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115)
org.jruby.dist/org.jruby.RubyClass.finvokeWithRefinements(RubyClass.java:522)
org.jruby.dist/org.jruby.RubyBasicObject.send(RubyBasicObject.java:1687)
org.jruby.dist/org.jruby.RubyBasicObject$INVOKER$i$send.call(RubyBasicObject$INVOKER$i$send.gen)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:329)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:87)
org.jruby.dist/org.jruby.ir.instructions.CallBase.interpret(CallBase.java:561)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:363)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:329)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:87)
org.jruby.dist/org.jruby.ir.instructions.CallBase.interpret(CallBase.java:561)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:363)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:88)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:238)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:225)
org.jruby.dist/org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:228)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:393)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:206)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:324)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115)
org.jruby.dist/org.jruby.ir.runtime.IRRuntimeHelpers.unresolvedSuper(IRRuntimeHelpers.java:1388)
org.jruby.dist/org.jruby.ir.runtime.IRRuntimeHelpers.unresolvedSuperIter(IRRuntimeHelpers.java:1397)
org.jruby.dist/org.jruby.ir.instructions.ClassSuperInstr.interpret(ClassSuperInstr.java:103)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:363)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:329)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:87)
org.jruby.dist/org.jruby.ir.instructions.CallBase.interpret(CallBase.java:561)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:363)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115)
org.jruby.dist/org.jruby.ir.runtime.IRRuntimeHelpers.unresolvedSuper(IRRuntimeHelpers.java:1388)
org.jruby.dist/org.jruby.ir.instructions.ClassSuperInstr.interpret(ClassSuperInstr.java:105)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:363)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.interpret(InterpreterEngine.java:88)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:238)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:225)
org.jruby.dist/org.jruby.internal.runtime.methods.DynamicMethod.call(DynamicMethod.java:228)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:393)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:206)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:324)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.INTERPRET_BLOCK(Interpreter.java:116)
org.jruby.dist/org.jruby.runtime.MixedModeIRBlockBody.commonYieldPath(MixedModeIRBlockBody.java:136)
org.jruby.dist/org.jruby.runtime.IRBlockBody.yieldSpecific(IRBlockBody.java:76)
org.jruby.dist/org.jruby.runtime.Block.yieldSpecific(Block.java:157)
org.jruby.dist/org.jruby.ir.runtime.IRRuntimeHelpers.yieldSpecific(IRRuntimeHelpers.java:497)
org.jruby.dist/org.jruby.ir.instructions.YieldInstr.interpret(YieldInstr.java:80)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.processOtherOp(StartupInterpreterEngine.java:166)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:98)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.INTERPRET_METHOD(MixedModeIRMethod.java:128)
org.jruby.dist/org.jruby.internal.runtime.methods.MixedModeIRMethod.call(MixedModeIRMethod.java:115)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:329)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:87)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.callIter(CachingCallSite.java:94)
org.jruby.dist/org.jruby.ir.instructions.CallBase.interpret(CallBase.java:558)
org.jruby.dist/org.jruby.ir.interpreter.InterpreterEngine.processCall(InterpreterEngine.java:363)
org.jruby.dist/org.jruby.ir.interpreter.StartupInterpreterEngine.interpret(StartupInterpreterEngine.java:66)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.INTERPRET_ROOT(Interpreter.java:96)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.execute(Interpreter.java:81)
org.jruby.dist/org.jruby.ir.interpreter.Interpreter.execute(Interpreter.java:30)
org.jruby.dist/org.jruby.ir.IRTranslator.execute(IRTranslator.java:42)
org.jruby.dist/org.jruby.Ruby.runInterpreter(Ruby.java:1290)
org.jruby.dist/org.jruby.Ruby.loadFile(Ruby.java:2944)
org.jruby.dist/org.jruby.runtime.load.LibrarySearcher$ResourceLibrary.load(LibrarySearcher.java:925)
org.jruby.dist/org.jruby.runtime.load.LibrarySearcher$FoundLibrary.load(LibrarySearcher.java:883)
org.jruby.dist/org.jruby.runtime.load.LoadService.load(LoadService.java:380)
org.jruby.dist/org.jruby.RubyKernel.loadCommon(RubyKernel.java:1121)
org.jruby.dist/org.jruby.RubyKernel.load(RubyKernel.java:1091)
org.jruby.dist/org.jruby.RubyKernel$INVOKER$s$load.call(RubyKernel$INVOKER$s$load.gen)
org.jruby.dist/org.jruby.internal.runtime.methods.JavaMethod$JavaMethodOneOrNBlock.call(JavaMethod.java:422)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.cacheAndCall(CachingCallSite.java:372)
org.jruby.dist/org.jruby.runtime.callsite.CachingCallSite.call(CachingCallSite.java:175)
home.runner.$_dot_rubies.jruby_minus_9_dot_4_dot_0_dot_0.bin.bundle.invokeOther11:load(/home/runner/.rubies/jruby-9.4.0.0/bin/bundle:23)
home.runner.$_dot_rubies.jruby_minus_9_dot_4_dot_0_dot_0.bin.bundle.RUBY$script(/home/runner/.rubies/jruby-9.4.0.0/bin/bundle:23)
home.runner.$_dot_rubies.jruby_minus_9_dot_4_dot_0_dot_0.bin.bundle.run(/home/runner/.rubies/jruby-9.4.0.0/bin/bundle)
java.base/java.lang.invoke.MethodHandle.invokeWithArguments(MethodHandle.java:710)
org.jruby.dist/org.jruby.ir.Compiler$1.load(Compiler.java:114)
org.jruby.dist/org.jruby.Ruby.runScript(Ruby.java:1277)
org.jruby.dist/org.jruby.Ruby.runNormally(Ruby.java:1194)
org.jruby.dist/org.jruby.Ruby.runNormally(Ruby.java:1176)
org.jruby.dist/org.jruby.Ruby.runNormally(Ruby.java:1212)
org.jruby.dist/org.jruby.Ruby.runFromMain(Ruby.java:991)
org.jruby.dist/org.jruby.Main.doRunFromMain(Main.java:398)
org.jruby.dist/org.jruby.Main.internalRun(Main.java:282)
org.jruby.dist/org.jruby.Main.run(Main.java:227)
org.jruby.dist/org.jruby.Main.main(Main.java:199)
(See full trace by running task with --trace)

real	0m5.152s
user	0m16.174s
sys	0m0.554s

This change keeps us using the same release series, 9.4.

https://www.jruby.org/2024/07/02/jruby-9-4-8-0.html
@ashmaroli
Copy link
Copy Markdown
Member

Will merge if @monfresh has no issues with the extraction from his older pull request.

@monfresh
Copy link
Copy Markdown
Contributor

No objections. I will remove it from my PR.

@ashmaroli
Copy link
Copy Markdown
Member

Thanks @monfresh and @olleolleolle
@jekyllbot: merge +dev

@jekyllbot jekyllbot merged commit 2445bd9 into jekyll:master Aug 29, 2024
jekyllbot added a commit that referenced this pull request Aug 29, 2024
github-actions bot pushed a commit that referenced this pull request Aug 29, 2024
Olle Jonsson: CI: Use JRuby 9.4.8.0 (#9654)

Merge pull request 9654
@olleolleolle olleolleolle deleted the use-jruby9480 branch August 29, 2024 15:20
@jekyll jekyll locked and limited conversation to collaborators Aug 29, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants