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

quickstart tutorial command throws attribute error #237

Closed
clb21565 opened this issue Oct 24, 2022 · 5 comments · Fixed by #242
Closed

quickstart tutorial command throws attribute error #237

clb21565 opened this issue Oct 24, 2022 · 5 comments · Fixed by #242

Comments

@clb21565
Copy link

hi there,
running the quickstart tutorial command:
(grist) genome-grist run conf-tutorial.yml summarize_gather summarize_mapping

produces the following result/error:

samples: ['SRR5950647']
outdir: outputs.tutorial
base_tempdir: /tmp/tmpmav0xysu
Building DAG of jobs...
Using shell: /usr/bin/bash
Provided cores: 1 (use --cores to define parallelism)
Rules claiming more threads will be scaled down.
Traceback (most recent call last):
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/snakemake/init.py", line 699, in snakemake
success = workflow.execute(
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/snakemake/workflow.py", line 1056, in execute
logger.run_info("\n".join(dag.stats()))
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/snakemake/dag.py", line 2192, in stats
yield tabulate(rows, headers="keys")
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/tabulate/init.py", line 2048, in tabulate
list_of_lists, headers = _normalize_tabular_data(
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/tabulate/init.py", line 1471, in _normalize_tabular_data
rows = list(map(lambda r: r if _is_separating_line(r) else list(r), rows))
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/tabulate/init.py", line 1471, in
rows = list(map(lambda r: r if _is_separating_line(r) else list(r), rows))
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/tabulate/init.py", line 107, in _is_separating_line
(len(row) >= 1 and row[0] == SEPARATING_LINE)
File "/home/clb21565/miniconda3/envs/grist/lib/python3.9/site-packages/snakemake/rules.py", line 1127, in eq
return self.name == other.name and self.output == other.output
AttributeError: 'str' object has no attribute 'name'

things seemed to have installed OK

@clb21565
Copy link
Author

turns out i didn't have snakemake installed as i believed i did, conda installed and all is well

@ctb
Copy link
Member

ctb commented Oct 25, 2022

that's an odd error if snakemake wasn't installed! hmm. please let me know if you run into any more problems!

@carden24
Copy link

carden24 commented Dec 2, 2022

I had the same issue when installing grist 0.9, i run conda install snakemake and it worked to bypass the error. however, I now have the issue #241

@ctb
Copy link
Member

ctb commented Dec 3, 2022

This error also popped up in spacegraphcats: spacegraphcats/spacegraphcats#471

It turns out the initial error was caused by installing tabulate v0.9.0, which was released on Oct 6, 2022; this broke snakemake v6.12.3, which relied on tabulate v0.8.10 but was not version pinned to that.

I confirmed this by:

  • first, running the quickstart, and recapitulating the error above; pip show tabulate showed v0.9.0.

  • then, upgrading snakemake to latest (7.18.2) and not having any problems.

  • finally, forcing the original install via pip install snakemake==6.12.3 tabulate==0.8.10, and showing that the problem returned.

@ctb
Copy link
Member

ctb commented Dec 3, 2022

suggested fix: snakemake/snakemake#1989

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 a pull request may close this issue.

3 participants