Skip to content

Build/CI: modernize build/doc/ci#741

Open
mrava87 wants to merge 42 commits intoPyLops:devfrom
mrava87:build-uv
Open

Build/CI: modernize build/doc/ci#741
mrava87 wants to merge 42 commits intoPyLops:devfrom
mrava87:build-uv

Conversation

@mrava87
Copy link
Copy Markdown
Collaborator

@mrava87 mrava87 commented Mar 12, 2026

This PR mimics PyLops/pyproximal#241 for the PyLops repository:

  • update pyproject.toml
  • add uv.lock*
  • add targets in Makefile
  • update GA (do intel in separate PR as it seems tricky to enable it in pyproject.toml)
  • update Azure Pipelines
  • update readthedocs

* Currently created on OSX (Apple M3) with the following set of commands (having some issues with test_radon, but not the case in CI...):

uv venv --python 3.13
uv lock
uv sync --locked  --extra advanced  --extra stat --extra deep --all-groups 

It also modernizes the overall tooling:

  • move content of setup.cfg to pyproject.toml
  • remove requirements* files (must keep a few intel-GA is converted to uv)
  • switch from black/flake8/isort to ruff
  • bring down errors of ruff to zero (which including fixing some code patterns and type hints standards)
  • adapt coverage support with upload to codacy

Finally, it contains various improvements to the documentation:

  • add installation instructions for uv
  • use sphinx-design to have tabs in installation instructions for conda/pip/uv
  • added emojii in main section titles

@codacy-production
Copy link
Copy Markdown

codacy-production bot commented Apr 4, 2026

Not up to standards ⛔

🔴 Issues 1 high · 3 medium

Alerts:
⚠ 4 issues (≤ 0 issues of at least minor severity)

Results:
4 new issues

Category Results
ErrorProne 1 high
Complexity 3 medium

View in Codacy

🟢 Metrics 62 complexity · -7 duplication

Metric Results
Complexity 62
Duplication -7

View in Codacy

TIP This summary will be updated as you push new changes. Give us feedback

@mrava87 mrava87 marked this pull request as ready for review April 4, 2026 13:49
@mrava87 mrava87 marked this pull request as draft April 4, 2026 13:52
@mrava87 mrava87 marked this pull request as ready for review April 4, 2026 14:51
@mrava87 mrava87 requested a review from cako April 4, 2026 14:51
@mrava87
Copy link
Copy Markdown
Collaborator Author

mrava87 commented Apr 4, 2026

@cako this is quite big but closely follows what I did in pyproximal (plus a lot of minor systematic changes to files in pylops to get zero errors for ruff... we will likely never get that for mypy here 😢).

Probably the most important change I would like to hear from you is pyproject.toml... I tried to make it work with also the intel environment but so far did not succeed (will leave it for a PR on its own so I don't keep messing up and reverting here...)

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.

1 participant