nf-core / nf-core/nft-utils

Bubble up some more errors

Open
#73 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
13
Forks
11
Avg merge
1d 16h
Merged PRs (30d)
6

Description

Last week I ran into a situation where it would be nice to have some extra error handling.

Essentially I was running nf-test on a number of subworkflows and modules for our internal modules repo, at some point the nf-core modules cache (the .git database) got corrupted, potentially me spamming too many runs over too short a period of time.

After this, the runner would stop at Installing nf-core modules.... at one point I left this overnight (prior to realising the cache was corrupted) and it was still at the same point. It wouldn't properly die until I exit the program.

Running later on with nf-core to install a module resulted in a an error that better led to the issue and I understand now, that many of these commands are actually wrappers for an underlying nf-core tools command. Which has taken me to where I think the error comes from...

Ignore the inlines pointing to specific lines, I was trying to link to the whole function.

https://github.com/nf-core/nft-utils/blob/9a9092107021fed6262cad539c079079ce1a399c/src/main/java/nf_core/nf/test/utils/NfCoreUtils.java#L47

https://github.com/nf-core/nft-utils/blob/9a9092107021fed6262cad539c079079ce1a399c/src/main/java/nf_core/nf/test/utils/NfCoreUtils.java#L111-L121

The error of nf-core crashing due to a corrupted nf-core-modules repo seems to fall outside of the current error catching.

I'll try and re-create the situation for more details.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with src/main/java/nf_core/nf/test/utils/NfCoreUtils.java, especially the linked sections around lines 47 and 111-121, and trace how nf-core module installation errors are caught. Reproduce or inspect the corrupted nf-core-modules cache scenario if possible. Done means a corrupted cache produces a surfaced error instead of leaving the runner stuck at module installation.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
testing, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.