Skip to content

Add optional Assimulo integration CI#94

Merged
bernalde merged 4 commits into
masterfrom
ci/assimulo-integration
Jul 2, 2026
Merged

Add optional Assimulo integration CI#94
bernalde merged 4 commits into
masterfrom
ci/assimulo-integration

Conversation

@bernalde

@bernalde bernalde commented Jun 30, 2026

Copy link
Copy Markdown

Summary

  • Add a non-blocking Assimulo integration job to the CI workflow.
  • Use conda-forge through setup-miniconda and environment.yml to install the solver stack.
  • Install PharmaPy with --no-deps inside the conda environment so pip does not try to rebuild Assimulo.
  • Add TESTING.md with the local core and Assimulo test commands.

Traceability

Closes #6.
Built on the merged #93 / #9 packaging and dependency-bounds work.
Refs #1, #2, CryPTSys#106, and CryPTSys#107.

Verification

  • actionlint .github/workflows/ci.yml
  • pytest --collect-only -q
  • pytest tests/ -m "not assimulo" -q -rs
  • pytest tests/ -m assimulo -q -rs (local environment without Assimulo: 6 selected, 6 skipped)
  • python -m build --sdist --no-isolation
  • GitHub Actions CI pull_request run 28606044218: Core tests and Assimulo integration tests passed.

Actions

GitHub Actions now runs both the core job and the informational Assimulo job. The Assimulo job remains marked continue-on-error: true until the conda solver stack is proven stable across follow-up runs.

Base automatically changed from packaging/dependency-bounds to master July 2, 2026 15:57

@bernalde bernalde left a comment

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Review for b7f53d9152acb6c6ea0f05b4e50842a90497fdca.

Blocking issues:

  • Blocking: Update the new Assimulo CI lane off deprecated action/runtime inputs before merge. See the inline comment on .github/workflows/ci.yml for the exact GitHub annotations and replacement inputs.

I would not merge this until the blocking issues above are addressed.

Nonblocking issues:

  • None.

Questions:

  • None.

Tests run and outcomes:

  • Local PR-head: pytest --collect-only -q -> 12 tests collected.
  • Local PR-head: pytest tests/ -m 'not assimulo' -q -rs -> 6 passed, 6 deselected.
  • Local PR-head: pytest tests/ -m assimulo -q -rs -> 6 skipped, 6 deselected because Assimulo is not installed locally.
  • Local PR-head: python -m build --sdist --no-isolation -> passed; the sdist included TESTING.md and environment.yml.
  • GitHub PR-head checks for b7f53d9: CI pull_request run 28589354850 and push run 28589351179 both completed successfully for Core tests and Assimulo integration tests; the pull-request run has the CI annotations described in the inline finding.

Merge-readiness:

  • The PR is still a draft, so this COMMENT review does not satisfy branch-protection approval. GitHub reports mergeStateStatus as CLEAN; branch protection for master returned Branch not protected; reviewDecision is empty. This account is the PR author, so it cannot provide formal approval or requested-changes review if one is needed after the draft and blocking CI issue are cleared.

Comment thread .github/workflows/ci.yml Outdated
sudo apt-get install -y gfortran liblapack-dev libblas-dev

- name: Set up conda environment
uses: conda-incubator/setup-miniconda@v3

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Blocking: This new CI lane is still using deprecated action/runtime inputs. The current PR-head run for b7f53d9 annotates actions/checkout@v4 and conda-incubator/setup-miniconda@v3 as Node.js 20 actions being forced onto Node.js 24, and it also warns that auto-activate-base is deprecated and that defaults may be added implicitly. Since #6 asks for a stable conda-forge Assimulo lane, please update this job to the current workflow conventions (actions/checkout@v5, conda-incubator/setup-miniconda@v4, the replacement activation input) and remove implicit defaults, for example with conda-remove-defaults: true, before merging. Rebasing on current master will also bring the core job back to checkout@v5/setup-python@v6 for PR-head checks.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

Addressed in a2f1bbc: the workflow now uses checkout@v5, setup-python@v6, setup-miniconda@v4, auto-activate, and conda-remove-defaults: true, while preserving the current master permissions/concurrency hardening. The current pull_request CI run 28606044218 passed without the prior deprecation annotations.

@bernalde
bernalde marked this pull request as ready for review July 2, 2026 16:37
@bernalde

bernalde commented Jul 2, 2026

Copy link
Copy Markdown
Author

Addressed the review feedback on the CI action/runtime deprecations.

Commits pushed:

  • a2f1bbc Update CI action versions

Main changes:

  • Updated the workflow hardening to match current master: push only on master, read-only contents permission, and concurrency cancellation.
  • Moved CI actions to current majors: actions/checkout@v5, actions/setup-python@v6, and conda-incubator/setup-miniconda@v4.
  • Replaced deprecated auto-activate-base with auto-activate and set conda-remove-defaults: true.
  • Updated the PR body now that Relax dependency bounds and enable Dependabot #93 / Relax dependency pins and enable Dependabot #9 has landed, and marked the PR ready for review.

Tests and checks:

  • actionlint .github/workflows/ci.yml passed.
  • pytest --collect-only -q passed: 12 tests collected.
  • pytest tests/ -m "not assimulo" -q -rs passed: 6 passed, 6 deselected.
  • pytest tests/ -m assimulo -q -rs passed locally as expected without Assimulo: 6 skipped, 6 deselected.
  • python -m build --sdist --no-isolation passed.
  • GitHub Actions pull_request run 28606044218 passed on a2f1bbc: Core tests and Assimulo integration tests both succeeded.

Comments intentionally not addressed:

  • None.

Remaining:

  • The PR is no longer draft and GitHub reports mergeStateStatus as CLEAN. This account authored the PR, so a separate eligible maintainer approval may still be needed if the repository requires formal approval.

@bernalde
bernalde merged commit bff897f into master Jul 2, 2026
2 checks passed
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.

Add an opt-in assimulo integration CI job (conda)

1 participant