Make vsc_calcua strict syntax compatible#1016
Make vsc_calcua strict syntax compatible#1016nvnieuwk wants to merge 5 commits intonf-core:masterfrom
Conversation
|
I'll give it a go (soonTM). Cheers for the update! |
|
I haven't gotten around to testing or reviewing the changes yet, but I'll allocate some time to do so next week. Thanks for the help in any case! |
|
OK! I've tested the new config and had to make the following changes:
After these adjustments, everything seems to work when using either What I'm still unsure about:
https://nextflow.slack.com/archives/C02TPSL19UJ/p1774277999098809
|
|
You also have a third merge conflict at the end of the config, could you resolve this first? |
|
Ack. That's what I get for not double-checking. Things went awry when I switched between two machines and juggled a git stash. Added a fixup. You can do a |
|
Looks good to me, feel free to approve and merge if you think this is ready |
|
There's a bunch of exit statements in the config that the automatic tests seem to have problems with. I guess I could change them into warnings instead? |
|
Yeah that might be for the best |
de59fd3 to
422b3f3
Compare
|
To everyone I somehow tagged => ignore this. GH keeps messing with my attempts to rebase/squash instead of merge... |
de59fd3 to
fc42f62
Compare
…e comments - Changes param "functions" into dynamic variables. - Fixes regression: dynamic allocation of resources should be used in single node execution mode instead of slurm scheduling mode. - Use explicit int/str types for dynamic resource allocation to avoid weird behaviour. In depth explanation: Functions are no longer allowed in the new strict syntax mode, see: https://nf-co.re/docs/tutorials/migrate_to_strict_syntax/config_strict_syntax#functions). However, the proposed param "functions" caused execution errors: `groovy.lang.MissingMethodException: No signature of method: java.util.LinkedHashMap.vsc_calcua_get_allocated_mem_func() is applicable for argument types: (Integer)` This commit instead tries to mimic the old functionality using dynamic variables as described here: https://nf-co.re/docs/tutorials/migrate_to_strict_syntax/config_strict_syntax#dynamic-variables Note: care should be taken when mixing integers and strings in ternary / elvis operators when using explicitly typed variables. E.g. in this case a weird mix of `def int max_cpus` with untyped strings for the slurm cpu count seemed to convert the string '4' into the int 52.
The system.exit(1) calls seemed to cause problems with the automatic testing, so these were replaced by warnings.
This should make it easier to run two-step pipelines and troubleshoot.
fc42f62 to
6bcbc1d
Compare
pmoris
left a comment
There was a problem hiding this comment.
Seems to work on CalcUA, but some of the tests keep failing even after I removed the system.exit() calls. ! Is it OK if I just ignore them? I think the issue is with other configs, rather than changes we made to this one.
|
The test for your config works so feel free to merge :) |
|
@nf-core-bot fix linting |
|
This PRs converts the config to the strict syntax.
@pmoris would you mind testing this config on the cluster it is designed for? Please run a test with strict syntax enabled (
NXF_SYNTAX_PARSER=v2) and with it disabled (NXF_SYNTAX_PARSER=v1) to ensure backwards compatibility.Let me know if something's broken 😁