On Mon, Mar 15, 2021 at 02:46:52PM -0400, Eli Schwartz via arch-dev-public wrote:
On 3/15/21 2:10 PM, Morten Linderud via arch-dev-public wrote:
Yo!
As people know python2 has been unsupported for a year and we current have ~170 python2 packages in our repositories. Currently the removal has been fairly slow and done a bit ad-hoc. There has been a todo list but the follow up to that has not really been great and I think it's reasonable for us to try and fix the remaining packages to the best of our abilities.
Thus I'm proposing a game plan!
1) Todo list for removal of all python2 checkdepends in packages
For the record, I'm not really happy about this since I feel we should endeavor to test all software in the repos. I don't believe python2 should be an exception.
I believe we can do this right, though.
For example, yesterday you asked me directly about html5lib and its check dependency on the lxml, bs4, soupsieve build cycle dependency. I responded that I don't want to drop the testsuite entirely, however, lxml is an optional treebuilder for html5lib and we only have html5lib in the repos *anyway* due to being used in the leaf package "python2-pip".
So, I removed the checkdepends on python2-lxml, excluded the lxml treebuilder tests from the check() function, and stopped advertising lxml support in python2-html5lib:
However, I did not drop python2-pytest-expect since I need it to test the functionality which pip uses.
I would like to continue doing so...
I think investigating and fixing these cycles we have is a waste of time. You asked for an example, you got it and you fixed it. Great! Was this one time thing or are you going to keep looking for more packages you can remove this way? What about other packagers that simply does not want to spend the time? The point is that this just increases the effort needed to contribute killing off the python2 packages we have. The loss of correctness for making it easier to remove python2 packages is a net win. And keep in mind a minimum of people are actively trying to remove packages at all. It's important to realize that removing the checkdependencies makes it *so* *much* *easier* to reason about dependency tree as the cycles are broken. -- Morten Linderud PGP: 9C02FF419FECBE16