Skip to content

Wheels please #36

@fastrizwaan

Description

@fastrizwaan

Hi,

I'm packing rencode in flatpak, and poetry needs Internet Connectivity to compile rencode 1.0.8; and since flatpak packaging does not allow inetenet access, could you kindly provide .whl files for x86_64 and aarch64 so that we can easily bundle in flatpak. Currently on only CP313 is available that too for x86_64 and no aarch64. but I need cp312-manylinux for both aarch64 and x86_64; compiling from source is also failing for 1.0.8. the 1.0.5 would compile now with update in cython is breaking the build there ffor 1.0.5:

i used rencode 1.0.5 like this:

  - name: rencode
    buildsystem: simple
    build-commands: 
    - python3 setup.py install --prefix=/app
    sources:
    - type: archive
      url: https://files.pythonhosted.org/packages/75/41/14f6466c880334ff1fe2e0781e3c69a7fd5e524f8ae9bd3700091e0fefd8/rencode-1.0.5.tar.gz
      sha256: fb66c92d35355d6098956204e663ddadf7f2cc8f64962846f67e1e1d036efc57 

here's the compile failure :(

FB: Running: tar xf /work/.flatpak-builder/downloads/fb66c92d35355d6098956204e663ddadf7f2cc8f64962846f67e1e1d036efc57/rencode-1.0.5.tar.gz --no-same-owner --strip-components=1 -z
========================================================================
Building module rencode in /work/.flatpak-builder/build/rencode-1
========================================================================
Running: python3 setup.py install --prefix=/app
FB: Running: flatpak build --die-with-parent --env=FLATPAK_BUILDER_BUILDDIR=/run/build/rencode --nofilesystem=host:reset --filesystem=/work/.flatpak-builder/build/rencode-1 --bind-mount=/run/build/rencode=/work/.flatpak-builder/build/rencode-1 --build-dir=/run/build/rencode --bind-mount=/run/ccache=/work/.flatpak-builder/ccache --unshare=network --env=SOURCE_DATE_EPOCH=1321009871 '--env=CFLAGS=-O2 -pipe -g -Wp,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' '--env=CXXFLAGS=-O2 -pipe -g -Wp,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' '--env=LDFLAGS=-L/app/lib -Wl,-z,relro,-z,now -Wl,--as-needed ' --env=CCACHE_DIR=/run/ccache --env=PATH=/run/ccache/bin:/app/bin:/usr/bin --env=LD_LIBRARY_PATH=/app/lib --env=PKG_CONFIG_PATH=/app/lib/pkgconfig:/app/share/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig --env=FLATPAK_BUILDER_N_JOBS=4 /work/builddir /bin/sh -c 'python3 setup.py install --prefix=/app'
/usr/lib/python3.12/site-packages/setuptools/dist.py:599: SetuptoolsDeprecationWarning: Invalid dash-separated key 'description-file' in 'metadata' (setup.cfg), please use the underscore name 'description_file' instead.
!!

        ********************************************************************************
        Usage of dash-separated 'description-file' will not be supported in future
        versions. Please use the underscore name 'description_file' instead.
        (Affected: rencode).

        By 2026-Mar-03, you need to update your project and remove deprecated calls
        or your builds will no longer be supported.

        See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
        ********************************************************************************

!!
  opt = self._enforce_underscore(opt, section)
/usr/lib/python3.12/site-packages/setuptools/_distutils/cmd.py:90: SetuptoolsDeprecationWarning: setup.py install is deprecated.
!!

        ********************************************************************************
        Please avoid running ``setup.py`` directly.
        Instead, use pypa/build, pypa/installer or other
        standards-based tools.

        By 2025-Oct-31, you need to update your project and remove deprecated calls
        or your builds will no longer be supported.

        See https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html for details.
        ********************************************************************************

!!
  self.initialize_options()

Error compiling Cython file:
------------------------------------------------------------
...
cdef object MAX_SIGNED_LONGLONG = int(2**63)
cdef object MIN_SIGNED_LONGLONG = -MAX_SIGNED_LONGLONG

cdef encode(char **buf, unsigned int *pos, data):
    t = type(data)
    if t == int or t == long:
                        ^
------------------------------------------------------------

rencode/rencode.pyx:276:24: undeclared name not builtin: long
Traceback (most recent call last):
  File "/run/build/rencode/setup.py", line 73, in <module>
Compiling rencode/rencode.pyx because it changed.
    setup(
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 186, in setup
    return run_commands(dist)
[1/1] Cythonizing rencode/rencode.pyx
           ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 202, in run_commands
    dist.run_commands()
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 1002, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python3.12/site-packages/setuptools/dist.py", line 1102, in run_command
    super().run_command(command)
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 1021, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/command/install.py", line 689, in run
    self.run_command('build')
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 357, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python3.12/site-packages/setuptools/dist.py", line 1102, in run_command
    super().run_command(command)
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 1021, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/command/build.py", line 135, in run
    self.run_command(cmd_name)
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 357, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python3.12/site-packages/setuptools/dist.py", line 1102, in run_command
    super().run_command(command)
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 1021, in run_command
    cmd_obj.run()
  File "/run/build/rencode/setup.py", line 43, in run
    build_ext.run(self)
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 368, in run
    self.build_extensions()
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 484, in build_extensions
    self._build_extensions_serial()
  File "/usr/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 510, in _build_extensions_serial
    self.build_extension(ext)
  File "/run/build/rencode/setup.py", line 50, in build_extension
    build_ext.build_extension(self, ext)
  File "/usr/lib/python3.12/site-packages/Cython/Distutils/build_ext.py", line 131, in build_extension
    new_ext = cythonize(
              ^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/Cython/Build/Dependencies.py", line 1145, in cythonize
    cythonize_one(*args)
  File "/usr/lib/python3.12/site-packages/Cython/Build/Dependencies.py", line 1289, in cythonize_one
    raise CompileError(None, pyx_file)
Cython.Compiler.Errors.CompileError: rencode/rencode.pyx
Error: module rencode: Child process exited with code 1
error: Recipe `build` failed with exit code 1
Error: Process completed with exit code 1.

here's how i use .whl files to package.

example: libtorrent:
  - name: libtorrent
    buildsystem: simple
    build-commands: 
    - pip3 install --prefix=/app libtorrent*.whl
    sources:
      - type: file
        url: https://files.pythonhosted.org/packages/58/bd/475332a05b25de3b6d350144d8c5bfe74c23412c8e7f34dff43f8ded2cdb/libtorrent-2.0.11-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
        sha256: fbf4418471a96158d995c4573697ce2dcf27ca42d0b03c3bf97b0165015bf641
        only-arches:
          - x86_64
        x-checker-data:
          type: pypi
          name: libtorrent
          packagetype: bdist_wheel
      - type: file
        url: https://files.pythonhosted.org/packages/37/99/a4e5711fa26882165e653dd3c661ce1b3542ac9e51c3b660bfd134b43d36/libtorrent-2.0.11-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
        sha256: fea392e3e0b2f5e84000ec87fd2b3fa11477216875809737ce00c9ba07db4c55
        only-arches:
          - aarch64
        x-checker-data:
          type: pypi
          name: libtorrent
          packagetype: bdist_wheel

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions