Hello, I am encountering some CI issues with a pip...
# linting
n
Hello, I am encountering some CI issues with a pipeline I am trying to add to nf-core. These are in `nf-core linting / pre-commit (pull_request)`:
Error: Process completed with exit code 1
. (https://github.com/nf-core/genomeassembler/actions/runs/11814582801/job/32913922952?pr=62) I think this is prettier, but I have 0 idea what is going on. The other one is in
nf-core linting / nf-core
: This fails when installing dependencies:
Copy code
ERROR: Invalid requirement: 'nf-core==': Expected end or semicolon (after name and no valid version specifier)
    nf-core==
but I dont even know where this environment is specified, it says read .nf-core.yml , this only contains
repository: pipeline
failing run is here https://github.com/nf-core/genomeassembler/actions/runs/11814582801/job/32913922589?pr=62 . Could someone explain to me how to fix this, or point me somewhere where I can learn about what is happening?
quick look 1
Well that fixed at least one of the problems ๐Ÿ™‚
m
yes, the first one is prettier linting failing. it shows that it would apply changes the a number of files, but doesnโ€™t commit these changes. you have to do that. I recommend to use pre-commit and then run
pre-commit run prettier --all-files
to fix these things (or via a github comment like I did). the other warning is because there was a bug in a short window of tools releases. try to copy over the code from https://github.com/nf-core/tools/blob/main/nf_core/pipeline-template/.github/workflows/linting.yml to your linting.yml
n
Thanks!
The nf-core bot does not seem to respond to me ๐Ÿ˜• I will try to get prettier set-up but there are some issues.. It actually does respond, I am just not very patient
m
just use pre-commit to setup prettier. that should be easier
n
It would be easier, I agree, but the environment I am using is ancient, seems to lack the correct GLIBC version, and will be replaced in a month so I will set it up once I switch to a newer cluster and ask the bot to do it until then ๐Ÿ™‚
Replacing
.github/workflows/linting.yml
with the contents of the
linting.yml
you linked does not fix the error in the nf-core linting workflow
I think the issue was my
.nf-core.yml
not containing
nf_core_version
๐Ÿ‘๐Ÿป 1
m
makes sense
n
Ok, so now I am failing the linting ๐Ÿ˜„ I think I mentioned this before, but I get this:
Copy code
nextflow_config: Config default value incorrect: params.flye_mode is set as  --nano-hq in nextflow_schema.json but is null in nextflow.config.
However, it is set in
nextflow.config
: https://github.com/nschan/genomeassembler/blob/assembler/nextflow.config#L77
m
can you try removing the comment afterwards?
nevermind. worked in other places
n
ok
this issue also occured before i added the comment there
m
can you post what you get for
nextflow config -flat .
n
Copy code
> nextflow config -flat . | grep flye
params.assembler = 'flye'
params.flye_mode = '--nano-hq'
params.flye_args = ''
Any idea what is causing this?
m
Nope, I am still investigating. Because it is coming up in the dev branch
n
Ok, thanks, meanwhile, maybe you have a suggestion how to fix
actions_awsfulltest: .github/workflows/awsfulltest.yml is not triggered correctly
? If I understand https://nf-co.re/tools/docs/3.0.2/pipeline_lint_tests/actions_awsfulltest correctly this should look like:
Copy code
on:
  release:
    types: [published]
  workflow_dispatch:
But that does not seem to fix it, is it something in the test itself I should change? Do I actually need this test?
m
oh, that docs part is outdated. it should be:
Copy code
on:
  pull_request:
    branches:
      - master
  workflow_dispatch:
  pull_request_review:
    types: [submitted]
n
Thanks!
That fixed all linting errors, except for the params problem
m
if you want you can ignore them until the next tools release, you can set that in the in the
.nf-core.yml
as shown in https://nf-co.re/docs/nf-core-tools/api_reference/3.0.2/pipeline_lint_tests/nextflow_config at the bottom
n
Thanks, I will do that for now
I have one more question: what does the 'ungrouped param' warning mean, how should they be grouped?
m
it means you have some parameters in the schema that are not part of a
$defs
group. sometimes the result of a less successful merge
n
I see, all my params are part of
properties
, this came out of
pipeline schema create
with the webthing, I think I can follow what the point of
defs
is, should I just move them in there manually or is there some less annoying way?
m
let me have a look
it is correct, we in nf-core just like things a bit more structured. using
nf-core pipelines schema create
again, can you group the โ€œfree floatingโ€ params like
ont
or
hifi
? (there is a add group button and then a button to add parameters into them or just drag and drop)
n
I see, sure I can do that, I did not really get the point of group when I did it last time
m
it makes them a bit easier to find and navigate to on the website
left some inspiration for polishing the schema entries ๐Ÿ™‚
๐Ÿ™Œ 1
n
Thanks I will take a look
I think I figured out the other problem with the params not being set: I had at some point in the past initialized those params in
<http://main.nf|main.nf>
and this seems to interfere with the nextflow.config settings during linting? There might be a subtle difference between
nextflow.config
and
nextflow config
in the linting errors, I am still not sure why this only affected a specific subset, but now that I removed them from
<http://main.nf|main.nf>
it works fine. ๐Ÿ˜•
m
oh, interesting