Skip to content

Basic smoke test with warbler no longer works with jruby-jars-9.2.10 #6083

Closed
@deivid-rodriguez

Description

@deivid-rodriguez

Environment Information

  • Jruby version seems unimportant, but the jruby-jars gem version needs to be 9.2.10.0
  • Operating system and platform: Linux x86_64

Expected Behavior

The test is this Github workflow:

https://github.com/rubygems/bundler/blob/c65280dd3f52b4b551bb3bb1ca6ab114d6a4af5c/.github/workflows/jruby.yml

name: jruby

on:
  pull_request:

  push:
    branches:
      - staging
      - trying

jobs:
  warbler:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v1

      - name: Setup ruby
        uses: eregon/use-ruby-action@v1
        with:
          ruby-version: jruby-9.2.9.0

      - name: Install local bundler
        run: bin/rake install:local

      - name: Run a warbler project
        run: |
          cd spec/realworld/fixtures/warbler
          bundle install
          bundle exec warble
          java -jar warbler.jar

which uses the following Gemfile

# frozen_string_literal: true

source "https://rubygems.org"

gem "demo", :path => "./demo"
gem "jruby-jars", "~> 9.2"
gem "warbler", "~> 2.0"

where demo includes a only a dummy gemspec, and bin/warbler-example.rb contains just puts require "bundler/setup".

  • Describe your expectation of how JRuby should behave, perhaps by showing how CRuby/MRI behaves.

Pinning jruby-jars to 9.2.9.0 prints true as expected.

  • Describe or show the actual behavior.

Using jruby-jars 9.2.10.0 instead crashes with the following error:

 Fetching gem metadata from https://rubygems.org/..
Resolving dependencies.....
Fetching rake 13.0.1
Installing rake 13.0.1
Using bundler 2.2.0.dev
Using demo 1.0 from source at `demo`
Fetching jruby-jars 9.2.10.0
Installing jruby-jars 9.2.10.0
Fetching jruby-rack 1.1.21
Installing jruby-rack 1.1.21
Fetching rubyzip 1.3.0
Installing rubyzip 1.3.0
Fetching warbler 2.0.5
Installing warbler 2.0.5
Bundle complete! 3 Gemfile dependencies, 7 gems now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
rm -f warbler.jar
Creating warbler.jar
LoadError: no such file to load -- bundler/shared_helpers
  require at org/jruby/RubyKernel.java:974
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:54
   <main> at uri:classloader:/META-INF/init.rb:21
  require at org/jruby/RubyKernel.java:974
  require at uri:classloader:/META-INF/jruby.home/lib/ruby/stdlib/rubygems/core_ext/kernel_require.rb:54
   <main> at <script>:2
ERROR: org.jruby.embed.EvalFailedException: (LoadError) no such file to load -- bundler/shared_helpers
##[error]Process completed with exit code 1.

Link to CI log: https://github.com/rubygems/bundler/runs/453791482.

I believe this is related to the rubygems upgrade made in jruby-9.2.10.0.

Let me know if this should be tracked/reported somewhere else like the warbler project, or rubygems itself.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions