Python 3.10 update needs possible rebuild packages like Optimus-manager and others

Greetings lovely community,

Just want to make a quick announcement that a new python package release was just pushed to Arch stable, and it’s going from version 3.9 to 3.10. This isn’t an issue itself, but for anyone like myself that has some programs dependent on python packages both in the main Arch repos as well as some python packages in the AUR, just be aware that you may have to rebuild your local python package cache if you come across any issues.

Just a quick heads up! That is all.

core/python                                3.9.9-1            3.10.1-1             0.93 MiB      11.30 MiB
extra/python-anytree                       2.8.0-3            2.8.0-5              0.00 MiB       0.04 MiB
extra/python-appdirs                       1.4.4-3            1.4.4-6              0.00 MiB       0.01 MiB
community/python-argcomplete               1.12.1-1           1.12.3-1             0.00 MiB       0.05 MiB
extra/python-atspi                         2.38.1-1           2.38.2-1             0.00 MiB       0.06 MiB
community/python-bcrypt                    3.2.0-3            3.2.0-5              0.00 MiB       0.03 MiB
extra/python-beaker                        1.11.0-6           1.11.0-8             0.00 MiB       0.09 MiB
community/python-beautifulsoup4            4.9.3-4            4.9.3-6             -0.01 MiB       0.19 MiB
community/python-cachetools                4.2.4-1            4.2.4-3              0.00 MiB       0.02 MiB
extra/python-cairo                         1.20.1-1           1.20.1-3             0.00 MiB       0.06 MiB
extra/python-cffi                          1.15.0-1           1.15.0-3             0.00 MiB       0.22 MiB
extra/python-chardet                       4.0.0-3            4.0.0-5              0.36 MiB       0.19 MiB
community/python-colorama                  0.4.4-4            0.4.4-6              0.00 MiB       0.02 MiB
extra/python-cryptography                  35.0.0-1           36.0.0-1             0.27 MiB       0.93 MiB
community/python-cycler                    0.10.0-8           0.10.0-10            0.00 MiB       0.01 MiB
community/python-dateutil                  2.8.2-2            2.8.2-4              0.00 MiB       0.28 MiB
extra/python-defusedxml                    0.7.1-2            0.7.1-4             -0.01 MiB       0.03 MiB
community/python-dnspython                 1:2.1.0-1          1:2.1.0-3           -0.01 MiB       0.28 MiB
extra/python-evdev                         1.4.0-1            1.4.0-3              0.00 MiB       0.05 MiB
community/python-fasteners                 0.16.3-1           0.16.3-3             0.00 MiB       0.04 MiB
extra/python-feedparser                    6.0.1-2            6.0.1-4              0.00 MiB       0.10 MiB
community/python-fonttools                 4.28.3-1           4.28.3-2            -0.02 MiB       1.49 MiB
community/python-future                    0.18.2-5           0.18.2-7             0.17 MiB       0.70 MiB
extra/python-gobject                       3.42.0-1           3.42.0-3             0.00 MiB       0.25 MiB
community/python-google-api-core           2.2.2-1            2.2.2-3              0.00 MiB       0.10 MiB
community/python-google-api-python-client  2.31.0-1           2.31.0-3             0.00 MiB       2.49 MiB
community/python-google-auth               1.34.0-1           1.34.0-3             0.00 MiB       0.15 MiB
community/python-google-auth-httplib2      0.1.0-1            0.1.0-3              0.00 MiB       0.01 MiB
community/python-googleapis-common-protos  1.53.0-1           1.53.0-3             0.10 MiB       0.13 MiB
community/python-httplib2                  0.19.1-1           0.20.3-1             0.00 MiB       0.11 MiB
extra/python-idna                          3.3-1              3.3-3                0.03 MiB       0.09 MiB
community/python-importlib-metadata        4.8.1-1            4.8.1-3              0.00 MiB       0.03 MiB
community/python-kiwisolver                1.3.2-1            1.3.2-3              0.00 MiB       0.06 MiB
community/python-llfuse                    1.4.1-1            1.4.1-2              0.00 MiB       0.18 MiB
extra/python-lxml                          4.6.4-1            4.6.4-3              0.00 MiB       1.14 MiB
extra/python-mako                          1.1.6-1            1.1.6-3              0.00 MiB       0.13 MiB
community/python-markdown                  3.3.6-1            3.3.6-3              0.00 MiB       0.14 MiB
extra/python-markupsafe                    2.0.1-1            2.0.1-3              0.00 MiB       0.02 MiB
community/python-matplotlib                3.5.0-1            3.5.1-1              0.07 MiB       5.04 MiB
community/python-more-itertools            8.10.0-1           8.10.0-4             0.00 MiB       0.07 MiB
community/python-musicbrainzngs            0.7.1-3            0.7.1-5              0.00 MiB       0.05 MiB
community/python-mutagen                   1.45.1-4           1.45.1-6            -0.01 MiB       0.33 MiB
community/python-natsort                   8.0.1-1            8.0.1-2              0.00 MiB       0.06 MiB
extra/python-numpy                         1.21.3-1           1.21.4-1            -0.16 MiB       4.88 MiB
community/python-oauth2client              4.1.3-6            4.1.3-8              0.00 MiB       0.12 MiB
extra/python-ordered-set                   4.0.2-3            4.0.2-6              0.00 MiB       0.01 MiB
extra/python-packaging                     20.9-2             20.9-6               0.00 MiB       0.05 MiB
community/python-paramiko                  2.7.2-3            2.7.2-5              0.00 MiB       0.27 MiB
community/python-peewee                    3.14.8-2           3.14.8-4            -0.02 MiB       0.37 MiB
community/python-pillow                    8.4.0-1            8.4.0-3              0.00 MiB       0.64 MiB
extra/python-ply                           3.11-8             3.11-10              0.00 MiB       0.08 MiB
extra/python-protobuf                      3.17.3-1           3.17.3-3             0.10 MiB       0.31 MiB
community/python-psutil                    5.8.0-1            5.8.0-3             -0.02 MiB       0.36 MiB
extra/python-pyasn1                        0.4.8-5            0.4.8-7              0.00 MiB       0.11 MiB
extra/python-pyasn1-modules                0.2.8-4            0.2.8-6             -0.04 MiB       0.20 MiB
extra/python-pycparser                     2.21-1             2.21-3              -0.02 MiB       0.19 MiB
extra/python-pycups                        2.0.1-3            2.0.1-5              0.00 MiB       0.06 MiB
extra/python-pycurl                        7.44.1-1           7.44.1-3             0.00 MiB       0.10 MiB
community/python-pydrive                   1.3.1-4            1.3.1-5              0.00 MiB       0.04 MiB
community/python-pygments                  2.10.0-1           2.10.0-4             0.09 MiB       1.95 MiB
community/python-pylast                    4.3.0-1            4.3.0-3              0.00 MiB       0.04 MiB
community/python-pynacl                    1.4.0-3            1.4.0-5             -0.01 MiB       0.09 MiB
extra/python-pyparsing                     2.4.7-3            2.4.7-6             -0.01 MiB       0.12 MiB
community/python-pytz                      2021.3-2           2021.3-4             0.00 MiB       0.04 MiB
extra/python-pyxdg                         0.27-2             0.27-4               0.00 MiB       0.08 MiB
extra/python-requests                      2.26.0-2           2.26.0-5             0.00 MiB       0.09 MiB
community/python-rsa                       4.8-1              4.8-3                0.00 MiB       0.05 MiB
community/python-rx                        3.2.0-1            3.2.0-3             -0.01 MiB       0.23 MiB
community/python-send2trash                1.8.0-1            1.8.0-3              0.00 MiB       0.02 MiB
community/python-setproctitle              1.2.2-1            1.2.2-3              0.00 MiB       0.01 MiB
extra/python-setuptools                    1:57.4.0-2         1:57.4.0-6           0.00 MiB       0.55 MiB
extra/python-sgmllib3k                     1.0.0-2            1.0.0-4              0.00 MiB       0.01 MiB
extra/python-six                           1.16.0-1           1.16.0-4             0.00 MiB       0.02 MiB
community/python-soupsieve                 2.2.1-2            2.2.1-4              0.00 MiB       0.06 MiB
community/python-termcolor                 1.1.0-10           1.1.0-12             0.00 MiB       0.01 MiB
community/python-typing_extensions         3.10.0.2-2         3.10.0.2-4          -0.01 MiB       0.05 MiB
community/python-uritemplate               3.0.1-4            3.0.1-6              0.00 MiB       0.02 MiB
extra/python-urllib3                       1.26.7-2           1.26.7-5             0.00 MiB       0.18 MiB
extra/python-urwid                         2.1.2-1            2.1.2-3             -0.01 MiB       0.31 MiB
community/python-xlib                      0.31-1             0.31-3              -0.02 MiB       0.24 MiB
community/python-yaml                      5.4.1.1-2          5.4.1.1-4           -0.01 MiB       0.17 MiB
community/python-zipp                      3.6.0-1            3.6.0-3              0.00 MiB       0.01 MiB

Edit: Another update from /r/archlinux ( Source )

Python 3.10 is now in [core].

You may need to rebuild any Python packages you’ve installed from the AUR. To get a list of them, you can run:

pacman -Qoq /usr/lib/python3.9

And to rebuild them all at once with an AUR helper such as yay, you can do:

yay -S $(pacman -Qoq /usr/lib/python3.9) --answerclean All

But if any of the packages don’t work with Python 3.10 yet, this might fail halfway through and you’ll have to do rebuild the remaining ones one or a few at a time.

Edit2: Another update from /r/EndeavourOS ( Source )

…new python update. It did break my optimus-manager package causing the machine to not be able to boot into a DE, but rebuilding the packages fixes it.

So just a heads up to anyone else using the optimus-manager package to make sure to rebuild after updating. If you have rebuild-detector ( Github ) this should get triggered, but it’s not a catch all solution for everything since it does give some false positives, rarely, but sometimes. I haven’t updated yet myself, but I will later this afteroon and I’ll make sure to post if I encounter any issues.

Edit3: Just updated successfully, no errors to report on my end. My update process was simply:

Create necessary backups & system snapshots, then one at a time:

yay

yay -S $(pacman -Qoq /usr/lib/python3.9) --answerclean All

sudo systemctl reboot

Note: systemctl reboot will automatically reboot your system so save any important work before issuing this command. And after I did a reboot, system checked out just fine. Depending on what AUR packages you have installed, your mileage may vary.

Edit4: optimus-manager has been updated in the AUR now, the maintainer had this to say:

Hey all, the pkgrel version was bumped up to force AUR helpers to rebuild the package with 3.10.

This is good news that should help prevent more systems from not booting, but I advise to still look through your AUR packages and manually rebuild them after the python update, with the commands from above.

Edit4: libxml2>=2.9.12-6 update may require manual intervention as per Arch News just released:

https://archlinux.org/news/libxml22912-6-update-may-require-manual-intervention/

22 Likes

@BONK probably deserves to be pinned, for the time being :upside_down_face:

3 Likes

Hmm…weird it doesn’t look like it’s actually have pinned for me :thinking:

at the home screen, upper left, it says “all categories”
Change “all categories” to “general system” and you will see your pinned topic.

It was pinned to “general systems” and not pinned to “all categories”

Pudge

EDIT:
I assume @Scotty_Trees originated this topic in the General Systems category thus it being pinned there. Not sure how to pin to “All categories” or what level of authorization is required to do so.

3 Likes

Probably @Bryanpwo, i remember something like only 1 top-level pinned post at a time, but it definitely should be number one right now, a lot of people have broken stuff…

2 Likes

I changed the title to make the issue clear and pinned it globally.

4 Likes

It can cause issue with…a lot of other things as well :sweat_smile:

1 Like

Thanks for the pin @Bryanpwo , optimus-manager is just one example of an AUR package that may have an issue if it’s not rebuilt after a major python update. If I may be so bold as to correct your correction to say something like, “the python update may causes issues with various AUR packages in general” or something to that effect

2 Likes

I already changed it, Optimus manager needs to be in the title to catch the eye. :wink:

2 Likes

On both my systems, one with i3 and one with bspwm i had troubles with soundconverter that failed to start after the update.
I have reinstalled the package pip and everything works again

4 Likes

I didn’t wait for problems to occur. I instantly rebuilt approx 30 packages shown as problematic after updating. Only one issue was unresolvable. I had to remove pkgbrowser, which required the older python version. Not a great loss at all.

2 Likes

I’m thinking about sitting out updates for a week or so. Thoughts anyone?

2 Likes

It might very well save you some grief.

Pudge

2 Likes

Thanks. Yep, sometimes it’s best to sit out the storm for a while and see how things develop. Been there before! :wink:

3 Likes

I think in this case, it doesn’t matter that much. This isn’t a bug, it is a necessary rebuild for some packages due to the new Python release.

4 Likes

Generally yes, however there is also such cases…

:sweat_smile:

I always wait a couple of days for these types of updates (ie python / glibc / etc), on top of those packages needing a rebuild there is always some that require upstream update (ie openshot in this case, will be more though).

VMs come in handy for these kinds of updates too. Try before you buy,

1 Like