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

Singularity build failing #95

Open
martinghunt opened this issue Sep 6, 2022 · 4 comments
Open

Singularity build failing #95

martinghunt opened this issue Sep 6, 2022 · 4 comments

Comments

@martinghunt
Copy link
Member

using commit e0cfa88. Tail of terminal output from singularity build is:

+ mypy --python-version 3.10 viridian_workflow
viridian_workflow/self_qc.py:339: error: Need type annotation for "summary" (hint: "summary: Dict[<type>, <type>] = ...")
viridian_workflow/self_qc.py:470: error: Incompatible return value type (got "Tuple[str, Dict[str, Any], Dict[str, Any]]", expected "Tuple[str, Dict[str, Any], defaultdict[str, Any]]")
Found 2 errors in 1 file (checked 20 source files)
FATAL:   While performing build: while running engine: exit status 1
@jeff-k
Copy link
Contributor

jeff-k commented Sep 7, 2022

My master branch can be unstable, this won't effect the iqbal-lab-org repo.

Type checking can be disabled when building images, though when testing from development branches I recommend running a stable singularity image with the PYTHONPATH set to the checked out branch.

@jeff-k jeff-k closed this as completed Sep 7, 2022
@iqbal-lab
Copy link
Contributor

To clarify that cryptic (spot the dad joke/reference) comment - i've asked @jeff-k to merge back into the refactor_2020 branch of the iqbal-lab-org repo.
@jeff-k - if we want a container which works and contains cuckoo mode working, what exactly are you recommending? waiting til you merge? This comment

"Type checking can be disabled when building images, though when testing from development branches I recommend running a stable singularity image with the PYTHONPATH set to the checked out branch"

is kind of confusing to me, you seem to be saying
a) theoretically type checking can be disabled (btw, why do type checking and disable it?)
b) but rather than a) you recommend using a stable image - so where is that supposed to come from?

@iqbal-lab iqbal-lab reopened this Sep 7, 2022
@jeff-k
Copy link
Contributor

jeff-k commented Sep 7, 2022

The fix to make cuckoo mode work on my fork is:

-    run(options, force_consensus=options.force_consensus)
+    run(options, force_consensus=options.consensus)

It is not actually required to build an image to try this out. What I recommend for testing small patches is to run a stable singularity image but overriding the path that viridian is sourced from:

PYTHONPATH=viridian_workflow/ singularity exec vwf.img viridian_workflow cuckoo --dump_tsv --tech illumina --consensus ../covid/MN908947.fasta --ref ../covid/MN908947.fasta --outdir /tmp/test/ --reads1 ~/covid/ERR7194000_1.fastq.gz --reads2 ~/covid/ERR7194000_2.fastq.gz --force

Any image will do as long as the installed components (varifier, cylon, etc.) are compatible with what you're testing.

Regarding type checking, you can think of it like unit tests or documentation coverage. You can disable unit tests to build an image if they aren't passing on your development branch but there's something specific you'd like to test. I do not recommend disabling these checks when building images, though. A much more ergonomic development setup is to use the above development method.

@jeff-k
Copy link
Contributor

jeff-k commented Oct 12, 2022

Does this resolve the issue?

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

No branches or pull requests

3 participants