Re: Updating Flask to 3.x?

2023-12-18 Thread Michael Kesper

Hi Carsten,

Am 17.12.23 um 10:06 schrieb Carsten Schoenert:

Hi,

the Flask team released Flask and the depending package Werkzeug 3.0.0 
on 2023-09-30.


Since Thomas Goirand did the last update of Flask to 2.2.x nearly one 
year ago in preparation for the Bookworm release I've talked with Thomas 
recently about updating Flask and depending packages again so we can get 
Flask 3.x into the archive.
Thomas pointed out he will not have time to work on Flask 3 and some 
depending packages in the near future.


I usual try to keep an eye on some Flask related packages as we use them 
on my day job. A few of them have now RC issues and are already kicked 
out of testing. Solving these bug reports are now mostly depending on a 
newer Flask version or at least it would be more useful to move over to 
a recent Flask version.


Sure, broken packages are no good for anybody.

...

Following a simple list of reverse deps for the resulting binary 
packages. Any help, suggestion or useful hint in maintaining this Flask 
update is really appreciated!


Feel free to contact me if you need help!

Best
Michael



Re: Recommended way of installing system-wide python application and libraries

2023-12-18 Thread Gregor Riepl
As far as how to do this within an existing cmake project, 
unfortunately, there doesn't seem to be a clear/easy way.  The only 
cmake example I can think off of the top of my head is cvc5.  It still 
uses setup.py though, so not a great future-looking example (and I had 
to patch it to build the Python bindings in Debian): 
https://github.com/cvc5/cvc5/blob/main/src/api/python/CMakeLists.txt


We've been using cmake + pybuild very successfully for packaging the 
various Cura components:


https://salsa.debian.org/3dprinting-team/cura/-/blob/master/debian/rules
https://salsa.debian.org/3dprinting-team/cura-engine/-/blob/master/debian/rules
https://salsa.debian.org/3dprinting-team/uranium/-/blob/master/debian/rules
etc.

Cura is a mix of Python and C++, so a pure Python tools approach 
wouldn't have worked well. Upstream used cmake exclusively in the past, 
and that worked very well together with pybuild. Unfortunately, they 
recently introduced a new build environment based on conan, which is why 
we haven't managed to package new Cura versions yet.


The best solution right now is probably: 
https://scikit-build-core.readthedocs.io

It's specifically designed for combining CMake + Python.
I don't know how well this is supported in Debian so far.



Re: pybuild and optional dependencies

2023-12-18 Thread Gregor Riepl

How can I teach pybuild  that I really want xraylarch[larix] ?


I don't know if there's a mechanism that can add optional dependencies 
automatically, but the easiest way would be to just add them to the

Depends: ...
or the
Recommends: ...
list of the respective package in debian/control.



pybuild and optional dependencies

2023-12-18 Thread PICCA Frederic-Emmanuel
Hello, I am updating the xraylarch package which contain something like this in 
the setup.cfg

```
install_requires =
asteval>=0.9.28
numpy>=1.20
scipy>=1.7
uncertainties>=3.1.4
lmfit>=1.2.1
pyshortcuts>=1.9.0
xraydb>=4.5
silx>=0.15.2
matplotlib>=3.5
sqlalchemy>=2.0
sqlalchemy_utils
h5py>=3.2
hdf5plugin
pillow>=8.3.2
numdifftools
pandas
packaging
pip
pyyaml
toml
termcolor
dill
imageio
charset-normalizer
peakutils
requests
scikit-image
scikit-learn
psutil
pymatgen
mp_api
pycifrw
fabio
pyfai
numexpr==2.8.4; python_version < '3.9'
numexpr>=2.8.7; python_version > '3.8'

[options.extras_require]
wxgui =
wxpython>=4.1
wxutils>=0.3.0
wxmplot>=0.9.57

qtgui =
PyQt5
pyqtwebengine
pyqtgraph

epics =
pyepics>=3.5.0
psycopg2-binary

jupyter =
jupyter_core>=5.0
jupyter_client
jupyter_server
notebook
nbformat
ipywidgets
plotly
py3dmol

doc =
sphinx
numpydoc
sphinxcontrib-bibtex
sphinxcontrib-argdoc
pycairo; platform_system=="Windows"

dev =
pytest
pytest-cov
coverage
build
pre-commit
twine

larix =
%(wxgui)s
%(jupyter)s

all =
%(dev)s
%(doc)s
%(wxgui)s
%(qtgui)s
%(jupyter)s
%(epics)s
```

When I compile the package, I got the dh_python3 computed runtime dependencies 
from the install_requires.

Now I would like to build this package but with the larix optional dependencies.

so I added all the dependencies in the Build-Depends, but dh_python3 still 
produce the previous dependencies.

How can I teach pybuild  that I really want xraylarch[larix] ?

thanks

Frederic