Commit Graph

12 Commits

Author SHA1 Message Date
Jamie Tanna 128f446e08 docs: ensure that config in documentation is error and warning free (#43727)
* docs: skip validation on JSON files that aren't Renovate config

As part of future changes, we'll enable validation on all JSON code
snippets to run Config Validation.

Before we do that, we should opt-out JSON snippets that aren't anything
related to Renovate config.

* docs: don't validate invalid Renovate config

As it's intentionally referencing a manager that doesn't exist.

* docs: don't validate partial Renovate config

As part of future changes, we'll enable validation on all JSON code
snippets to run Config Validation.

There are several code snippets we have that are part of a Renovate JSON,
but it doesn't make sense to convert these to a fully passing config, as
it'd reduce clarity on what we're trying to explain.

* docs: convert `baseBranchPatterns` snippets to code blocks

So we can validate them.

* docs: make sure that `datasourceTemplate` is set

So this passes validation.

* docs: clarify that `force` is global config

As it may not be clear, so we can make it extra clear with a `.js` file,
and note that it's global self-hosted config.

* docs: make sure `packageRules` is an array

* docs: `matchBaseBranches` needs `baseBranchPatterns` to be set

* docs: correct typo for `prBodyColumns`

* docs: mark global config snippets as such

As part of future changes, we'll use this to detect whether it's global
self-hosted configuration.

* docs: make sure `packageRules` wraps its children

* docs: add `allowedHeaders`

* docs: ignore deprecation warnings

As part of future changes, we'll use this to note that we don't care
about the validation warnings.

* docs: make sure `customManagers` wraps its children

* docs: make sure `fleet` wraps its children

* docs: validate JSON snippets are valid Renovate config

To make sure that we're always presenting valid JSON configuration to
our users, we can validate them as part of `check-fenced-code`.

As well as configuration errors we can warn for warnings, but allow code
blocks to opt-out, for instance when there's a known deprecation
affecting the code block.

We need to make sure to set `allowedEnv` for various code snippets that
reference environment variables.

* docs(development): document fenced code block checks

* docs: wrap `configType` and `ignoreConfigWarnings` in `{ ... }`

As otherwise we see build failures i.e.

    WARNING -  Doc file 'modules/platform/gitlab/index.md' contains a link
       '../../../self-hosted-configuration.md#autodiscoverrepoorder', but the doc
       'self-hosted-configuration.md' does not contain an anchor '#autodiscoverrepoorder'.

This needs to be wrapped alongside all other options like `title`.

* fixup! docs: wrap `configType` and `ignoreConfigWarnings` in `{ ... }`
2026-06-02 13:29:48 +00:00
Sebastian Poxhofer e839b18e75 ci: normalize admonition indentation using mkdocs-admonition (#43630)
* ci: normalize admonition indentation using mkdocs-admonition

* test: remove duplicate tests
2026-05-27 15:46:16 +00:00
Sebastian Poxhofer 9a27d7aa78 ci(prettier): add prettier plugin for admonitions (#43615)
* ci: add local mkdocs-admonitions plugin for prettier to allow admonition preservation

* docs: remove uses of `prettier-ignore` for admonitions

* test: rather use await expect

* chore: use named group exclusively
2026-05-27 09:39:52 +00:00
Jamie Tanna 2bd478fff4 feat(mise): automagically support all tools through Mise Registry (#42783)
* feat(mise): automagically support all tools through Mise Registry

As noted in #42250, we should try and auto-support tools from Mise where
possible.

Similar to other areas of the codebase, we should use the "static data"
pattern, and periodically sync the `mise registry --json` output with
`lib/data/mise-registry.json`, and then auto-detect the tools that we
support through the known backends the tools support.

This takes lower precedence than existing in-code tool definitions, so
we can still provide an "override" if we can support lookups or version
extraction more appropriately.

Because we now have many more tools we (mostly) support out-of-the-box,
we need to provide an improved documentation page, and:

- only link to tools we have an explicit tools URL for
- note where a backend may not be supported

To automate the updating of this data, we:

- make sure we have `mise` in GitHub Actions, before we run
- don't pin the `mise` version to make sure that we're always seeing the
  latest supported tools
- make sure the commits generated are now `feat(...)`, as they introduce
  functionality changes (in the case new tool(s) are supported)

This improves support from ~170 tool short names to just over 1000.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* refactor: use Typescript

As we can now, we should.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* refactor(tools/static-data): use Zod schemas for parsing

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* refactor(mise): use Zod for types

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>

* chore(mise): prefer the GitHub backend over other sources

As we generally prefer it as a project, we should automagically use that
when looking at a mise registry entry.

With help from GPT-4.1 to write the `sortBackend` function.

Co-authored-by: gpt-4.1 <jamie.tanna+github-copilot@mend.io>

* test: ignore else coverage

* docs(mise): preference of `github` backend

* docs(mise): auto-link autogenerated tools

* perf(mise): sort registry only once

* refactor(mise): transform when parsing

Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>

* refactor: use `execa`

* perf(mise): read the Mise registry once

* perf(mise): pre-transform

---------

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
Co-authored-by: gpt-4.1 <jamie.tanna+github-copilot@mend.io>
Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
2026-04-28 08:56:09 +00:00
RahulGautamSingh ff27ebee2b docs: use unicode arrow (→) instead of ASCII (->) (#42896)
* chore(docs): use unicode arrow (→) instead of ASCII (->)

* more changes
2026-04-27 07:11:16 +00:00
Jamie Tanna e0ce9dabd6 docs: prefix child options with their parent (#41828)
This also makes sure that our URL fragments should be more consistent
over the years, as duplicate names (across parent and child options)
cannot clash.

This also corrects links from the code to include the new fragment.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-03-12 10:56:52 +00:00
Michael Kriese a62f35cd56 docs: replacements without replacementVersion are supported (#38736) 2025-10-20 13:17:32 +00:00
Michael Kriese e64636727b refactor: move nodejs schedule json out of generated data files (#37481) 2025-08-13 12:27:35 +00:00
Michael Kriese 53c2615e50 docs: add monorepo note (#37251) 2025-08-01 07:19:12 +00:00
RahulGautamSingh 5d262a9a6d refactor(lib/data): move metadata-manual to lib/data (#30260) 2024-07-30 13:04:32 +00:00
RahulGautamSingh d814d1e18c refactor(lib/data): replacements (#30259)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2024-07-22 09:47:16 +00:00
RahulGautamSingh 3384e68be5 refactor(lib/data): monorepo (#30210)
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
2024-07-19 21:51:06 +00:00