From 0eaa72002e9c11679fcbbd43ea5c39b1679e2424 Mon Sep 17 00:00:00 2001 From: mashehu Date: Tue, 9 Jul 2024 10:54:23 +0200 Subject: [PATCH 1/4] update API docs with new pipeline command structure --- docs/api/_src/api/index.md | 15 ++-- docs/api/_src/api/licences.md | 9 --- docs/api/_src/api/modules.md | 9 --- .../_src/api/{ => pipelines}/bump_version.md | 2 +- docs/api/_src/api/{ => pipelines}/create.md | 2 +- docs/api/_src/api/{ => pipelines}/download.md | 2 +- docs/api/_src/api/pipelines/index.md | 8 ++ docs/api/_src/api/{ => pipelines}/launch.md | 2 +- docs/api/_src/api/{ => pipelines}/lint.md | 4 +- docs/api/_src/api/{ => pipelines}/list.md | 2 +- .../_src/api/{ => pipelines}/params-file.md | 2 +- docs/api/_src/api/{ => pipelines}/schema.md | 2 +- docs/api/_src/api/{ => pipelines}/sync.md | 2 +- docs/api/_src/api/{ => pipelines}/utils.md | 2 +- docs/api/_src/api/subworkflows.md | 9 --- docs/api/_src/index.md | 22 ++---- docs/api/_src/module_lint_tests/index.md | 17 ++-- .../actions_awsfulltest.md | 2 +- .../pipeline_lint_tests/actions_awstest.md | 2 +- .../_src/pipeline_lint_tests/actions_ci.md | 2 +- .../actions_schema_validation.md | 2 +- .../_src/pipeline_lint_tests/base_config.md | 2 +- .../_src/pipeline_lint_tests/files_exist.md | 2 +- .../pipeline_lint_tests/files_unchanged.md | 2 +- docs/api/_src/pipeline_lint_tests/index.md | 31 ++++++-- .../_src/pipeline_lint_tests/merge_markers.md | 2 +- .../pipeline_lint_tests/modules_config.md | 2 +- .../_src/pipeline_lint_tests/modules_json.md | 4 +- .../pipeline_lint_tests/modules_structure.md | 2 +- .../pipeline_lint_tests/multiqc_config.md | 2 +- .../pipeline_lint_tests/nextflow_config.md | 2 +- .../_src/pipeline_lint_tests/nfcore_yml.md | 2 +- .../pipeline_name_conventions.md | 2 +- .../pipeline_lint_tests/pipeline_todos.md | 2 +- docs/api/_src/pipeline_lint_tests/readme.md | 2 +- .../pipeline_lint_tests/schema_description.md | 2 +- .../_src/pipeline_lint_tests/schema_lint.md | 2 +- .../_src/pipeline_lint_tests/schema_params.md | 2 +- .../_src/pipeline_lint_tests/system_exit.md | 2 +- .../pipeline_lint_tests/template_strings.md | 2 +- .../version_consistency.md | 2 +- docs/api/_src/subworkflow_lint_tests/index.md | 14 ++-- docs/api/make_lint_md.py | 77 ++++++++++--------- 43 files changed, 139 insertions(+), 142 deletions(-) delete mode 100644 docs/api/_src/api/licences.md delete mode 100644 docs/api/_src/api/modules.md rename docs/api/_src/api/{ => pipelines}/bump_version.md (72%) rename docs/api/_src/api/{ => pipelines}/create.md (73%) rename docs/api/_src/api/{ => pipelines}/download.md (73%) create mode 100644 docs/api/_src/api/pipelines/index.md rename docs/api/_src/api/{ => pipelines}/launch.md (73%) rename docs/api/_src/api/{ => pipelines}/lint.md (64%) rename docs/api/_src/api/{ => pipelines}/list.md (74%) rename docs/api/_src/api/{ => pipelines}/params-file.md (72%) rename docs/api/_src/api/{ => pipelines}/schema.md (73%) rename docs/api/_src/api/{ => pipelines}/sync.md (74%) rename docs/api/_src/api/{ => pipelines}/utils.md (74%) delete mode 100644 docs/api/_src/api/subworkflows.md diff --git a/docs/api/_src/api/index.md b/docs/api/_src/api/index.md index a1863f7e39..035a896888 100644 --- a/docs/api/_src/api/index.md +++ b/docs/api/_src/api/index.md @@ -1,8 +1,11 @@ -# API Reference +# nf-core/tools documentation -```{toctree} -:glob: true -:maxdepth: 1 +This API documentation is for the [`nf-core/tools`](https://github.com/nf-core/tools) package. -* -``` +## Contents + +- [Pipeline commands](./pipeline_lint_tests/) (run by `nf-core pipelines lint`) +- [Module commands](./module_lint_tests/) (run by `nf-core modules lint`) +- [Subworkflow commands](./subworkflow_lint_tests/) (run by `nf-core subworkflows lint`) +- [nf-core/tools Python package API reference](./api/) + - [nf-core/tools pipeline commands API referece](./api/pipelines/) diff --git a/docs/api/_src/api/licences.md b/docs/api/_src/api/licences.md deleted file mode 100644 index 95b5f9768b..0000000000 --- a/docs/api/_src/api/licences.md +++ /dev/null @@ -1,9 +0,0 @@ -# nf_core.licences - -```{eval-rst} -.. automodule:: nf_core.licences - :members: - :undoc-members: - :show-inheritance: - :private-members: -``` diff --git a/docs/api/_src/api/modules.md b/docs/api/_src/api/modules.md deleted file mode 100644 index e3f1e39bed..0000000000 --- a/docs/api/_src/api/modules.md +++ /dev/null @@ -1,9 +0,0 @@ -# nf_core.modules - -```{eval-rst} -.. automodule:: nf_core.modules - :members: - :undoc-members: - :show-inheritance: - :private-members: -``` diff --git a/docs/api/_src/api/bump_version.md b/docs/api/_src/api/pipelines/bump_version.md similarity index 72% rename from docs/api/_src/api/bump_version.md rename to docs/api/_src/api/pipelines/bump_version.md index 54c3774408..cd7dc280f6 100644 --- a/docs/api/_src/api/bump_version.md +++ b/docs/api/_src/api/pipelines/bump_version.md @@ -1,7 +1,7 @@ # nf_core.bump_version ```{eval-rst} -.. automodule:: nf_core.bump_version +.. automodule:: nf_core.pipelines.bump_version :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/create.md b/docs/api/_src/api/pipelines/create.md similarity index 73% rename from docs/api/_src/api/create.md rename to docs/api/_src/api/pipelines/create.md index 5d5f6a62d1..576335e951 100644 --- a/docs/api/_src/api/create.md +++ b/docs/api/_src/api/pipelines/create.md @@ -1,7 +1,7 @@ # nf_core.create ```{eval-rst} -.. automodule:: nf_core.create +.. automodule:: nf_core.pipelines.create :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/download.md b/docs/api/_src/api/pipelines/download.md similarity index 73% rename from docs/api/_src/api/download.md rename to docs/api/_src/api/pipelines/download.md index 18ab51376e..540fb92c49 100644 --- a/docs/api/_src/api/download.md +++ b/docs/api/_src/api/pipelines/download.md @@ -1,7 +1,7 @@ # nf_core.download ```{eval-rst} -.. automodule:: nf_core.download +.. automodule:: nf_core.pipelines.download :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/pipelines/index.md b/docs/api/_src/api/pipelines/index.md new file mode 100644 index 0000000000..a1863f7e39 --- /dev/null +++ b/docs/api/_src/api/pipelines/index.md @@ -0,0 +1,8 @@ +# API Reference + +```{toctree} +:glob: true +:maxdepth: 1 + +* +``` diff --git a/docs/api/_src/api/launch.md b/docs/api/_src/api/pipelines/launch.md similarity index 73% rename from docs/api/_src/api/launch.md rename to docs/api/_src/api/pipelines/launch.md index eef777ca87..0f7fc03f64 100644 --- a/docs/api/_src/api/launch.md +++ b/docs/api/_src/api/pipelines/launch.md @@ -1,7 +1,7 @@ # nf_core.launch ```{eval-rst} -.. automodule:: nf_core.launch +.. automodule:: nf_core.pipelines.launch :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/lint.md b/docs/api/_src/api/pipelines/lint.md similarity index 64% rename from docs/api/_src/api/lint.md rename to docs/api/_src/api/pipelines/lint.md index 1380f7ec7b..aa62c404b8 100644 --- a/docs/api/_src/api/lint.md +++ b/docs/api/_src/api/pipelines/lint.md @@ -1,11 +1,11 @@ # nf_core.lint :::{seealso} -See the [Lint Tests](../pipeline_lint_tests/index.md) docs for information about specific linting functions. +See the [Lint Tests](/docs/nf-core-tools/api_reference/dev/pipeline_lint_tests) docs for information about specific linting functions. ::: ```{eval-rst} -.. automodule:: nf_core.lint +.. automodule:: nf_core.pipelines.lint :members: run_linting :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/list.md b/docs/api/_src/api/pipelines/list.md similarity index 74% rename from docs/api/_src/api/list.md rename to docs/api/_src/api/pipelines/list.md index 35c819bc56..7df7564544 100644 --- a/docs/api/_src/api/list.md +++ b/docs/api/_src/api/pipelines/list.md @@ -1,7 +1,7 @@ # nf_core.list ```{eval-rst} -.. automodule:: nf_core.list +.. automodule:: nf_core.pipelines.list :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/params-file.md b/docs/api/_src/api/pipelines/params-file.md similarity index 72% rename from docs/api/_src/api/params-file.md rename to docs/api/_src/api/pipelines/params-file.md index c5bbfc0f1f..06f27cc592 100644 --- a/docs/api/_src/api/params-file.md +++ b/docs/api/_src/api/pipelines/params-file.md @@ -1,7 +1,7 @@ # nf_core.params_file ```{eval-rst} -.. automodule:: nf_core.params_file +.. automodule:: nf_core.pipelines.params_file :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/schema.md b/docs/api/_src/api/pipelines/schema.md similarity index 73% rename from docs/api/_src/api/schema.md rename to docs/api/_src/api/pipelines/schema.md index a702d28058..c885d9ed23 100644 --- a/docs/api/_src/api/schema.md +++ b/docs/api/_src/api/pipelines/schema.md @@ -1,7 +1,7 @@ # nf_core.schema ```{eval-rst} -.. automodule:: nf_core.schema +.. automodule:: nf_core.pipelines.schema :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/sync.md b/docs/api/_src/api/pipelines/sync.md similarity index 74% rename from docs/api/_src/api/sync.md rename to docs/api/_src/api/pipelines/sync.md index 8cc02209da..da1f468fe5 100644 --- a/docs/api/_src/api/sync.md +++ b/docs/api/_src/api/pipelines/sync.md @@ -1,7 +1,7 @@ # nf_core.sync ```{eval-rst} -.. automodule:: nf_core.sync +.. automodule:: nf_core.pipelines.sync :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/utils.md b/docs/api/_src/api/pipelines/utils.md similarity index 74% rename from docs/api/_src/api/utils.md rename to docs/api/_src/api/pipelines/utils.md index 1353f97ef5..86b8c3f36f 100644 --- a/docs/api/_src/api/utils.md +++ b/docs/api/_src/api/pipelines/utils.md @@ -1,7 +1,7 @@ # nf_core.utils ```{eval-rst} -.. automodule:: nf_core.utils +.. automodule:: nf_core.pipelines.utils :members: :undoc-members: :show-inheritance: diff --git a/docs/api/_src/api/subworkflows.md b/docs/api/_src/api/subworkflows.md deleted file mode 100644 index 438ccd0185..0000000000 --- a/docs/api/_src/api/subworkflows.md +++ /dev/null @@ -1,9 +0,0 @@ -# nf_core.subworkflows - -```{eval-rst} -.. automodule:: nf_core.subworkflows - :members: - :undoc-members: - :show-inheritance: - :private-members: -``` diff --git a/docs/api/_src/index.md b/docs/api/_src/index.md index 037ca95475..d81a0e90d4 100644 --- a/docs/api/_src/index.md +++ b/docs/api/_src/index.md @@ -1,22 +1,10 @@ # nf-core/tools documentation -```{toctree} -:caption: 'Contents:' -:glob: true -:hidden: true -:maxdepth: 2 - -pipeline_lint_tests/index.rst -module_lint_tests/index.rst -subworkflow_lint_tests/index.rst -api/index.rst -``` - -This documentation is for the `nf-core/tools` package. +This API documentation is for the [`nf-core/tools`](https://github.com/nf-core/tools) package. ## Contents -- [Pipeline code lint tests](pipeline_lint_tests/index.md) (run by `nf-core pipelines lint`) -- [Module code lint tests](module_lint_tests/index.md) (run by `nf-core modules lint`) -- [Subworkflow code lint tests](subworkflow_lint_tests/index.md) (run by `nf-core subworkflows lint`) -- [nf-core/tools Python package API reference](api/index.md) +- [Pipeline code lint tests](./pipeline_lint_tests/) (run by `nf-core pipelines lint`) +- [Module code lint tests](./module_lint_tests/) (run by `nf-core modules lint`) +- [Subworkflow code lint tests](./subworkflow_lint_tests/) (run by `nf-core subworkflows lint`) +- [nf-core/tools Python package API reference](./api/) diff --git a/docs/api/_src/module_lint_tests/index.md b/docs/api/_src/module_lint_tests/index.md index dee84d06d8..7039ba2598 100644 --- a/docs/api/_src/module_lint_tests/index.md +++ b/docs/api/_src/module_lint_tests/index.md @@ -1,8 +1,11 @@ -# Module lint tests +# Module Lint Tests -```{toctree} -:glob: true -:maxdepth: 1 - -* -``` + - [environment_yml](./environment_yml/) + - [main_nf](./main_nf/) + - [meta_yml](./meta_yml/) + - [module_changes](./module_changes/) + - [module_deprecations](./module_deprecations/) + - [module_patch](./module_patch/) + - [module_tests](./module_tests/) + - [module_todos](./module_todos/) + - [module_version](./module_version/) diff --git a/docs/api/_src/pipeline_lint_tests/actions_awsfulltest.md b/docs/api/_src/pipeline_lint_tests/actions_awsfulltest.md index c0f0aef5a4..4bb47569ac 100644 --- a/docs/api/_src/pipeline_lint_tests/actions_awsfulltest.md +++ b/docs/api/_src/pipeline_lint_tests/actions_awsfulltest.md @@ -1,5 +1,5 @@ # actions_awsfulltest ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.actions_awsfulltest +.. automethod:: nf_core.pipelines.lint.PipelineLint.actions_awsfulltest ``` diff --git a/docs/api/_src/pipeline_lint_tests/actions_awstest.md b/docs/api/_src/pipeline_lint_tests/actions_awstest.md index 42441c8ac5..b250571a04 100644 --- a/docs/api/_src/pipeline_lint_tests/actions_awstest.md +++ b/docs/api/_src/pipeline_lint_tests/actions_awstest.md @@ -1,5 +1,5 @@ # actions_awstest ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.actions_awstest +.. automethod:: nf_core.pipelines.lint.PipelineLint.actions_awstest ``` diff --git a/docs/api/_src/pipeline_lint_tests/actions_ci.md b/docs/api/_src/pipeline_lint_tests/actions_ci.md index 78ea3aea0d..68cbc089ad 100644 --- a/docs/api/_src/pipeline_lint_tests/actions_ci.md +++ b/docs/api/_src/pipeline_lint_tests/actions_ci.md @@ -1,5 +1,5 @@ # actions_ci ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.actions_ci +.. automethod:: nf_core.pipelines.lint.PipelineLint.actions_ci ``` diff --git a/docs/api/_src/pipeline_lint_tests/actions_schema_validation.md b/docs/api/_src/pipeline_lint_tests/actions_schema_validation.md index f0c98eb213..860acb2d2e 100644 --- a/docs/api/_src/pipeline_lint_tests/actions_schema_validation.md +++ b/docs/api/_src/pipeline_lint_tests/actions_schema_validation.md @@ -1,5 +1,5 @@ # actions_schema_validation ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.actions_schema_validation +.. automethod:: nf_core.pipelines.lint.PipelineLint.actions_schema_validation ``` diff --git a/docs/api/_src/pipeline_lint_tests/base_config.md b/docs/api/_src/pipeline_lint_tests/base_config.md index 4a56ef9789..803627ced0 100644 --- a/docs/api/_src/pipeline_lint_tests/base_config.md +++ b/docs/api/_src/pipeline_lint_tests/base_config.md @@ -1,5 +1,5 @@ # base_config ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.base_config +.. automethod:: nf_core.pipelines.lint.PipelineLint.base_config ``` diff --git a/docs/api/_src/pipeline_lint_tests/files_exist.md b/docs/api/_src/pipeline_lint_tests/files_exist.md index 309ea62f0b..69890d1690 100644 --- a/docs/api/_src/pipeline_lint_tests/files_exist.md +++ b/docs/api/_src/pipeline_lint_tests/files_exist.md @@ -1,5 +1,5 @@ # files_exist ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.files_exist +.. automethod:: nf_core.pipelines.lint.PipelineLint.files_exist ``` diff --git a/docs/api/_src/pipeline_lint_tests/files_unchanged.md b/docs/api/_src/pipeline_lint_tests/files_unchanged.md index 2f3b04fe1b..3f626e5b8d 100644 --- a/docs/api/_src/pipeline_lint_tests/files_unchanged.md +++ b/docs/api/_src/pipeline_lint_tests/files_unchanged.md @@ -1,5 +1,5 @@ # files_unchanged ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.files_unchanged +.. automethod:: nf_core.pipelines.lint.PipelineLint.files_unchanged ``` diff --git a/docs/api/_src/pipeline_lint_tests/index.md b/docs/api/_src/pipeline_lint_tests/index.md index c631610d64..3575c08db4 100644 --- a/docs/api/_src/pipeline_lint_tests/index.md +++ b/docs/api/_src/pipeline_lint_tests/index.md @@ -1,8 +1,25 @@ -# Pipeline lint tests +# Pipeline Lint Tests -```{toctree} -:glob: true -:maxdepth: 1 - -* -``` + - [actions_awsfulltest](./actions_awsfulltest/) + - [actions_awstest](./actions_awstest/) + - [actions_ci](./actions_ci/) + - [actions_schema_validation](./actions_schema_validation/) + - [base_config](./base_config/) + - [files_exist](./files_exist/) + - [files_unchanged](./files_unchanged/) + - [merge_markers](./merge_markers/) + - [modules_config](./modules_config/) + - [modules_json](./modules_json/) + - [modules_structure](./modules_structure/) + - [multiqc_config](./multiqc_config/) + - [nextflow_config](./nextflow_config/) + - [nfcore_yml](./nfcore_yml/) + - [pipeline_name_conventions](./pipeline_name_conventions/) + - [pipeline_todos](./pipeline_todos/) + - [readme](./readme/) + - [schema_description](./schema_description/) + - [schema_lint](./schema_lint/) + - [schema_params](./schema_params/) + - [system_exit](./system_exit/) + - [template_strings](./template_strings/) + - [version_consistency](./version_consistency/) diff --git a/docs/api/_src/pipeline_lint_tests/merge_markers.md b/docs/api/_src/pipeline_lint_tests/merge_markers.md index b52fdba1a8..7b620b4af1 100644 --- a/docs/api/_src/pipeline_lint_tests/merge_markers.md +++ b/docs/api/_src/pipeline_lint_tests/merge_markers.md @@ -1,5 +1,5 @@ # merge_markers ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.merge_markers +.. automethod:: nf_core.pipelines.lint.PipelineLint.merge_markers ``` diff --git a/docs/api/_src/pipeline_lint_tests/modules_config.md b/docs/api/_src/pipeline_lint_tests/modules_config.md index 2a4f51c5a4..c8eac0cf9d 100644 --- a/docs/api/_src/pipeline_lint_tests/modules_config.md +++ b/docs/api/_src/pipeline_lint_tests/modules_config.md @@ -1,5 +1,5 @@ # modules_config ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.modules_config +.. automethod:: nf_core.pipelines.lint.PipelineLint.modules_config ``` diff --git a/docs/api/_src/pipeline_lint_tests/modules_json.md b/docs/api/_src/pipeline_lint_tests/modules_json.md index 0c0ba71a8f..3070f83f57 100644 --- a/docs/api/_src/pipeline_lint_tests/modules_json.md +++ b/docs/api/_src/pipeline_lint_tests/modules_json.md @@ -1,5 +1,5 @@ -# nextflow_config +# modules_json ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.modules_json +.. automethod:: nf_core.pipelines.lint.PipelineLint.modules_json ``` diff --git a/docs/api/_src/pipeline_lint_tests/modules_structure.md b/docs/api/_src/pipeline_lint_tests/modules_structure.md index faa39ca77f..8a83918857 100644 --- a/docs/api/_src/pipeline_lint_tests/modules_structure.md +++ b/docs/api/_src/pipeline_lint_tests/modules_structure.md @@ -1,5 +1,5 @@ # modules_structure ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.modules_structure +.. automethod:: nf_core.pipelines.lint.PipelineLint.modules_structure ``` diff --git a/docs/api/_src/pipeline_lint_tests/multiqc_config.md b/docs/api/_src/pipeline_lint_tests/multiqc_config.md index 311f6b3049..281957749a 100644 --- a/docs/api/_src/pipeline_lint_tests/multiqc_config.md +++ b/docs/api/_src/pipeline_lint_tests/multiqc_config.md @@ -1,5 +1,5 @@ # multiqc_config ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.multiqc_config +.. automethod:: nf_core.pipelines.lint.PipelineLint.multiqc_config ``` diff --git a/docs/api/_src/pipeline_lint_tests/nextflow_config.md b/docs/api/_src/pipeline_lint_tests/nextflow_config.md index e23e966143..98e8df2574 100644 --- a/docs/api/_src/pipeline_lint_tests/nextflow_config.md +++ b/docs/api/_src/pipeline_lint_tests/nextflow_config.md @@ -1,5 +1,5 @@ # nextflow_config ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.nextflow_config +.. automethod:: nf_core.pipelines.lint.PipelineLint.nextflow_config ``` diff --git a/docs/api/_src/pipeline_lint_tests/nfcore_yml.md b/docs/api/_src/pipeline_lint_tests/nfcore_yml.md index f7e797a29c..226eb4c948 100644 --- a/docs/api/_src/pipeline_lint_tests/nfcore_yml.md +++ b/docs/api/_src/pipeline_lint_tests/nfcore_yml.md @@ -1,5 +1,5 @@ # nfcore_yml ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.nfcore_yml +.. automethod:: nf_core.pipelines.lint.PipelineLint.nfcore_yml ``` diff --git a/docs/api/_src/pipeline_lint_tests/pipeline_name_conventions.md b/docs/api/_src/pipeline_lint_tests/pipeline_name_conventions.md index 0034319d3d..09396b6afd 100644 --- a/docs/api/_src/pipeline_lint_tests/pipeline_name_conventions.md +++ b/docs/api/_src/pipeline_lint_tests/pipeline_name_conventions.md @@ -1,5 +1,5 @@ # pipeline_name_conventions ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.pipeline_name_conventions +.. automethod:: nf_core.pipelines.lint.PipelineLint.pipeline_name_conventions ``` diff --git a/docs/api/_src/pipeline_lint_tests/pipeline_todos.md b/docs/api/_src/pipeline_lint_tests/pipeline_todos.md index 08e456ea22..8292075b91 100644 --- a/docs/api/_src/pipeline_lint_tests/pipeline_todos.md +++ b/docs/api/_src/pipeline_lint_tests/pipeline_todos.md @@ -1,5 +1,5 @@ # pipeline_todos ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.pipeline_todos +.. automethod:: nf_core.pipelines.lint.PipelineLint.pipeline_todos ``` diff --git a/docs/api/_src/pipeline_lint_tests/readme.md b/docs/api/_src/pipeline_lint_tests/readme.md index 9583a56e0a..bf947bb61e 100644 --- a/docs/api/_src/pipeline_lint_tests/readme.md +++ b/docs/api/_src/pipeline_lint_tests/readme.md @@ -1,5 +1,5 @@ # readme ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.readme +.. automethod:: nf_core.pipelines.lint.PipelineLint.readme ``` diff --git a/docs/api/_src/pipeline_lint_tests/schema_description.md b/docs/api/_src/pipeline_lint_tests/schema_description.md index 14f756acd2..0429b3cc10 100644 --- a/docs/api/_src/pipeline_lint_tests/schema_description.md +++ b/docs/api/_src/pipeline_lint_tests/schema_description.md @@ -1,5 +1,5 @@ # schema_description ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.schema_description +.. automethod:: nf_core.pipelines.lint.PipelineLint.schema_description ``` diff --git a/docs/api/_src/pipeline_lint_tests/schema_lint.md b/docs/api/_src/pipeline_lint_tests/schema_lint.md index 39be2ea65c..95bd5cc2fc 100644 --- a/docs/api/_src/pipeline_lint_tests/schema_lint.md +++ b/docs/api/_src/pipeline_lint_tests/schema_lint.md @@ -1,5 +1,5 @@ # schema_lint ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.schema_lint +.. automethod:: nf_core.pipelines.lint.PipelineLint.schema_lint ``` diff --git a/docs/api/_src/pipeline_lint_tests/schema_params.md b/docs/api/_src/pipeline_lint_tests/schema_params.md index 80a626e880..8c6594c57b 100644 --- a/docs/api/_src/pipeline_lint_tests/schema_params.md +++ b/docs/api/_src/pipeline_lint_tests/schema_params.md @@ -1,5 +1,5 @@ # schema_params ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.schema_params +.. automethod:: nf_core.pipelines.lint.PipelineLint.schema_params ``` diff --git a/docs/api/_src/pipeline_lint_tests/system_exit.md b/docs/api/_src/pipeline_lint_tests/system_exit.md index 3d0ac20f8d..9ba67d4d2f 100644 --- a/docs/api/_src/pipeline_lint_tests/system_exit.md +++ b/docs/api/_src/pipeline_lint_tests/system_exit.md @@ -1,5 +1,5 @@ # system_exit ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.system_exit +.. automethod:: nf_core.pipelines.lint.PipelineLint.system_exit ``` diff --git a/docs/api/_src/pipeline_lint_tests/template_strings.md b/docs/api/_src/pipeline_lint_tests/template_strings.md index 3d03bfb256..ee334a2a21 100644 --- a/docs/api/_src/pipeline_lint_tests/template_strings.md +++ b/docs/api/_src/pipeline_lint_tests/template_strings.md @@ -1,5 +1,5 @@ # template_strings ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.template_strings +.. automethod:: nf_core.pipelines.lint.PipelineLint.template_strings ``` diff --git a/docs/api/_src/pipeline_lint_tests/version_consistency.md b/docs/api/_src/pipeline_lint_tests/version_consistency.md index e8038f8531..868a348704 100644 --- a/docs/api/_src/pipeline_lint_tests/version_consistency.md +++ b/docs/api/_src/pipeline_lint_tests/version_consistency.md @@ -1,5 +1,5 @@ # version_consistency ```{eval-rst} -.. automethod:: nf_core.lint.PipelineLint.version_consistency +.. automethod:: nf_core.pipelines.lint.PipelineLint.version_consistency ``` diff --git a/docs/api/_src/subworkflow_lint_tests/index.md b/docs/api/_src/subworkflow_lint_tests/index.md index 0ecf590c0d..da8db49a7b 100644 --- a/docs/api/_src/subworkflow_lint_tests/index.md +++ b/docs/api/_src/subworkflow_lint_tests/index.md @@ -1,8 +1,8 @@ -# Subworkflow lint tests +# Subworkflow Lint Tests -```{toctree} -:glob: true -:maxdepth: 1 - -* -``` + - [main_nf](./main_nf/) + - [meta_yml](./meta_yml/) + - [subworkflow_changes](./subworkflow_changes/) + - [subworkflow_tests](./subworkflow_tests/) + - [subworkflow_todos](./subworkflow_todos/) + - [subworkflow_version](./subworkflow_version/) diff --git a/docs/api/make_lint_md.py b/docs/api/make_lint_md.py index 48393094b3..7b823a086e 100644 --- a/docs/api/make_lint_md.py +++ b/docs/api/make_lint_md.py @@ -1,53 +1,58 @@ -#!/usr/bin/env python - -import fnmatch -import os +from pathlib import Path +#!/usr/bin/env python +import nf_core.commands_pipelines import nf_core.modules.lint import nf_core.pipelines.lint import nf_core.subworkflows.lint -def make_docs(docs_basedir, lint_tests, md_template): - # Get list of existing .md files - existing_docs = [] - for fn in os.listdir(docs_basedir): - if fnmatch.fnmatch(fn, "*.md") and not fnmatch.fnmatch(fn, "index.md"): - existing_docs.append(os.path.join(docs_basedir, fn)) +def create_docs(docs_basedir, lint_tests, md_template): + docs_basedir.mkdir(parents=True, exist_ok=True) + existing_docs = list(docs_basedir.glob("*.md")) + existing_docs.remove(docs_basedir / "index.md") for test_name in lint_tests: - fn = os.path.join(docs_basedir, f"{test_name}.md") - if os.path.exists(fn): + fn = docs_basedir / f"{test_name}.md" + if fn.exists(): existing_docs.remove(fn) else: with open(fn, "w") as fh: fh.write(md_template.format(test_name)) for fn in existing_docs: - os.remove(fn) + fn.unlink() + + +def create_index_file(basedir, title): + index_file = basedir / "index.md" + with open(index_file, "w") as fh: + fh.write(f"# {title}\n\n") + for fn in sorted(basedir.glob("*.md")): + if fn.name != "index.md": + fh.write(f" - [{fn.stem}](./{fn.stem}/)\n") # Create the pipeline docs -pipeline_docs_basedir = os.path.join(os.path.dirname(os.path.abspath(__file__)), "_src", "pipeline_lint_tests") -make_docs( - pipeline_docs_basedir, +pipeline_lint_docs_basedir = Path(__file__).resolve().parent / "_src" / "pipeline_lint_tests" +create_docs( + pipeline_lint_docs_basedir, nf_core.pipelines.lint.PipelineLint._get_all_lint_tests(True), """# {0} -```{{eval-rst}} -.. automethod:: nf_core.pipelines.lint.PipelineLint.{0} -``` -""", + ```{{eval-rst}} + .. automethod:: nf_core.pipelines.lint.PipelineLint.{0} + ``` + """, ) +create_index_file(pipeline_lint_docs_basedir, "Pipeline Lint Tests") -# Create the modules lint docs -modules_docs_basedir = os.path.join(os.path.dirname(os.path.abspath(__file__)), "_src", "module_lint_tests") -make_docs( - modules_docs_basedir, - list( - set(nf_core.modules.lint.ModuleLint.get_all_module_lint_tests(is_pipeline=True)).union( - nf_core.modules.lint.ModuleLint.get_all_module_lint_tests(is_pipeline=False) - ) +# Create the modules docs +modules_lint_docs_basedir = Path(__file__).resolve().parent / "_src" / "module_lint_tests" +create_docs( + modules_lint_docs_basedir, + set(nf_core.modules.lint.ModuleLint.get_all_module_lint_tests(is_pipeline=True)).union( + nf_core.modules.lint.ModuleLint.get_all_module_lint_tests(is_pipeline=False) ), """# {0} @@ -56,15 +61,14 @@ def make_docs(docs_basedir, lint_tests, md_template): ``` """, ) +create_index_file(modules_lint_docs_basedir, "Module Lint Tests") -# Create the subworkflows lint docs -subworkflows_docs_basedir = os.path.join(os.path.dirname(os.path.abspath(__file__)), "_src", "subworkflow_lint_tests") -make_docs( - subworkflows_docs_basedir, - list( - set(nf_core.subworkflows.lint.SubworkflowLint.get_all_subworkflow_lint_tests(is_pipeline=True)).union( - nf_core.subworkflows.lint.SubworkflowLint.get_all_subworkflow_lint_tests(is_pipeline=False) - ) +# Create the subworkflow docs +subworkflow_lint_docs_basedir = Path(__file__).resolve().parent / "_src" / "subworkflow_lint_tests" +create_docs( + subworkflow_lint_docs_basedir, + set(nf_core.subworkflows.lint.SubworkflowLint.get_all_subworkflow_lint_tests(is_pipeline=True)).union( + nf_core.subworkflows.lint.SubworkflowLint.get_all_subworkflow_lint_tests(is_pipeline=False) ), """# {0} @@ -73,3 +77,4 @@ def make_docs(docs_basedir, lint_tests, md_template): ``` """, ) +create_index_file(subworkflow_lint_docs_basedir, "Subworkflow Lint Tests") From e8e2e49d5ab69671d9bcbad4dbe3ddf5733fc09b Mon Sep 17 00:00:00 2001 From: mashehu Date: Tue, 9 Jul 2024 10:55:26 +0200 Subject: [PATCH 2/4] remove unused assets --- docs/api/_src/_static/css/custom.css | 437 ------------------------- docs/api/_src/_static/js/custom.js | 0 docs/api/_src/_static/nf-core-logo.png | Bin 84414 -> 0 bytes docs/api/_src/_templates/layout.html | 4 - 4 files changed, 441 deletions(-) delete mode 100644 docs/api/_src/_static/css/custom.css delete mode 100644 docs/api/_src/_static/js/custom.js delete mode 100644 docs/api/_src/_static/nf-core-logo.png delete mode 100644 docs/api/_src/_templates/layout.html diff --git a/docs/api/_src/_static/css/custom.css b/docs/api/_src/_static/css/custom.css deleted file mode 100644 index e892dd9998..0000000000 --- a/docs/api/_src/_static/css/custom.css +++ /dev/null @@ -1,437 +0,0 @@ -@media (prefers-color-scheme: light) { - a, - a:visited { - color: #246eb9; - } - a:hover, - a:focus, - a:active { - color: #c03221; - } - .wy-nav-side { - background-color: #ededed; - } - .wy-nav-top, - .wy-side-nav-search, - .wy-menu-vertical a:active { - background-color: #32ad65; - } - .wy-menu-vertical a { - color: #343434; - } - .wy-menu-vertical a:hover { - background-color: #abacab85; - } - .wy-menu-vertical header, - .wy-menu-vertical p.caption { - color: #32ad65; - } - - .wy-side-nav-search input[type="text"] { - border: none; - } - - code, - .rst-content code.literal { - background-color: rgba(220, 220, 220, 0.4); - color: #c03221; - border: none; - } - .rst-content .note .admonition-title { - background-color: #72757bfc; - } - - html.writer-html4 .rst-content dl:not(.docutils) > dt, - html.writer-html5 - .rst-content - dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) - > dt { - background-color: #32ad65; - border: none; - } - .rst-content .method > dt > code { - color: #f5f6f7; - } - .rst-content div[class^="highlight"], - .rst-content pre.literal-block { - border: none; - } - .highlight { - background-color: #242424; - color: #e5e6e7; - } - .highlight .hll { - color: #e5e6e7; - background-color: #585b60fc; - } - .highlight .k, - .highlight .nt, - .highlight .no { - color: #246eb9; - } - .highlight .s, - .highlight .s1, - .highlight .s2, - .highlight .na { - color: #32ad65; - } - .highlight .nb, - .highlight .o, - .highlight .cm { - color: #ffbe0b; - } - .highlight .c1 { - color: #88898afc; - } - .highlight .nv, - .py > span { - color: #c03221; - } - .py .sig-param, - .py .sig-paren, - .property .pre { - color: #eef0f2; - } - - .method > .py .sig-param, - .method > .py .sig-paren { - color: #32ad65; - } - .btn.btn-neutral { - background-color: #e5e6e7d4 !important; - } - .rst-content .hint .admonition-title, - .rst-content .hint .wy-alert-title, - .rst-content .important .admonition-title, - .rst-content .important .wy-alert-title, - .rst-content .tip .admonition-title, - .rst-content .tip .wy-alert-title, - .rst-content .wy-alert-success.admonition-todo .admonition-title, - .rst-content .wy-alert-success.admonition-todo .wy-alert-title, - .rst-content .wy-alert-success.admonition .admonition-title, - .rst-content .wy-alert-success.admonition .wy-alert-title, - .rst-content .wy-alert-success.attention .admonition-title, - .rst-content .wy-alert-success.attention .wy-alert-title, - .rst-content .wy-alert-success.caution .admonition-title, - .rst-content .wy-alert-success.caution .wy-alert-title, - .rst-content .wy-alert-success.danger .admonition-title, - .rst-content .wy-alert-success.danger .wy-alert-title, - .rst-content .wy-alert-success.error .admonition-title, - .rst-content .wy-alert-success.error .wy-alert-title, - .rst-content .wy-alert-success.note .admonition-title, - .rst-content .wy-alert-success.note .wy-alert-title, - .rst-content .wy-alert-success.seealso .admonition-title, - .rst-content .wy-alert-success.seealso .wy-alert-title, - .rst-content .wy-alert-success.warning .admonition-title, - .rst-content .wy-alert-success.warning .wy-alert-title, - .rst-content .wy-alert.wy-alert-success .admonition-title, - .wy-alert.wy-alert-success .rst-content .admonition-title, - .wy-alert.wy-alert-success .wy-alert-title { - background-color: #32ad65; - color: #e5e6e7; - } - - .rst-content .note, - .rst-content .seealso, - .rst-content .wy-alert-info.admonition, - .rst-content .wy-alert-info.admonition-todo, - .rst-content .wy-alert-info.attention, - .rst-content .wy-alert-info.caution, - .rst-content .wy-alert-info.danger, - .rst-content .wy-alert-info.error, - .rst-content .wy-alert-info.hint, - .rst-content .wy-alert-info.important, - .rst-content .wy-alert-info.tip, - .rst-content .wy-alert-info.warning, - .wy-alert.wy-alert-info, - .rst-content .hint, - .rst-content .important, - .rst-content .tip, - .rst-content .wy-alert-success.admonition, - .rst-content .wy-alert-success.admonition-todo, - .rst-content .wy-alert-success.attention, - .rst-content .wy-alert-success.caution, - .rst-content .wy-alert-success.danger, - .rst-content .wy-alert-success.error, - .rst-content .wy-alert-success.note, - .rst-content .wy-alert-success.seealso, - .rst-content .wy-alert-success.warning, - .wy-alert.wy-alert-success { - color: #343434; - background-color: #e3e3e3; - border: none; - } - - .rst-content .admonition-todo .admonition-title, - .rst-content .admonition-todo .wy-alert-title, - .rst-content .attention .admonition-title, - .rst-content .attention .wy-alert-title, - .rst-content .caution .admonition-title, - .rst-content .caution .wy-alert-title, - .rst-content .warning .admonition-title, - .rst-content .warning .wy-alert-title, - .rst-content .wy-alert-warning.admonition .admonition-title, - .rst-content .wy-alert-warning.admonition .wy-alert-title, - .rst-content .wy-alert-warning.danger .admonition-title, - .rst-content .wy-alert-warning.danger .wy-alert-title, - .rst-content .wy-alert-warning.error .admonition-title, - .rst-content .wy-alert-warning.error .wy-alert-title, - .rst-content .wy-alert-warning.hint .admonition-title, - .rst-content .wy-alert-warning.hint .wy-alert-title, - .rst-content .seealso .admonition-title, - .rst-content .seealso .wy-alert-title, - .rst-content .wy-alert-warning.important .admonition-title, - .rst-content .wy-alert-warning.important .wy-alert-title, - .rst-content .wy-alert-warning.note .admonition-title, - .rst-content .wy-alert-warning.note .wy-alert-title, - .rst-content .wy-alert-warning.seealso .admonition-title, - .rst-content .wy-alert-warning.seealso .wy-alert-title, - .rst-content .wy-alert-warning.tip .admonition-title, - .rst-content .wy-alert-warning.tip .wy-alert-title, - .rst-content .wy-alert.wy-alert-warning .admonition-title, - .wy-alert.wy-alert-warning .rst-content .admonition-title, - .wy-alert.wy-alert-warning .wy-alert-title { - background-color: #246eb9; - } - .rst-content .admonition-todo, - .rst-content .attention, - .rst-content .caution, - .rst-content .warning, - .rst-content .wy-alert-warning.admonition, - .rst-content .wy-alert-warning.danger, - .rst-content .wy-alert-warning.error, - .rst-content .wy-alert-warning.hint, - .rst-content .wy-alert-warning.important, - .rst-content .wy-alert-warning.note, - .rst-content .wy-alert-warning.seealso, - .rst-content .wy-alert-warning.tip, - .wy-alert.wy-alert-warning { - color: #343434; - background-color: #e3e3e3; - } -} -@media (prefers-color-scheme: dark) { - .wy-nav-content-wrap { - background-color: #181a1b; - } - .wy-nav-top, - .wy-side-nav-search, - .wy-menu-vertical a:active { - background-color: #32ad65; - } - .wy-menu-vertical header, - .wy-menu-vertical p.caption { - color: #32ad65; - } - .wy-nav-side { - background-color: #2e2e2e; - } - .wy-nav-content { - background-color: #343434; - color: #e5e6e7; - } - a, - a:visited { - color: #6fb2e8; - } - a:hover, - a:focus, - a:active { - color: #db9444; - } - code, - .rst-content code.literal { - background-color: rgba(220, 220, 220, 0.1); - color: #db9444; - border: none; - } - .wy-side-nav-search input[type="text"] { - border: none; - background-color: #e5e6e7; - } - .wy-side-nav-search > div.version { - color: #e5e6e7c9; - } - .wy-side-nav-search .wy-dropdown > a, - .wy-side-nav-search > a { - color: #e5e6e7; - } - - html.writer-html4 .rst-content dl:not(.docutils) > dt, - html.writer-html5 - .rst-content - dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) - > dt { - background-color: #32ad65; - border: none; - } - html.writer-html4 .rst-content dl:not(.docutils) dl:not(.field-list) > dt, - html.writer-html5 - .rst-content - dl[class]:not(.option-list):not(.field-list):not(.footnote):not(.glossary):not(.simple) - dl:not(.field-list) - > dt { - background-color: #777; - color: #e5e6e7a6; - } - .rst-content code { - color: #e5e6e7d4; - } - .rst-content .method > dt > code { - color: #e5e6e7; - } - .sig-paren { - color: #db9444; - } - .rst-content .note .admonition-title { - background-color: #72757bfc; - } - .rst-content div[class^="highlight"], - .rst-content pre.literal-block { - border: none; - } - - .highlight { - background-color: #242424; - color: #e5e6e7; - } - .highlight .hll { - color: #e5e6e7; - background-color: #585b60fc; - } - .highlight .k, - .highlight .nt, - .highlight .no { - color: #6fb2e8; - } - .highlight .s, - .highlight .s1, - .highlight .s2, - .highlight .na { - color: #32ad65; - } - .highlight .nb, - .highlight .o, - .highlight .cm { - color: #db9444; - } - .highlight .c1 { - color: #88898afc; - } - .highlight .nv { - color: #f9d977; - } - .btn.btn-neutral { - background-color: #e5e6e7d4 !important; - } - - .rst-content .hint .admonition-title, - .rst-content .hint .wy-alert-title, - .rst-content .important .admonition-title, - .rst-content .important .wy-alert-title, - .rst-content .tip .admonition-title, - .rst-content .tip .wy-alert-title, - .rst-content .wy-alert-success.admonition-todo .admonition-title, - .rst-content .wy-alert-success.admonition-todo .wy-alert-title, - .rst-content .wy-alert-success.admonition .admonition-title, - .rst-content .wy-alert-success.admonition .wy-alert-title, - .rst-content .wy-alert-success.attention .admonition-title, - .rst-content .wy-alert-success.attention .wy-alert-title, - .rst-content .wy-alert-success.caution .admonition-title, - .rst-content .wy-alert-success.caution .wy-alert-title, - .rst-content .wy-alert-success.danger .admonition-title, - .rst-content .wy-alert-success.danger .wy-alert-title, - .rst-content .wy-alert-success.error .admonition-title, - .rst-content .wy-alert-success.error .wy-alert-title, - .rst-content .wy-alert-success.note .admonition-title, - .rst-content .wy-alert-success.note .wy-alert-title, - .rst-content .wy-alert-success.seealso .admonition-title, - .rst-content .wy-alert-success.seealso .wy-alert-title, - .rst-content .wy-alert-success.warning .admonition-title, - .rst-content .wy-alert-success.warning .wy-alert-title, - .rst-content .wy-alert.wy-alert-success .admonition-title, - .wy-alert.wy-alert-success .rst-content .admonition-title, - .wy-alert.wy-alert-success .wy-alert-title { - background-color: #32ad65; - color: #e5e6e7; - } - - .rst-content .note, - .rst-content .seealso, - .rst-content .wy-alert-info.admonition, - .rst-content .wy-alert-info.admonition-todo, - .rst-content .wy-alert-info.attention, - .rst-content .wy-alert-info.caution, - .rst-content .wy-alert-info.danger, - .rst-content .wy-alert-info.error, - .rst-content .wy-alert-info.hint, - .rst-content .wy-alert-info.important, - .rst-content .wy-alert-info.tip, - .rst-content .wy-alert-info.warning, - .wy-alert.wy-alert-info, - .rst-content .hint, - .rst-content .important, - .rst-content .tip, - .rst-content .wy-alert-success.admonition, - .rst-content .wy-alert-success.admonition-todo, - .rst-content .wy-alert-success.attention, - .rst-content .wy-alert-success.caution, - .rst-content .wy-alert-success.danger, - .rst-content .wy-alert-success.error, - .rst-content .wy-alert-success.note, - .rst-content .wy-alert-success.seealso, - .rst-content .wy-alert-success.warning, - .wy-alert.wy-alert-success { - color: #343434; - background-color: #e3e3e3; - border: none; - } - - .rst-content .admonition-todo .admonition-title, - .rst-content .admonition-todo .wy-alert-title, - .rst-content .attention .admonition-title, - .rst-content .attention .wy-alert-title, - .rst-content .caution .admonition-title, - .rst-content .caution .wy-alert-title, - .rst-content .warning .admonition-title, - .rst-content .warning .wy-alert-title, - .rst-content .wy-alert-warning.admonition .admonition-title, - .rst-content .wy-alert-warning.admonition .wy-alert-title, - .rst-content .wy-alert-warning.danger .admonition-title, - .rst-content .wy-alert-warning.danger .wy-alert-title, - .rst-content .wy-alert-warning.error .admonition-title, - .rst-content .wy-alert-warning.error .wy-alert-title, - .rst-content .wy-alert-warning.hint .admonition-title, - .rst-content .wy-alert-warning.hint .wy-alert-title, - .rst-content .seealso .admonition-title, - .rst-content .seealso .wy-alert-title, - .rst-content .wy-alert-warning.important .admonition-title, - .rst-content .wy-alert-warning.important .wy-alert-title, - .rst-content .wy-alert-warning.note .admonition-title, - .rst-content .wy-alert-warning.note .wy-alert-title, - .rst-content .wy-alert-warning.seealso .admonition-title, - .rst-content .wy-alert-warning.seealso .wy-alert-title, - .rst-content .wy-alert-warning.tip .admonition-title, - .rst-content .wy-alert-warning.tip .wy-alert-title, - .rst-content .wy-alert.wy-alert-warning .admonition-title, - .wy-alert.wy-alert-warning .rst-content .admonition-title, - .wy-alert.wy-alert-warning .wy-alert-title { - background-color: #f4a25b; - } - .rst-content .admonition-todo, - .rst-content .attention, - .rst-content .caution, - .rst-content .warning, - .rst-content .wy-alert-warning.admonition, - .rst-content .wy-alert-warning.danger, - .rst-content .wy-alert-warning.error, - .rst-content .wy-alert-warning.hint, - .rst-content .wy-alert-warning.important, - .rst-content .wy-alert-warning.note, - .rst-content .wy-alert-warning.seealso, - .rst-content .wy-alert-warning.tip, - .wy-alert.wy-alert-warning { - color: #343434; - background-color: #e3e3e3; - } -} diff --git a/docs/api/_src/_static/js/custom.js b/docs/api/_src/_static/js/custom.js deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/docs/api/_src/_static/nf-core-logo.png b/docs/api/_src/_static/nf-core-logo.png deleted file mode 100644 index 91ddb58d8ada2682b8edb9528c09479f248e3010..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 84414 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 - -{% endblock %} From 9f4323a610cee3b968b2efc7fc18f8c332b3afe4 Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Tue, 9 Jul 2024 09:28:42 +0000 Subject: [PATCH 3/4] [automated] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 58e9a36bf3..23fcb83362 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -45,6 +45,7 @@ - Update gitpod/workspace-base Docker digest to 0f38224 ([#3048](https://github.com/nf-core/tools/pull/3048)) - update output_dir for api docs to new website structure ([#3051](https://github.com/nf-core/tools/pull/3051)) - Update pre-commit hook astral-sh/ruff-pre-commit to v0.5.1 ([#3052](https://github.com/nf-core/tools/pull/3052)) +- update api docs to new structure ([#3054](https://github.com/nf-core/tools/pull/3054)) ## [v2.14.1 - Tantalum Toad - Patch](https://github.com/nf-core/tools/releases/tag/2.14.1) - [2024-05-09] From 863a8a1063ad756729bf1b3e979d3ce508002a2b Mon Sep 17 00:00:00 2001 From: mashehu Date: Tue, 9 Jul 2024 11:45:04 +0200 Subject: [PATCH 4/4] fix shebang and imports --- docs/api/make_lint_md.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/api/make_lint_md.py b/docs/api/make_lint_md.py index 7b823a086e..432f0d16b6 100644 --- a/docs/api/make_lint_md.py +++ b/docs/api/make_lint_md.py @@ -1,7 +1,6 @@ +#!/usr/bin/env python from pathlib import Path -#!/usr/bin/env python -import nf_core.commands_pipelines import nf_core.modules.lint import nf_core.pipelines.lint import nf_core.subworkflows.lint