On 2014-09-09 17:18:18 +0200, Marcus Rueckert wrote:
Last but not least we have the ruby(abi). In the past it used to be just the "version" number you had in your ruby paths. Now the define also contains the ruby interpreter. If we take our example list from above:
``` jruby:1.7 rubinius:2.2 ruby:2.1.0 ruby:2.2.0 ```
While this works nicely for our packaging needs. It is actually tricky for cases where a gem wants at least a certain ruby version. The gemspec only has spec.required_ruby_version which is a version number. While in MRI this number is compared with the ruby version number, in the case of rubinius/jruby it is compared with the version of ruby language standard that is implemented.
One possible solution would be to add also mri(abi), jruby(abi), rubinius(abi), which just have a numerical abi comparison.
``` Provides: jruby(abi) = 20100 Provides: rubinius(abi) = 20100 Provides: mri(abi) = 20100 Provides: mri(abi) = 20200 ```
As it turns out we have to go with the 2nd solution. in the first solution the interpreter part after the "=" was interpreted as epoch by rpm. so we will have ``` Provides: jruby(abi) = 2.1.0 Provides: rubinius(abi) = 2.1.0 Provides: ruby(abi) = 2.1.0 Provides: ruby(abi) = 2.2.0 ``` the changes are live in factory and sle12 already. darix -- openSUSE - SUSE Linux is my linux openSUSE is good for you www.opensuse.org -- To unsubscribe, e-mail: opensuse-ruby+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ruby+owner@opensuse.org