Commit Graph

2219 Commits

Author SHA1 Message Date
Jamie Tanna e31dfd74e8 refactor(tools/sync-module-labels): move shared code into a shared helper (#42249)
As otherwise this leads to us importing the tool itself, which has a
top-level function that runs the tool.

As noted on a comment on #42012, this means that the tests are now
executing `gh` which isn't intended.

Co-authored-by: Claude Sonnet 4.6 <jamie.tanna+claude-code@mend.io>
2026-03-30 17:31:35 +00:00
Sergei Zharinov e0c9bc1961 refactor(lint): move option-dependent rules from ESLint to oxlint (#42215)
Migrate rules that previously stayed in ESLint due to option parity
concerns. oxlint now supports all needed options:

- `no-restricted-imports` (paths: nock, parse-link-header, path)
- `consistent-type-assertions` (objectLiteralTypeAssertions: allow)
- `explicit-function-return-type` (allowExpressions, allowTypedFunctionExpressions)
- `no-unused-vars` (args: none, ignoreRestSiblings)
- `no-empty-object-type` (allowInterfaces: with-single-extends)

Convert eslint-disable comments to oxlint-disable for the allowed
import sites (url.ts wrapper, http-mock.ts test helper).

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-03-30 16:45:02 +00:00
saudademjj f2546b84a3 ci: add module label sync tooling (#42012)
* ci: add module label sync tooling

* ci: align module label sync cli

* ci: fix module label sync checks

* refactor: simplify module label sync cli

* fix: relax module label sync cli options type

* Address a couple of nitpicks

Co-authored-by: Jamie Tanna <github@jamietanna.co.uk>

* fixup! Address a couple of nitpicks

---------

Co-authored-by: Jamie Tanna <github@jamietanna.co.uk>
Co-authored-by: Jamie Tanna <jamie.tanna@mend.io>
2026-03-25 10:14:40 +00:00
Felipe Santos e8a5c70862 feat(config-migration): preserve comments when migrating renovate.json (#38646)
* feat(config-migration): preserve comments when migrating `renovate.json`

* Replace jsonc-parser with jsonc-weaver

* Switch to npm package

Refs https://github.com/felipecrs/jsonc-weaver/commit/7a168e2fdd6959fab9d1ebd6bb5dafc02dbf62ff

* Fix tests

* Add test coverage for fallback

* Fix coverage again

* Fix coverage for real

* Restore line break
2026-03-13 21:53:52 +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
Sergei Zharinov ee2c737d41 refactor: Drop more eslint plugins (#41740)
* refactor: replace @containerbase/eslint-plugin and eslint-plugin-import-x with local rules and biome

The two containerbase ESLint rules (test-root-describe, no-tools-import) are now
implemented locally in tools/lint/rules.js, removing the external dependency.

All eslint-plugin-import-x rules are dropped: default, named, namespace, and
no-cycle are already covered by oxlint; no-unresolved is covered by TypeScript;
no-extraneous-dependencies is replaced by biome's noUndeclaredDependencies.

* fix: exclude eslint.config.mjs from type-checking

eslint-plugin-promise has no type declarations. Previously this was
masked by @types/eslint pulled in transitively via eslint-plugin-import-x.
The config file is not application code and gains nothing from type-checking.

* refactor: drop eslint-plugin-promise, move covered rules to oxlint

The promise rules target .then()/.catch() patterns which are rare in an
async/await codebase. The 4 rules oxlint supports (catch-or-return,
no-callback-in-promise, no-new-statics, valid-params) are moved there.

* fix: prettier formatting after removing eslint-disable comment
2026-03-09 16:05:50 +00:00
renovate[bot] 756ede7873 chore(deps): update dependency memfs to v4.56.10 (main) (#40701)
* chore(deps): update dependency memfs to v4.56.10

| datasource | package | from   | to      |
| ---------- | ------- | ------ | ------- |
| npm        | memfs   | 4.55.0 | 4.56.10 |

* inner source memfs types

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: secustor <sebastian@poxhofer.at>
2026-02-28 11:21:29 +00:00
Michael Kriese 8cf4171637 chore(tsdown): validate and sort entrypoints (#41407)
chore(tsdown9: validate and sort entrypoints
2026-02-23 10:44:57 +00:00
renovate[bot] 645a28c77c build(deps): update dependency prettier to v3.8.1 (main) (#39779)
* build(deps): update dependency prettier to v3.8.1

| datasource | package  | from  | to    |
| ---------- | -------- | ----- | ----- |
| npm        | prettier | 3.6.2 | 3.8.1 |

* fixup prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: secustor <sebastian@poxhofer.at>
2026-02-18 08:41:34 +00:00
Sergei Zharinov 9d857c1f68 refactor(lint): Organize imports with biome (#40966) 2026-02-06 13:40:01 +00:00
Sergei Zharinov 2b0e80b884 feat!: Switch to ESM modules (#40756) 2026-01-29 14:21:41 +00:00
Sergei Zharinov 930cf6633c refactor: Rewrite imports with .ts extensions (#40700)
fix: Additional vi.mock path corrections and prettier formatting
2026-01-26 22:48:17 +00:00
Jamie Tanna 9f3db00d1a fix(util/exec): allow ignoring failures per-command (#40290)
As part of future changes which will fix issues with Composer + Yarn 1
introduced by f430552de4, we need to find
a way to ignore command failure, on a per-command basis.

To do this, we can provide a refactor to introduce a new type,
`CommandWithOptions` which has the ability to specify whether to
`ignoreFailure`.

To make this less of a refactor than would otherwise require, we can
pass around a `(string | CommandWithOptions)[]`
(or a `string[]` or a `CommandWithOptions[]`) to be used, and use
helpers `asRawCommand` and `asRawCommands` to extract the underlying
command where necessary.

In the case a command's failure is being ignored, return the error code
in the `ExecResult`.

We also need to make sure that when executing in Docker, we still
provide the `|| true`s, otherwise we'll start to see commands failing
unexpectedly.

As part of future-proofing the `CommandWithOptions`, we can make sure
that it uses `string[]`s for the command it's representing, to avoid
re-parsing it.
2026-01-08 09:36:06 +00:00
Michael Kriese c641239c19 fix: use stricter types for renovate config (#39594)
* fix: use stricter types for renovate config

* fix: revert changes

* Apply suggestions from code review
2025-11-28 13:16:27 +00:00
Sergei Zharinov 558bdc159d feat: Cleanup mutexes before each run (#38987)
* feat: Cleanup mutexes before each run

* Update setup.ts

* Update mutex.spec.ts

* Update setup.ts

* Unmock mutex in deb datasource spec to prevent race condition

* Update index.spec.ts
2025-11-15 21:24:43 +00:00
Anne Stellingwerf cf7997ad62 chore: validate all handlebars helpers are documented (#38932)
* ci: validate all Handlebars helpers are documented

* ci: validate all Handlebars helpers are documented

* chore: validate all handlebars helpers are documented

* chore: validate all handlebars helpers are documented
2025-11-02 12:15:10 +00:00
Jamie Tanna 066c7026e7 test: correctly call toMigrate with vitest (#38242)
fix(tests): correctly call `async toMigrate` with vitest

While working on #38240, I noticed that the failing tests I was
writing didn't trigger.

It turns out that in 997c23502e, when we
migrated to Vitest, and made some functions `async`, we missed out on
making the tests themselves `async`.

This correctly applies the `async` modifier to test functions, allowing
them to correctly pass/fail when running async code.

We can also make sure that `toMigrate` is returning a Promise to
indicate it's asynchronous.
2025-09-27 08:29:30 +00:00
Rhys Arkins 93fa41b26f chore: remove rarkins from maintainers (#37585)
Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
2025-08-29 08:36:42 +00:00
Michael Kriese 3211d56e21 refactor(zod): rename schema to match our best practices guide (#37499) 2025-08-14 10:35:03 +00:00
RahulGautamSingh 8bedd04ab7 test: use async (#36953) 2025-07-12 12:35:51 +00:00
Sergei Zharinov 2e382c5ebc ci: Check documented package cache namespaces (#36909) 2025-07-08 21:38:30 +00:00
RahulGautamSingh f20e7411ad feat(config/options): allow root(.) and UpdateType as parents (#36522)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2025-07-04 10:29:58 +00:00
RahulGautamSingh 3ed7f23be6 feat(config/options): allow all managers as parents of managerFilePatterns (#36471) 2025-06-13 05:25:41 +00:00
Michael Kriese 1174198e84 chore: replace eslint import plugin (#36312) 2025-06-04 15:34:05 +00:00
RahulGautamSingh bc7d0595d0 feat(config): managerFilePatterns (#34615)
Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2025-05-04 08:30:24 +00:00
RahulGautamSingh a0c1dde460 refactor: move capitalize fn to lib/util (#35355) 2025-04-14 06:33:33 +00:00
Michael Kriese 19c115c813 test: cleanup (#34785) 2025-03-13 17:52:09 +00:00
Michael Kriese 4f60a8b7fe test: mock git globally (#34783) 2025-03-13 15:48:02 +00:00
Michael Kriese 3f0f6a04b6 build: compile with nodenext target (still cjs) (#34584) 2025-03-04 07:37:06 +00:00
Michael Kriese 593a92655e feat: refactor http (#34550) 2025-02-28 14:40:04 +00:00
renovate[bot] 0299455412 chore(deps): update dependency nock to v14 (main) (#34557)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2025-02-28 14:20:08 +00:00
Michael Kriese 1644d9cb18 test: migrate more to vitest (#34500) 2025-02-26 15:45:17 +00:00
Trim21 6e5731b554 test: migrate from jest to vitest (#34499) 2025-02-26 14:18:38 +00:00
Michael Kriese bb5377b3d8 test: fix code coverage (#34495) 2025-02-26 12:40:30 +00:00
Michael Kriese 997c23502e test: migrate to vitest (#34475)
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
2025-02-26 09:35:54 +00:00
renovate[bot] 55845508b6 chore(deps): update eslint monorepo to v9 (major) (#33573)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2025-02-20 11:31:13 +00:00
Sebastian Poxhofer c971bd0735 test: set Node timezone in jest tests (#34141) 2025-02-11 05:25:58 +00:00
Sergei Zharinov 0300c4e0a4 test(logger): Fix mock for withMeta function (#33979) 2025-01-31 20:36:38 +00:00
Michael Kriese bdf3d1daa4 test: refactor and ci fix for other tests (#33815) 2025-01-24 09:34:08 +00:00
RahulGautamSingh 95efd9f6fe test(lib/data): schemas for changelog and source urls (#32151)
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2024-10-30 08:19:48 +00:00
Sergei Zharinov 2a1a9fb06a test: Fix test file content load for mocked fs-extra (#31687) 2024-09-30 09:17:39 +00:00
Sergei Zharinov 4b97cefb7e test: Improve errors for missing/unused HTTP mocks (#31678) 2024-09-30 05:26:53 +00:00
RahulGautamSingh d1af6778de refactor: data validation using schema (#30797)
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2024-08-29 06:07:39 +00:00
Sigurd Spieckermann fa8d3ff693 feat(git): add support for SSH-based commit signing (#29550)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2024-08-21 09:36:18 +00:00
Sebastian Poxhofer 3681b2a945 chore: eslint to enforce for typed imports (#30844) 2024-08-19 13:15:27 +00:00
renovate[bot] eb8c08079e chore(deps): update typescript-eslint monorepo to v8 (major) (#30750)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2024-08-14 10:33:02 +00:00
Antony David 607d7e3e1b refactor: migrate traverse to neotraverse (#30573) 2024-08-05 09:49:05 +00:00
Sigurd Spieckermann e5f4a1e065 test(git): enhance commit signing tests (#30396)
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2024-07-26 10:35:49 +00:00
RahulGautamSingh a416f77451 refactor: sort sub-headings of options (#29798) 2024-06-29 06:33:18 +00:00
Sergei Zharinov 3663ba232d test: Refactor documentation tests for better navigation (#28590) 2024-04-29 13:28:26 +00:00