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.