vaeth / eix

eix can access Gentoo portage ebuild information and description very quickly (using a local cache). It can also be used to access information on installed packages, local settings, and local and external overlays, and informs about changes in the tree
GNU General Public License v2.0
164 stars 13 forks source link

python3_9 flag is listed on installed packages twice #88

Closed mgorny closed 3 years ago

mgorny commented 3 years ago

E.g.:

[I] dev-python/future
     Available versions:  0.18.2-r1^t{xpak:2} {doc test PYTHON_TARGETS="pypy3 python3_8 python3_9"}
     Installed versions:  0.18.2-r1^t{xpak:2}(13:08:46 02.06.2021)(-doc -test PYTHON_TARGETS="pypy3 python3_8 python3_9 python3_9")
     Homepage:            https://python-future.org/
     Description:         Easy, clean, reliable Python 2/3 compatibility

eix 0.35.1

vardb looks correct (i.e. having only one instance of the flag):

/var/db/pkg/dev-python/future-0.18.2-r1/IUSE:doc test doc python_targets_pypy3 python_targets_python3_8 python_targets_python3_9
/var/db/pkg/dev-python/future-0.18.2-r1/USE:abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_pypy3 python_targets_python3_8 python_targets_python3_9 userland_GNU
vaeth commented 3 years ago

Thank you for the report. Unfortunately, I cannot reproduce the problem: I created a "dummy" /var/db/pkg/dev-python/future-0.18.2-r1 and copied the {I,}USE files there you mentioned above, but eix -e future shows no duplicate python3_9. (Originally, I thought the new tricky way of natural sorting for installed USE-flags might be the culprit, but I guess that this would be reproducible with the same input.)

vaeth commented 3 years ago

Aha, I miscopied the IUSE file!

Now I see: The "doc" flag is duplicate in your IUSE file. Now when the sorted (and deduplicated) set is copied back, the originally last entry (which happens to be ...python3_9) becomes the duplicate one instead of doc. I guess that I will have to truncate the list to deal with wrong IUSE entries in /var/db/pkg.

vaeth commented 3 years ago

Solved in eix-0.35.2