Skip to content

ci: smoke test with/out optional dependencies, mark more tests#1918

Merged
wpbonelli merged 17 commits into
modflowpy:developfrom
wpbonelli:opt-dep-test
Aug 16, 2023
Merged

ci: smoke test with/out optional dependencies, mark more tests#1918
wpbonelli merged 17 commits into
modflowpy:developfrom
wpbonelli:opt-dep-test

Conversation

@wpbonelli
Copy link
Copy Markdown
Member

@wpbonelli wpbonelli commented Aug 11, 2023

  • close Testing without optional dependencies #1905
    • run smoke tests with all, some and no optional dependencies on nightly schedule
    • in partial dependency availability case, remove 3 randomly chosen dependencies every day
  • mark some tests requiring optional dependencies
  • only check crs deprecations if pyproj available

@codecov
Copy link
Copy Markdown

codecov Bot commented Aug 11, 2023

Codecov Report

Merging #1918 (424d814) into develop (ed3a0cd) will increase coverage by 0.0%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           develop   #1918     +/-   ##
=========================================
  Coverage     72.6%   72.6%             
=========================================
  Files          257     257             
  Lines        56210   57585   +1375     
=========================================
+ Hits         40835   41835   +1000     
- Misses       15375   15750    +375     

see 72 files with indirect coverage changes

@wpbonelli wpbonelli marked this pull request as ready for review August 12, 2023 23:55
@wpbonelli wpbonelli requested a review from mwtoews August 12, 2023 23:55
Copy link
Copy Markdown
Contributor

@mwtoews mwtoews left a comment

Choose a reason for hiding this comment

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

Looks good so far. It adds about 5 mins to the smoke tests. It seems the smoke test does not upload it's coverage, it probably should to see the changes.

Comment thread autotest/test_grid.py Outdated
Comment thread autotest/test_model_splitter.py Outdated
@wpbonelli
Copy link
Copy Markdown
Member Author

wpbonelli commented Aug 14, 2023

@mwtoews I wonder if it may be worth randomizing the choice of dependencies to test without. I added a mechanism to do so and moved optional dependency testing to nightly schedule. Let me know if this seems unreasonable.

@mwtoews
Copy link
Copy Markdown
Contributor

mwtoews commented Aug 15, 2023

I like the idea to randomize optional deps, as there are potential combinations that may cause issues. We can see how it goes. If it becomes too much of a maintenance burden, then the randomization can be disabled. And I'd agree it doesn't make sense to upload an unstable coverage report.

Copy link
Copy Markdown
Contributor

@mwtoews mwtoews left a comment

Choose a reason for hiding this comment

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

It's probably better to keep the smoke tests short, so moving optional tests to their own workflow seems the right way. However, I don't see any tests from optional.yml.

Comment thread .github/workflows/commit.yml Outdated
@wpbonelli
Copy link
Copy Markdown
Member Author

I put optional.yml on a nightly schedule and set to choose a different random 3 dependencies every day, hopefully that should not be too burdensome to stay on top of and we also avoid bloating regular CI.

@mwtoews
Copy link
Copy Markdown
Contributor

mwtoews commented Aug 16, 2023

That's why it's not triggered with pull requests. A schedule should work well.

Copy link
Copy Markdown
Contributor

@mwtoews mwtoews left a comment

Choose a reason for hiding this comment

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

Thanks!

@wpbonelli wpbonelli merged commit 0418f85 into modflowpy:develop Aug 16, 2023
@wpbonelli wpbonelli deleted the opt-dep-test branch August 16, 2023 03:16
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.

Testing without optional dependencies

2 participants