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

Upgrade to Python 3.12 / Snakemake 8 #355

Merged
merged 28 commits into from
Sep 17, 2024
Merged

Conversation

jsbrittain
Copy link
Collaborator

@jsbrittain jsbrittain commented Sep 12, 2024

  • Upgrade to Python 3.12
  • Upgrade to Snakemake 8
  • Migrate from poetry to uv (builder, runner, pyrunner(in electron-app))
  • Extend pyrunner test strategy to support packaged routines, post calls, and pyinstaller (bundled) workflows
  • Bug fixes:
    • Email alerts were not sending on workflow success/failure
    • Lychee was failing due to recently updated documentation template

Github actions for building and publishing have also been updated. Postbuild checks are available as CI to this PR. Nightly checks have been run on the local repo (https://github.com/jsbrittain/GRAPEVNE/actions/runs/10852170943), and publish checks have been run on the local repo (https://github.com/jsbrittain/GRAPEVNE/actions/runs/10851936860). note that windows builds still report a false-negative during upload; this is fine.

Resolves #189 #146

note: by upgrading to Snakemake 8 some previous modules will be made incompatible; this can be resolved by adopting grapevne helper in those scripts.

@jsbrittain jsbrittain marked this pull request as ready for review September 17, 2024 11:16
@jsbrittain jsbrittain merged commit 4d5f4f0 into kraemer-lab:main Sep 17, 2024
10 checks passed
jsbrittain added a commit that referenced this pull request Sep 17, 2024
* Upgrade to Python 3.12 / Snakemake 8; migrate from poetry to uv; improve pyrunner test strategy

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Add ruff to dev-dependencies

* Remove redundant import

* Revert docs build to Python 3.11

* Update test-repo to use grapevne-helper

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Remove absolute paths from test workflows

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Add setuptools to github actions

* Remove absolute path from pyinstaller test

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* Migrate install_miniforge script to .venv from poetry

* Separate file and folder copying when packaging modules

* Modify Dockerfile for Snakemake v8 and install grapevne-py

* Fix bug that prevented email alerts from being sent

* Remove sources from docs build

* Setup conda using github action for postbuild tests

* Switch payload-shell to payload-run for Windows testing

* Disable workflow checks on Windows where modules connect together (known bug)

* Update nightly and publish workflows to support action-based conda install

* Update nightly and publish workflows to support action-based conda install

* Reject non-native binaries introduced by PuLP

* Remove .venv from build

* Revert and update nightly_build github action

* Disable colima/docker install on macos-12 as both very slow and inconsistent

* Migrate to grapevne-py installer

* Update grapevne_helper in tests

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
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.

Support Snakemake 8
1 participant