diff --git a/.github/styles/Google/AMPM.yml b/.github/styles/Google/AMPM.yml new file mode 100644 index 000000000..37b49edf8 --- /dev/null +++ b/.github/styles/Google/AMPM.yml @@ -0,0 +1,9 @@ +extends: existence +message: "Use 'AM' or 'PM' (preceded by a space)." +link: "https://developers.google.com/style/word-list" +level: error +nonword: true +tokens: + - '\d{1,2}[AP]M\b' + - '\d{1,2} ?[ap]m\b' + - '\d{1,2} ?[aApP]\.[mM]\.' diff --git a/.github/styles/Google/Acronyms.yml b/.github/styles/Google/Acronyms.yml new file mode 100644 index 000000000..003ceb26b --- /dev/null +++ b/.github/styles/Google/Acronyms.yml @@ -0,0 +1,74 @@ +extends: conditional +message: "Spell out '%s', if it's unfamiliar to the audience." +link: 'https://developers.google.com/style/abbreviations' +level: suggestion +ignorecase: false +# Ensures that the existence of 'first' implies the existence of 'second'. +first: '\b([A-Z]{3,5})\b' +second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)' +# ... with the exception of these: +exceptions: + - AWS + - IAM + - API + - ASP + - CLI + - CPU + - CSS + - CSV + - DEBUG + - DOM + - DPI + - DSL + - FAQ + - GCC + - GKE + - GDB + - GET + - GPU + - GTK + - GUI + - HTML + - HTTP + - HTTPS + - HPC + - IDE + - JAR + - JSON + - JSX + - LESS + - LLDB + - LLM + - MIME + - NET + - NOTE + - NVDA + - OSS + - PATH + - PDF + - PHP + - POST + - RAM + - REPL + - RSA + - RNA + - SCM + - SCSS + - SDK + - SQL + - SSH + - SSL + - SMTP + - SVG + - TBD + - TCP + - TLS + - TODO + - URI + - URL + - USB + - UTF + - XML + - XSS + - YAML + - ZIP diff --git a/.github/styles/Google/Colons.yml b/.github/styles/Google/Colons.yml new file mode 100644 index 000000000..4a027c307 --- /dev/null +++ b/.github/styles/Google/Colons.yml @@ -0,0 +1,8 @@ +extends: existence +message: "'%s' should be in lowercase." +link: 'https://developers.google.com/style/colons' +nonword: true +level: warning +scope: sentence +tokens: + - '(?=1.0.0" +} diff --git a/.github/styles/Google/vocab.txt b/.github/styles/Google/vocab.txt new file mode 100644 index 000000000..e69de29bb diff --git a/.github/styles/Seqera/HeadingJump.yml b/.github/styles/Seqera/HeadingJump.yml new file mode 100644 index 000000000..a75b4ed79 --- /dev/null +++ b/.github/styles/Seqera/HeadingJump.yml @@ -0,0 +1,10 @@ +# .github/styles/Seqera/HeadingJump.yml +extends: script +level: error +message: "Heading jumps more than one level." +script: | + import re, sys, json + levels = [len(m.group(1)) for m in re.finditer(r'^(#{1,6}) ', sys.stdin.read(), re.M)] + for a, b in zip(levels, levels[1:]): + if b - a > 1: + print(json.dumps({"match": "#"})) diff --git a/.github/styles/Vocab/Seqera.dic b/.github/styles/Vocab/Seqera.dic new file mode 100644 index 000000000..e59e0a635 --- /dev/null +++ b/.github/styles/Vocab/Seqera.dic @@ -0,0 +1,4 @@ +nf-core +tw +Seqera +Cloud \ No newline at end of file diff --git a/.github/styles/config/vocabularies/Seqera/accept.txt b/.github/styles/config/vocabularies/Seqera/accept.txt index 3dee459a8..f25d265a7 100644 --- a/.github/styles/config/vocabularies/Seqera/accept.txt +++ b/.github/styles/config/vocabularies/Seqera/accept.txt @@ -19,12 +19,13 @@ OAuth Kubernetes Gitpod Hashicorp -RStudio -Seqerakit +[Ss]eqerakit Fusion Wave +MultiQC [Cc]onfig Xpra +R-IDE # Acronyms AMI @@ -52,7 +53,6 @@ Cron # Other subnets -autoscaling prefilled unencrypted deallocated @@ -67,7 +67,6 @@ samplesheet datasheet openssl - # Seqera Platform UI hostname textbox diff --git a/.github/workflows/vale.yml b/.github/workflows/vale.yml index 0a24422b8..5174e77c8 100644 --- a/.github/workflows/vale.yml +++ b/.github/workflows/vale.yml @@ -12,4 +12,5 @@ jobs: - name: Run Vale prose linter uses: errata-ai/vale-action@v2.1.1 with: - files: '["platform-enterprise_versioned_docs/version-24.2"]' + files: '["platform-enterprise_versioned_docs/version-25.1"]' + diff --git a/.gitignore b/.gitignore index 0e88ebb34..27a0121c7 100644 --- a/.gitignore +++ b/.gitignore @@ -25,7 +25,7 @@ yarn-error.log* internal/tmp # Ignore all pre-packaged styles -.github/styles/* + # Include our own configuration !.github/styles/config !.github/styles/Google diff --git a/.vale.ini b/.vale.ini index 83c76d3d7..783686818 100644 --- a/.vale.ini +++ b/.vale.ini @@ -1,6 +1,7 @@ StylesPath = .github/styles Vocab = Seqera -#Packages = Google +Packages = Google + # https://www.lekoarts.de/garden/how-to-use-vale-with-mdx/ @@ -12,9 +13,8 @@ SkippedScopes = script, style, pre, figure, code [formats] mdx = md -[*.mdx] -#BasedOnStyles = Vale, Google -BasedOnStyles = Vale +[*.md] +BasedOnStyles = Google # https://vale.sh/docs/topics/config/#commentdelimiters CommentDelimiters = {/*, */} # Ignore code surrounded by backticks or plus sign, parameters defaults, URLs, and angle brackets. @@ -28,4 +28,4 @@ Vale.Spelling = NO Vale.Terms = NO [platform-enterprise_versioned_docs/**/enterprise_changelog.mdx] Vale.Spelling = NO -Vale.Terms = NO +Vale.Terms = NO \ No newline at end of file diff --git a/.vale.tmp b/.vale.tmp new file mode 100644 index 000000000..aeddf5934 --- /dev/null +++ b/.vale.tmp @@ -0,0 +1 @@ +却祬敳偡瑨‽‮杩瑨畢⽳瑹汥猊䵩湁汥牴䱥癥氠㴠睡牮楮朊噯捡戠†††㴠卥煥牡†††††ਊ⌠㇯뢏ꌠ⁒敭潶攠潲⁣潭浥湴ⵯ畴⁡湹瑨楮朠䵄堭獰散楦楣਻⁛景牭慴獝਻摸‽搊਻⁛⨮浤硝਻⁂慳敤佮却祬敳‽⁖慬攠†††‣⃢蚐潴敥摥搠楦⁹潵⁤潮❴⁨慶攠⹭摸⁦楬敳਻⃢肦
潴桥爠䵄堭獥捴楯渠步祳⤊ਣ′迢莣†呥汬⁖慬攠瑯⁳歩瀠瑨攠䵄堠灡牳敲⁥湴楲敬礊噡汥⹬楮瑍䑘‽⁎传††††† ਣ″迢莣†䅤搠潲敥瀠祯畲⁍慲此潷渠獥捴楯渊嬪⹭摝††††††††††††ੂ慳敤佮却祬敳‽⁖慬攠  \ No newline at end of file diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 000000000..3c8067161 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,5 @@ +{ + "recommendations": [ + "errata-ai.vale-server" + ] +} \ No newline at end of file diff --git a/package.json b/package.json index f1e6fed24..6133680c9 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,8 @@ "fetch-docs": "node internal/fetch-docs.mjs", "fetch-docs-oss": "node internal/fetch-docs-oss.mjs", "sanitize-existing": "node internal/sanitize-existing.mjs", - "markdownlint": "markdownlint-cli2 'platform-enterprise_versioned_docs/**/*.mdx' 'platform-cloud/docs/*.mdx' 'wave_docs/**/*.mdx' 'fusion_docs/**/*.mdx' --config .markdownlint-cli2.cjs" + "markdownlint": "markdownlint-cli2 'platform-enterprise_versioned_docs/**/*.mdx' 'platform-cloud/docs/*.mdx' 'wave_docs/**/*.mdx' 'fusion_docs/**/*.mdx' --config .markdownlint-cli2.cjs", + "lint:docs": "vale --glob='**/*.md' ." }, "dependencies": { "@docsearch/react": "^3.9.0", diff --git a/platform-enterprise_versioned_docs/version-25.1/compute-envs/azure-batch.md b/platform-enterprise_versioned_docs/version-25.1/compute-envs/azure-batch.md index 853386be2..dda02f563 100644 --- a/platform-enterprise_versioned_docs/version-25.1/compute-envs/azure-batch.md +++ b/platform-enterprise_versioned_docs/version-25.1/compute-envs/azure-batch.md @@ -295,7 +295,7 @@ Create a Batch Forge Azure Batch compute environment: ::: 1. Specify custom **Environment variables** for the **Head job** and/or **Compute jobs**. 1. Configure any advanced options you need: - - Use **Jobs cleanup policy** to control how Nextflow process jobs are deleted on completion. Active jobs consume the quota of the Azure Batch account. By default, jobs are terminated by Nextflow and removed from the quota when all tasks succesfully complete. If set to _Always_, all jobs are deleted by Nextflow after pipeline completion. If set to _Never_, jobs are never deleted. If set to _On success_, successful tasks are removed but failed tasks will be left for debugging purposes. + - Use **Jobs cleanup policy** to control how Nextflow process jobs are deleted on completion. Active jobs consume the quota of the Azure Batch account. By default, jobs are terminated by Nextflow and removed from the quota when all tasks successfully complete. If set to _Always_, all jobs are deleted by Nextflow after pipeline completion. If set to _Never_, jobs are never deleted. If set to _On success_, successful tasks are removed but failed tasks will be left for debugging purposes. - Use **Token duration** to control the duration of the SAS token generated by Nextflow. This must be as long as the longest period of time the pipeline will run. 1. Select **Add** to finalize the compute environment setup. It will take a few seconds for all the resources to be created before the compute environment is ready to launch pipelines. diff --git a/platform-enterprise_versioned_docs/version-25.1/enterprise/advanced-topics/manual-azure-batch-setup.md b/platform-enterprise_versioned_docs/version-25.1/enterprise/advanced-topics/manual-azure-batch-setup.md index a8e8c6f9b..30193216f 100644 --- a/platform-enterprise_versioned_docs/version-25.1/enterprise/advanced-topics/manual-azure-batch-setup.md +++ b/platform-enterprise_versioned_docs/version-25.1/enterprise/advanced-topics/manual-azure-batch-setup.md @@ -83,7 +83,7 @@ Next, create a compute environment with Batch Forge: 1. Go to the **Compute Environments** tab and select **Add Compute Environment**. 1. Enter a name such as `1-azure-batch-forge`. 1. Select Azure Batch from the **Provider** dropdown. -1. Sellect your `azure-keys` credentials. +1. Select your `azure-keys` credentials. 1. Select the **Region** of your Batch account. 1. Select the `az://work` container in your Storage account. 1. For **VMs type**, select `standard_e2ds_v5`. @@ -344,7 +344,7 @@ See [Create a Nextflow-compatible Azure Batch pool](../../compute-envs/azure-bat - Use the autoscale formula described in the documentation, with a minimum size of 0 and a maximum size of 4. - For Virtual network, create a new virtual network with the default subnet. You can add this to a new resource group here. -In practice, you are more likely to connect an Azure Batch Node pool to an existing virtual network that is connected to other resources, such as Seqera Platform or the Azure Storage Acccount. In this instance, connecting it to a VNet with public internet access will route the network traffic via the virtual network while still allowing you to perform every action. +In practice, you are more likely to connect an Azure Batch Node pool to an existing virtual network that is connected to other resources, such as Seqera Platform or the Azure Storage Account. In this instance, connecting it to a VNet with public internet access will route the network traffic via the virtual network while still allowing you to perform every action. Back in Seqera Platform, add a new Azure Batch compute environment: diff --git a/platform-enterprise_versioned_docs/version-25.1/getting-started/studios.md b/platform-enterprise_versioned_docs/version-25.1/getting-started/studios.md index 902954331..1087395a9 100644 --- a/platform-enterprise_versioned_docs/version-25.1/getting-started/studios.md +++ b/platform-enterprise_versioned_docs/version-25.1/getting-started/studios.md @@ -592,7 +592,7 @@ nextflow run nf-core/fetchngs -profile test,conda --outdir ./nf-core-fetchngs-co ### Write a Nextflow pipeline with nf-core tools - Run `nf-core pipelines create` to create a new pipeline. Choose which parts of the nf-core template you want to use. -- Run `code [NEW_PIPELINE]` to open the new pipeline as a project in VSCode. This allows you to code your pipeline with the help of the Nextflow language server and nf-core tools. +- Run `code [NEW_PIPELINE]` to open the new pipeline as a project in VS Code. This allows you to code your pipeline with the help of the Nextflow language server and nf-core tools. ![VS Code Studio session](./_images/guide-vs-code-studio-nf-env-1080p-cropped.gif) diff --git a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/nextflow.md b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/nextflow.md index fc40fe4a6..6aa623318 100644 --- a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/nextflow.md +++ b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/nextflow.md @@ -29,7 +29,7 @@ export NXF_CLI_OPTS='-dump-hashes' Nextflow resolves relative paths against the current working directory. In a classic grid HPC, this normally corresponds to a subdirectory of the `$HOME` directory. In a cloud execution environment, however, the path will be resolved relative to the _container file system_, meaning files will be lost when the container is terminated. See [here](https://github.com/nextflow-io/nextflow/issues/2661#issuecomment-1047259845) for more details. -Specify the absolute path to your persistent storage using the `NXF_FILE_ROOT` environment variable in your [`nextflow.config`](../launch/advanced#nextflow-config-file) file. This resolves the relative paths defined in your Netflow script so that output files are written to your stateful storage, rather than ephemeral container storage. +Specify the absolute path to your persistent storage using the `NXF_FILE_ROOT` environment variable in your [`nextflow.config`](../launch/advanced#nextflow-config-file) file. This resolves the relative paths defined in your Nextflow script so that output files are written to your stateful storage, rather than ephemeral container storage. **Nextflow: Ignore Singularity cache** diff --git a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/studios_troubleshooting.md b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/studios_troubleshooting.md index ba071e9fd..b2eb2f877 100644 --- a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/studios_troubleshooting.md +++ b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/studios_troubleshooting.md @@ -1,7 +1,7 @@ --- title: "Studios" description: "Studios troubleshooting with Seqera Platform." -date: "26 August 2024" +date: "2024-08-26" tags: [faq, help, studios, troubleshooting] --- @@ -13,10 +13,10 @@ In your interactive analysis environment, open a new terminal and type `ls -la / ## Enabling AI coding assistants in Studios -VS Code, RStudio, and Jupyter environments natively integrate with [GitHub Copilot][gh-copilot]. Enabling it requires a GitHub Account and an active Copilot subscription. +VS Code, R-IDE, and Jupyter environments natively integrate with [GitHub Copilot][gh-copilot]. Enabling it requires a GitHub Account and an active Copilot subscription. - **VS Code:** To enable GitHub Copilot in your VS Code session, install the extension and then sign in with your GitHub account. [Learn more][vscode-blog]. -- **RStudio:** To enable GitHub Copilot in your RStudio session requires RStudio configuration changes. By default, the Studio session user has root permissions, so configuration changes are possible. You will need to restart the RStudio once the required changes have been made. [Learn more][posit-ghcopilot-guide]. +- **R-IDE:** To enable GitHub Copilot in your R-IDE session requires configuration changes. By default, the Studio session user has root permissions, so configuration changes are possible. You will need to restart the session once the required changes have been made. [Learn more][posit-ghcopilot-guide]. - **Jupyter:** [Notebook Intelligence (NBI)][nbi] is an AI coding assistant and extensible AI framework for Jupyter. It can use GitHub Copilot or AI models from any other LLM Provider. [Learn more][nbi-blog]. ## Session size limited by compute environment advanced options: Head job CPUs and Head job memory diff --git a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/troubleshooting.md b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/troubleshooting.md index 6a0357702..212bf4133 100644 --- a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/troubleshooting.md +++ b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/troubleshooting.md @@ -1,15 +1,15 @@ --- title: "General troubleshooting" description: "Troubleshooting Seqera Platform" -date: "24 Apr 2023" -tags: [troubleshooting, help] +date: "2023-04-24" +tags: [troubleshooting, common errors, help, sleep, timeout] --- ## Common errors **_timeout is not an integer or out of range_** or **_ERR timeout is not an integer or out of range_** -This error can occur if you're using Seqera Platfrom v24.2 upwards and have an outdated version of Redis. From v24.2 Redis version 6.2 or greater is required. Follow your cloud provider specifications to upgrade your instance. +This error can occur if you're using Seqera Platform v24.2 upwards and have an outdated version of Redis. From v24.2 Redis version 6.2 or greater is required. Follow your cloud provider specifications to upgrade your instance. **_Unknown pipeline repository or missing credentials_ error from public GitHub repositories** @@ -49,7 +49,6 @@ The `sleep` commands in your Nextflow workflows may differ in behavior depending - If used within an `errorStrategy` block, the Groovy sleep function will be used (which takes its value in milliseconds). - If used within a process script block, that language's sleep binary/method will be used. For example, [this bash script](https://www.nextflow.io/docs/latest/metrics.html?highlight=sleep) uses the bash sleep binary, which takes its value in seconds. - **Large number of batch job definitions** Platform normally looks for an existing job definition that matches your workflow requirement. If nothing matches, it recreates the job definition. You can use a simple bash script to clear job definitions. You can tailor this according to your needs, e.g., deregister only job definitions older than x days. @@ -235,7 +234,6 @@ Seqera Platform uses [server-sent events](https://developer.mozilla.org/en-US/do To resolve the issue, try reloading the Platform browser tab to reinitiate the client's connection to the server. If reloading fails to resolve the problem, contact [Seqera support](https://support.seqera.io) for assistance with webserver timeout settings adjustments. - ## Optimization **Optimized task failures: _OutOfMemoryError: Container killed due to memory usage_ error** diff --git a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/workspaces_troubleshooting.md b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/workspaces_troubleshooting.md index 83874791b..4d3e636eb 100644 --- a/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/workspaces_troubleshooting.md +++ b/platform-enterprise_versioned_docs/version-25.1/troubleshooting_and_faqs/workspaces_troubleshooting.md @@ -1,7 +1,7 @@ --- title: "Workspaces" description: "Workspaces troubleshooting with Seqera Platform." -date: "26 August 2024" +date: "2024-08-26" tags: [faq, help, workspaces help, workspaces troubleshooting] --- @@ -14,4 +14,4 @@ You may encounter this entry in your Nextflow log: If the workspace ID in this message differs from your launch workspace, Seqera retrieved an incorrect Seqera access token from a Nextflow configuration file: - A Seqera access token may be hardcoded in the `tower.accessToken` block of your `nextflow.config` (either from the Git repository or an override value in the Seqera launch form). -- In an HPC cluster compute environment, the credential user's home directory may contain a stateful `nextflow.config` with a hardcoded access token (e.g., `~/.nextflow/config`). +- In an HPC cluster compute environment, the credential user's home directory may contain a stateful `nextflow.config` with a hardcoded access token (for example `~/.nextflow/config`). diff --git a/~/Library/Application Support/Cursor/User/settings.json b/~/Library/Application Support/Cursor/User/settings.json new file mode 100644 index 000000000..4565ea877 --- /dev/null +++ b/~/Library/Application Support/Cursor/User/settings.json @@ -0,0 +1,14 @@ +{ + "git.autofetch": true, + "git.confirmSync": false, + "git.enableSmartCommit": true, + "workbench.editor.enablePreview": false, + "window.autoDetectColorScheme": true, + "editor.tokenColorCustomizations": {}, + "emmet.syntaxProfiles": {}, + "editor.wordWrap": "on", + "diffEditor.ignoreTrimWhitespace": false, + "redhat.telemetry.enabled": false, + "vale.doNotShowWarningForFileToBeSavedBeforeLinting": true, + "vale.readabilityProblemLocation": "inline" +} \ No newline at end of file