
Issue #19687 has been updated by jaruga (Jun Aruga).
Could you show the output of gem list | grep stringio?
Sure. Below is the result. ``` $ which gem ~/.local/ruby-bd786e7896/bin/gem $ gem list | grep stringio stringio (default: 3.0.7) ``` I was able to reproduce this on the latest master branch `78e9197f4a01676ab194d014d20c3ba4e9a1ee87` in the ruby/opnessl. ``` $ git remote -v | grep origin origin git@github.com:ruby/openssl.git (fetch) origin git@github.com:ruby/openssl.git (push) $ git log --pretty=oneline | head -1 78e9197f4a01676ab194d014d20c3ba4e9a1ee87 Merge pull request #623 from junaruga/wip/enable-mkmf-verbose $ bundle install --standalone Fetching gem metadata from https://rubygems.org/......... Resolving dependencies... Fetching rake 13.0.6 Installing rake 13.0.6 Using bundler 2.5.0.dev Using openssl 3.1.0 from source at `.` Fetching power_assert 2.0.3 stringio-3.0.7 is built in to Ruby, and can't be cached because your Gemfile doesn't have any sources that contain it. Fetching rake-compiler 1.2.1 Installing power_assert 2.0.3 Fetching test-unit 3.5.8 Installing rake-compiler 1.2.1 Installing test-unit 3.5.8 Bundler::GemNotFound: Could not find stringio-3.0.7.gem for installation /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/source/rubygems.rb:157:in `install' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:54:in `install' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:16:in `install_from_spec' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:156:in `do_install' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:147:in `block in worker_pool' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:62:in `apply_func' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:57:in `block in process_queue' <internal:kernel>:187:in `loop' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:54:in `process_queue' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:90:in `block (2 levels) in create_threads' An error occurred while installing stringio (3.0.7), and Bundler cannot continue. In Gemfile: rdoc was resolved to 6.5.0, which depends on psych was resolved to 5.1.0, which depends on stringio ``` ---------------------------------------- Bug #19687: Should a development version of the standard library be included in ruby/ruby? https://bugs.ruby-lang.org/issues/19687#change-103253 * Author: jaruga (Jun Aruga) * Status: Feedback * Priority: Normal * Assignee: kou (Kouhei Sutou) * ruby -v: ruby 3.3.0dev (2023-05-22T03:58:17Z master bd786e7896) [x86_64-linux] * Backport: 3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN ---------------------------------------- The `stringio` gem uses the value of the `STRINGIO_VERSION` as the gem version. https://github.com/ruby/ruby/blob/31ac8efca8ecb574e1e7b7c32cce54cb1b97f19a/e... https://github.com/ruby/ruby/blob/31ac8efca8ecb574e1e7b7c32cce54cb1b97f19a/e... ``` #define STRINGIO_VERSION "3.0.7" ``` It seems that that `stringio` on the current master branch in ruby/ruby sets the version 3.0.7 that doesn't exist in the RubyGems <https://rubygems.org/gems/stringio> by the commit <https://github.com/ruby/ruby/commit/67743d582317544d2c830b63d3423b04bad185a7>. And I see that this causes raising an error when running `bundle install` on ruby/openssl with Ruby on the master branch. I captured the `Gemeifile.lock` by `bundle lock`. And I see the `rdoc` depending on `psych` depending on `stringio`. The workaround was to add `gem "stringio", "< 3.0.7"` to the `Gemfile`. However, it's not convenient. Is it an expected behavior? Or should the ruby/ruby always merge the static version of the ruby/* (upstream standard libraries such as "stringio") rater than the development version? ``` $ which ruby ~/.local/ruby-bd786e7896/bin/ruby $ ruby -v ruby 3.3.0dev (2023-05-22T03:58:17Z master bd786e7896) [x86_64-linux] $ pwd /home/jaruga/git/ruby/openssl $ bundle install --standalone ... stringio-3.0.7 is built in to Ruby, and can't be cached because your Gemfile doesn't have any sources that contain it. ... Bundler::GemNotFound: Could not find stringio-3.0.7.gem for installation /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/source/rubygems.rb:157:in `install' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:54:in `install' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/gem_installer.rb:16:in `install_from_spec' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:156:in `do_install' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/installer/parallel_installer.rb:147:in `block in worker_pool' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:62:in `apply_func' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:57:in `block in process_queue' <internal:kernel>:187:in `loop' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:54:in `process_queue' /home/jaruga/.local/ruby-bd786e7896/lib/ruby/3.3.0+0/bundler/worker.rb:90:in `block (2 levels) in create_threads' An error occurred while installing stringio (3.0.7), and Bundler cannot continue. ``` -- https://bugs.ruby-lang.org/