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

speeding up tests in GA #673

Open
wants to merge 1 commit into
base: develop
Choose a base branch
from

Conversation

jthurner
Copy link

@jthurner jthurner commented Dec 5, 2024

This PR cleans up the GA workflow files.

  • tests on commits pushed to dev / feature branches now finish in ~4min (was: 13min)
  • total CI time for these tests is at ~25min (was: ~2h)

@jkisse
Copy link
Collaborator

jkisse commented Dec 9, 2024

Thanks for the improvements. I'd appreciate if every test run contains one "pip list" command (I think it was removed in at least one script, maybe not on purpose)

@jthurner
Copy link
Author

jthurner commented Dec 11, 2024

I had removed the "pip list" steps on purpose because uv already provides a pretty readable output of installed packages - but added it back in now.

There are some changes here that seemed reasonable to me but should be reviewed:

Testing without Numba

Some pytest runs were repeated after uninstalling numba. But the tests already contain parametrization (e.g. here) to run with/without numba enabled, so in effect these tests were run once with numba enabled and 3 times with numba disabled. This seems unnecessary - removed the uninstall-numba-and-retest steps from all but the tutorial tests (as the notebook examples are not parametrized to run without numba).

relying tests

These run the whole test matrix again against the latest pandapower develop at the time the action runs (or that was the idea, in reality they ran once more against the latest pp release because of the order of the install commands). A comment explains their intention as an early-warning and that they are "usually not required for merges".

To not have them run on every single push, I moved them to "on merge". This means that they will only flag a problem after you merged the PR, and only as a notification. They will still run on pushes to master.

Interestingly, pandapower also runs "relying" tests against pandapipes develop, but these have been failing for some time. I would have expected them to succeed/fail in sync if run at roughly the same time. pandapower does some things differently, like installing simbench:develop and calling the tests in a a different way.

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.

2 participants