From 05a0ae18cb8dcc59a75f4604bf67934372787a63 Mon Sep 17 00:00:00 2001 From: Jeremy White <44277022+jwhite242@users.noreply.github.com> Date: Wed, 29 Jul 2026 10:52:24 -0700 Subject: [PATCH 1/6] Add a relaxed ci profile for hypothesis tests to handle system variability --- tests/conftest.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/conftest.py b/tests/conftest.py index 976b8460..898b0794 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -26,6 +26,23 @@ from packaging.version import InvalidVersion +# Hypothesis profiles +from hypothesis import settings + +# Profile for local development using default deadlines +settings.register_profile("local", deadline=200, max_examples=100) + +# Profile for CI with relaxed deadlines to handle system variability +settings.register_profile("ci", deadline=500, max_examples=100) + +# Auto-detect and load correct profile +if os.getenv("CI") == "true": + settings.load_profile("ci") +else: + settings.load_profile("local") + + +# Check for active schedulers to enable/disable appropriate tests SCHEDULERS = set(('sched_lsf', 'sched_slurm', 'sched_flux', 'sched_local')) SCHED_CHECKS = defaultdict(lambda: False) From 3feefa5f39a23ad3ad1dadcf8d9dea0df9ee8de7 Mon Sep 17 00:00:00 2001 From: Jeremy White <44277022+jwhite242@users.noreply.github.com> Date: Wed, 29 Jul 2026 11:01:52 -0700 Subject: [PATCH 2/6] tick version --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 2ef48da1..bebda974 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,7 +1,7 @@ [tool] [tool.poetry] name = "maestrowf" -version = "1.2.1dev3" +version = "1.2.1dev4" description = "A tool to easily orchestrate general computational workflows both locally and on supercomputers." license = "MIT License" classifiers = [ From eed1297f2af8607914a8785ed0171c79e0847916 Mon Sep 17 00:00:00 2001 From: Jeremy White <44277022+jwhite242@users.noreply.github.com> Date: Wed, 29 Jul 2026 15:02:53 -0700 Subject: [PATCH 3/6] Bump up the deadline duration a little more for a bit bigger buffer against system variability --- tests/conftest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index 898b0794..8bbfb1aa 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -33,7 +33,7 @@ settings.register_profile("local", deadline=200, max_examples=100) # Profile for CI with relaxed deadlines to handle system variability -settings.register_profile("ci", deadline=500, max_examples=100) +settings.register_profile("ci", deadline=1000, max_examples=100) # Auto-detect and load correct profile if os.getenv("CI") == "true": From ce74931296782ccf883230f9cd9dc291a75624ec Mon Sep 17 00:00:00 2001 From: Jeremy White <44277022+jwhite242@users.noreply.github.com> Date: Wed, 29 Jul 2026 15:25:23 -0700 Subject: [PATCH 4/6] Fix incorrect docstring --- tests/conftest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/conftest.py b/tests/conftest.py index 8bbfb1aa..53afcc15 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -59,7 +59,7 @@ def check_lsf(): def check_slurm(): """ - Checks if there is a slurm instance to schedule to. NOT IMPLEMENTED YET. + Checks if there is a slurm instance to schedule to. """ slurm_info_func = 'sinfo' try: From c5dc01651274c3669132a4610c43c6c89d52e760 Mon Sep 17 00:00:00 2001 From: Jeremy White <44277022+jwhite242@users.noreply.github.com> Date: Mon, 3 Aug 2026 10:00:50 -0700 Subject: [PATCH 5/6] Add changelog fragment, minor improvement of contributing guide for changelog creation --- CONTRIBUTING.md | 6 ++---- .../20260803_095149_jwhite242_hypothesis_test_stability.md | 4 ++++ 2 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b4bf75fd..f71e4f26 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -43,9 +43,7 @@ Hotfixes on `main` are allowed in principle, but no formal hotfix workflow has b ## Changelog fragments -This project uses `scriv` to manage changelog fragments. - -Fragments are stored in: +This project uses `scriv` to manage changelog fragments. `scriv` is installed with the project dependencies, and creating the fragment is as simple as `scrive create` from the top level and then edit that fragment. Fragments are stored in: - `changelog.d/` @@ -76,7 +74,7 @@ Use one of the following categories in changelog fragments: | Fixed | Bug fixes | | Removed | Removed functionality | | Documentation | Important documentation changes | -| Maintenance | Internal maintenance or dependency updates | +| Maintenance | Internal maintenance or dependency updates, CI, tooling, ... | ## Changelog files diff --git a/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md b/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md new file mode 100644 index 00000000..c358dc02 --- /dev/null +++ b/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md @@ -0,0 +1,4 @@ +### Maintenance + +- Creates ci profile for hypothesis enabled tests to account for increased system variability via extending deadlines + From 2291369f1d66ba7f61ce0a018c56d16b3cdd51a2 Mon Sep 17 00:00:00 2001 From: Jeremy White <44277022+jwhite242@users.noreply.github.com> Date: Mon, 3 Aug 2026 10:27:12 -0700 Subject: [PATCH 6/6] Add pr link to changelog fragment --- .../20260803_095149_jwhite242_hypothesis_test_stability.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md b/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md index c358dc02..d8a3aa83 100644 --- a/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md +++ b/changelog.d/20260803_095149_jwhite242_hypothesis_test_stability.md @@ -1,4 +1,4 @@ ### Maintenance -- Creates ci profile for hypothesis enabled tests to account for increased system variability via extending deadlines +- Creates ci profile for hypothesis enabled tests to account for increased system variability via extending deadlines. Implemented in [PR #480](https://github.com/llnl/maestrowf/pull/480).