Behaviour of lint check `files_unchanged` is different in 3.1.2
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 322
- Forks
- 255
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 5
Description
Description of the bug
In previous versions of the tools manifest.author was required for the files_unchanged check and this was checked up front and if it wasn't present the test was skipped (source code).
In 3.1.2 we now pull names from either manifest.author or manifest.contributors (source code). However neither of these are checked for up front now (source code).
This can cause an unhandled error to be raised if neither manifest.author or manifest.contributors is present or if they resolve to an empty string (e.g. if contributors do not have a name field set see: pairgenomealign example).
We should either check for the presence of the author/contributors up front or add a check at the point of determination of names to similarly ignore the lint test.
Command used and terminal output
System information
No response
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start in nf_core/pipelines/lint/files_unchanged.py, comparing the earlier and 3.1.2 implementations around the upfront metadata check and the determination of names. Add coverage for missing or empty manifest.author and manifest.contributors values, and confirm the files_unchanged lint test is ignored instead of raising an unhandled error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 68/100