You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I tried to upgrade this component to the new jruby-base, which has proper dependencies with no uber-JARs (see jruby/jruby#6205 for details).
Here is the patch I tried
diff --git a/pom.xml b/pom.xml
index 840d79a..31198db 100644
--- a/pom.xml+++ b/pom.xml@@ -93,8 +93,8 @@ Institute of Molecular Cell Biology and Genetics.</license.copyrightOwners>
<!-- NB: Deploy releases to the SciJava Maven repository. -->
<releaseProfiles>sign,deploy-to-scijava</releaseProfiles>
- <jruby.version>9.1.17.0</jruby.version>- <jruby-core.version>${jruby.version}</jruby-core.version>+ <jruby.version>9.3.3.0</jruby.version>+ <jruby-base.version>${jruby.version}</jruby-base.version>
<jruby-stdlib.version>${jruby.version}</jruby-stdlib.version>
</properties>
@@ -108,8 +108,8 @@ Institute of Molecular Cell Biology and Genetics.</license.copyrightOwners>
<!-- Third-party dependencies -->
<dependency>
<groupId>org.jruby</groupId>
- <artifactId>jruby-core</artifactId>- <version>${jruby-core.version}</version>+ <artifactId>jruby-base</artifactId>+ <version>${jruby-base.version}</version>
</dependency>
<dependency>
<groupId>org.jruby</groupId>
Unfortunately, the tests then fail as follows:
org.jruby.exceptions.NoMethodError: (NoMethodError) undefined method `getLanguageByName' for nil:NilClass
at RUBY.<main>(hello.rb:3)
[ERROR] Tests run: 3, Failures: 2, Errors: 0, Skipped: 0, Time elapsed: 2.524 s <<< FAILURE! - in org.scijava.plugins.scripting.jruby.JRubyTest
[ERROR] testParameters(org.scijava.plugins.scripting.jruby.JRubyTest) Time elapsed: 0.132 s <<< FAILURE!
java.lang.AssertionError: expected:<Ruby> but was:<null>
at org.scijava.plugins.scripting.jruby.JRubyTest.testParameters(JRubyTest.java:97)
[ERROR] testLocals(org.scijava.plugins.scripting.jruby.JRubyTest) Time elapsed: 0.007 s <<< FAILURE!
java.lang.AssertionError: expected:<17> but was:<null>
at org.scijava.plugins.scripting.jruby.JRubyTest.testLocals(JRubyTest.java:77)
Here are the dependency changes this update causes
diff --git a/before b/after
index c4aca19..ae41d51 100644
--- a/before+++ b/after@@ -1,26 +1,31 @@-com.github.jnr jffi jar 1.2.16 compile-com.github.jnr jffi jar native 1.2.16 compile-com.github.jnr jnr-constants jar 0.9.9 compile-com.github.jnr jnr-enxio jar 0.16 compile-com.github.jnr jnr-netdb jar 1.1.6 compile-com.github.jnr jnr-posix jar 3.0.44 compile-com.github.jnr jnr-unixsocket jar 0.17 compile+com.github.jnr jffi jar 1.3.9 compile+com.github.jnr jffi jar native 1.3.9 compile+com.github.jnr jnr-a64asm jar 1.0.0 compile+com.github.jnr jnr-constants jar 0.10.3 compile+com.github.jnr jnr-enxio jar 0.32.13 compile+com.github.jnr jnr-ffi jar 2.2.11 compile+com.github.jnr jnr-netdb jar 1.2.0 compile+com.github.jnr jnr-posix jar 3.1.15 compile+com.github.jnr jnr-unixsocket jar 0.38.17 compile
com.github.jnr jnr-x86asm jar 1.0.2 compile
-com.headius invokebinder jar 1.10 compile-com.headius modulator jar 1.0 compile-com.headius options jar 1.4 compile-com.headius unsafe-fences jar 1.0 compile+com.headius backport9 jar 1.12 compile+com.headius invokebinder jar 1.12 compile+com.headius options jar 1.6 compile
com.jcraft jzlib jar 1.1.3 compile
-com.martiansoftware nailgun-server jar 0.9.1 compile
joda-time joda-time jar 2.10.1 compile
junit junit jar 4.12 test
+me.qmx.jitescript jitescript jar 0.4.1 compile
org.bushe eventbus jar 1.4 compile
org.hamcrest hamcrest-core jar 1.3 test
-org.jruby.extras bytelist jar 1.0.15 compile-org.jruby.jcodings jcodings jar 1.0.27 compile-org.jruby.joni joni jar 2.1.15 compile+org.jruby.jcodings jcodings jar 1.0.55 compile+org.jruby.joni joni jar 2.1.40 compile
org.jruby dirgra jar 0.3 compile
-org.jruby jruby-core jar 9.1.17.0 compile-org.jruby jruby-stdlib jar 9.1.17.0 compile+org.jruby jruby-base jar 9.3.3.0 compile+org.jruby jruby-stdlib jar 9.3.3.0 compile+org.ow2.asm asm-analysis jar 9.2 compile+org.ow2.asm asm-commons jar 9.2 compile+org.ow2.asm asm-tree jar 9.2 compile+org.ow2.asm asm-util jar 9.2 compile+org.ow2.asm asm jar 9.2 compile
org.scijava parsington jar 1.0.4 compile
org.scijava scijava-common jar 2.77.0 compile
I also tried with jruby-core 9.3.3.0 (i.e. not switching to jruby-base), and the same problem occurs. Dependency-wise though, the newer jruby-core bundles more things internally, so the dependency list becomes quite short in that case.
It must be a change in the behavior of JRuby. Maybe a new bug, or maybe something we need to adjust for. Further investigation needed.
The text was updated successfully, but these errors were encountered:
I tried to upgrade this component to the new jruby-base, which has proper dependencies with no uber-JARs (see jruby/jruby#6205 for details).
Here is the patch I tried
Unfortunately, the tests then fail as follows:
Here are the dependency changes this update causes
I also tried with jruby-core 9.3.3.0 (i.e. not switching to jruby-base), and the same problem occurs. Dependency-wise though, the newer jruby-core bundles more things internally, so the dependency list becomes quite short in that case.
It must be a change in the behavior of JRuby. Maybe a new bug, or maybe something we need to adjust for. Further investigation needed.
The text was updated successfully, but these errors were encountered: