diff --git a/.github/linters/.markdownlint-cli2.yaml b/.github/linters/.markdownlint-cli2.yaml new file mode 100644 index 0000000..2f24d9c --- /dev/null +++ b/.github/linters/.markdownlint-cli2.yaml @@ -0,0 +1,32 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/main/schema/markdownlint-cli2-config-schema.json +# ------------------------------------------------------------------------------ +# This file is synced from the radius-project/.github repository. +# DO NOT EDIT MANUALLY - changes will be overwritten by the next sync. +# Source: https://github.com/radius-project/.github +# ------------------------------------------------------------------------------ +--- +config: + extends: ./.markdownlint.yml +gitignore: true +# `gitignore: true` already skips anything in .gitignore, so most build output is +# covered. The entries below target committed/vendored content that still should +# not be linted. Kept in sync with the ignorePaths in .cspell.yml. +ignores: + - .git + # Dependencies, infra and build output (belt-and-suspenders with gitignore). + - "**/node_modules/**" + - "**/dist/**" + - "**/build/**" + - "**/.terraform/**" + - "**/venv/**" + - "**/.venv/**" + # Hugo vendored themes/modules and generated output (docs, website, blog). + - "**/themes/**" + - "**/_vendor/**" + - "**/public/**" + - "**/resources/_gen/**" + # Auto-generated or staged content that shouldn't be spell/lint checked. + - "**/CHANGELOG.md" + - "**/holding-pen/**" + - "**/redirect/**" + - .copilot-tracking/** diff --git a/.github/linters/.markdownlint.yml b/.github/linters/.markdownlint.yml new file mode 100644 index 0000000..5e6a0af --- /dev/null +++ b/.github/linters/.markdownlint.yml @@ -0,0 +1,49 @@ +# yaml-language-server: $schema=https://raw.githubusercontent.com/DavidAnson/markdownlint/refs/heads/main/schema/markdownlint-config-schema-strict.json +# ------------------------------------------------------------------------------ +# This file is synced from the radius-project/.github repository. +# DO NOT EDIT MANUALLY - changes will be overwritten by the next sync. +# Source: https://github.com/radius-project/.github +# ------------------------------------------------------------------------------ +--- +# Markdownlint YAML configuration +# Default source: https://github.com/DavidAnson/markdownlint/blob/main/schema/.markdownlint.yaml + +# Default state for all rules +default: true + +# Path to configuration file to extend +# extends: null + +# MD004/ul-style - Unordered list style - https://github.com/DavidAnson/markdownlint/blob/main/doc/md004.md +MD004: + style: dash + +# MD013/line-length - Line length - https://github.com/DavidAnson/markdownlint/blob/main/doc/md013.md +MD013: false + +# MD024/no-duplicate-heading - Multiple headings with the same content - https://github.com/DavidAnson/markdownlint/blob/main/doc/md024.md +MD024: false + +# MD025/single-title - Single title - https://github.com/DavidAnson/markdownlint/blob/main/doc/md025.md +MD025: + front_matter_title: "" + +# MD029/ol-prefix - Ordered list item prefix - https://github.com/DavidAnson/markdownlint/blob/main/doc/md029.md +MD029: + style: one_or_ordered + +# MD033/no-inline-html - Inline HTML - https://github.com/DavidAnson/markdownlint/blob/main/doc/md033.md +MD033: + # Allowed elements + allowed_elements: [br, pre] + +# MD036/no-emphasis-as-heading - Emphasis used instead of a heading - https://github.com/DavidAnson/markdownlint/blob/main/doc/md036.md +MD036: false + +# MD041/first-line-heading/first-line-h1 - First line in file should be a top level heading - https://github.com/DavidAnson/markdownlint/blob/main/doc/md041.md +MD041: false + +# MD046/code-block-style - Code block style - https://github.com/DavidAnson/markdownlint/blob/main/doc/md046.md +MD046: + # Block style + style: fenced diff --git a/.github/linters/.prettierrc.yml b/.github/linters/.prettierrc.yml new file mode 100644 index 0000000..e46686d --- /dev/null +++ b/.github/linters/.prettierrc.yml @@ -0,0 +1,44 @@ +# yaml-language-server: $schema=https://www.schemastore.org/prettierrc.json +# ------------------------------------------------------------------------------ +# This file is synced from the radius-project/.github repository. +# DO NOT EDIT MANUALLY - changes will be overwritten by the next sync. +# Source: https://github.com/radius-project/.github +# ------------------------------------------------------------------------------ +--- +arrowParens: always +bracketSpacing: true +endOfLine: lf +htmlWhitespaceSensitivity: css +insertPragma: false # consider true +singleAttributePerLine: false +bracketSameLine: false +jsxSingleQuote: true +printWidth: 120 +proseWrap: preserve +quoteProps: as-needed +requirePragma: false # consider true +semi: true +singleQuote: true +tabWidth: 2 +trailingComma: none +useTabs: false +vueIndentScriptAndStyle: true +embeddedLanguageFormatting: auto +experimentalTernaries: true +experimentalOperatorPosition: end +# multilineArraysWrapThreshold: 1 +# plugins: +# - prettier-plugin-toml +# - prettier-plugin-multiline-arrays + +# Language-specific overrides +overrides: + - files: "*.md" + options: + proseWrap: preserve + - files: "*.yml" + options: + singleQuote: false + - files: "*.yaml" + options: + singleQuote: false diff --git a/.github/linters/.shellcheckrc b/.github/linters/.shellcheckrc new file mode 100644 index 0000000..7c293bc --- /dev/null +++ b/.github/linters/.shellcheckrc @@ -0,0 +1,7 @@ +# .shellcheckrc +# ------------------------------------------------------------------------------ +# This file is synced from the radius-project/.github repository. +# DO NOT EDIT MANUALLY - changes will be overwritten by the next sync. +# Source: https://github.com/radius-project/.github +# ------------------------------------------------------------------------------ +disable=SC3037,SC2086,SC2155 diff --git a/.github/linters/.yamllint.yml b/.github/linters/.yamllint.yml new file mode 100644 index 0000000..0df3059 --- /dev/null +++ b/.github/linters/.yamllint.yml @@ -0,0 +1,38 @@ +# yaml-language-server: $schema=https://www.schemastore.org/yamllint.json +# docs: https://yamllint.readthedocs.io/en/stable/configuration.html#extending-the-default-configuration +# ------------------------------------------------------------------------------ +# This file is synced from the radius-project/.github repository. +# DO NOT EDIT MANUALLY - changes will be overwritten by the next sync. +# Source: https://github.com/radius-project/.github +# ------------------------------------------------------------------------------ +--- +extends: default + +locale: en_US.UTF-8 + +rules: + document-start: + level: warning + ignore: + - .cspell.yml + line-length: disable + quoted-strings: + level: error + quote-type: double + required: only-when-needed + # dependabot.yml is generated by sync and quotes path values like "/"; the + # rule stays enabled for every other file. + ignore: + - dependabot.yml + comments: + min-spaces-from-content: 1 + braces: + level: warning + min-spaces-inside: 0 + max-spaces-inside: 1 + truthy: + check-keys: false + +ignore-from-file: + - .gitignore + - .yamlignore