On 5/3/25 11:49 PM, Dale wrote: > Howdy, > > I decided to go the safer route with the python upgrade. I do my > compiles in a chroot and then copy packages over and emerge with -k on > the main OS. I did the first step in chroot, copied over and installed > on main OS. I then did the same again with the second step. That all > went well enough. The last step tho, it spits out a lot of things that > are not pleased with the update. I'm thinking if I leave my package.use > at step two until next week, those packages may catch up. It seems some > packages I have installed don't support the new default python yet. > This is the error part. > > > WARNING: One or more updates/rebuilds have been skipped due to a > dependency conflict: > > dev-python/gpep517:0 > > [...] > > dev-python/flit-core:0 > > [...] > > dev-python/installer:0 > > [...] > > dev-libs/boost:0 > > [...] > > dev-python/cython:0 > > [...] > > dev-python/setuptools:0 > > [...] > > dev-python/six:0 > > [...] > > dev-python/packaging:0 > > [...] > > dev-python/setuptools-scm:0 > > [...] > > dev-python/jaraco-collections:0 > > [...] > > dev-python/jaraco-functools:0 > > [...] > > dev-python/jaraco-text:0 > > [...] > > dev-python/more-itertools:0 > > [...] > > dev-python/platformdirs:0 > > [...] > > > dev-python/wheel:0 > > [...] > > dev-python/trove-classifiers:0 > > [...]
Most of these packages are "interconnected core infrastructure, that is, they are the packages you need in order to build *other* python software. The exception here is: - boost, which is a major runtime package -- and a dependency of kicad. - cython -- used to build other packages, in theory packages can run it as either an importable python library or as a command line tool, in both cases as part of building a package but obviously in the latter case you don't necessarily need to build it for python 3.12 For the most part, as long as you have a single package on your system using python 3.12 you will need to build this whole set of packages for python 3.12 > As you can tell, it wants to continue with some packages which is fine. Yup, for the packages which it doesn't complain about it can do a consistent and safe update without issues (one of the benefits of doing it in the safe two-stage upgrade! :) :) :)) > I'm just concerned about the ones where it says it is skipping. Should > I go back to this setting in package.use which is step two and stay > there for now, which means both old 3.12 and 3.13 are supported? > > > > */* PYTHON_TARGETS: -* python3_12 python3_13 > */* PYTHON_SINGLE_TARGET: -* python3_13 > > > This is the one that causes the error. > > > */* PYTHON_TARGETS: -* python3_13 > */* PYTHON_SINGLE_TARGET: -* python3_13 > > > I'm thinking it is safe to leave at step two since it will use whichever > is the latest python the package supports but want to be sure. Setting both python targets is "easy", vs managing exactly which packages are a dependency of some 3.12-only package like kicad. But there's nothing wrong with setting them per-package as well, and setting them per-package can in some cases result in spending much less time building compiled packages for versions of python that you don't actually need (because no apps actually use that library for the old version of python). -- Eli Schwartz
OpenPGP_signature.asc
Description: OpenPGP digital signature

