Commit Graph

43 Commits

Author SHA1 Message Date
Jamie Tanna 8abbd14fe6 fix(config/validation): allow only capturing currentDigest in Custom Managers (#45671)
* fix(config/validation): allow only capturing `currentDigest` in Custom Managers

As reported in #45665, it was previously possible - through a preset
prior to 44.60.1 - to specify a Custom Manager (in this case, with
Regex) that only captured the `currentDigest` for a dependency.

This causes config validation in a repository, but as it appears to be
valid - with `currentValue` defaulting to `latest` - we should make it
possible to use either `currentValue` or `currentDigest`.

* fixup! fix(config/validation): allow only capturing `currentDigest` in Custom Managers
2026-09-04 11:30:15 +00:00
Sebastian Poxhofer 2fc46bdcfa test(manager): replace file snapshots with explicit assertions (#45656)
* test(manager): replace file snapshots with explicit assertions

* test(manager): replace inline snapshots with explicit assertions

* test(manager): assert on relevant sections instead of full bodies

* test(manager): drop assertions implied by full equality

* test(manager): address review feedback

* test(manager): assert depType and versioning in the regex matcher
2026-09-04 06:36:39 +00:00
Sebastian Poxhofer c32e2391a0 refactor(linters): add prefer-coerce-object rule (#45493)
Refs #45216

The object counterpart to `prefer-coerce-array`: `x ?? {}` becomes
`coerceObject(x)`. The rule flags a `??` whose default is a bare `{}`
literal, so a populated default or an asserted `({} as Foo)` still
passes; a `x ?? y ?? {}` chain maps onto `coerceObject(x, y)`.

Every hit across `lib/` converted cleanly, so no disable comments were
needed.
2026-08-28 09:27:59 +00:00
Sebastian Poxhofer e0cec3dc95 refactor(lint): add types-location rule and enable it for lib/modules (#45497)
feat(lint): add `types-location` rule and enable it for `lib/modules`

Reviewers consistently ask for exported types to be moved into a
colocated `types.ts`. Add a `renovate/types-location` oxlint rule that
reports `export interface` / `export type` declarations outside such a
file, and turn it on across `lib/modules`.

Re-exports (`export type { X }`, `export type *`), file-local types, and
values (enums, classes, functions) are left alone. `schema.ts` files and
`schema/` directories are excluded via config, matching how
`zod-schema-location` is configured — inferred types belong next to the
schema they are derived from.

Relocating the 87 existing violations means:

- new `types.ts` files for the modules that had none
- `terragrunt/common.ts` folded into its `types.ts`, as it held nothing
  else
- `RangeBound` in `versioning/gradle/compare.ts` un-exported, since only
  a file-local interface referenced it
- `bazel-module/parser/fragments.ts` split from its inferred types, which
  now live in `parser/types.ts` and infer through a namespace import so
  each schema keeps its merged name
2026-08-27 19:52:09 +00:00
Sebastian Poxhofer 03baf6ee4a test(noNewURL): add new rule enforcing parseUrl() from 'lib/util/url.ts' (#43247)
* test(noNewURL): add new rule enforcing parseUrl() from 'lib/util/url.ts'

* replace newURL with parseUrl

* remove non-null assertions marks if appropiate

* test: add additional tests

* test: add additional tests and ignore where it makes sense

* implement suggestions

* test: further improve coverage

* apply suggestion
2026-05-13 16:23:10 +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
Sergei Zharinov 9d857c1f68 refactor(lint): Organize imports with biome (#40966) 2026-02-06 13:40:01 +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
RahulGautamSingh 18bd32166b chore: replace URL.resolve (#40702)
replace URL.resolve
2026-01-26 18:59:54 +00:00
RahulGautamSingh 67d4e34381 feat(manager/regex): extract depName from file path (#39204)
* feat: extract depName from file path

* Apply Suggestions

* refactor: precompute paths

* use upath method

* Applu Suggestions

* Update lib/modules/manager/custom/regex/types.ts

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

* Apply suggestions from code review

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>

---------

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2025-12-03 18:29:29 +00:00
RahulGautamSingh 76f911041a refactor: use named exports (#39196)
* use named exports

* fix test

* add missing imnport

* fix prettier
2025-11-10 12:00:35 +00:00
renovate[bot] b4ed9e65d9 chore(deps): update dependency @vitest/eslint-plugin to v1.3.23 (main) (#38702)
* chore(deps): update dependency @vitest/eslint-plugin to v1.3.23

| datasource | package               | from   | to     |
| ---------- | --------------------- | ------ | ------ |
| npm        | @vitest/eslint-plugin | 1.3.16 | 1.3.23 |

* remove now unnecessary exceptions

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: secustor <sebastian@poxhofer.at>
2025-10-31 07:50:48 +00:00
renovate[bot] 1280fe4dc7 chore(deps): update dependency @vitest/eslint-plugin to v1.3.16 (main) (#38502)
* chore(deps): update dependency @vitest/eslint-plugin to v1.3.16

| datasource | package               | from   | to     |
| ---------- | --------------------- | ------ | ------ |
| npm        | @vitest/eslint-plugin | 1.3.13 | 1.3.16 |

* fix linting errors

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: secustor <sebastian@poxhofer.at>
2025-10-13 09:24:15 +00:00
Michael Kriese 639d259626 refactor: unify more types (#37148) 2025-07-25 07:08:35 +00:00
Moritz Gnisia 72f916d0d2 docs: Adjust regex to match case (#36485)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2025-06-13 04:20:03 +00:00
Pavel Kutáč 83162b1991 docs: add note about enabledManagers within customManagers (#35774) 2025-05-07 09:14:40 +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
Michael Kriese 19c115c813 test: cleanup (#34785) 2025-03-13 17:52:09 +00:00
Rhys Arkins b1e19a999a chore(manager/custom): log when no dependencies for custom regex manager (#34710) 2025-03-09 11:38:05 +00:00
Risu 83ec919090 docs(managers): clarify multi-line mode is not supported in regex custom manager (#34571)
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
2025-03-05 17:45:41 +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
RahulGautamSingh d094afeb82 refactor(manager/custom): reorganize and update utility functions (#33050) 2024-12-12 20:12:59 +00:00
Sergei Zharinov 90088cc03e refactor: Rename manager result type to MaybePromise (#32977) 2024-12-09 06:38:20 +00:00
Ed Harrod 894250d392 chore(manager/gomod): Update go version to 1.23.3 in tests/examples (#32514)
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2024-11-13 15:45:18 +00:00
HonkingGoose d125c9947b docs(regex): rewrite (#32138) 2024-10-31 08:59:15 +00:00
Sergei Zharinov 321e304ca1 test(regex-manager): Separate arrange/act/assert with spaces (#30972) 2024-08-22 20:05:30 +00:00
Oluf Lorenzen e70f107acb docs(manager/custom): hint about multiple replacements (#30680) 2024-08-15 08:34:16 +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
renovate[bot] be0bd3d63e build(deps): update dependency prettier to v3.3.3 (#30272)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2024-07-20 16:51:43 +00:00
Jamie Tanna 6b24abe1e0 chore(regex): add additional logging for isValidDependency failures (#29791) 2024-06-21 08:46:57 +00:00
Adam Setch a6d5757d31 docs: update regex to custom managers (#29044) 2024-05-29 15:17:58 +00:00
Rhys Arkins cf724cf699 feat(manager/custom): allow packageName instead of depName (#28834)
Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
2024-05-05 12:14:55 +00:00
Michael Keppler 339217903a docs: fix regex example syntax highlighting (#28493) 2024-04-18 07:19:27 +00:00
Michael Kriese 0dd364a814 docs: fix versioning links (#28341) 2024-04-11 13:23:20 +00:00
Aleksandr Mezin 8b44771cc6 fix(manager/regex/tests): actually test 'combination' strategy (#27756) 2024-03-06 14:49:59 +00:00
HonkingGoose 57450586c3 docs(regex): add regex flavor information (#26797) 2024-02-07 09:05:59 +00:00
Michael Kriese 4b7a5e7b62 docs: use relative links (#26044) 2023-11-29 18:10:17 +00:00
Sergei Zharinov b69416ce17 refactor(prettier): Force trailing commas (#25631) 2023-11-07 15:50:29 +00:00
RahulGautamSingh 6f9d37a6c0 feat(migrate): regexManagers -> customManagers (#24451)
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
Co-authored-by: Rhys Arkins <rhys@arkins.net>
2023-09-24 08:55:56 +00:00
RahulGautamSingh 2ffbd41b59 refactor(types): move custom manager types (#24324) 2023-09-13 05:31:48 +00:00
Michael Kriese a9dc0625cf fix: better branch code coverage (#24270) 2023-09-06 11:26:22 +00:00
RahulGautamSingh bf2c0693ac refactor(managers): implement custom managers api (#23357)
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
Co-authored-by: Sebastian Poxhofer <secustor@users.noreply.github.com>
2023-08-15 17:12:54 +00:00
RahulGautamSingh 9dc51d03c4 refactor(managers): move regex in custom folder (#23715) 2023-08-06 11:00:47 +00:00