Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-07 Thread Neil Bothwick
On Mon, 7 Dec 2020 00:48:48 +, Victor Ivanov wrote:

> > But does it take into account the USE flags with which those packages
> > were installed? That used to not be the case, but I haven't used
> > equery for a long time, for just that reason.
> >   
> Fair point, `equery u ` shows both the default USE flags as well 
> as those with which the package is installed. The latter can be stale
> if USE flags have been tampered with and the package has not yet been 
> rebuilt with the new set of USE flags but otherwise it should match the 
> state. So I always assumed that this is the case for all operations as 
> it would make sense.

I was thinking particularly of the dependency calculations. That's why I
prefer to use portage's own dependency calculations, i.e. emerge -c.


-- 
Neil Bothwick

OK Scotty, NOW!  Detonate and energize!  I mean...


pgpsu3RQMFIda.pgp
Description: OpenPGP digital signature


Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Victor Ivanov

On 07/12/2020 00:30, Neil Bothwick wrote:

On Sun, 6 Dec 2020 22:04:53 +, Victor Ivanov wrote:


My understanding was that "equery d" gives you a list from portage,
not caring about what is currently installed, where "emerge -pvc"
will tell you what is preventing the removal of the package.


Not so based on my understanding (i.e. the man page). As far as I can
tell 'equery d' ought to only look at the installed packages unless the
'--all-packages' flag is passed. Not unlike other operations (e.g.
'equery list') which also look by default only at installed packages.


But does it take into account the USE flags with which those packages
were installed? That used to not be the case, but I haven't used equery
for a long time, for just that reason.

Fair point, `equery u ` shows both the default USE flags as well 
as those with which the package is installed. The latter can be stale if 
USE flags have been tampered with and the package has not yet been 
rebuilt with the new set of USE flags but otherwise it should match the 
state. So I always assumed that this is the case for all operations as 
it would make sense.


In any case, virtually all of equery functionality re installed packages 
would be rather useless if it didn't take into account the configured 
USE flags of said packages. The man page could also do with some more 
love as it's not particularly clear.




OpenPGP_signature
Description: OpenPGP digital signature


Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Neil Bothwick
On Sun, 6 Dec 2020 22:04:53 +, Victor Ivanov wrote:

> > My understanding was that "equery d" gives you a list from portage,
> > not caring about what is currently installed, where "emerge -pvc"
> > will tell you what is preventing the removal of the package.  
> 
> Not so based on my understanding (i.e. the man page). As far as I can 
> tell 'equery d' ought to only look at the installed packages unless the 
> '--all-packages' flag is passed. Not unlike other operations (e.g. 
> 'equery list') which also look by default only at installed packages.

But does it take into account the USE flags with which those packages
were installed? That used to not be the case, but I haven't used equery
for a long time, for just that reason.


-- 
Neil Bothwick

Obscenity is the crutch of inarticulate motherfuckers.


pgp5j9xtgpfYA.pgp
Description: OpenPGP digital signature


Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Jack

On 2020.12.06 17:04, Victor Ivanov wrote:

On 06/12/2020 21:55, Jack wrote:
My understanding was that "equery d" gives you a list from portage,  
not caring about what is currently installed, where "emerge -pvc"  
will tell you what is preventing the removal of the package.


Not so based on my understanding (i.e. the man page). As far as I can  
tell 'equery d' ought to only look at the installed packages unless  
the '--all-packages' flag is passed. Not unlike other operations  
(e.g. 'equery list') which also look by default only at installed  
packages.


Well, I can't argue with that.  I haven't recently compared the two, as  
I gave up using equery d long ago.  Either I was wrong and misread some  
output then, or something changed.  I'll have to try both again next  
time I need that information.




Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Victor Ivanov

On 06/12/2020 21:55, Jack wrote:
My understanding was that "equery d" gives you a list from portage, not 
caring about what is currently installed, where "emerge -pvc" will tell 
you what is preventing the removal of the package.


Not so based on my understanding (i.e. the man page). As far as I can 
tell 'equery d' ought to only look at the installed packages unless the 
'--all-packages' flag is passed. Not unlike other operations (e.g. 
'equery list') which also look by default only at installed packages.




OpenPGP_signature
Description: OpenPGP digital signature


Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Jack

On 2020.12.06 16:04, Victor Ivanov wrote:
I'm on the same boat as Grant and, despite being fully up to date,  
have found it incredibly infuriating to not be able to figure out why  
I have so many python interpreters installed. I don't mind the  
consumed space, but I get the itch from not knowing *why*.


On 06/12/2020 20:16, Neil Bothwick wrote:

emerge -cpv python:3.7 will show you what is keeping 3.7.


Thank you Neil for this amazing hack! This has truly been great at  
solving the mystery.


Using this I finally found out that on my system the only thing  
keeping Python 3.7 was:


app-office/libreoffice-bin-6.4.6.2-r2 requires  
dev-lang/python:3.7[xml]


On that note, I feel like I should share my sentiment on what I had  
tried before to solve this conundrum:


$ eix --installed-with-use python_targets_python3_7
$ eix --installed-with-use python_single_target_python7_7

but obviously the above only work for ebuilds that explicitly have  
the respective PYTHON_TARGETS and PYTHON_SINGLE_TARGET variables and  
will not include hard dependencies - this is to be expected.


More shockingly however, I was surprised that equery did not reveal  
_anything_ useful at all e.g.


$ equery depends python:3.7
$ equery depends '=dev-lang/python:3.7'
$ eix --installed-depend python:3.7

eix above was also useless as it provided a very different output to  
that of `emerge -cpv'.  I thought the whole purpose of 'equery  
depends ' was to do exactly that - list any packages that  
depend on the given atom. Or am I completely misunderstanding how the  
above 3 work?!


My understanding was that "equery d" gives you a list from portage, not  
caring about what is currently installed, where "emerge -pvc" will tell  
you what is preventing the removal of the package.




Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Victor Ivanov
I'm on the same boat as Grant and, despite being fully up to date, have 
found it incredibly infuriating to not be able to figure out why I have 
so many python interpreters installed. I don't mind the consumed space, 
but I get the itch from not knowing *why*.


On 06/12/2020 20:16, Neil Bothwick wrote:

emerge -cpv python:3.7 will show you what is keeping 3.7.


Thank you Neil for this amazing hack! This has truly been great at 
solving the mystery.


Using this I finally found out that on my system the only thing keeping 
Python 3.7 was:


app-office/libreoffice-bin-6.4.6.2-r2 requires dev-lang/python:3.7[xml]

On that note, I feel like I should share my sentiment on what I had 
tried before to solve this conundrum:


$ eix --installed-with-use python_targets_python3_7
$ eix --installed-with-use python_single_target_python7_7

but obviously the above only work for ebuilds that explicitly have the 
respective PYTHON_TARGETS and PYTHON_SINGLE_TARGET variables and will 
not include hard dependencies - this is to be expected.


More shockingly however, I was surprised that equery did not reveal 
_anything_ useful at all e.g.


$ equery depends python:3.7
$ equery depends '=dev-lang/python:3.7'
$ eix --installed-depend python:3.7

eix above was also useless as it provided a very different output to 
that of `emerge -cpv'.  I thought the whole purpose of 'equery depends 
' was to do exactly that - list any packages that depend on the 
given atom. Or am I completely misunderstanding how the above 3 work?!


- Victor



OpenPGP_signature
Description: OpenPGP digital signature


Re: [gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Neil Bothwick
On Sun, 6 Dec 2020 20:01:27 - (UTC), Grant Edwards wrote:

> I updated one of my systems a day or two ago, and Python 3.7 went away
> as expected. Today, I'm updating another system and it is rebuilding
> tons of stuff to target python 3.8 instead of 3.7, but it's keeping
> 3.7 and even wants to install a _new_ package -- and build it for
> Python 3.7:

emerge -cpv python:3.7 will show you what is keeping 3.7.


-- 
Neil Bothwick

Why is the word abbreviation so long?


pgpsrbo7_tFVu.pgp
Description: OpenPGP digital signature


[gentoo-user] Determine what's keeping Python 3.7 around?

2020-12-06 Thread Grant Edwards
I updated one of my systems a day or two ago, and Python 3.7 went away
as expected. Today, I'm updating another system and it is rebuilding
tons of stuff to target python 3.8 instead of 3.7, but it's keeping
3.7 and even wants to install a _new_ package -- and build it for
Python 3.7:

  [...]
  [nomerge   ] app-portage/gemato-16.2::gentoo  USE="gpg -test -tools" 
PYTHON_TARGETS="python3_8* (-pypy3) -python3_6 -python3_7* -python3_9"
  [nomerge   ]  dev-python/requests-2.24.0-r1::gentoo  USE="ssl -socks5 
-test" PYTHON_TARGETS="python3_8* (-pypy3) -python3_6 -python3_7* -python3_9"
  [nomerge   ]   dev-python/cryptography-3.2.1::gentoo [3.2::gentoo] 
USE="-idna -libressl -test" PYTHON_TARGETS="python3_8* (-pypy3) -python3_6 
-python3_7* -python3_9"
  [ebuild   R]dev-python/six-1.15.0-r1::gentoo  USE="-doc -test" 
PYTHON_TARGETS="python3_8* (-pypy3) -python3_6 -python3_7* -python3_9" 0 KiB
  [ebuild U  ] dev-python/setuptools-50.3.0::gentoo [46.4.0-r3::gentoo] 
USE="-test" PYTHON_TARGETS="python3_8* (-pypy3) -python3_6 -python3_7* 
-python3_9 (-python2_7%*)" 2,119 KiB
  [ebuild  N ]  dev-python/setuptools_scm-4.1.2-r1::gentoo  USE="-test" 
PYTHON_TARGETS="python3_7 python3_8 (-pypy3) -python3_6 -python3_9" 0 KiB
  [ebuild U  ]  dev-python/certifi-10001-r1::gentoo [10001::gentoo] 
USE="-test" PYTHON_TARGETS="python3_8* (-pypy3) -python3_6 -python3_7* 
-python3_9 (-python2_7%*)" 0 KiB
  [...]
  Total: 109 packages (12 upgrades, 1 new, 96 reinstalls), Size of downloads: 
924,708 KiB

How do I figure out why setuptools_scm is being built with the Python
3.7 target?

There are no python targets specified in /etc/portage/*

--
Grant