From: Lucas Nussbaum Date: 2009-01-27T17:09:38+09:00 Subject: [ruby-core:21601] Ruby 1.9 versioning scheme and packaging Hi, I'm one of the maintainers of the Debian package (and, consequently, of the Ubuntu package) for Ruby, and I have some questions about your current and future versioning scheme for Ruby 1.9. With Ruby 1.8, we only used the first two digits (i.e 1.8, not 1.8.7 or 1.8.7.72) to version the core and standard library, as well as the binary interface presented to programs using ruby throught /usr/lib/libruby1.8.so.X. I've heard the following about Ruby 1.9, please correct me if wrong: With Ruby 1.9, we are supposed to use three digits (1.9.1, not just 1.9 or 1.9.1.3) to version the core and std libs. (Which are installed in /usr/lib/ruby/1.9.1, not /usr/lib/ruby/1.9). Our problem is that, when 1.9.1 replaces 1.9.0, we need to transition all third party libraries so that they put their files in /usr/lib/ruby/1.9.1 instead of /usr/lib/ruby/1.9.0. To make things worse, the API version (the name of the /usr/lib/ruby/#{APIVERSION} directory) is not related to the "ruby source version". For example, you could release Ruby 1.9.2, but, if the core and std libs are considered compatible, keep the files installed in /usr/lib/ruby/1.9.1. Or release 1.9.1.3, but change the API, and put the files in /usr/lib/ruby/1.9.2. And the same problem exists with the soname of the shared library. Is that true? Or can we make the following assumption: For a given Ruby version 1.9.a.b, the core/standard libs will be installed in /usr/lib/ruby/1.9.a, and the shared library will be named /usr/lib/libruby1.9.a.so.1.9.a. (or /usr/lib/libruby1.9.a.so.1.9.a, depending on the binary suffix) That would really help packaging of Ruby ... :-) Provided that the above assumption is true, we are inclined to package ruby 1.9.1 in a "ruby1.9.1" package, which would allow several ruby1.9 version to coexist (for example, ruby1.9.1 and ruby1.9.2). However, since that will require a transition each time a new ruby version is released (when going from ruby1.9.a to ruby1.9.(a+1)), it would be great for us if this didn't happen too frequently (that is, if most of the development was done via point releases, ie ruby1.9.a.b, ruby.1.9.a.c, ...). Do you already have a rough idea of when ruby 1.9.2 will be released? Thank you, -- | Lucas Nussbaum | lucas@lucas-nussbaum.net http://www.lucas-nussbaum.net/ | | jabber: lucas@nussbaum.fr GPG: 1024D/023B3F4F |