diff --git a/sites/docs/src/content/docs/specifications/components/modules/general.md b/sites/docs/src/content/docs/specifications/components/modules/general.md index 529c2f8a69..7185a41a21 100644 --- a/sites/docs/src/content/docs/specifications/components/modules/general.md +++ b/sites/docs/src/content/docs/specifications/components/modules/general.md @@ -18,10 +18,12 @@ Non-file mandatory arguments required for the module to run without error SHOULD ## Optional command arguments -All _non-mandatory_ command-line tool _non-file_ arguments MUST be provided as a string via the `$task.ext.args` variable. +All _non-mandatory_ command-line tool _non-file_ arguments MUST be supported in the module via the `$task.ext.args` variable. -Supply `task.ext.args` from the `modules.config` file by assigning a closure that returns a string to `ext.args`. -The closure allows parameters supplied in a config with `-c` to be updated. +The `$args` variable MUST be placed in the module's tool command to allow optional and/or dynamic variables to be specified by a user or a developer. +The contents of this variable is specified by a pipeline developer or user in with the `ext.args` process variable in a `modules.config` or other Nextflow config file using a closure. +Config file are present in pipelines and subworkflows, not for each individual module, except for configs for tests. +The `$ext.args` variable can also be used in module tests to increase the test coverage of a tool's functionality through a companion `nextflow.config` alongside the test files themselves. ```groovy {2} title=".nf" script: diff --git a/sites/docs/src/pages/docs/[subsection].astro b/sites/docs/src/pages/docs/[subsection].astro index c5e3e14678..24aad12dcf 100644 --- a/sites/docs/src/pages/docs/[subsection].astro +++ b/sites/docs/src/pages/docs/[subsection].astro @@ -7,11 +7,13 @@ import { sanitizeNfCoreLabels, addEntriesToSection } from "@utils/functions"; import SidebarSubNav from "@components/sidebar/SidebarSubNav.astro"; export async function getStaticPaths() { - return ["get-started", "users", "developers", "contributors", "specifications", "community", "nf-core-tools"].map((subsection) => ({ - params: { - subsection: subsection, - }, - })); + return ["get-started", "users", "developers", "contributors", "specifications", "community", "nf-core-tools"].map( + (subsection) => ({ + params: { + subsection: subsection, + }, + }), + ); } const { subsection } = Astro.params; diff --git a/sites/docs/src/pages/docs/index.astro b/sites/docs/src/pages/docs/index.astro index f23def7839..fd04a2bcce 100644 --- a/sites/docs/src/pages/docs/index.astro +++ b/sites/docs/src/pages/docs/index.astro @@ -109,19 +109,19 @@ const featuredPages = [ title: "What is nf-core?", href: "/docs/get_started/nf-core", icon: "octicon:play-16", - description: "Introduction to the nf-core project and community" + description: "Introduction to the nf-core project and community", }, { title: "Environment setup", href: "/docs/get_started/environment_setup/overview", icon: "octicon:gear-16", - description: "Set up your system to run nf-core pipelines" + description: "Set up your system to run nf-core pipelines", }, { title: "Run your first pipeline", href: "/docs/get_started/run-your-first-pipeline", icon: "octicon:terminal-16", - description: "Step-by-step guide to running an nf-core pipeline" + description: "Step-by-step guide to running an nf-core pipeline", }, ]; @@ -174,20 +174,19 @@ const mainSections = [ }, ]; - // Define training cards const trainingCards = [ { title: "Nextflow documentation", href: "https://www.nextflow.io/docs/latest/index.html", icon: "octicon:book-16", - description: "Official Nextflow language documentation and guides" + description: "Official Nextflow language documentation and guides", }, { title: "Nextflow and nf-core training", href: "https://training.nextflow.io/latest/", icon: "octicon:mortar-board-16", - description: "Hands-on training materials and workshops" + description: "Hands-on training materials and workshops", }, ]; --- @@ -209,15 +208,15 @@ const trainingCards = [ featuredEntries.map((page) => (