From: nobu@... Date: 2016-11-27T07:05:30+00:00 Subject: [ruby-core:78388] [Ruby trunk Bug#12983] compatibility_version and current_version on Darwin are reversed Issue #12983 has been updated by Nobuyoshi Nakada. Backport changed from 2.1: UNKNOWN, 2.2: UNKNOWN, 2.3: UNKNOWN to 2.1: REQUIRED, 2.2: REQUIRED, 2.3: REQUIRED Please commit it. ---------------------------------------- Bug #12983: compatibility_version and current_version on Darwin are reversed https://bugs.ruby-lang.org/issues/12983#change-61761 * Author: Akinori MUSHA * Status: Open * Priority: Normal * Assignee: * ruby -v: * Backport: 2.1: REQUIRED, 2.2: REQUIRED, 2.3: REQUIRED ---------------------------------------- The `compatibility_version` should have an API version and the `current_version` should have a program version of Ruby, but they have been reversed and the binary compatibility has never worked. For example, the ruby 2.3.3 program/dylib shows the following versions: ``` % otool -L /opt/local/bin/ruby2.3 /opt/local/bin/ruby2.3: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 1259.0.0) /opt/local/lib/libruby.2.3.0.dylib (compatibility version 2.3.3, current version 2.3.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1) /usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0) ``` The compatibility version is updated for every teeny release, and all extensions need to be updated accordingly, which is not an expected or welcome situation. https://github.com/ruby/ruby/pull/1495 -- https://bugs.ruby-lang.org/ Unsubscribe: