Re: ustream-ssl ABI_VERSION usage

2024-02-13 Thread Daniel Golle


On 13 February 2024 17:39:29 UTC, Paul Spooren  wrote:
>Hi,
>
>> On Feb 12, 2024, at 14:30, Petr Štetiar  wrote:
>> 
>> Jo-Philipp Wich  [2024-02-12 14:09:27]:
>> 
>> Hi,
>> 
>>> Ideally all packages specifying an ABI version should ship versioned .so 
>>> files
>>> as well.
>> 
>> I would like to point out, that ustream-ssl is dynamically loaded 
>> library[1], so we
>> would need to pass that ABI information somehow to the clients, so they would
>> be able to load correct/compatible version of dynlib, not exactly trivial.
>> 
>> 1. https://lxr.openwrt.org/source/uclient/uclient-fetch.c#L516
>
>Thank you both for the clarification. I thought that if opkg just isn’t smart 
>enough to figure ABI versions I cleanly solve it via apk, however if we really 
>want to handle parallel installations I’ll teach apk some new tricks.

Updates to libubox or other basic libs used by a lot of packages are the prime 
example. Having the ABIversion appended to the package name like we do for opkg 
nicely solves the problem, as in that way libubox12 can be installed in 
parallel with libubox14.
Not having that option would make selectively updating a system impossible, and 
imho thats bad because esp. on remote boxes l may not want to update everything 
just in order to update, lets say, umdns, which may be built against a newer 
version of libubox than what I'm running now and hence depends on that. When 
running on a space constraint box with overlayfs updating everything isn't even 
an option in practise due to jffs2 being to small to fit everything and things 
in squashfs rom cannot be replaced.


So loosing that (by turning around the provided vs. provider logic as Ariadne 
was suggesting to not need strippable ABIVersion info added) is really not a 
good option for OpenWrt I believe.

>
>Best,
>Paul

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: ustream-ssl ABI_VERSION usage

2024-02-13 Thread Paul Spooren
Hi,

> On Feb 12, 2024, at 14:30, Petr Štetiar  wrote:
> 
> Jo-Philipp Wich  [2024-02-12 14:09:27]:
> 
> Hi,
> 
>> Ideally all packages specifying an ABI version should ship versioned .so 
>> files
>> as well.
> 
> I would like to point out, that ustream-ssl is dynamically loaded library[1], 
> so we
> would need to pass that ABI information somehow to the clients, so they would
> be able to load correct/compatible version of dynlib, not exactly trivial.
> 
> 1. https://lxr.openwrt.org/source/uclient/uclient-fetch.c#L516

Thank you both for the clarification. I thought that if opkg just isn’t smart 
enough to figure ABI versions I cleanly solve it via apk, however if we really 
want to handle parallel installations I’ll teach apk some new tricks.

Best,
Paul

signature.asc
Description: Message signed with OpenPGP
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: ustream-ssl ABI_VERSION usage

2024-02-12 Thread Petr Štetiar
Jo-Philipp Wich  [2024-02-12 14:09:27]:

Hi,

> Ideally all packages specifying an ABI version should ship versioned .so files
> as well.

I would like to point out, that ustream-ssl is dynamically loaded library[1], 
so we
would need to pass that ABI information somehow to the clients, so they would
be able to load correct/compatible version of dynlib, not exactly trivial.

1. https://lxr.openwrt.org/source/uclient/uclient-fetch.c#L516

Cheers,

Petr

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


Re: ustream-ssl ABI_VERSION usage

2024-02-12 Thread Jo-Philipp Wich

Hi Paul,


While working on using APK instead of OPKG, I started to look into ABI
versions of different packages and found that ustream-ssl always install
libustream-ssl.so , with no ABI version
attached.


$(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libustream-ssl.so $(1)/lib/


Doesn’t this render the idea of ABI version obsolete since they can’t be
installed side by side?


Yes it does, somewhat. It still enforces package consistency opkg-wise (can't
upgrade libustream-ssl without upgrading all packages depending on it) but as
you correctly pointed out, it will prevent side-by-side installations and thus
graceful upgrades.

Ideally all packages specifying an ABI version should ship versioned .so files
as well.

~ Jo

___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


ustream-ssl ABI_VERSION usage

2024-02-12 Thread Paul Spooren
Hi,

While working on using APK instead of OPKG, I started to look into ABI versions 
of different packages and found that ustream-ssl always install 
libustream-ssl.so , with no ABI version attached.

>  $(INSTALL_DATA) $(PKG_INSTALL_DIR)/usr/lib/libustream-ssl.so $(1)/lib/

Doesn’t this render the idea of ABI version obsolete since they can’t be 
installed side by side?

Best,
Paul

signature.asc
Description: Message signed with OpenPGP
___
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel