Project

General

Profile

Actions

Bug #19886

closed

"default->bundled gem" warning is not shown under "bundle exec"

Added by mame (Yusuke Endoh) 8 months ago. Updated 5 months ago.

Status:
Closed
Target version:
-
[ruby-core:114785]

Description

$ cat Gemfile
source "https://rubygems.org"

$ cat test.rb
require "base64"

$ bundle exec ruby test.rb

$

In this situation, bundle exec ruby test.rb should print a warning: base64 which will be not part of the default gems since Ruby 3.4.0.

Note that ruby test.rb shows the warning, which is not needed (see #19885).

$ ruby test.rb
test.rb:1: warning: base64 which will be not part of the default gems since Ruby 3.4.0

Updated by hsbt (Hiroshi SHIBATA) 8 months ago

Thank you for reporting this.

I confirmed it. It caused bundle exec ruby couldn't call Bundler.setup.

It's working with that.

$ cat test.rb
#!/usr/bin/env ruby

require "base64"

$ bundle exec test.rb
test.rb:3: warning: base64 will be not part of the default gems since Ruby 3.4.0. Add base64 to your Gemfile. Also contact author of  to add base64 into its gemspec.

bundle exec will call Bundler.setup only script that has ruby shebang.

I'm considering how call Bundler.setup via bundle exec ruby.

Updated by hsbt (Hiroshi SHIBATA) 5 months ago

  • Status changed from Assigned to Closed

I investigate this again.

bundle exec ruby called Bundler.setup. But Gem::BUNDLED_GEMS is not loaded because bundle exec ruby ignore to load gem_prelude.rb. I'm not sure why bundle exec t.rb is load gem_prelude.rb yet.

This is fixed by https://github.com/rubygems/rubygems/pull/7224.

Actions

Also available in: Atom PDF

Like0
Like0Like0