From: tad.a.digger@... Date: 2019-01-19T05:50:27+00:00 Subject: [ruby-core:91170] [Ruby trunk Bug#15469] Ruby2.6 included `bundler` does not handle specified `csv` gem. Issue #15469 has been updated by tad (Tadashi Saito). I could reproduce too with "Test code". Also, I could reproduce with simpler code below. ### Gemfile ``` ruby source "https://rubygems.org" gem "csv", "1.0.0" ``` ### test.rb ```ruby require "csv" p csv: CSV::VERSION ``` ### results ```sh $ ruby2.6 -v && bundle2.6 -v ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-linux] Bundler version 1.17.2 $ bundle2.6 exec ruby2.6 test.rb {:csv=>"3.0.2"} # expects "2.4.8" for 1.0.0 gem https://github.com/ruby/csv/blob/v1.0.0/lib/csv.rb#L211 ``` In addition, it does not seem to be limited to "csv" gem. I confirmed that the same problem occurs with "json". ---------------------------------------- Bug #15469: Ruby2.6 included `bundler` does not handle specified `csv` gem. https://bugs.ruby-lang.org/issues/15469#change-76399 * Author: watson1978 (Shizuo Fujita) * Status: Assigned * Priority: Normal * Assignee: hsbt (Hiroshi SHIBATA) * Target version: * ruby -v: * Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN ---------------------------------------- I want to use `csv` library which is same version of Ruby 2.5. Because Ruby 2.6's csv library has some breaking changes and they break our product. However, Ruby 2.6's `bundler` does not handle `csv` which I specified the version. ## Test code * Gemfile ``` source "https://rubygems.org" gem 'roo' gem 'csv', '1.0.0' ``` * test.rb ``` require "bundler/setup" require "csv" p CSV::VERSION ``` ## Result ``` $ bundle exec ruby -v test.rb ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18] "3.0.2" ``` `CSV::VERSION` shows `3.0.2` and it indicates that Ruby 2.6 included `csv` library was used. ## Workaround If I install the `bundler` gem through `gem install bundler`, it works well. ``` $ gem install bundler Fetching bundler-1.17.3.gem Successfully installed bundler-1.17.3 1 gem installed $ bundle exec ruby -v test.rb ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18] "2.4.8" ``` -- https://bugs.ruby-lang.org/ Unsubscribe: