Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Add test matrix against operating environments#821

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Merged
murrayrm merged 5 commits intopython-control:mainfrommurrayrm:test_matrix-22Dec2022
Dec 24, 2022

Conversation

murrayrm
Copy link
Member

@murrayrmmurrayrm commentedDec 24, 2022
edited
Loading

This PR adds a GitHub action to run unit tests against a (large) matrix of different environments, including operating system, BLAS variant, and installation/build method (pip, conda), copied over from slycot. This is in response to issue#820, where an error was triggered under Ubuntu using the generic BLAS library for NumPy 1.24.0.

The matrix of tests is quite time consuming (about 45 minutes), and so the action is only trigged on pull requests (so if you are using GitHub actions in your own forks, they won't be affected).

In the initial PR, the errors from issue#820 are present (so the tests will fail). In a subsequent push to this PR, I added a "fix" by doing an xfail on that specific test case (and demonstrating one way this set of test might be used).

Also: when a failure occurs in the flatsys test case, information is printed out about the configuration to help in identifying the cases that are failing.

@murrayrmmurrayrm linked an issueDec 24, 2022 that may beclosed by this pull request
@coveralls
Copy link

coveralls commentedDec 24, 2022
edited
Loading

Coverage Status

Coverage: 94.803%. Remained the same when pulling4d6a6bf on murrayrm:test_matrix-22Dec2022 into56f227f on python-control:main.

@murrayrm
Copy link
MemberAuthor

Added checks + xfail for Ubuntu with generic BLAs with numpy 1.24.0, in response to issue#820. Near as I can tell, this is some sort of edge case that gets triggered under this specific set of circumstances. Not sure this is the right way to handle it, but given that all of the other environments work out, I don't think it is a bug insolve_flat_ocp.

@bnavigator
Copy link
Contributor

python-control is pure Python andshould not depend on the environment. Problems in the environment usually show up when the consumed libraries change, not during python-control PRs.

We already go through that test matrix in the Slycot CI and run the python-control test suite there. Not sure if we really should duplicate the resource consumption here.

@murrayrm
Copy link
MemberAuthor

murrayrm commentedDec 24, 2022
edited
Loading

I agree thisshouldn't be needed@bnavigator, but the failure pointed out in issue#820 is an example of where python-control does depend on the operating environment, because there is some sort of (non-slycot) interaction with something in the build environment (and only under Ubuntu, NumPy 1.24, generic BLAS).

I've changed the trigger to workflow_dispatch, which allows this to be manually triggered on the main branch, plus on PRs that affect files specifically associated with this workflow. That will get rid of the resource consumption except in the rather exceptional cases where we need it. (I also imagine that we might customize the test matrix here over time, so it could diverge from slycot.)

My current plan is to add a step in therelease Instructions suggesting running this workflow before a release, just to flag anything where python-control depends on the details of the OS, BLAS version, or installation method.

bnavigator reacted with thumbs up emoji

Sign up for freeto join this conversation on GitHub. Already have an account?Sign in to comment
Reviewers
No reviews
Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
0.9.3
Development

Successfully merging this pull request may close these issues.

Flaky test failure in TestFlatSys with current slycot
3 participants
@murrayrm@coveralls@bnavigator

[8]ページ先頭

©2009-2025 Movatter.jp