xraylib icon indicating copy to clipboard operation
xraylib copied to clipboard

Version in PyPI

Open ptim0626 opened this issue 1 year ago • 1 comments

Thanks for the package.

I have recently tried to pip-install xraylib from PyPI (https://pypi.org/project/xraylib), but it doesn't have versions that support Python 3.11 and 3.12. I can see that it supports Python 3.11 and 3.12 in conda-forge (https://anaconda.org/conda-forge/xraylib).

Does xraylib support installation from PyPI? Thank you

ptim0626 avatar May 29 '24 15:05 ptim0626

Hi Timothy, the xraylib wheels found on PyPI were not added by myself, but by the ESRF.

@srio can you help Tim out with this?

tschoonj avatar May 29 '24 15:05 tschoonj

Just to check if there is any update on this? Thank you.

ptim0626 avatar Jul 03 '24 11:07 ptim0626

Hello, and sorry for the late answer. Yes, we created the pypi wheels at ESRF. I'm looking to create the 3.11 and 3.12 ones, so I ask for a bit more patience (a few days hopefully...).

srio avatar Jul 10 '24 14:07 srio

Hi @srio, much appreciate for the help!

ptim0626 avatar Jul 11 '24 14:07 ptim0626

@tschoonj, would you be OK to add a github action workflow to release wheels on pypi?

As it is, wheels published by @srio on pypi are made with an ad-hoc CI set-up. Leveraging github actions and cibuildwheel would make wheels release using standard tools and the process to be opened.

I quickly made one for xraylib by adapting release workflow I recently set-up for other projects (e.g., https://github.com/silx-kit/silx/blob/main/.github/workflows/release.yml):

https://github.com/t20100/xraylib/blob/release-ci/.github/workflows/release.yml

It is triggered when publishing a release on github (but could also be triggered on tags), and automatically publish to pypi (the required configuration of github and pypi is simple). Here is a run with current tip of the project: https://github.com/t20100/xraylib/actions/runs/10060125621

If you are up for it, I can also help with the maintenance of the workflow (I already do so with @srio for our internal CI set-up).

t20100 avatar Jul 23 '24 14:07 t20100

I am not necessarily against publishing wheels through CI to PyPI, but the build backend I am using, mesonpep517, is not seeing further development, and lacks support for Windows.

I think that the backend needs to switch to meson-python instead, which is part of the meson project, and is actively developed.

Would you be willing to take a look at this?

tschoonj avatar Jul 25 '24 06:07 tschoonj

I unfortunately have no experience with meson, but some of my colleagues do, I'll check with them. If we can propose something, that will not be before this autumn..

t20100 avatar Jul 25 '24 07:07 t20100

I will try and do it myself then. I expect the changes will be limited to pyproject.toml

tschoonj avatar Jul 25 '24 08:07 tschoonj

I just released version 4.1.5, and wheels were published to PyPI for Python version 3.8 to 3.13.

tschoonj avatar Aug 20 '24 11:08 tschoonj

Many thanks!

t20100 avatar Aug 26 '24 12:08 t20100