Project

General

Profile

Feature #14217

Updated by nobu (Nobuyoshi Nakada) over 3 years ago

## Problem 
 When ruby is in release candidate or preview, `RUBY_PATCHLEVEL` ```RUBY_PATCHLEVEL``` is `-1`. ```-1```. Without parsing `RUBY_DESCRIPTION`, ```RUBY_DESCRIPTION```, its hard to tell using constant the right and absolute ruby version. 

 ## Proposal 
 Expose `RUBY_PATCHLEVEL_STR` RUBY_PATCHLEVEL_STR as a constant, just like `RUBY_VERSION` ```RUBY_VERSION``` or `RUBY_PATCHLEVEL`. ```RUBY_PATCHLEVEL```. So that, we can know the right ruby version, especially when its in preview or release candidate. This is also helpful when using gems that rely on    `RUBY_PATCHLEVEL` ```RUBY_PATCHLEVEL``` and    `RUBY_VERSION` ```RUBY_VERSION``` to serve the right experience. Example: Bundler, which validates gem installation by making sure right ruby is installed. Currently, we cannot install gems using 2.5.0preview1. 


 ~~~ 
 Your Ruby version is 2.5.0, but your Gemfile specified 2.5.0preview1 
 ~~~ 

 This can be handled in bundler through some different wokraround, but I think by exposing `RUBY_PATCHLEVEL_STR`, ```RUBY_PATCHLEVEL_STR```, it will be helpful in building the appropriate solutions.

Back