-
Notifications
You must be signed in to change notification settings - Fork 313
Open
Description
In version 0.18 a SOVERSION was added to shared libraries 43de3e5
The SOVERSION of a library is meant to indicate binary compatibility with previous versions. That is, the SOVERSION must be changed when there is a backwards-incompatible ABI change. However, every opentimelineio version is binary incompatible by design since the ABI contains the full version number (up to patch level).
$ objdump -T /lib/libopentimelineio.so | grep 0_18_1
0000000000033840 g DF .text 00000000000003ce Base _ZN14opentimelineio7v0_18_14Clip30set_active_media_reference_keyERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEPNS0_11ErrorStatusE
00000000000a6140 g DO .bss 0000000000000040 Base _ZN14opentimelineio7v0_18_15Color6purpleE
00000000000394c0 g DF .text 00000000000006d7 Base _ZNK14opentimelineio7v0_18_111Composition13child_at_timeERKN8opentime7v0_18_112RationalTimeEPNS0_11ErrorStatusEb
0000000000050d60 g DF .text 00000000000000d6 Base _ZN14opentimelineio7v0_18_130SerializableObjectWithMetadataD1Ev
00000000000352d0 g DF .text 000000000000003d Base _ZNK14opentimelineio7v0_18_111Composition31trimmed_range_of_child_at_indexEiPNS0_11ErrorStatusE
00000000000326d0 g DF .text 0000000000000248 Base _ZNK14opentimelineio7v0_18_111Composition12is_parent_ofEPKNS0_10ComposableE
00000000000a48a8 g DO .data.rel.ro 0000000000000028 Base _ZTIN14opentimelineio7v0_18_113AnyDictionaryE
0000000000052550 g DF .text 0000000000000098 Base _ZN14opentimelineio7v0_18_122ImageSequenceReferenceD2Ev
00000000000541a0 g DF .text 0000000000000057 Base _ZN14opentimelineio7v0_18_122SerializableCollection14clear_childrenEv
00000000000474e0 g DF .text 000000000000066f Base _ZN14opentimelineio7v0_18_14algo6rippleEPNS0_4ItemERKN8opentime7v0_18_112RationalTimeES8_PNS0_11ErrorStatusE
0000000000078db0 g DF .text 000000000000012f Base _ZNK14opentimelineio7v0_18_15Track31trimmed_range_of_child_at_indexEiPNS0_11ErrorStatusE
0000000000076090 g DF .text 0000000000000050 Base _ZN14opentimelineio7v0_18_110TransitionD2Ev
[...]
Distributions have tooling to detect such soversion changes and rebuild the corresponding packages accordingly. So please either bump the soversion with every release, including patch ones, or remove it again to not give any ABI compatibility expectations.
Metadata
Metadata
Assignees
Labels
No labels