tobac-project / tobac

Tracking and object-based analysis of clouds
BSD 3-Clause "New" or "Revised" License
103 stars 54 forks source link

Add `pyproject.toml` for package setup #442

Open w-k-jones opened 3 months ago

w-k-jones commented 3 months ago

As using a pyproject.toml file has become standard for python packages, and pip is starting to complain about installing using a setup.py file directly, we should update tobac to the new standard. This shouldn't be too complex, as we can keep the existing setup.py if we are installing using setuptools: https://packaging.python.org/en/latest/guides/modernize-setup-py-project/

freemansw1 commented 3 months ago

Thanks for raising this, @w-k-jones. I think this should be a high priority to get out with 1.6. Given the noise around Anaconda, we may want to consider making tobac available on PiPy at the same time.

w-k-jones commented 3 months ago

I agree, it would be nice to add tobac to PiPy. I think we can then automate publishing new releases, as you can automate pushing from github to PiPy, and from PiPy to conda-forge.

For the pyproject.toml file, we could start just by adding the most minimal example, and then migrating metadata from setup.py with future releases:

[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"