Message ID | 20210831000946.11489-2-ben@sturm.com.au |
---|---|
State | New |
Headers | show |
Series | [bug#49993] gnu: Remove python2-translitcodec. | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
Upon investigation, the following were added by cwebber or dthompson, so likely related to MediaGoblin: python2-exif-read python2-pyld python2-jsonschema python2-unidecode python2-itsdangerous python2-feedgenerator python2-waitress python2-oauthlib python2-wtforms python2-pastescript python2-celery The following were added by others, so probably had uses other than MediaGoblin: python2-markdown python2-configobj python2-email-validator python2-py-bcrypt python2-openid-teams python2-openid-cla python2-openid python2-celery Of all the above only python2-jsonschema is failing to build. Now that I think about it, I'm not sure that this ad-hoc approach to removing Python 2 deps is all that useful. Maybe a systemic approach is needed eg. drop all broken Python 2 packages and announce a future date to drop all non-broken Python 2 packages. Regards, Ben
Hi, On Tue, 31 Aug 2021 at 11:08, Ben Sturmfels via Guix-patches via <guix-patches@gnu.org> wrote: > Now that I think about it, I'm not sure that this ad-hoc approach to > removing Python 2 deps is all that useful. Maybe a systemic approach is > needed eg. drop all broken Python 2 packages and announce a future date > to drop all non-broken Python 2 packages. This is more or less the plan. Although there is no fixed future date to drop all the non-broken Python 2 packages. :-) For instance #49272 remove 10 Python 2 packages and to find them: --8<---------------cut here---------------start------------->8--- guix weather --display-missing \ --substitute-urls="https://ci.guix.gnu.org" \ | grep 'python2-' --8<---------------cut here---------------end--------------->8--- then I pick only the leaf packages using “guix refresh -l”. The dependency graph needs some care because sometimes the graph is rewritten. For example, $ guix refresh -l python2-plastid No dependents other than itself: python2-plastid@0.4.8 Then, let try to locally build it in case something wrong happened on the CI. Note that the missing is checked on Berlin but the build uses both (Berlin and Bordeaux): $ guix build python2-plastid --no-grafts Or in some cases, it is a leaf package broken because another ’python2-’ package is broken. Here, ’python2-pandas’. In this case, it depends. ;-) Try to fix ’python2-pandas’ because: $ guix refresh -l python2-pandas Building the following 7 packages would ensure 12 dependent packages are rebuilt: fio@3.27 python2-pybedtools@0.8.2 python2-plastid@0.4.8 python2-biom-format@2.1.7 python2-warpedlmm@0.21 poretools@0.6.0-1.e426b1f ribodiff@0.2.2 or simply remove all the dependants in the same patch set. Be careful, the removal needs the correct order. :-) Personally, I tend to remove leaf package brokens becaus they do not build themselves and not because of broken dependencies. For instance, in this list (from Guix a9eb969): --8<---------------cut here---------------start------------->8--- python2-biom-format-2.1.7 python2-pybedtools-0.8.2 python2-plastid-0.4.8 python2-warpedlmm-0.21 python2-scikit-learn-0.20.4 python2-fastlmm-0.2.21 python2-pandas-0.24.2 python2-seaborn-0.9.1 python2-pysnptools-0.4.11 ptpython2-3.0.17 python2-statsmodels-0.11.1 --8<---------------cut here---------------end--------------->8--- I would remove only the package ’ptpython2’. All the others depend on ’python2-pandas’ and remove ’python2-pandas’ means also remove ’fio’, ’poretools’ or ’ribodiff’. And I am not enough qualified to have an opinion if it is worth to fix them. Therefore, I queue these packages in my TODO list and then I revisit months later: if there are still broken and no issue is open, it means they do not worth and can be removed. HTH. All the best, simon
On Tue, 31 Aug 2021, zimoun wrote: > then I pick only the leaf packages using “guix refresh -l”. The > dependency graph needs some care because sometimes the graph is > rewritten. For example, > > $ guix refresh -l python2-plastid > No dependents other than itself: python2-plastid@0.4.8 Whoops! Thanks Simon, I had been mistakenly just grepping the sources to find dependencies, so my earlier claims of packages being unused were wrong. Only the following have no dependencies (according to `guix refresh -l`): python2-exif-read python2-pyld python2-itsdangerous python2-feedgenerator python2-wtforms python2-pastescript python2-celery python2-configobj python2-email-validator python2-openid-teams python2-openid-cla python2-openid python2-celery python2-translitcodec These DO have dependencies, so should NOT be removed: python2-markdown python2-py-bcrypt python2-waitress python2-oauthlib Regards, Ben
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 316d8c9b64..16fe38b31d 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -13220,9 +13220,6 @@ best-effort representations using smaller coded character sets (ASCII, ISO 8859, etc.).") (license license:expat))) -(define-public python2-translitcodec - (package-with-python2 python-translitcodec)) - (define-public python-anyqt (package (name "python-anyqt")