ruby / ruby/cgi

CI: JRuby test suite fails to compile

Abierto
#59 1 comentario 0 reacciones 1 asignado Ver en GitHub

@headius ya está trabajando en esto.

Desde el 24/4/2025.

Lenguaje dominante
Ruby
Estrellas
55
Forks
33
Merge medio
7 d 3 h
PR fusionados (30 d)
1

Descripción

This is a sign-post issue. jruby-head does not currently build right.

The setup-ruby step say this:

Modifying JAVA_HOME for JRuby
  attempting to run with existing JAVA_HOME
  /usr/lib/jvm/temurin-17-jdk-amd64/bin/java -jar /home/runner/.rubies/jruby-head/lib/jruby.jar --version
  Error: LinkageError occurred while loading main class org.jruby.Main
  	java.lang.UnsupportedClassVersionError: org/jruby/Main has been compiled by a more recent version of the Java Runtime (class file version 65.0), this version of the Java Runtime only recognizes class file versions up to 61.0
mkdir -p tmp/java/escape
javac -target 1.8 -source 1.8 -Xlint -d tmp/java/escape -cp /home/runner/.rubies/jruby-head/lib/jruby.jar ext/java/org/jruby/ext/cgi/escape/CGIEscape.java
warning: [options] bootstrap class path not set in conjunction with -source 8
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:35: error: cannot access Ruby
import org.jruby.Ruby;
                ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/Ruby.class)
    class file has wrong version 65.0, should be 61.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:36: error: cannot access RubyClass
import org.jruby.RubyClass;
                ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/RubyClass.class)
    class file has wrong version 65.0, should be 61.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:37: error: cannot access RubyEncoding
import org.jruby.RubyEncoding;
                ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/RubyEncoding.class)
    class file has wrong version 65.0, should be 61.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:38: error: cannot access RubyModule
import org.jruby.RubyModule;
                ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/RubyModule.class)
    class file has wrong version 65.0, should be 61.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:39: error: cannot access RubyString
import org.jruby.RubyString;
                ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/RubyString.class)
    class file has wrong version 65.0, should be 61.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:40: error: cannot access JRubyMethod
import org.jruby.anno.JRubyMethod;
                     ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/anno/JRubyMethod.class)
    class file has wrong version 65.0, should be 61.0
    Please remove or make sure it appears in the correct subdirectory of the classpath.
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:41: error: cannot access Block
import org.jruby.runtime.Block;
                        ^
  bad class file: /home/runner/.rubies/jruby-head/lib/jruby.jar(/org/jruby/runtime/Block.class)
    class file has wrong version 65.0, should be 61.0
  symbol:   variable RubyString
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:329: error: cannot find symbol
        RubyString dest = null;
        ^
  symbol:   class RubyString
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:333: error: cannot find symbol
        Encoding origenc, encidx = EncodingUtils.rbToEncoding(context, encoding);
                                   ^
  symbol:   variable EncodingUtils
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:336: error: cannot find symbol
        ByteList byteList = str.getByteList();
        ^
  symbol:   class ByteList
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:341: error: cannot find symbol
        Ruby runtime = context.runtime;
        ^
  symbol:   class Ruby
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:360: error: cannot find symbol
                dest = RubyString.newStringLight(runtime, len);
                       ^
  symbol:   variable RubyString
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:373: error: cannot find symbol
            cr = StringSupport.CR_UNKNOWN;
                 ^
  symbol:   variable StringSupport
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:381: error: cannot find symbol
            if (StringSupport.encCoderangeClean(dest.getCodeRange()) == 0) {
                ^
  symbol:   variable StringSupport
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:383: error: cannot find symbol
                if (cr != StringSupport.CR_UNKNOWN)
                          ^
  symbol:   variable StringSupport
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:399: error: cannot find symbol
        RubyString str = _str.convertToString();
        ^
  symbol:   class RubyString
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:404: error: cannot find symbol
            return Helpers.invokeSuper(context, self, _str, Block.NULL_BLOCK);
                                                            ^
  symbol:   variable Block
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:404: error: cannot find symbol
            return Helpers.invokeSuper(context, self, _str, Block.NULL_BLOCK);
                   ^
  symbol:   variable Helpers
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:417: error: cannot find symbol
        RubyString str = _str.convertToString();
        ^
  symbol:   class RubyString
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:422: error: cannot find symbol
            return Helpers.invokeSuper(context, self, _str, Block.NULL_BLOCK);
                                                            ^
  symbol:   variable Block
  location: class CGIEscape
ext/java/org/jruby/ext/cgi/escape/CGIEscape.java:422: error: cannot find symbol
            return Helpers.invokeSuper(context, self, _str, Block.NULL_BLOCK);
                   ^
  symbol:   variable Helpers
  location: class CGIEscape
100 errors
1 warning
only showing the first 100 errors, of 119 total; use -Xmaxerrs if you would like to see more
rake aborted!
Command failed with status (1): [javac -target 1.8 -source 1.8 -Xlint -d tmp/java/escape -cp /home/runner/.rubies/jruby-head/lib/jruby.jar ext/java/org/jruby/ext/cgi/escape/CGIEscape.java]

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.