new_package_creation: use pixi instead of conda#307
Conversation
Switch the Snakefile to run each rule via `pixi run -e singlem` rather than per-rule conda envs, and replace the hardcoded ~/git/singlem invocations with `pixi run -e singlem singlem`. Add a pixi.toml defining a single `singlem` environment pinned to the newest singlem, and remove the now-unused envs/singlem.yml conda env. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 98a25dd44a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| "envs/singlem.yml" | ||
| shell: | ||
| "graftM create --min_aligned_percent 0 --force --sequences {params.aa_sequences_file} {params.hmm_arg} --output {output.gpkg} --threads {threads} --no_tree --taxonomy {params.taxonomy_file} 2> {log}" | ||
| "pixi run -e singlem graftM create --min_aligned_percent 0 --force --sequences {params.aa_sequences_file} {params.hmm_arg} --output {output.gpkg} --threads {threads} --no_tree --taxonomy {params.taxonomy_file} 2> {log}" |
There was a problem hiding this comment.
Point pixi at this workflow’s manifest
When this Snakefile is launched from any directory other than extras/new_package_creation—for example snakemake -s extras/new_package_creation/Snakefile from the repo root—these pixi run -e singlem commands do not use the new extras/new_package_creation/pixi.toml. Pixi manifest discovery searches the current directory and then parent directories, so from the repo root it picks the repo-level pixi.toml, which has no singlem environment, and from unrelated work dirs it misses this manifest entirely. Pass --manifest-path for this workflow’s pixi.toml or otherwise anchor the command to the Snakefile directory so the rules remain runnable outside that exact cwd.
Useful? React with 👍 / 👎.
Use `pixi run --manifest-path <Snakefile dir>/pixi.toml -e singlem` (via workflow.basedir) so the rules use this workflow's own pixi.toml regardless of the invocation cwd, rather than relying on pixi's parent-directory manifest discovery. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Addressed the Codex review comment in 9b9b957: rules now run |
Switch the
extras/new_package_creationSnakefile to use pixi rather than conda.Changes
conda: "envs/singlem.yml"directives and prefixed every shell command withpixi run -e singlem. The hardcoded~/git/singlem/bin/singlem ...invocations are replaced withpixi run -e singlem singlem ..., and the stale "unreleased fix post 0.16.0" comments are dropped.singlemenvironment pinned to the newest singlem.The
verify_tested_metapackagerule uses arun:block (Snakemake's own Python), had no conda env, and is unchanged.Note:
pixi run -e singlemresolves the pixi project from the working directory, so Snakemake should be invoked fromextras/new_package_creation/where the newpixi.tomllives.🤖 Generated with Claude Code