Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
300 views
in Technique[技术] by (71.8m points)

versioning - How do version numbers work for MRI Ruby?

A recent question, "What happened with Ruby 1.9.2?", made me wonder about version numbers for MRI Ruby mean.

The scheme MRI Ruby uses differs from that of semver.org.

How does versioning work in MRI Ruby, and what do the major (1), minor (9), teeny (3) and patchlevel (448) values mean in ruby 1.9.3p448? For example, what kind of changes are allowed in an increase in patchlevel, and what kind of changes are allowed in an increase of teeny?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

(Here the terms differ from the classic semver.org where 2.0.0 is composed of MAJOR.MINOR.PATCH: The ruby scheme, as illustrated in version.h or test_gem.rb, is more V2.0.0pxxx, as in MAJOR.MINOR.TEENY.PATCHLEVEL)

Previously, a version number for Ruby with an odd minor version number signified an experimental version. So Ruby 1.7 was experimental, while Ruby 1.8 was a production version.
The Ruby core team has changed this so that, with the advent of Ruby 1.9.0, Ruby 1.9 is no longer considered experimental, although it may be a while before the implementation becomes ready for production use

Today, a minor version contains semantic differences:

On the other hand, Ruby 1.9 is not completely backward compatible with Ruby 1.8. Some of the semantics have changed. For example, block arguments are now local to the block, and there are subtle changes to block semantics.The changes mean that many existing Ruby programs will need some amount of conversion to take advantage of Ruby 1.9.

  • teeny (like 1.9.2) adds new features

  • patchlevel is more about a build number, adding internal fixes, security fixes, promoting a ruby version to "production level" (as that was the case for 1.9.2-p290)


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...