False positive merge marker failures due to .venv directory
Open
Nobody has claimed this yet.
bug
- Dominant language
- Python
- Stars
- 322
- Forks
- 255
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 5
Description
Description of the bug
If nf-core is installed via pip and venv, nf-core pipelines lint will find merge markers in the .venv directory and report these as errors
$ nf-core pipelines lint
...
╭─ [✗] 16 Pipeline Tests Failed ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/tests/pipelines/lint/test_merge_markers.py: main_nf_content = ">>> │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/tests/pipelines/lint/test_merge_markers.py: assert "Merge marker ' │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/ruamel/yaml/constructor.py: # print('>>>>>>>> here │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/numpy/_core/_multiarray_umath.cpython-312-x86_64-linux-gnu.so: ���<<<<<<<<<<<<<<<<<<<<<<<<<<< │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/numpy/_core/_multiarray_umath.cpython-312-x86_64-linux-gnu.so: ���<<<<<<<<<<<<<<<<<<<<<<<<<<< │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/nf_core/pipelines/lint/merge_markers.py: >>>>>>> or <<<<<<< │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/nf_core/pipelines/lint/merge_markers.py: >>>>>>> or <<<<<<< │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/nf_core/pipelines/lint/merge_markers.py: if ">> │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/nf_core/pipelines/lint/merge_markers.py: fa │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/nf_core/pipelines/lint/merge_markers.py: if "<< │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/nf_core/pipelines/lint/merge_markers.py: fa │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/pillow.libs/libharfbuzz-07d0ad17.so.0.61010.0: │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/pillow.libs/libharfbuzz-07d0ad17.so.0.61010.0: ///<<<<<<<<<<<���� │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/pillow.libs/libharfbuzz-07d0ad17.so.0.61010.0: │
│ merge_markers: Merge marker '>>>>>>>' in .venv/lib/python3.12/site-packages/pillow.libs/libharfbuzz-07d0ad17.so.0.61010.0: │
│ merge_markers: Merge marker '<<<<<<<' in .venv/lib/python3.12/site-packages/pillow.libs/libharfbuzz-07d0ad17.so.0.61010.0: ���� │
│ │
╰───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
╭───────────────────────╮
│ LINT RESULTS SUMMARY │
├───────────────────────┤
│ [✔] 230 Tests Passed │
│ [?] 3 Tests Ignored │
│ [!] 89 Test Warnings │
│ [✗] 16 Tests Failed │
╰───────────────────────╯
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 with nf_core/pipelines/lint/merge_markers.py, identified in the lint output, and run nf-core pipelines lint from a project with a .venv directory to reproduce the false positives. Trace how files are discovered and verify that installed virtual-environment files, including binary files, are no longer reported as merge-marker failures.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- cli, tooling
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100