Whats a production Ruby version? what's a compatible version? And how do you know?

I've recently been working on getting Ruby checked into OpenSolaris. I was trying to find out how a stable Ruby release could be identified - to understand which versions to package, when updates can overwrite previous versions, and when they should co-exist etc.,

The PickAxe and Matz's OReilly book said that odd numbered minor versions of Ruby were considered development versions. ie., <ersion>.<OddNumber-Minor-version>.<Teeny-Version> releases are not production versions.

But since I didn't see any recent mention of this, I decided to ask the source, ruby-core. The response came from none other than Matz, and a few other ruby-corers. Odd numbered minor versions no longer indicate a development release.
What does, is the absence of a point release(or the "TEENY" version field), or a point release of "0". For example, 1.9(==1.9.0) is a dev. release, and development updates to this svn branch are not numbered. Once 1.9 is deemed production ready, it will be released as 1.9.l, which will be a production release.

So, version x.y.z is a development release iff z == 0, or z is undefined; The oddness/evenness of y not withstanding.
The corollary is that version x.y.z is a production release iff z > 0.

On compatibility, release x.y.z is compatible for any value of z > 0.
Corollary: x.y.z is not compatible for x.p.z if y != p. And it _is_ compatible only if y == p.

Comments:

Post a Comment:
Comments are closed for this entry.
About

prashant

Search

Archives
« March 2015
SunMonTueWedThuFriSat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
    
       
Today