python2 removal

Jon Turney jon.turney@dronecode.org.uk
Sun Apr 2 15:47:11 GMT 2023


On 14/03/2023 19:17, Jon Turney via Cygwin-apps wrote:
> On 15/01/2023 12:52, Jon Turney via Cygwin-apps wrote:
>>
>> This has come up in discussion a few times, and is now well overdue, I 
>> think.
>>
>> Python 2.7 is the last python2 version, which was sunsetted on January 
>> 1, 2020.
>>
> [...]
>>
>> 3) There might also still be some other packages lurking which just 
>> install a script with a shebang containing 'python', and assume that 
>> python is python2.  I don't know how we could identify those.
> 
> The remaining cases of packages which have a dependency on python and/or 
> python2 are either this (packages which contain a python script with a 
> python shebang line), or the other case which I hadn't previously 
> considered - a package which contain an executable or shared library 
> linked with libpython2.7.dll.
> 
> So, again I need inspect these to determine what should happen to them.

So here's the list, with *tentative* notes of the disposition for each 
package.

As before, I might look at rebuilding some of the more important 
packages, as time permits, and some of these are candidates for removal 
if not updated, but obviously adoptions and input on what is no longer 
useful is welcomed!

I've also adjusted numerous old package versions which depend on 
'python' to depend on 'python2' when that's what they actually require, 
so they will become not-installable when python2 is removed, and can 
subsequently be expired.

(often these are historical package requirements which were synthesized 
from the current package requirements from before we had per-version 
requirements)

Contrariwise, a few packages (e.g. clang, ibus, libglib2.0-devel, llvm, 
lv2-devel, mysql-server, pulseaudio-equalizer) which depend on python2, 
but contain a script which appears to work with python3 have been 
adjusted to depend on 'python'

> source package         package                 maintainer                    notes      disposition                                    
> 
> GConf2                 GConf2                  ORPHANED (Yaakov Selkowitz)   [†][§][1]  ?                                              
> XtoW                   XtoW                    Jon Turney                    [†][§]     remove (experiment has run it's course)       
> anjuta                 anjuta                  ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild                             
> avogadro               libavogadro1            ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild (not to avogadro2?)
> boost                  boost-build             ORPHANED (Yaakov Selkowitz)   [†]        unclear? depends on python2 and python3?
> boost                  libboost_mpi_python*    "                             [*]        libboost_mpi_python3* exists, so just remove?
> boost                  libboost_numpy*         "                             [*]        libboost_numpy3* exists, so just remove?
> boost                  libboost_python*        "                             [*]        libboost_python3_* exists, so just remove?
> caja-python            caja-python             ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild
> cantor                 cantor-backend-python2  ORPHANED (Yaakov Selkowitz)   [*]        cantor-backend-python3 exists, so just remove? 
> cfv                    cfv                     Jari Aalto                    [†][§]     update and rebuild
> extra-cmake-modules    extra-cmake-modules     ORPHANED (Yaakov Selkowitz)   [†]        probably ok, but should probably update & rebuild
> fluxbox                fluxbox                 ORPHANED (Yaakov Selkowitz)   [†][§][2]  rebuild                                        
> fvwm                   fvwm                    ORPHANED (Yaakov Selkowitz)   [†]        rebuild                                        
> geany-plugins          geany-plugins-geanypy   ORPHANED (Yaakov Selkowitz)   [*][3]     leave as is, becomes not-installable
> gimp                   gimp-python             ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild
> gnome-commander        gnome-commander         ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild
> gnubg                  gnubg                   ORPHANED (Dr. Volker Zell)    [*]        update and rebuild
> gnumeric               gnumeric-python         ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild
> gonvert                gonvert                 ORPHANED (Yaakov Selkowitz)   [†][§][4]  remove
> gtk2.0                 libgtk2.0-devel         ORPHANED (Yaakov Selkowitz)   [†][§][9]  update and rebuild
> gtksourceview2.0       libgtksourceview2.0_0   ORPHANED (Yaakov Selkowitz)   [†][§][6]  leave as is, becomes not-installable
> gtranslator            gtranslator             ORPHANED (Yaakov Selkowitz)   [†]        ?
> inkscape               inkscape                ORPHANED (Yaakov Selkowitz)   [†][§][5]  update and rebuild
> kde-dev-scripts        kde-dev-scripts         ORPHANED (Yaakov Selkowitz)   [†]        ?
> kf5-kross-interpreters kf5-kross-python        ORPHANED (Yaakov Selkowitz)   [*]        ?
> kig                    kig                     ORPHANED (Yaakov Selkowitz)   [†][§]     update and rebuild
> kross-interpreters     kross-python            ORPHANED (Yaakov Selkowitz)   [*]        ? KDE4-era
> libdbusmenu            libdbusmenu-tools       ORPHANED (Yaakov Selkowitz)   [†][§]     leave as is, becomes not-installable ?
> libgda5.0              libgda5.0_4             ORPHANED (Yaakov Selkowitz)   [†][§]     update and rebuild (5.2.10)
> libglade2.0            libglade2.0-devel       ORPHANED (Yaakov Selkowitz)   [†][§]     leave as is, becomes not-installable (upstream unchanged)
> libkkc                 libkkc-common           ORPHANED (Yaakov Selkowitz)   [†][§][7]  update and rebuild
> libpeas                libpeas1.0_0            ORPHANED (Yaakov Selkowitz)   [*][8]     update and rebuild
> lokalize               lokalize                ORPHANED (Yaakov Selkowitz)   [†][§]     leave as is, becomes not-installable
> mingw64-i686-gconf2    mingw64-i686-gconf2     ORPHANED (Yaakov Selkowitz)   [†][§][1]  remove? but has dependencies?                 
> mingw64-i686-gtk2.0    mingw64-i686-gtk2.0     ORPHANED (Yaakov Selkowitz)   [†][§][9]  ?
> mingw64-x86_64-gconf2  mingw64-x86_64-gconf2   ORPHANED (Yaakov Selkowitz)   [†][§][1]  "                                              
> mingw64-x86_64-gtk2.0  mingw64-x86_64-gtk2.0   ORPHANED (Yaakov Selkowitz)   [†][§][9]  ?
> monotone               monotone                ORPHANED (Yaakov Selkowitz)   [†][§]     rebuild? fedora has python3 patches
> mypaint                mypaint                 ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild
> mypaint                mypaint-ora-thumbnailer "                             [†]
> octave-miscellaneous   octave-miscellaneous    Marco Atzeri                  [†]        ?
> openbox                openbox                 ORPHANED (Yaakov Selkowitz)   [†][§]     rebuild? fedora has python3 patches          
> parley                 parley                  ORPHANED (Yaakov Selkowitz)   [†]        leave as is, becomes not-installable?
> pidgin                 libgnt0                 ORPHANED (Yaakov Selkowitz)   [*]        update and rebuild??
> pidgin                 pidgin                  "                             [†]        ?
> pluma                  pluma                   ORPHANED (Yaakov Selkowitz)   [†][§]     update and rebuild?? python plugin scripts
> scribus                scribus                 ORPHANED (Yaakov Selkowitz)   [*]        leave as is, becomes not-installable?
> svn-load               svn-load                Jari Aalto                    [†][§]     ?
> telepathy-gabble       telepathy-gabble        ORPHANED (Yaakov Selkowitz)   [†][§]     leave as is, becomes not-installable?
> tellico                tellico                 ORPHANED (Yaakov Selkowitz)   [†][§]     leave as is, becomes not-installable?
> tracker-miners         tracker-miners          ORPHANED (Yaakov Selkowitz)   [†][§][10] leave as is, becomes not-installable?
> vim                    vim-python              Marco Atzeri                             empty and obsolete, remove
> virt-manager           virt-manager            ORPHANED (Yaakov Selkowitz)   [†]        leave as is, becomes not-installable?
> webcheck               webcheck                Jari Aalto                    [†][§]
> xf86-video-qxl         xf86-video-qxl          ORPHANED (Yaakov Selkowitz)   [†][§]     update and rebuild                              
> xplayer                xplayer                 ORPHANED (Yaakov Selkowitz)   [†][§]     update and rebuild ? unclear if supports python3? peas for plugins
> 
> [*] linked against libpython2.7.dll
> [†] contains some python scripts
> [§] script is python2 only, not compatible with python3
> 
> [1] gsettings-schema-convert script is python2 only; gconf is obsolete to dconfg/gsettings, so should be removed when it's users are removed or updated
>     rebuild with explicit python2 shebang in gsettings-schema-convert? use python3 patch in upstream PR?
> [2] drop unmaintained fluxbox-xdg-menu.py script; if needed package xdgmenumaker instead
> [3] geanypy is python2 only, removed upstream (replaced by peasy), so just make this uninstallable without python2 for the moment
> [4] dead upstream, python2 only
> [5] need a later version of inkscape for python extensions to work when python is python3
> [6] obsolete upstream to gtksourceview3 and later; things which depend on this need updating
> [7] no release upstream, so need to use git commit with python3 fixes
> [8] has python2 and python3 loaders; disable python2 when rebuilding
> [9] upstream patch available to make gtk-builder-convert work with python3
> [10] this dependency seems to be because of a test script which is installed




More information about the Cygwin-apps mailing list