ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:92408] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
@ 2019-04-25 15:44 ` headius
  2019-04-25 18:44 ` [ruby-core:92411] " Greg.mpls
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: headius @ 2019-04-25 15:44 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been reported by headius (Charles Nutter).

----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [ruby-core:92411] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
  2019-04-25 15:44 ` [ruby-core:92408] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value headius
@ 2019-04-25 18:44 ` Greg.mpls
  2019-04-27 19:49 ` [ruby-core:92445] " eregontp
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: Greg.mpls @ 2019-04-25 18:44 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been updated by MSP-Greg (Greg L).


I always consider `RbConfig::CONFIG['ruby_version']` as the ABI version, which is used in naming `--user-install` gem folders, etc.

If the version with 'teeny' was used, one would be recompiling extension gems everytime a minor release was done?


----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791#change-77768

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [ruby-core:92445] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
  2019-04-25 15:44 ` [ruby-core:92408] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value headius
  2019-04-25 18:44 ` [ruby-core:92411] " Greg.mpls
@ 2019-04-27 19:49 ` eregontp
  2019-04-29 22:17 ` [ruby-core:92485] " headius
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: eregontp @ 2019-04-27 19:49 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been updated by Eregon (Benoit Daloze).


Indeed, AFAIK it's the ABI version.

MSP-Greg (Greg L) wrote:
> If the version with 'teeny' was used, one would be recompiling extension gems everytime a 'teeny' release was done?

Which IMHO is a safer thing to do, but I suppose some people disagree and it depends on the point of view :)

FWIW, I created https://github.com/postmodern/chruby/pull/410 so `chruby` would have a set of gems per installed Ruby version,
even if `RUBY_VERSION` or `RbConfig::CONFIG["ruby_version"]` doesn't change for alternative Ruby implementations between two releases.

----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791#change-77796

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [ruby-core:92485] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
                   ` (2 preceding siblings ...)
  2019-04-27 19:49 ` [ruby-core:92445] " eregontp
@ 2019-04-29 22:17 ` headius
  2019-05-01 16:22 ` [ruby-core:92517] " Greg.mpls
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 7+ messages in thread
From: headius @ 2019-04-29 22:17 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been updated by headius (Charles Nutter).


MSP-Greg (Greg L) wrote:
> I always consider `RbConfig::CONFIG['ruby_version']` as the ABI version, which is used in naming `--user-install` gem folders, etc.
> 
> If the version with 'teeny' was used, one would be recompiling extension gems everytime a 'teeny' release was done?

Then why does it include `.0` at all?

----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791#change-77830

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [ruby-core:92517] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
                   ` (3 preceding siblings ...)
  2019-04-29 22:17 ` [ruby-core:92485] " headius
@ 2019-05-01 16:22 ` Greg.mpls
  2019-05-19  8:21 ` [ruby-core:92721] " v.ondruch
  2019-06-27 20:50 ` [ruby-core:93389] " headius
  6 siblings, 0 replies; 7+ messages in thread
From: Greg.mpls @ 2019-05-01 16:22 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been updated by MSP-Greg (Greg L).


I assume it was decided a long time ago.  1.9.3 has a value of 1.9.1.

Maybe a decision was made later that ABI versions would only change on minor releases?

----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791#change-77881

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [ruby-core:92721] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
                   ` (4 preceding siblings ...)
  2019-05-01 16:22 ` [ruby-core:92517] " Greg.mpls
@ 2019-05-19  8:21 ` v.ondruch
  2019-06-27 20:50 ` [ruby-core:93389] " headius
  6 siblings, 0 replies; 7+ messages in thread
From: v.ondruch @ 2019-05-19  8:21 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been updated by vo.x (Vit Ondruch).


ruby_version is user configurable variable:

https://github.com/ruby/ruby/blob/trunk/configure.ac#L3663

It was introduced to make possible parallel install e.g. two Ruby 2.6.0 side by side. Later somebody start to interpret it and add it different meanings, but it was never correct thing to do, therefore I would suggest against using ruby_version for anything meaningful. I tried to have this resolved by #11002, but the result was never satisfactory.

----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791#change-78078

* Author: headius (Charles Nutter)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [ruby-core:93389] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
       [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
                   ` (5 preceding siblings ...)
  2019-05-19  8:21 ` [ruby-core:92721] " v.ondruch
@ 2019-06-27 20:50 ` headius
  6 siblings, 0 replies; 7+ messages in thread
From: headius @ 2019-06-27 20:50 UTC (permalink / raw)
  To: ruby-core

Issue #15791 has been updated by headius (Charles Nutter).

Status changed from Open to Closed

Ok, if this is supposed to map the the ABI version, then I guess we'll leave it as is. It doesn't really have the same meaning on other impls, and I agree with Vit that it shouldn't be used for other purposes (like it seems to be used in RubyGems).

I'll consider this closed.

----------------------------------------
Bug #15791: Clarify reason for RbConfig's ruby_version not reflecting "teeny" value
https://bugs.ruby-lang.org/issues/15791#change-78916

* Author: headius (Charles Nutter)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: all
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
I did not realize that MRI always reports `RbConfig::CONFIG['ruby_version']` without the "teeny" value. Instead, it makes it always 0:

```
$ rvm ruby-2.6.2 do ruby -v -e 'p RbConfig::CONFIG["ruby_version"]'
ruby 2.6.2p47 (2019-03-13 revision 67232) [x86_64-darwin18]
"2.6.0"
```

This seems like a bug to me. It is a visible behavior because several package-management systems (RubyGems, Bundler, stuff in Ruby switchers like RVM) use this value, rather than RUBY_VERSION, to set up directory paths.

I believe it should reflect the full, accurate version, but I have not been able to find any discussion about why it does not do so.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2019-06-27 20:50 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <redmine.issue-15791.20190425154414@ruby-lang.org>
2019-04-25 15:44 ` [ruby-core:92408] [Ruby trunk Bug#15791] Clarify reason for RbConfig's ruby_version not reflecting "teeny" value headius
2019-04-25 18:44 ` [ruby-core:92411] " Greg.mpls
2019-04-27 19:49 ` [ruby-core:92445] " eregontp
2019-04-29 22:17 ` [ruby-core:92485] " headius
2019-05-01 16:22 ` [ruby-core:92517] " Greg.mpls
2019-05-19  8:21 ` [ruby-core:92721] " v.ondruch
2019-06-27 20:50 ` [ruby-core:93389] " headius

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).