Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Port from setuptools.build_meta to meson-python #392

Closed
wants to merge 1 commit into from

Conversation

monego
Copy link

@monego monego commented Dec 7, 2023

🚀 Pull Request

Description

This is an initial attempt at #391. meson-python is usually adopted by large projects and may be overkill here, but cf-units is a good starting point to learn more about it. There is a Cython extension for udunits and an external project (antlr4) to manage (not yet implemented in this PR).

This change moves from setup.py and setup.cfg to Meson scripts and meson-python. Meson detects the udunits installation and adjusts the necessary paths accordingly. I'm also considering a fix for #313 with a Meson build option.

This PR is currently tested on Linux (with Debian 12 packages) only.

I added Spin to run the build and test commands. All tests are passing (and one skipped and one xfail).

$ spin build
$ spin test

I installed all the other Python dependencies (listed in pyproject.toml) manually from pip. udunits is from the Debian repo.

What is missing:

  • Restore __version__, check whether/how mesonpy can generate the version string from meson.build
  • Check whether something important was left behind in setup.py and setup.cfg
  • Check how this will affect the conda environment
  • Adjust dependency version constraints
  • Windows/Mac tests

@trexfeathers
Copy link
Collaborator

From @SciTools/peloton: thanks so much for this @monego, we promise we're thinking about it - the main challenge is making time to look in more detail.

@ESadek-MO
Copy link

@SciTools/peloton don't really have the time or resources to do complete this, so closing this as unplanned. Sorry for the inconvenience!

@ESadek-MO ESadek-MO closed this Apr 3, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants