niess / python-appimage

AppImage distributions of Python
https://python-appimage.readthedocs.io/en/latest/
GNU General Public License v3.0
176 stars 25 forks source link

Scheduled Github Actions updates have been failing for 5 months #80

Closed mxmlnkn closed 3 weeks ago

mxmlnkn commented 3 weeks ago

The last successful pipeline was on May 5th. All presumably with the same error:

Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/pwd/python_appimage/__main__.py", line 125, in <module>
    main()
    ~~~~^^
  File "/pwd/python_appimage/__main__.py", line 112, in main
    command = import_module(module, package=__package__)
  File "/opt/python/cp313-cp313/lib/python3.13/importlib/__init__.py", line 88, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1331, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 935, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 1022, in exec_module
  File "<frozen importlib._bootstrap>", line 488, in _call_with_frames_removed
  File "/pwd/python_appimage/commands/build/manylinux.py", line 7, in <module>
    from ...appimage import build_appimage, relocate_python
  File "/pwd/python_appimage/appimage/__init__.py", line 1, in <module>
    from .build import build_appimage
  File "/pwd/python_appimage/appimage/build.py", line 8, in <module>
    from ..utils.deps import APPIMAGETOOL, ensure_appimagetool
  File "/pwd/python_appimage/utils/deps.py", line 5, in <module>
    from .fs import copy_file, copy_tree, make_tree
  File "/pwd/python_appimage/utils/fs.py", line 1, in <module>
    from distutils.dir_util import mkpath as _mkpath, remove_tree as _remove_tree
ModuleNotFoundError: No module named 'distutils'
Error: Process completed with exit code 1.

Personally, I did look into this because I'd like to use a Python AppImage with the new 3.13 release. The 3.13 AppImage also shows as being from May and there are only the source tarballs in there.

Note that it is fairly easy to build the AppImages onself via:

python3 -m pip install --force-reinstall git+https://github.com/niess/python-appimage.git@master
python3 -c 'import python_appimage.commands.build.manylinux as manylinux; manylinux.execute("_2_28_x86_64", "cp311-cp311")'
ls -la 'python3.11.10-cp311-cp311-manylinux_2_28_x86_64.AppImage'

Or with my fix:

python3 -m pip install --force-reinstall git+https://github.com/mxmlnkn/python-appimage.git@master
python3 -c 'import python_appimage.commands.build.manylinux as manylinux; manylinux.execute("_2_28_x86_64", "cp313-cp313")'
ls -la 'python3.13.0-cp313-cp313-manylinux_2_28_x86_64.AppImage'
niess commented 3 weeks ago

Hello @mxmlnkn,

thank you for pointing this out, and for your PR (which has been merged, with some tweaks for Python 2 backward compatibility).

After some struggle, the Python 3.13 AppImages are now available for download.

mxmlnkn commented 3 weeks ago

Thank you!