Skip to content
Snippets Groups Projects

[CI] Regression and maintenance

Merged Tobias Meisel requested to merge ci_pipeline into main

- Python 3.13 support (CI testing)

- Testing of all supported Python version 3.10-3.13 (pip and conda)

- Testing with pinned dependencies in regression tests and with open dependencies in maintenance tests

Regression and maintenance test

Before:

Developer run the CI on their developer branches (code changes) in an evolving environment. It was sometime hard to address if a test "failed" because of the new code (regression) or because of changes in our software stack.

Now:

Regression tests run on developer branches with a stable environment. (e.g. for tests pip install -e ".[pinned,test]")

Maintenance test are run on master with an evolving environment. (e.g. for testspip install -e ".[test]").

Roles

Locally, developers work with the stable environment. e.g. pip install -e ".[pinned,dev,docs,test]"

Users may combine ogstools with other libraries. Therefore, they are encouraged to install with "open" dependencies pip install ogstools. For reproducing an error OR for using no other library, they can try pip install ogstools[pinned]. Users need to take that they can reproduce their environment (containing ogstools + others) with e.g. pip freeze.

OGS CI may use pip install ogstools[pinned] OR the "freezed" (see Users) environment.

Only maintainers use: pip install -e ".[dev,docs,test]"


Footnote

.is here the directory of the ogstools sources.

  1. Feature description was added to the changelog

  2. Tests covering your feature were added?

  3. Any new feature or behaviour change was documented?

    No documentation, yet. Maybe the Reviewers have a good idea, where and what.

  4. API-breaking changes documented here

    No breaking changes


The idea for the optional dependency group "pinned" is taken from pyvista: https://github.com/pyvista/pyvista/pull/6753/

Edited by Tobias Meisel

Merge request reports

Loading
Loading

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
Please register or sign in to reply
Loading