Skip to content

Commit b46f2c8

Browse files
committed
Merge remote-tracking branch 'upstream/master' into jakarta-update
# Conflicts: # pom.xml # src/main/java/org/jruby/rack/jms/DefaultQueueManager.java # src/main/java/org/jruby/rack/jms/QueueContextListener.java # src/main/java/org/jruby/rack/jms/QueueManager.java # src/main/java/org/jruby/rack/servlet/ResponseCapture.java # src/main/java/org/jruby/rack/servlet/RewindableInputStream.java # src/main/java/org/jruby/rack/servlet/ServletRackIncludedResponse.java # src/main/ruby/jruby/rack/queues.rb # src/spec/java/org/jruby/rack/mock/DelegatingServletInputStream.java # src/spec/java/org/jruby/rack/mock/DelegatingServletOutputStream.java # src/spec/java/org/jruby/rack/mock/MockAsyncContext.java # src/spec/java/org/jruby/rack/mock/MockHttpServletRequest.java # src/spec/java/org/jruby/rack/mock/MockHttpServletResponse.java # src/spec/java/org/jruby/rack/mock/MockHttpSession.java # src/spec/java/org/jruby/rack/mock/MockRequestDispatcher.java # src/spec/java/org/jruby/rack/mock/MockServletConfig.java # src/spec/java/org/jruby/rack/mock/MockServletContext.java # src/spec/java/org/jruby/rack/mock/MockSessionCookieConfig.java # src/spec/java/org/jruby/rack/mock/WebUtils.java # src/spec/ruby/jruby/rack/servlet_ext_spec.rb # src/spec/ruby/rack/jms_spec.rb
2 parents 576c7a6 + 6f2bfd9 commit b46f2c8

File tree

291 files changed

+2588
-10734
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

291 files changed

+2588
-10734
lines changed

.github/dependabot.yml

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: github-actions
4+
directory: "/"
5+
schedule:
6+
interval: monthly
7+
groups:
8+
actions-deps:
9+
patterns: [ "*" ]
10+
- package-ecosystem: maven
11+
directory: "/"
12+
schedule:
13+
interval: monthly
14+
groups:
15+
maven-deps:
16+
dependency-type: "production"
17+
maven-dev-deps:
18+
dependency-type: "development"
19+
ignore:
20+
- dependency-name: "org.jruby*"
21+
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
22+
- dependency-name: "jakarta*"
23+
update-types: [ "version-update:semver-major" ]
24+
- dependency-name: "javax*"
25+
update-types: [ "version-update:semver-major", "version-update:semver-minor" ]
26+
- dependency-name: "org.springframework*"
27+
update-types: [ "version-update:semver-major" ]
28+
- package-ecosystem: bundler
29+
directories:
30+
- "/"
31+
schedule:
32+
interval: monthly
33+
allow:
34+
- dependency-type: all
35+
groups:
36+
ruby-deps:
37+
patterns: [ "*" ]
38+
ignore:
39+
- dependency-name: "rack"
40+
update-types: [ "version-update:semver-major" ]

.github/workflows/maven.yml

Lines changed: 62 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,15 @@
1-
# This workflow will build a Java project with Maven, and cache/restore any dependencies to improve the workflow execution time
2-
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-maven
3-
4-
# This workflow uses actions that are not certified by GitHub.
5-
# They are provided by a third-party and are governed by
6-
# separate terms of service, privacy policy, and support
7-
# documentation.
8-
9-
name: Java CI with Maven
1+
name: Java CI
102

113
on:
124
push:
13-
branches: [ "master" ]
5+
branches: [ "master", "*-stable" ]
146
pull_request:
15-
branches: [ "master" ]
7+
branches: [ "master", "*-stable" ]
8+
9+
env:
10+
# Default versions for canonical release build
11+
DEFAULT_JAVA_VERSION: '17'
12+
DEFAULT_JRUBY_VERSION: '9.4.13.0' # Should match pom.xml <jruby.version> property (AND a version inside the test matrix)
1613

1714
jobs:
1815
build:
@@ -21,22 +18,69 @@ jobs:
2118

2219
strategy:
2320
matrix:
24-
java_version: [ '8', '11', '17', '21' ]
25-
jruby_version: [ '9.3.15.0', '9.4.9.0' ]
21+
jruby_version: [ '9.4.13.0', '10.0.0.1' ]
22+
java_version: [ '17', '21' ]
23+
exclude:
24+
- jruby_version: '10.0.0.1'
25+
java_version: '17' # JRuby 10 requires Java 21
2626
fail-fast: false
2727

2828
steps:
29-
- uses: actions/checkout@v4
29+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
30+
3031
- name: Set up JDK
31-
uses: actions/setup-java@v4
32+
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
3233
with:
3334
java-version: ${{ matrix.java_version }}
3435
distribution: 'temurin'
3536
cache: maven
37+
3638
- name: Build with Maven
37-
run: mvn -B install --file pom.xml -Djruby.version=${{ matrix.jruby_version }}
39+
run: mvn -B install -Djruby.version=${{ matrix.jruby_version }}
3840

3941
# Uploads the full dependency graph to GitHub to improve the quality of Dependabot alerts this repository can receive
4042
- name: Update dependency graph
41-
uses: advanced-security/maven-dependency-submission-action@571e99aab1055c2e71a1e2309b9691de18d6b7d6
42-
if: github.head_ref == 'refs/heads/master' && matrix.java_version == '8' && startsWith(matrix.jruby_version, '9.4')
43+
uses: advanced-security/maven-dependency-submission-action@b275d12641ac2d2108b2cbb7598b154ad2f2cee8 # v5.0.0
44+
if: github.head_ref == 'refs/heads/master' && matrix.java_version == env.DEFAULT_JAVA_VERSION && matrix.jruby_version == env.DEFAULT_JRUBY_VERSION
45+
46+
appraisals:
47+
needs: build
48+
name: ${{ matrix.appraisal }} appraisal on ${{ matrix.jruby_version }} / Java ${{ matrix.java_version }}
49+
runs-on: ubuntu-latest
50+
51+
strategy:
52+
matrix:
53+
jruby_version: [ '9.4.13.0', '10.0.0.1' ]
54+
java_version: [ '17', '21' ]
55+
appraisal: [ 'rails50', 'rails52', 'rails60', 'rails61', 'rails70', 'rails71', 'rails72', 'rails80' ]
56+
exclude:
57+
- jruby_version: '9.4.13.0'
58+
appraisal: 'rails80' # Requires Ruby 3.4 compatibility, which JRuby 9.4 does not support
59+
- jruby_version: '10.0.0.1'
60+
java_version: '17' # JRuby 10 requires Java 21
61+
fail-fast: false
62+
63+
env:
64+
BUNDLE_GEMFILE: gemfiles/${{ matrix.appraisal }}.gemfile
65+
JRUBY_VERSION: ${{ matrix.jruby_version }}
66+
67+
steps:
68+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
69+
70+
- name: Set up JDK
71+
uses: actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
72+
with:
73+
java-version: ${{ matrix.java_version }}
74+
distribution: 'temurin'
75+
cache: maven
76+
77+
- name: Setup JRuby
78+
uses: ruby/setup-ruby@472790540115ce5bd69d399a020189a8c87d641f # v1.247.0
79+
with:
80+
ruby-version: jruby-${{ matrix.jruby_version }}
81+
bundler-cache: 'false' # Need to install later so we can vary from Gemfile.lock as required for JRuby version compatibility
82+
bundler: 'Gemfile.lock'
83+
84+
- name: Run appraisal for ${{ matrix.appraisal }}
85+
run: bundle install && bundle exec rake spec
86+

0 commit comments

Comments
 (0)