Feature #19843
closed
- Related to Feature #19776: Warn bundled gems when it called from `require` added
@hsbt (Hiroshi SHIBATA) I agree with you. I've wanted to make bigdecimal a bundled gem for a long time but I didn't have much time to work for it. Thank you very much.
- Status changed from Open to Closed
- Tracker changed from Bug to Feature
- Backport deleted (
3.0: UNKNOWN, 3.1: UNKNOWN, 3.2: UNKNOWN)
It would be appreciate if this decicions is reconsideed because adding the bigdecimal to the gemspec will install the same version, like 3.1.4 as of today, for all users regardless of which Ruby versions are used.
-
The Rails main branch supports Ruby 2.7.0 or higher.
-Ruby 2.7 installs BigDecimal 2.0.0 as one of the default gems, while Ruby 3.0 installs BigDecimal 3.0.0 as one of the default gems.
These versions are older than the latest bigdecimal version 3.1.4 from a major and minor version perspective.
-
There are some notable changes from the Rails point of view since BigDecimal 3.1.0.
a. BigDecimal behavior change in 3.1.0
https://github.com/ruby/bigdecimal/pull/180
https://github.com/rails/rails/pull/41115
b. BigDecimal behavior change in master, will be part of 3.1.5
https://github.com/ruby/bigdecimal/pull/264
https://github.com/rails/rails/pull/48693
-
Gem users have no way to specify the gem version added via the add_dependency method based on the Ruby version they use.
Here, I'm not saying whether these changes are good or not, but I want to say that some Ruby 2.7/3.0 users would expect BigDecimal 2.0 and 3.0 behavior as the default gem does.
Thanks,
- Status changed from Closed to Assigned
I'm going to open a pull request to Rails that inform that BigDecimal version added as add_dependency will be 3.1.4 or higher. If Ruby 2.7 and 3.0 users and want BigDecimal as their default gem, they can pin the BigDecimal version to the applications Gemfile.
- Status changed from Assigned to Closed
@yahonda (Yasuo Honda) Thank you for sharing this.
I miss-understood how detect default gems version with RubyGems/Bundler. I expect that bundler detect and install version of default gems like bigdecimal-2.0.0 at Ruby 2.7.
I know maintenance policy of Rails 7.0 and 7.1. But Ruby 2.7 is already EOL.
If Ruby 2.7 and 3.0 users and want BigDecimal as their default gem, they can pin the BigDecimal version to the applications Gemfile.
I appreciate to your work for Ruby 2.7 users.
Also available in: Atom
PDF
Like1
Like0Like0Like0Like0Like0Like0Like0Like0Like0