gagneurlab / gagneurlab/wBuild

Incompatibility with `snakemake>8`

Open
#33 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
4
Forks
6
PR merge metrics
No merged PRs in 30d

Description

Have you already done this?
- [x] Skim through FAQ section of the docu (https://wbuild.readthedocs.io/en/latest/faq.html)
- [x] Rebuild your project

#### Environment
- setup environment with: `mamba create -n drop_env_debug -c conda-forge -c bioconda drop --override-channels`
```
name: drop_env_debug
channels:
- bioconda
- conda-forge
- defaults
dependencies:
...
- python=3.12.2=hab00c5b_0_cpython
...
- snakemake-interface-common=1.17.2=pyhdfd78af_0
- snakemake-interface-executor-plugins=9.1.1=pyhdfd78af_0
- snakemake-interface-report-plugins=1.0.0=pyhdfd78af_0
- snakemake-interface-storage-plugins=3.1.1=pyhdfd78af_0
- snakemake-minimal=8.10.7=pyhdfd78af_0
...
- wbuild=1.8.0=pyhdfd78af_1
```

#### Issue description
Runing as `wbuild` wirjfkiw with `snakemake>=8` fails as eg `'get_argument_parser'` has been deprecated (Eg removal in commit: https://github.com/snakemake/snakemake/commit/c9eaa4e12e4a348f93e5ea5793faaec1fd547fac#diff-f36ddf38d7a01c55552d675c82a06d201bd48a90ef14f916df328a2113ed66b6)

#### Steps to reproduce the issue

I encountered this in the `drop` pipeline demo (https://github.com/gagneurlab/drop/issues/534`

1. `mamba create -n drop_env -c conda-forge -c bioconda drop --override-channels`
2.
```
conda activate drop_env
mkdir ~/drop_demo
cd ~/drop_demo
drop demo
```
3. `snakemake -n # dryrun`

#### What's the expected result?

Workflow should work

#### What's the actual result?

Error:

```
(drop_env_debug) xxx:~/drop_demo$ snakemake -n
ImportError in file /home/vitoz/drop_demo/Snakefile, line 3:
cannot import name 'get_argument_parser' from 'snakemake' (/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/snakemake/__init__.py)
File "/home/vitoz/drop_demo/Snakefile", line 3, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/drop/__init__.py", line 1, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/drop/setupDrop.py", line 2, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/drop/config/__init__.py", line 1, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/drop/config/DropConfig.py", line 1, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/drop/config/SampleAnnotation.py", line 1, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/drop/utils.py", line 3, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/wbuild/__init__.py", line 10, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/wbuild/autolink.py", line 6, in
File "/home/vitoz/mambaforge/envs/drop_env_debug/lib/python3.12/site-packages/wbuild/utils.py", line 12, in

```

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the failure with the documented mamba environment and `snakemake -n`. Then inspect `wbuild/utils.py` and `wbuild/autolink.py`, the files shown in the traceback, along with the `Snakefile` import at line 3. Done means the drop demo dry run completes with Snakemake 8.10.7 without the `get_argument_parser` ImportError.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.