Commit Graph

2035 Commits

Author SHA1 Message Date
Sebastian Poxhofer 990c64e0f3 fix(template): do not escape html character with double curly brackets (#42136) 2026-03-25 15:29:25 +00:00
Sergei Zharinov 0ae44810fc fix(http): detect x-access-token prefix before hostType-based auth branching (#42083)
* fix: Add `github-digest` to `GITHUB_API_USING_HOST_TYPES` list

* fix(http): detect x-access-token prefix before hostType-based auth branching

Moves GitHub App installation token detection (`x-access-token:` prefix)
before the hostType-based authorization chain in `applyAuthorization`.
This ensures correct `token` scheme auth for any GitHub-related hostType,
not only those listed in `GITHUB_API_USING_HOST_TYPES`.

* test(http/auth): add regression test for GitHub App token with non-listed hostType

* Fixes

* Fix tests
2026-03-24 17:11:56 +00:00
Zack Kanter 264f813cab feat(instrumentation): instrument cache lifecycle with OTEL (#41922)
* fix(cache): instrument repository cache load and save

Wrap repository cache `load()` and `save()` calls with the existing
`instrument()` helper to create OpenTelemetry spans for cache lifecycle
operations. This gives operators visibility into repository cache
performance, especially useful with S3 backends.

Refs #41760

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(cache): instrument package cache init and destroy

Wrap package cache `init()` and `destroy()` with `instrument()` to
create OpenTelemetry spans, matching the repository cache instrumentation
from the previous commit. Covers redis, sqlite, and file backends.

Refs #41760

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* docs: document cache lifecycle tracing in OpenTelemetry guide

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Move destroy() outside init instrument span

Avoids nesting the package-cache.destroy span inside
package-cache.init, making them sibling spans instead.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* Use 'verb NounClass' span naming convention

Rename instrument span names from dot-notation (e.g.
'package-cache.init') to 'verb NounClass' pattern (e.g.
'init PackageCache') per reviewer feedback.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-20 05:54:43 +00:00
Sebastian Poxhofer 7be38227f0 feat(package-rules): add matchRegistryUrls option (#41966)
* feat(package-rules): add matchRegistryUrls option

* chore: add patternMatch option

* Update docs/usage/configuration-options.md

Co-authored-by: RahulGautamSingh <rahultesnik@gmail.com>

---------

Co-authored-by: RahulGautamSingh <rahultesnik@gmail.com>
2026-03-19 11:42:27 +00:00
Timo Hankamer f593ffca20 feat(package-rules): support template compilation for sourceUrl (#41932)
Add template compilation support for sourceUrl in package rules,
allowing users to dynamically construct source URLs using template
syntax. This enables use cases like OpenTofu providers where the
source URL needs to be constructed from the package name.
2026-03-19 10:16:52 +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
Tim Tran 2f71422620 feat(bazel-module,bazelisk): add lock files updating (#41507)
* feat(exec): register bazelisk as containerbase tool

* test(bazel-module): add failing tests for updateArtifacts

* feat(bazel-module): implement updateArtifacts for lockfile support

* feat(bazel-module): export updateArtifacts from manager index

* fix(bazel-module): address code review feedback

- Use logger.warn instead of debug for artifact errors
- Add utf8 encoding to readLocalFile calls
- Use getSiblingFileName for lockfile path derivation
- Add empty updatedDeps guard
- Strengthen test assertions

* docs(bazel-module): document lockfile support

* Update lib/modules/manager/bazel-module/index.ts

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

* Apply suggestions from code review

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

* fix(bazel-module): address review feedback

- Remove unnecessary afterEach in tests
- Use partial<StatusResult> for all StatusResult mocks
- Add lockfile maintenance support
- Export supportsLockFileMaintenance flag

* fix(bazel-module): handle untracked lock files and clarify docs

Check status.not_added alongside status.modified for lock file changes,
matching the pattern used by other managers (composer, gomod, etc.).
Clarify that Bazelisk (not Renovate) reads .bazelversion. Add test for
lockfile maintenance with no changes.

* feat(bazelisk): implement updateArtifacts for MODULE.bazel.lock

When the Bazel version in .bazelversion changes, run `bazel mod deps` to
regenerate MODULE.bazel.lock and return the updated lockfile as an artifact.

* feat(bazelisk): add lockfile maintenance support

* docs(bazelisk): add lockfile support section linking to bazel-module docs

* refactor(bazel-module): extract shared lockfile update helper

* refactor(bazel-module): delegate lockfile update to shared helper

Replace inline lockfile update logic in artifacts.ts with a call to the
shared updateBazelLockfile() helper, and update tests to mock the helper.

* refactor(bazelisk): delegate lockfile update to shared helper

Replace inline lockfile update logic in bazelisk/artifacts.ts with a
call to the shared updateBazelLockfile() helper from bazel-module/lockfile.ts.

* fix(bazelisk): use index.md for cross-manager docs link

The docs pipeline renames readme.md to index.md, so cross-manager
links must reference index.md to pass the docs link checker.

* feat(bazel-module,bazelisk): support bazelisk version constraint

Pass config.constraints.bazelisk through to toolConstraints so users
can pin the bazelisk version if the newest release is broken.

* fix(bazel-module): rename lockFile to fileName in ArtifactError

Upstream renamed lockFile to fileName in ArtifactError type (#41631).

---------

Co-authored-by: Michael Kriese <michael.kriese@gmx.de>
2026-03-12 16:40:24 +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 a065a3dd41 fix(datasource/docker): use custom www-authenticate parser (#41813)
* fix(datasource/docker): use custom `www-authenticate` parser

* chore: drop license comments

* test: extend test

* fix: wrong regex

* test: fix tests

* Update lib/util/http/www-authenticate.ts

Co-authored-by: Jamie Tanna <jamie.tanna@mend.io>

* test: add more tests

---------

Co-authored-by: Jamie Tanna <jamie.tanna@mend.io>
2026-03-11 16:48:15 +00:00
David Xia b96fbcbb9f docs: Fix typo in newDigestShort description (#41796)
Fix typo in newDigestShort description
2026-03-11 12:15:07 +00:00
Sebastian Poxhofer ee2b77542c feat(package-rules): add detectPlatform helper function (#41798)
feat(package-rules): add detectPlatform function
2026-03-11 10:38:51 +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
Sergei Zharinov 41bfb8678e refactor(lint): use oxlint for type-aware rules (#41739)
* feat: enable oxlint type-aware linting

Move type-aware typescript-eslint rules from ESLint to oxlint,
leveraging oxlint-tsgolint for type information. This removes
the need for ESLint's projectService and parserOptions.

- Add `options.typeAware: true` to .oxlintrc.json with all
  type-aware rules (recommendedTypeChecked + stylisticTypeChecked)
- Switch ESLint to non-type-aware configs (recommended, stylistic)
- Remove projectService/parserOptions from ESLint config
- Drop @typescript-eslint/naming-convention (no oxlint equivalent)
- Update oxlint/eslint-plugin-oxlint to 1.51.0
- Add oxlint-tsgolint dependency
- Convert eslint-disable comments to oxlint-disable for type-aware rules
- Fix prefer-optional-chain violations newly caught by oxlint

* fix: revert unnecessary code changes, suppress with oxlint-disable instead

* fix: suppress remaining prefer-optional-chain violations

* fix: suppress last prefer-optional-chain violation

* fix: remove redundant --type-aware CLI flag, use config instead
2026-03-09 12:51:12 +00:00
Jamie Tanna bc82cff059 feat(managers/npm): allow specifying toolSettings.nodeMaxMemory (#40957)
* feat(managers/npm): allow specifying `toolSettings.nodeMaxMemory`

As noted in #40942, we're seeing an increase in memory usage across
`pnpm` and `yarn` users in Mend-hosted apps.

To allow limiting the maximum memory that any `node` child processes
will use, we can add a new `toolSettings.nodeMaxMemory` to (hopefully)
mitigate this.

Similar to the `toolSettings.jvmMaxMemory`, the self-hosted
administrator can set a maximum, which cannot be exceeded by repo-level
configuration.

* fixup! feat(managers/npm): allow specifying `toolSettings.nodeMaxMemory`
2026-03-05 12:56:02 +00:00
renovate[bot] c2aa761c1e chore(deps): update linters (main) (#41417)
* chore(deps): update linters

| datasource | package              | from   | to     |
| ---------- | -------------------- | ------ | ------ |
| npm        | @eslint/js           | 9.39.2 | 9.39.3 |
| npm        | eslint               | 9.39.2 | 9.39.3 |
| npm        | eslint-plugin-oxlint | 1.46.0 | 1.49.0 |
| npm        | oxlint               | 1.47.0 | 1.49.0 |
| npm        | typescript-eslint    | 8.55.0 | 8.56.0 |

* chore(deps): update linters

| datasource | package              | from   | to     |
| ---------- | -------------------- | ------ | ------ |
| npm        | @eslint/js           | 9.39.2 | 9.39.3 |
| npm        | eslint               | 9.39.2 | 9.39.3 |
| npm        | eslint-plugin-oxlint | 1.46.0 | 1.49.0 |
| npm        | oxlint               | 1.47.0 | 1.49.0 |
| npm        | typescript-eslint    | 8.55.0 | 8.56.0 |

* Radix rule has been deprecated

* fixup! Radix rule has been deprecated

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: secustor <sebastian@poxhofer.at>
2026-02-28 11:23:25 +00:00
Jamie Tanna f963528d48 chore(logger): serialize DateTime to ISO strings (#41363)
* chore(logger): serialize `DateTime` to ISO strings

As an alternative to 2228a79015, we can
instead serialize any `DateTime` objects that are present in our logging
fields.

Co-authored-by: Claude Sonnet 4.5 <jamie.tanna+github-copilot@mend.io>

* Revert "fix(util/git): log date as string (#41360)"

This reverts commit 2228a79015.

* test(logger): clarify Luxon dates

As we'll follow-up with native dates in the future.

---------

Co-authored-by: Claude Sonnet 4.5 <jamie.tanna+github-copilot@mend.io>
2026-02-27 15:05:30 +00:00
zT-1337 ddc46220b9 feat(platform): add support for the SCM-manager (#26866)
* - Added Renovate support for the [SCM-Manager](https://scm-manager.org/)
  - SCM-Manager is a repository management tool like GitHub
  - It is maintained as an open source project by the company [Cloudogu](https://cloudogu.com/en/)
- The SCM-Manager support is not feature complete yet, features like auto merging are still missing
- The SCM-Manager also got added to the documentation as another platform

author  Thomas Zerr <thomas.zerr@cloudogu.com> 1690877165 +0200
committer Eduard Heimbuch <eduard.heimbuch@cloudogu.com> 1706264263 +0100

* Reverted numbering change in markdown docs

* Changed from type to interface, if possible

* Removed axios dependency and using the http layer of renovate instead

* Fixed not using scmm specific mime types for accept header

* Use git from test/util instead

* Add dummy tests for no ops

* Fix some phrasing and spelling issues

* Change scmm to scm-manager and fix SCM-Manager specific content type

* Add supported major versions, review plugin requirement, write permissions is needed

* Change using actual host rules instead of mocking it

* Change use http mocks for testing

* Update docs/usage/getting-started/running.md

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/index.ts

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/mapper.spec.ts

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/readme.md

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/readme.md

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/readme.md

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/readme.md

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update lib/modules/platform/scm-manager/readme.md

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Fix scm-manager docs link

* Fix linting

* Fix linting

* Throw errors if username or token is not provided by the host rules

* Replace NO-OP with Not implemented

* Remove objects from log messages

* Fix linting

* Fix path to platform config options

* Fix link to self-host-configuration docs

* Fix link to self-host-configuration docs

* Remove the link to the platform config option, because the tests keep failing

* Fix link to self-host-configuration docs

* Remove not needed type cast

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

* Fix type check of protocol links

* Move scm-manager into util http folder

* Apply linting

* Add maxBodyLength function and its test

* Add test case if protocol links are not an array of links

* Use zod schema for pagination

* Apply linting

* Refactor typing with zod schema

* Fix test description

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Fix test description

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Fix test description

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Fix test description

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Update readme

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Add try catch around fetching the current user

* Switch log statement from info to debug

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

* Switch log statement from info to trace

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

* Switch log statement from debug to trace

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

* Switch log statement from info to trace

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

* Switch log statement from info to trace

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

* Switch log statement from info to trace

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

* Fix linting errors

* Remove credentials check in initRepo

* Fix imports

* Fix zod schema for repositories

* Fix zod schema for pull requests

* Fix 500 error after attempting to update an pr

* Fix wrong typing

* Refactor parameterized tests for better readability

* Refactor SCM HTTP API

* Add setToken functionality

* Remove not needed type definition

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

* Fix assertion

* Fix istanbul comment

* Change log statement

* Remove type rename

* Move inferred types close to corresponding schemas

* Add platform is experimental

* Remove type renaming

* Fix type imports

* Fix test suite description

* Remove debug log statement

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

* Fix warning

* Fix paremeterized unit tests with string templates

* Fix spelling

Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>

* Fix eslint error

* Convert trace logs to debug logs

* Convert info logs to debug

* Replace manual null and undefinded check with is util

* Rephrase instruction in readme

* Use ensureTrailingSlash instead

* Fix linting

* Keep type and schema together

* Simplify hasAssignees check

* Simplify reviewer mapping

* Remove istanbul comments

* Replace custom scmm header option with renovate native http headers option

* Let the token be passed in initPlatform

* Add description which permissions are needed

* Add support for ignorePrAuthor filter

* Add notes about automerge feature within platform readme

* Add support for fast_forward_only

* Change supported versions due to merge strategy change

* Remove commented code

* Fix import

* Use email schema

* Heed review advice

* Fix import and empty array assertions

* Fix linting issue

* Fix import errors

* Fix removed ignorePrAuthor parameter from initRepo function

* Fix failing unit tests by setting/reseting the global config

* Mark scm-manager as experimental

* Fix zod import path

* Change endpoint configuration, so that user only needs to define origin, but not also the path

* Fix warning of redundant backslash

---------

Co-authored-by: Eduard Heimbuch <eduard.heimbuch@cloudogu.com>
Co-authored-by: HonkingGoose <34918129+HonkingGoose@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
Co-authored-by: René Pfeuffer <rene@pfeuffer-web.de>
Co-authored-by: Michael Kriese <michael.kriese@gmx.de>
Co-authored-by: René Pfeuffer <rene.pfeuffer@cloudogu.com>
2026-02-26 13:38:31 +00:00
Jamie Tanna 12ea4f2831 refactor(gradle): move gradleJvmArg to util/exec (#41511)
As this is the better place for this to be overall, and as well as
future changes that will need to pull it from a central location.
2026-02-26 13:35:21 +00:00
Jamie Tanna c985ca29dd fix(util): don't log "Hidden Unicode" warning when reading a binary file (#41470)
In the case that we are reading binary files in repositories, we should
not log a WARN that there are "hidden" characters in it, as it's a
binary file.

We can use a common heuristic (at least according to Claude Sonnet 4.5)
to look for null bytes at the beginning of our files, and not log the
warning in that case.

Co-authored-by: Claude Sonnet 4.5 <jamie.tanna+github-copilot@mend.io>
2026-02-25 08:36:16 +00:00
Jamie Tanna 165d88f4b3 fix(util): don't treat Zero Width Joiner as "hidden Unicode" (#41471)
As it's commonly found in emoji, and is less likely to be used for
hidden text attacks.

Co-authored-by: Claude Sonnet 4.5 <jamie.tanna+github-copilot@mend.io>
2026-02-24 22:10:24 +00:00
Jamie Tanna 8f16b4442e fix(util): don't log duplicate "hidden Unicode" characters (#41469)
* fix(util): don't log duplicate "hidden Unicode" characters

* test: update post-merge
2026-02-24 21:31:31 +00:00
Jamie Tanna 5949dd4aca fix(util): don't include filename in "Hidden Unicode" warning (#41468)
fix(logger): don't include filename in "Hidden Unicode" warning

As noted in #41467, if a repository has many files with these warnings,
the Dependency Dashboard can be flooded, which can reduce the utility,
especially if some of these may be false positives.

We can remove the filename from the WARN message, which will ensure that
only a single message is logged.

However, this will reduce the utility of the log message, as then users
need to check their logs to see the `file`.
2026-02-24 17:57:47 +00:00
Sergei Zharinov 6afc6e9e05 refactor(cache): Convert package cache backends to classes (#41434)
refactor(cache): extract package cache backend classes
2026-02-24 07:27:27 +00:00
Jamie Tanna 7c7330b162 fix(util): don't warn if a file contains only a Byte Order Mark (BOM) (#41416)
As noted in #41381, it's common for a Byte Order Mark (BOM) Unicode
character to exist in a codebase that's used on Windows.

If we only find a BOM, we will report a TRACE log instead of the WARN,
but if any other characters are found, we'll continue with our WARN.
2026-02-23 14:53:34 +00:00
Michael Kriese fbde9945c0 refactor(redis): use destroy instead of disconnect (#41397) 2026-02-23 09:06:13 +00:00
Sergei Zharinov d1f4f804c7 fix: resolve cache TTL lazily in PackageHttpCacheProvider (#41386)
fix: resolve cache TTL lazily in PackageHttpCacheProvider
2026-02-23 08:17:59 +00:00
Jamie Tanna 2228a79015 fix(util/git): log date as string (#41360)
As a follow-up to changes in 7ebba26236
which accidentally changed this behaviour, as we're now passing in the
`DateTime`.
2026-02-20 17:46:52 +00:00
Jamie Tanna 9dcd32dc72 feat(util): log warning if file(s) contain hidden Unicode characters (#41353)
feat(utilgit): log warning if file(s) contain hidden Unicode characters

With the rise of prompt injection, there is an increased number of
attacks occurring using hidden Unicode characters.

These hidden characters can also confuse other tools, so it's best for
Renovate to surface these to repository owners, as we read files that
may be problematic.

To avoid multiple reads of files, we can do this every time our
`readLocalFile` function is called, as we already have the file content.

An alternate option would be that in `workers/repository` we could check
the read package files, but given `extractAllPackageFiles` may be used
by a Manager, we can't inject the logic in, without Managers needing to
implement the logic themselves.

This should be performant, and not introduce too many false-positives,
but this will also depend on how (package) files are set up in
repositories.

The list of suspicious characters has been largely compiled by Claude
Sonnet 4.5.

Co-authored-by: Claude Sonnet 4.5 <jamie.tanna+github-copilot@mend.io>
2026-02-20 14:15:45 +00:00
Michael Kriese 0121da55f0 fix(got): only flat copy options (#41349) 2026-02-20 09:15:08 +00:00
Michael Kriese 5bdd5640c4 build: use @redis/client instad of redis (#41326) 2026-02-19 21:38:50 +00:00
Felipe Santos 7ebba26236 feat: add commitHourlyLimit (#36226)
* feat: add `commitHourlyLimit`

Signed-off-by: Felipe Santos <felipe.santos@ericsson.com>

* Update docs/usage/configuration-options.md

Co-authored-by: RahulGautamSingh <rahultesnik@gmail.com>

* Remove date optionality

* Fix lint comment

* Fix coverage

* Restore contents of commit.spec.ts

* Use ! somewhere else too

* Change optional parameter to nullish

* Refactor `!` to use proper check

* Fix set-branch-commit.spec.ts lint

* Fix test coverage

* Apply suggestions from code review

Co-authored-by: RahulGautamSingh <rahultesnik@gmail.com>

* Split commit-limit-reached into two

* Fix review comments

* Use toUTC() where applicable

* Simplify another test to utc()

---------

Signed-off-by: Felipe Santos <felipe.santos@ericsson.com>
Co-authored-by: RahulGautamSingh <rahultesnik@gmail.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-02-19 18:00:32 +00:00
renovate[bot] e752a3db29 build(deps): update dependency got to v14 (main) (#41302)
* build(deps): update dependency got to v14

| datasource | package | from   | to     |
| ---------- | ------- | ------ | ------ |
| npm        | got     | 12.6.1 | 14.6.6 |

* test: fix tests

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-02-19 17:50:48 +00:00
Michael Kriese 3ac23ec833 fix(got): set rejectUnauthorized=false when NODE_TLS_REJECT_UNAUTHORIZED=0 is set (#41308)
* fix(got): set `rejectUnauthorized=false` when `NODE_TLS_REJECT_UNAUTHORIZED=0` is set

* test: silence codeql

* test: silence codeql

* Fix typo

---------

Co-authored-by: Jamie Tanna <jamie.tanna@mend.io>
2026-02-19 09:34:41 +00:00
renovate[bot] 00aeb9d8dc build(deps): update dependency got to v12 (main) (#41284)
* build(deps): update dependency got to v12

| datasource | package | from   | to     |
| ---------- | ------- | ------ | ------ |
| npm        | got     | 11.8.6 | 12.6.1 |

* fix: migration

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-02-18 16:08:12 +00:00
Michael Kriese 0babee8a19 fix: drop unused got remove authorization beforeRedirect hook (#41299) 2026-02-18 15:47:11 +00:00
Michael Kriese 99f4a76dc9 fix(got): normalize options (#41298) 2026-02-18 14:01:37 +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
renovate[bot] 22b7ec0567 build(deps): update dependency toml-eslint-parser to v1 (main) (#40879)
* build(deps): update dependency toml-eslint-parser to v1

| datasource | package            | from   | to    |
| ---------- | ------------------ | ------ | ----- |
| npm        | toml-eslint-parser | 0.12.0 | 1.0.3 |

* fix: ensure toml 1.0 parsing

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-02-18 07:41:32 +00:00
renovate[bot] 4a2578d18d build(deps): update dependency zod to v4 (main) (#41225)
* build(deps): update dependency zod to v4

| datasource | package | from    | to    |
| ---------- | ------- | ------- | ----- |
| npm        | zod     | 3.25.76 | 4.3.6 |

* fix: zod migration

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-02-18 07:37:50 +00:00
Sergei Zharinov 628f9a2835 fix(mutex): support per-call-site acquire timeouts (#41259)
fix(mutex): Support per-call-site acquire timeouts

Closes #41210
2026-02-17 20:27:11 +00:00
Jamie Tanna 067a19490b feat: promote repositoryCacheForceLocal out of experimental (#41207)
We've been happily using this with Mend Renovate Self-Hosted customers
since introduction in 2024, and so we're happy making this
non-experimental now.

This follows other changes where we've promoted an experimental option
to non-experimental, and heavily driven by Claude Sonnet 4.5.

We can also rename config item to use the same `repositoryCache` prefix.

Co-authored-by: Claude Sonnet 4.5 <jamie.tanna+github-copilot@mend.io>
2026-02-16 11:20:30 +00:00
Jamie Tanna 01d2772b9c test(util/exec): add additional test coverage for GHSA-8wc6-vgrq-x6cf (#41150)
As an additional means to avoid this issue recurring, we can add
additional test coverage.
2026-02-13 10:41:26 +00:00
Jamie Tanna acc1d3dfbd fix(types): don't use infer from Zod (#41054)
Due to an upstream issue with Rolldown, the import of `Infer` gets
rewritten by Rolldown to `infer` in the `.d.ts` files, which then
results in Typescript not compiling.
2026-02-10 10:40:24 +00:00
Michael Kriese a825cac81b fix(exec): don't extend env (#41024) 2026-02-09 09:48:01 +00:00
Sergei Zharinov b02897fab1 refactor(lint): Fix lint violations (#40965)
* refactor(lint): Fix lint violations

* Update lib/modules/versioning/versioning-metadata.spec.ts

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

---------

Co-authored-by: Michael Kriese <michael.kriese@visualon.de>
2026-02-06 15:34:33 +00:00
Sergei Zharinov 9d857c1f68 refactor(lint): Organize imports with biome (#40966) 2026-02-06 13:40:01 +00:00
Sergei Zharinov c531748f09 refactor(presets): Rename to *.preset.ts and enforce sort-keys via oxlint (#40976) 2026-02-06 13:39:02 +00:00
Jamie Tanna 87b324dafa chore(util/exec): remove unnecessary optional operator (#40956)
As we've checked that it's not `undefined`.
2026-02-05 16:52:41 +00:00
Jamie Tanna 6eaa7869b5 test(util/exec): correct test naming (#40955) 2026-02-05 16:51:53 +00:00
Jamie Tanna 5ec2f17b22 test(lib/util/exec): refactor ahead of new tests (#40954)
To prefactor this to be a simpler change in the future as we add new
functionality to `getToolSettingsOptions`, we can:

- wrap the JVM settings in its own `describe` block
- use `toMatchObject`, so new default values don't break existing tests
2026-02-05 16:02:14 +00:00