pFad - Phone/Frame/Anonymizer/Declutterfier! Saves Data!


--- a PPN by Garber Painting Akron. With Image Size Reduction included!

URL: http://github.com/jruby/jruby/commit/31cca41db3f7954c94505d625dff5f2a9ddcbf39

/> Merge remote-tracking branch 'origen/jruby-10.0' · jruby/jruby@31cca41 · GitHub
Skip to content

Commit 31cca41

Browse files
committed
Merge remote-tracking branch 'origen/jruby-10.0'
2 parents 0f027c9 + 901cdf9 commit 31cca41

12 files changed

Lines changed: 325 additions & 106 deletions

File tree

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
name: Dist Verification CI
2+
3+
on: [push, pull_request]
4+
5+
env:
6+
JAVA_OPTS: '-XX:+TieredCompilation -XX:TieredStopAtLevel=1 -Xms60M -Xmx1G -XX:InitialCodeCacheSize=40M -XX:ReservedCodeCacheSize=120M'
7+
8+
permissions:
9+
contents: read
10+
11+
jobs:
12+
build-dist:
13+
14+
strategy:
15+
matrix:
16+
java-version: ['21']
17+
fail-fast: false
18+
19+
runs-on: ubuntu-latest
20+
21+
name: Build JRuby dist archive
22+
23+
steps:
24+
- name: checkout
25+
uses: actions/checkout@v3
26+
- name: set up java 21
27+
uses: actions/setup-java@v3
28+
with:
29+
distribution: 'zulu'
30+
java-version: 21
31+
cache: 'maven'
32+
- name: build dist archive
33+
run: |
34+
mvn -ntp clean package -Pdist
35+
mv maven/jruby-dist/target/jruby-dist*-bin.tar.gz jruby-dist-bin.tar.gz
36+
- name: cache dist
37+
uses: actions/upload-artifact@v4
38+
with:
39+
name: jruby-dist
40+
path: jruby-dist-bin.tar.gz
41+
retention-days: 1
42+
43+
rails-verification:
44+
45+
needs: build-dist
46+
47+
strategy:
48+
matrix:
49+
java-version: ['21', '25']
50+
runs-on: [windows-latest, macos-latest, ubuntu-latest]
51+
fail-fast: false
52+
53+
runs-on: ${{ matrix.runs-on }}
54+
55+
name: dist verification on ${{ matrix.runs-on }} (Java ${{ matrix.java-version }})
56+
57+
steps:
58+
- name: checkout
59+
uses: actions/checkout@v3
60+
with:
61+
path: jruby-src
62+
- name: set up java ${{ matrix.java-version }}
63+
uses: actions/setup-java@v3
64+
with:
65+
distribution: 'zulu'
66+
java-version: ${{ matrix.java-version }}
67+
- name: download cached dist
68+
uses: actions/download-artifact@v5
69+
with:
70+
name: jruby-dist
71+
- name: unpack dist
72+
run: tar xzf jruby-dist-bin.tar.gz --strip-components=1
73+
- name: dist verification (Windows)
74+
if: matrix.runs-on == 'windows-latest'
75+
run: echo "${{ github.workspace }}\bin" | Out-File -Append -FilePath $env:GITHUB_PATH -Encoding utf8
76+
- name: set up dist path (Unix)
77+
if: matrix.runs-on != 'windows-latest'
78+
run: echo "$(pwd)/bin" >> $GITHUB_PATH
79+
- name: rails verification
80+
run: jruby jruby-src/tool/rails_runner
81+
- name: syslog verification (Unix)
82+
if: matrix.runs-on != 'windows-latest'
83+
run: jruby -rsyslog -e 1

.github/workflows/windows-verification-ci.yml

Lines changed: 0 additions & 40 deletions
This file was deleted.

bin/.jruby.release

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
<<<<<<< HEAD
12
JRUBY_VERSION=10.1.0.0-SNAPSHOT
3+
=======
4+
JRUBY_VERSION=10.1.0.0-SNAPSHOT
5+
>>>>>>> origen/jruby-10.0
26
JRUBY_MAIN=org.jruby.main.Main
37
JRUBY_MINIMUM_JAVA_VERSION=21

bin/jruby.sh

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -849,7 +849,15 @@ JAVA_OPTS="$JAVA_OPTS ${JAVA_MEM-} ${JAVA_STACK-}"
849849

850850
JFFI_OPTS="-Djffi.boot.library.path=$JRUBY_HOME/lib/jni"
851851

852-
CLASSPATH="${CP-}${CP_DELIMITER}${CLASSPATH-}"
852+
if [ -n "${CP-}" ]; then
853+
if [ -n "${CLASSPATH-}" ]; then
854+
CLASSPATH="${CP-}${CP_DELIMITER}${CLASSPATH-}"
855+
else
856+
CLASSPATH="${CP-}"
857+
fi
858+
else
859+
CLASSPATH="${CLASSPATH-}"
860+
fi
853861

854862
# ----- Module and Class Data Sharing flags for Java 9+ -----------------------
855863

@@ -989,17 +997,22 @@ fi
989997

990998
prepend java_args "$JAVACMD"
991999

1000+
classpath_value=$CLASSPATH
9921001
if $NO_BOOTCLASSPATH || $VERIFY_JRUBY; then
9931002
if $use_modules; then
9941003
# Use module path instead of classpath for the jruby libs
995-
append java_args --module-path "$JRUBY_CP" -classpath "$CLASSPATH"
1004+
append java_args --module-path "$JRUBY_CP"
9961005
else
997-
append java_args -classpath "$JRUBY_CP$CP_DELIMITER$CLASSPATH"
1006+
classpath_value="$JRUBY_CP$CP_DELIMITER$classpath_value"
1007+
# Trim extra delimiter we might have appended
1008+
classpath_value="${classpath_value%"$CP_DELIMITER"}"
9981009
fi
9991010
else
10001011
append java_args -Xbootclasspath/a:"$JRUBY_CP"
1001-
append java_args -classpath "$CLASSPATH"
1002-
append java_args -Djruby.home="$JRUBY_HOME"
1012+
fi
1013+
1014+
if [ -n "$classpath_value" ]; then
1015+
append java_args -classpath "$classpath_value"
10031016
fi
10041017

10051018
append java_args -Djruby.home="$JRUBY_HOME" \

core/src/main/java/org/jruby/RubyBasicObject.java

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2265,9 +2265,22 @@ final RubyBoolean respond_to_p(ThreadContext context, IRubyObject methodName, fi
22652265

22662266
if (getMetaClass().respondsToMethod(name.idString(), !includePrivate, context.getCurrentStaticScope())) return context.tru;
22672267

2268-
Ruby runtime = context.runtime;
2269-
IRubyObject result = sites(context).respond_to_missing.call(context, this, this, name, runtime.newBoolean(includePrivate));
2270-
return context.runtime.newBoolean(result.isTrue());
2268+
IRubyObject respondToMissing = basicObjectRespondToMissing(context, getMetaClass(), this, name, includePrivate);
2269+
if (respondToMissing == UNDEF) return context.fals;
2270+
return asBoolean(context, respondToMissing.isTrue());
2271+
}
2272+
2273+
// MRI: basic_obj_respond_to_missing, sort of
2274+
private IRubyObject basicObjectRespondToMissing(ThreadContext context, RubyClass klass, IRubyObject obj,
2275+
IRubyObject mid, boolean includePrivate)
2276+
{
2277+
CacheEntry entry = sites(context).respond_to_missing.retrieveCache(this);
2278+
2279+
if (!entry.method.isUndefined()) {
2280+
return entry.method.call(context, this, klass, "respond_to_missing?", mid, asBoolean(context, includePrivate));
2281+
}
2282+
2283+
return UNDEF;
22712284
}
22722285

22732286
/**

core/src/main/java/org/jruby/RubyDir.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -234,6 +234,9 @@ private static class GlobOptions {
234234
private static void globOptions(ThreadContext context, IRubyObject[] args, String[] keys, GlobOptions options) {
235235
Ruby runtime = context.runtime;
236236

237+
// just clear callInfo for now; future PR will handle it appropriately
238+
ThreadContext.resetCallInfo(context);
239+
237240
if (args.length > 1) {
238241
IRubyObject tmp = TypeConverter.checkHashType(runtime, args[args.length - 1]);
239242
boolean processFlags = keys == BASE_FLAGS_KEYWORDS;

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad © 2024 Your Company Name. All rights reserved.





Check this box to remove all script contents from the fetched content.



Check this box to remove all images from the fetched content.


Check this box to remove all CSS styles from the fetched content.


Check this box to keep images inefficiently compressed and original size.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy