Skip to content

Conversation

@harryswift01
Copy link
Contributor

@harryswift01 harryswift01 commented May 13, 2025

Summary

This PR enhances the CI pipeline by adding automated compatibility checks between CodeEntropy and multiple versions of MDAnalysis. The goal is to detect and address breaking changes introduced in new MDAnalysis releases early in the development cycle.

Changes

  • Added a new matrix job in a new mdanalysis-compatability-matrix.yaml to test CodeEntropy against:
    • Python 3.11, 3.12 and 3.13
    • MDAnalysis versions: 2.7.0, 2.8.0, 2.9.0, and latest
  • Installs pinned versions of MDAnalysis dynamically during CI runs
  • Executes the test suite for each version combination
  • Automatically submits an Issue to GitHub if there is a failure

Impact

  • Ensures continued compatibility between CodeEntropy and evolving MDAnalysis versions
  • Improves reliability and trust in future releases

@harryswift01 harryswift01 added this to the WP7 - Refactor milestone May 13, 2025
@harryswift01 harryswift01 self-assigned this May 13, 2025
@harryswift01 harryswift01 linked an issue May 13, 2025 that may be closed by this pull request
5 tasks
@harryswift01 harryswift01 requested a review from jimboid May 13, 2025 16:01
- Renamed the `CI.yaml` file to `project-ci.yaml` to make it more clear
- Moved the MDAnalysis compatability tests to a seperate yaml file:
 - This is set to run each Monday morning at 08:00 UTC time
 - Any failures from this creates an issue to GitHub to fix
Copy link
Member

@jimboid jimboid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think condense the two CI files into a single file with the matrix based tests, docs and precommit into a single workflow that constitutes a single pass/fail for the CI testing pipeline. You can just add the docs and precommit jobs to the other CI workflow.

Also - optionally take a look if using something like the issue creation action template I posted in the review would keep things concise and yaml only.

- Combined and condensed the two CI files into one single file
- `MDAnalysis` is set to schedule run every monday morning at 08:00 UTC
- Refined the issue creation using a standard library approach to reduce complexity
- Addition of a `mdanalysis-compatibility-failure.md` to auto create an issue to be submitted to GitHub to resolve
- Pulled in changes from upstream branches
- Updaated naming conventions on the `MDAnalysis` tests
@harryswift01 harryswift01 requested a review from jimboid May 15, 2025 16:02
Copy link
Member

@jimboid jimboid left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks really good. Please go ahead and merge

@harryswift01 harryswift01 merged commit bcbcac7 into main May 15, 2025
13 checks passed
@harryswift01 harryswift01 deleted the 90-ci-test-mdanalysis-version branch May 15, 2025 16:05
@jimboid jimboid modified the milestones: WP7 - Refactor, 1.0.0 release Jun 10, 2025
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.

CI: Test MDAnalysis Version Compatibility Matrix

3 participants