On what basis ruby and ruby on rails versions are named -


i curious on basis ruby , ror versions named. example, after ruby 1.9.3, version 2.0 instead of 1.10 or 1.9.4, , in rails. there must convention or rule.

ruby , rails, many other projects follow semantic versioning.

they don't follow letter, though. example, ruby 1.9 backwards-incompatible ruby 1.8, whereas ruby 2.0 compatible ruby 1.9, ruby 1.9 should have been ruby 2.0 , ruby 2.0 should have been ruby 2.1.

in particular case, there historic "marketing" reasons that: term "ruby 2.0" has been used in ruby community on 10 years mark specific "mythical" version specific, talked-about features scoped monkey patching , traits. releasing version without features still calling "2.0" have been more confusing breaking rules of semantic versioning. (actually, ruby 2.0 was released without traits , it has led confusion!)

otoh, impossible call "1.10", because ruby_version constant returns version string, , lot of tools (incorrectly)

if ruby_version <= '1.8'   def foo   end end 

which break, because string '1.10' less than string '1.8'.

therefore, decided settle on 1.9.


Comments

Popular posts from this blog

Why does Ruby on Rails generate add a blank line to the end of a file? -

keyboard - Smiles and long press feature in Android -

node.js - Bad Request - node js ajax post -