[Git][debian-gis-team/eodag][master] Don't move resources to /usr/share. (closes: #1122409)
Sebastiaan Couwenberg
sebastic at xs4all.nl
Thu Dec 11 08:04:47 GMT 2025
On 12/11/25 7:58 AM, Antonio Valentino wrote:
>> =====================================
>> debian/python3-eodag.maintscript
>> =====================================
>> @@ -0,0 +1,3 @@
>> +# Switch symlink to directory (#1122409)
>> +symlink_to_dir /usr/share/python3-eodag/resources /usr/lib/python3/dist-packages/eodag/resources 3.10.0+ds-2~
>> +
>
> Apparently this change makes the piuparts test in salsa fail.
> Not totally clear the to me reason.
> Do you have any clue on it?
Probably because Salsa CI doesn't use ~ in its version suffix like backports do:
eodag_3.10.0+ds-2+salsaci+20251211+23_all.deb
This is likely not compatible with the prior-version logic in dpkg-maintscript-helper.
The prior-version set in python3-eodag.maintscript should be correct:
"
For example, for a conffile removed in version 2.0-1 of a package,
prior-version should be set to 2.0-1~. This will cause the conffile
to be removed even if the user rebuilt the previous version 1.0-1 as
1.0-1local1. Or a package switching a path from a symlink (shipped in
version 1.0-1) to a directory (shipped in version 2.0-1), but only
performing the actual switch in the maintainer scripts in version
3.0-1, should set prior-version to 3.0-1~.
"
https://manpages.debian.org/trixie/dpkg/dpkg-maintscript-helper.1.en.html#prior-version
Although testing the upgrade in a chroot with -1 from the archive and -2 from my local repo doesn't replace the symlink as expected:
Unpacking python3-eodag (3.10.0+ds-2) over (3.10.0+ds-1) ...
dpkg: warning: unable to delete old directory '/usr/share/python3-eodag/resources/shp': Directory not empty
dpkg: warning: unable to delete old directory '/usr/share/python3-eodag/resources': Directory not empty
dpkg: warning: unable to delete old directory '/usr/share/python3-eodag': Directory not empty
Setting up python3-eodag (3.10.0+ds-2) ...
root at anubis:/# ls -l /usr/share/python3-eodag/
total 4
drwxr-xr-x 3 root root 4096 Dec 11 07:44 resources
root at anubis:/# ls -l /usr/share/python3-eodag/resources/
total 5744
-rw-r--r-- 1 root root 2586798 Oct 25 10:55 ext_collections.json
-rw-r--r-- 1 root root 2526068 Oct 25 10:55 ext_product_types.json
-rw-r--r-- 1 root root 986 Oct 25 10:55 locations_conf_template.yml
-rw-r--r-- 1 root root 422350 Oct 25 10:55 product_types.yml
-rw-r--r-- 1 root root 232043 Oct 25 10:55 providers.yml
drwxr-xr-x 2 root root 4096 Dec 11 07:44 shp
-rw-r--r-- 1 root root 10473 Oct 25 10:55 stac.yml
-rw-r--r-- 1 root root 68881 Oct 25 10:55 stac_api.yml
-rw-r--r-- 1 root root 6804 Oct 25 10:55 stac_provider.yml
-rw-r--r-- 1 root root 7348 Oct 25 10:55 user_conf_template.yml
root at anubis:/# ls -l /usr/lib/python3/dist-packages/eodag/
total 112
-rw-r--r-- 1 root root 1608 Oct 25 10:55 __init__.py
drwxr-xr-x 2 root root 4096 Dec 11 07:44 __pycache__
drwxr-xr-x 4 root root 4096 Dec 11 07:44 api
-rw-r--r-- 1 root root 31605 Oct 25 10:55 cli.py
-rw-r--r-- 1 root root 48557 Oct 25 10:55 config.py
-rw-r--r-- 1 root root 1099 Oct 25 10:55 crunch.py
drwxr-xr-x 8 root root 4096 Dec 11 07:44 plugins
-rw-r--r-- 1 root root 0 Oct 25 10:55 py.typed
lrwxrwxrwx 1 root root 41 Oct 23 05:44 resources -> ../../../../share/python3-eodag/resources
drwxr-xr-x 6 root root 4096 Dec 11 07:44 rest
drwxr-xr-x 3 root root 4096 Dec 11 07:44 types
drwxr-xr-x 3 root root 4096 Dec 11 07:44 utils
> Should we try an alternative implementation?
The piuparts CI job is prone to false positive which we ignore in several other packages already:
piuparts:
allow_failure: true
This one seems legit, because the order of the paths in python3-eodag.maintscript was incorrect.
The upgrade works as expected with the fix I pushed:
Preparing to unpack .../python3-eodag_3.10.0+ds-2_all.deb ...
Unpacking python3-eodag (3.10.0+ds-2) over (3.10.0+ds-1) ...
Setting up python3-eodag (3.10.0+ds-2) ...
root at anubis:/# ls -l /usr/lib/python3/dist-packages/eodag
total 116
-rw-r--r-- 1 root root 1608 Oct 25 10:55 __init__.py
drwxr-xr-x 2 root root 4096 Dec 11 08:03 __pycache__
drwxr-xr-x 4 root root 4096 Dec 11 08:03 api
-rw-r--r-- 1 root root 31605 Oct 25 10:55 cli.py
-rw-r--r-- 1 root root 48557 Oct 25 10:55 config.py
-rw-r--r-- 1 root root 1099 Oct 25 10:55 crunch.py
drwxr-xr-x 8 root root 4096 Dec 11 08:03 plugins
-rw-r--r-- 1 root root 0 Oct 25 10:55 py.typed
drwxr-xr-x 3 root root 4096 Dec 11 08:03 resources
drwxr-xr-x 6 root root 4096 Dec 11 08:03 rest
drwxr-xr-x 3 root root 4096 Dec 11 08:03 types
drwxr-xr-x 3 root root 4096 Dec 11 08:03 utils
Kind Regards,
Bas
--
PGP Key ID: 4096R/6750F10AE88D4AF1
Fingerprint: 8182 DE41 7056 408D 6146 50D1 6750 F10A E88D 4AF1
More information about the Pkg-grass-devel
mailing list