Skip to content

feat(manager/aube): add aube manager#44428

Open
JP-Ellis wants to merge 9 commits into
renovatebot:mainfrom
JP-Ellis:feat/aube-manager
Open

feat(manager/aube): add aube manager#44428
JP-Ellis wants to merge 9 commits into
renovatebot:mainfrom
JP-Ellis:feat/aube-manager

Conversation

@JP-Ellis

@JP-Ellis JP-Ellis commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Changes

Adds a new aube manager for aube, a Node.js package manager by jdx (author of mise). aube consumes a standard package.json and resolves dependencies into an aube-lock.yaml lock file, refreshed by running aube install.

Requested in discussion #42866.

What the manager does

  • Extract : pairs each aube-lock.yaml with its sibling package.json, reusing npm's existing extractPackageJson/resolveNpmrc logic. Full workspace support (the workspaces: [...] array form and the workspaces: { packages: [...] } object form).
  • Artifacts: refreshes aube-lock.yaml by shelling out to aube install (with --ignore-scripts when scripts are disallowed), including npmrc/host-rules handling and lock-file-maintenance.
  • Registration: index.ts mirrors the npm-family managers (supersedesManagers: ['npm'], npm + github-tags datasources, supportsLockFileMaintenance), plus registration in the manager api.ts, toolDefinitions/allToolConfig (@endevco/aube on the npm datasource), and the ignoreScripts supported-managers list.

Reuse of the bun manager

aube is architecturally near-identical to the existing bun manager (both consume package.json and maintain their own lock file via a CLI). To avoid duplicating the workspace-matching logic across the two managers, the shared helper was extracted from bun/utils.ts into npm/workspaces.ts, and bun was updated to import from the new shared location. The old bun/utils.ts and its spec were removed. aube then consumes the same helper. No behavioural change to bun.

While building aube against bun as the template, I suspect I found two bugs in the existing bun manager that would have been copied verbatim. They are fixed in aube here (aligning with the more-correct npm/artifacts.ts reference), and left untouched in bun, but I'm flagging them here for possible follow-up:

  1. Crash on "workspaces": null. The nested-packages check typeof workspaces === 'object' && 'packages' in workspaces throws TypeError: Cannot use 'in' operator to search for 'packages' in null, because typeof null === 'object'. Since the extract phase runs all managers under a single Promise.all with no per-manager catch, a repo whose package.json contains "workspaces": null would abort extraction for every manager in the run. aube guards against null and adds a regression test.
  2. .npmrc not reset on the install error path. npm/artifacts.ts resets the temporarily-mutated .npmrc on both the success and error paths; bun/artifacts.ts only resets on success. On any aube install failure this would leave a host-rule-derived .npmrc (which can carry registry auth tokens) on disk for subsequent steps. aube resets in the catch block, matching npm.

Note on binary dependency

For this to be fully supported, this manager requires access to the aube binary to run aube install. A similar PR to this one for mise will be needed upstream so that Renovate's containerbase can ship an aube installer.

Context

Please select one of the following:

  • This closes an existing Issue, Closes: #
  • This doesn't close an Issue, but I accept the risk that this PR may be closed if maintainers disagree with its opening or implementation

This PR originates from discussion #42866.

AI assistance disclosure

Did you use AI tools to create any part of this pull request?

  • Yes: substantive assistance (AI-generated non‑trivial portions of code, tests, or documentation). Commit trailers attribute the AI tool used, and a human reviewed the results before opening the PR.

Documentation (please check one with an [x])

  • I have updated the documentation, or
  • No documentation update is required

How I've tested my work (please select one)

I have verified these changes via:

JP-Ellis added 8 commits July 8, 2026 20:52
Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
typeof null === 'object', so the workspaces-shape check threw a
TypeError when a package.json set "workspaces": null. Because
extraction runs all managers under a single Promise.all, the
uncaught throw aborted extraction for every manager in the repo run.

Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
The .npmrc mutation applied before running the install command (which
can carry host-rule registry auth tokens) was only reverted on the
success path. Any install failure left the mutated .npmrc on disk for
subsequent steps. Reset it in the catch block too, matching the
reference manager's implementation.

Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
aube implements the same ignoreScripts/allowScripts gating as bun but
was missing from the supportedManagers list, so generated config
option docs under-reported aube support.

Assisted-by: Claude Code:claude-opus-4-8[1m]
Signed-off-by: JP-Ellis <josh@jpellis.me>
@github-actions github-actions Bot requested a review from viceice July 8, 2026 11:20
@JP-Ellis

JP-Ellis commented Jul 9, 2026

Copy link
Copy Markdown
Contributor Author

Tested the branch against my own website and can confirm it seems to work just fine.

Bash Script
#!/usr/bin/env bash
#
# Test the `aube` manager against a real repo containing an aube lockfile.
#
# Usage:
#   ./test-aube.sh <renovate-src-dir> <target-repo-dir>
#
# Example:
#   ./test-aube.sh ~/src/renovatebot/renovate ~/src/JP-Ellis/jpellis.me
#
set -euo pipefail

RENOVATE_SRC="${1:?path to the renovate source checkout (with the aube manager)}"
TARGET_REPO="${2:?path to the repo containing the aube lockfile to update}"
LOG="/tmp/renovate-aube.log"

echo "Renovate source: $RENOVATE_SRC"
echo "Renovate branch: $(git -C "$RENOVATE_SRC" rev-parse --abbrev-ref HEAD)"
echo "Renovate commit: $(git -C "$RENOVATE_SRC" rev-parse HEAD)"
echo "Target repo:     $TARGET_REPO"
echo "Log file:        $LOG"
echo

echo "Regenerating manager imports..."
(cd "$RENOVATE_SRC" && node tools/generate-imports.mjs)
echo

cd "$TARGET_REPO"
echo "Running Renovate against $TARGET_REPO..."
RENOVATE_PLATFORM=local \
  RENOVATE_ENABLED_MANAGERS=aube \
  RENOVATE_DRY_RUN=lookup \
  LOG_LEVEL=debug \
  node "$RENOVATE_SRC/lib/renovate.ts" >"$LOG" 2>&1

echo "=== Extract ==="
grep -E "Matched [0-9]+ file|fileCount|depCount" "$LOG" || true
echo
echo "=== Proposed updates (depName / newValue / newVersion / updateType) ==="
grep -E '"depName"|"newValue"|"newVersion"|"updateType"' "$LOG" || true
echo
echo "Full debug log: $LOG"
Script Output
❯ ./test-aube.sh ~/src/renovatebot/renovate ~/src/JP-Ellis/jpellis.me 
Renovate source: /Users/joshua.ellis/src/renovatebot/renovate
Renovate branch: feat/aube-manager
Renovate commit: 4579e532e9ae90cd3c0cf873fa5357108c5012ec
Target repo:     /Users/joshua.ellis/src/JP-Ellis/jpellis.me
Log file:        /tmp/renovate-aube.log

Regenerating manager imports...

Running Renovate against /Users/joshua.ellis/src/JP-Ellis/jpellis.me...
=== Extract ===
DEBUG: Matched 4 file(s) for manager aube: aube-lock.yaml, e2e/aube-lock.yaml, e2e/package.json, package.json (repository=local)
         "managers": {"aube": {"fileCount": 2, "depCount": 24}},
         "total": {"fileCount": 2, "depCount": 24}

=== Proposed updates (depName / newValue / newVersion / updateType) ===
                 "depName": "@astrojs/cloudflare",
                 "depName": "@astrojs/markdown-remark",
                 "depName": "@astrojs/rss",
                 "depName": "@astrojs/svelte",
                 "depName": "astro",
                 "depName": "sass",
                 "depName": "svelte",
                 "depName": "@astrojs/check",
                     "updateType": "pin",
                     "newValue": "0.9.9",
                     "newVersion": "0.9.9",
                 "depName": "@types/hast",
                     "updateType": "pin",
                     "newValue": "3.0.4",
                     "newVersion": "3.0.4",
                 "depName": "@types/node",
                     "updateType": "pin",
                     "newValue": "24.13.3",
                     "newVersion": "24.13.3",
                     "newVersion": "26.1.0",
                     "newValue": "^26.0.0",
                     "updateType": "major",
                 "depName": "astro-favicons",
                     "updateType": "pin",
                     "newValue": "3.1.6",
                     "newVersion": "3.1.6",
                 "depName": "rehype-stringify",
                     "updateType": "pin",
                     "newValue": "10.0.1",
                     "newVersion": "10.0.1",
                 "depName": "remark-gfm",
                 "depName": "remark-parse",
                 "depName": "remark-rehype",
                 "depName": "smol-toml",
                     "updateType": "pin",
                     "newValue": "1.7.0",
                     "newVersion": "1.7.0",
                 "depName": "typescript",
                     "updateType": "pin",
                     "newValue": "6.0.3",
                     "newVersion": "6.0.3",
                     "newVersion": "7.0.2",
                     "newValue": "^7.0.0",
                     "updateType": "major",
                 "depName": "unified",
                     "updateType": "pin",
                     "newValue": "11.0.5",
                     "newVersion": "11.0.5",
                 "depName": "vitest",
                     "updateType": "pin",
                     "newValue": "4.1.10",
                     "newVersion": "4.1.10",
                 "depName": "wrangler",
                     "updateType": "pin",
                     "newValue": "4.107.1",
                     "newVersion": "4.107.1",
                 "depName": "yaml",
                     "updateType": "pin",
                     "newValue": "2.9.0",
                     "newVersion": "2.9.0",
                 "depName": "@playwright/test",
                 "depName": "@types/node",
                     "newVersion": "24.13.3",
                     "newValue": "24.13.3",
                     "updateType": "patch",
                     "newVersion": "26.1.0",
                     "newValue": "26.1.0",
                     "updateType": "major",
                 "depName": "typescript",
                     "newVersion": "7.0.2",
                     "newValue": "7.0.2",
                     "updateType": "major",

Full debug log: /tmp/renovate-aube.log
Full Log
 INFO: Renovate started
       "renovateVersion": "0.0.0-semantic-release"
DEBUG: Using RE2 regex engine
DEBUG: Parsing configs
DEBUG: No config file found on disk - skipping
DEBUG: No additional config file found specified - skipping
DEBUG: File config
       "config": {}
DEBUG: Additional file config
       "config": {}
DEBUG: CLI config
       "config": {}
DEBUG: Env config
       "config": {
         "hostRules": [],
         "dryRun": "lookup",
         "platform": "local",
         "enabledManagers": ["aube"]
       }
DEBUG: Resolved global extends
       "config": undefined
DEBUG: Combined config
       "config": {
         "hostRules": [],
         "dryRun": "lookup",
         "platform": "local",
         "enabledManagers": ["aube"]
       }
DEBUG: Enabling forkProcessing while in non-autodiscover mode
DEBUG: Enabling onboardingNoDeps while in non-autodiscover mode
DEBUG: Found valid git version: 2.55.0
DEBUG: Setting global hostRules
DEBUG: Using baseDir: /tmp/joshua.ellis/renovate
DEBUG: Using cacheDir: /tmp/joshua.ellis/renovate/cache
DEBUG: Using containerbaseDir: /tmp/joshua.ellis/renovate/cache/containerbase
DEBUG: Initializing Renovate internal cache into /tmp/joshua.ellis/renovate/cache/renovate/renovate-cache-v1
DEBUG: Commits limit = null
DEBUG: Setting global hostRules
DEBUG: validatePresets()
DEBUG: Reinitializing hostRules for repo
DEBUG: Clearing hostRules
 INFO: Repository started (repository=local)
       "renovateVersion": "0.0.0-semantic-release"
DEBUG: Using localDir: /Users/joshua.ellis/src/JP-Ellis/jpellis.me (repository=local)
DEBUG: PackageFiles.clear() - Package files deleted (repository=local)
DEBUG: Resetting npmrc (repository=local)
DEBUG: Resetting npmrc (repository=local)
DEBUG: checkOnboarding() (repository=local)
DEBUG: isOnboarded() (repository=local)
DEBUG: findFile(renovate.json) (repository=local)
DEBUG: Got file list using git (repository=local)
DEBUG: findFile(renovate.jsonc) (repository=local)
DEBUG: Got file list using git (repository=local)
DEBUG: findFile(renovate.json5) (repository=local)
DEBUG: Got file list using git (repository=local)
DEBUG: findFile(.github/renovate.json) (repository=local)
DEBUG: Got file list using git (repository=local)
DEBUG: Config file exists, fileName: .github/renovate.json (repository=local)
DEBUG: Repo is onboarded (repository=local)
DEBUG: Got file list using git (repository=local)
DEBUG: Found .github/renovate.json config file (repository=local)
DEBUG: Repository config (repository=local)
       "fileName": ".github/renovate.json",
       "config": {
         "$schema": "https://docs.renovatebot.com/renovate-schema.json",
         "extends": ["config:best-practices"],
         "pre-commit": {"enabled": true},
         "git-submodules": {"enabled": true},
         "lockFileMaintenance": {"enabled": true},
         "prHourlyLimit": 0,
         "prConcurrentLimit": 0,
         "automerge": true,
         "rebaseWhen": "conflicted",
         "packageRules": [
           {
             "matchPackageNames": ["taiki-e/install-action"],
             "schedule": "* 0-4 * * 1"
           },
           {
             "description": "Pinned to =0.8.3 in Cargo.toml: worker >=0.8.4 pulls wasm-streams 0.6, which collides with leptos server_fn's 0.5 (duplicate wasm-bindgen symbols, breaking the wasm32 SSR link). Re-enable once server_fn moves to wasm-streams 0.6.",
             "matchManagers": ["cargo"],
             "matchPackageNames": ["worker"],
             "enabled": false
           }
         ]
       }
DEBUG: migrateAndValidate() (repository=local)
DEBUG: No config migration necessary (repository=local)
DEBUG: Post-massage config (repository=local)
       "config": {
         "$schema": "https://docs.renovatebot.com/renovate-schema.json",
         "extends": ["config:best-practices"],
         "pre-commit": {"enabled": true},
         "git-submodules": {"enabled": true},
         "lockFileMaintenance": {"enabled": true},
         "prHourlyLimit": 0,
         "prConcurrentLimit": 0,
         "automerge": true,
         "rebaseWhen": "conflicted",
         "packageRules": [
           {
             "matchPackageNames": ["taiki-e/install-action"],
             "schedule": ["* 0-4 * * 1"]
           },
           {
             "description": [
               "Pinned to =0.8.3 in Cargo.toml: worker >=0.8.4 pulls wasm-streams 0.6, which collides with leptos server_fn's 0.5 (duplicate wasm-bindgen symbols, breaking the wasm32 SSR link). Re-enable once server_fn moves to wasm-streams 0.6."
             ],
             "matchManagers": ["cargo"],
             "matchPackageNames": ["worker"],
             "enabled": false
           }
         ]
       }
DEBUG: Resolved shallow config, without merging internal presets (repository=local)
       "renovateVersion": "0.0.0-semantic-release",
       "config": {
         "$schema": "https://docs.renovatebot.com/renovate-schema.json",
         "pre-commit": {"enabled": true},
         "git-submodules": {"enabled": true},
         "lockFileMaintenance": {"enabled": true},
         "prHourlyLimit": 0,
         "prConcurrentLimit": 0,
         "automerge": true,
         "rebaseWhen": "conflicted",
         "packageRules": [
           {
             "matchPackageNames": ["taiki-e/install-action"],
             "schedule": ["* 0-4 * * 1"]
           },
           {
             "description": [
               "Pinned to =0.8.3 in Cargo.toml: worker >=0.8.4 pulls wasm-streams 0.6, which collides with leptos server_fn's 0.5 (duplicate wasm-bindgen symbols, breaking the wasm32 SSR link). Re-enable once server_fn moves to wasm-streams 0.6."
             ],
             "matchManagers": ["cargo"],
             "matchPackageNames": ["worker"],
             "enabled": false
           }
         ]
       },
       "visitedPresets": {"merged": [], "unmerged": ["config:best-practices"]}
DEBUG: Found repo ignorePaths (repository=local)
       "ignorePaths": [
         "**/node_modules/**",
         "**/bower_components/**",
         "**/vendor/**",
         "**/examples/**",
         "**/__tests__/**",
         "**/test/**",
         "**/tests/**",
         "**/__fixtures__/**"
       ]
DEBUG: No vulnerability alerts found (repository=local)
DEBUG: No baseBranches (repository=local)
DEBUG: extract() (repository=local)
DEBUG: Got file list using git (repository=local)
DEBUG: Using file pattern: /(^|/)aube-lock\.yaml$/ for manager aube (repository=local)
DEBUG: Using file pattern: /(^|/)package\.json$/ for manager aube (repository=local)
DEBUG: Matched 4 file(s) for manager aube: aube-lock.yaml, e2e/aube-lock.yaml, e2e/package.json, package.json (repository=local)
DEBUG: npm file package.json has name "jpellis-me" (repository=local)
DEBUG: npm file e2e/package.json has name "end2end" (repository=local)
DEBUG: manager extract durations (ms) (repository=local)
       "managers": {"aube": 5}
DEBUG: Found aube package files (repository=local)
DEBUG: Found 2 package file(s) (repository=local)
 INFO: Dependency extraction complete (repository=local)
       "stats": {
         "managers": {"aube": {"fileCount": 2, "depCount": 24}},
         "total": {"fileCount": 2, "depCount": 24}
       }
DEBUG: hostRules: no authentication for registry.npmjs.org (repository=local)
DEBUG: Using queue: host=registry.npmjs.org, concurrency=999 (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/astro (etag=W/"52a0f4d1cc8d02ac9baddfa22f9a134a", lastModified=Wed, 08 Jul 2026 16:03:28 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@astrojs%2Fmarkdown-remark (etag=W/"fa5eb34afe0fcafb0ee0b1307a2924e6", lastModified=Thu, 02 Jul 2026 19:27:34 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@types%2Fnode (etag=W/"fcfdf696e7e7870f5545b2e689b2163b", lastModified=Wed, 08 Jul 2026 06:48:11 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@playwright%2Ftest (etag=W/"e6de38aa5e4b244e0ee57d4352748afe", lastModified=Wed, 08 Jul 2026 06:07:49 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@astrojs%2Frss (etag=W/"40a12e7e04f08d03227b242194ec3327", lastModified=Tue, 30 Jun 2026 12:18:43 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@astrojs%2Fsvelte (etag=W/"68c1e1f702db85ab8809129562459edb", lastModified=Wed, 01 Jul 2026 18:21:05 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/sass (etag=W/"04ca74e29b6c3aac186f1dbd65cfc53c", lastModified=Thu, 11 Jun 2026 21:16:40 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@astrojs%2Fcloudflare (etag=W/"d04ba655adfe0937da7ea7cdabc79339", lastModified=Wed, 08 Jul 2026 16:03:26 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@types%2Fhast (etag=W/"70506d44d18c93392977ce3f5be5e087", lastModified=Sun, 03 Aug 2025 08:04:06 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/typescript (etag=W/"bd29a47d47778af043cd9c2a2e6efc2f", lastModified=Wed, 08 Jul 2026 16:53:07 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/rehype-stringify (etag=W/"36b527c6978f2109c0c001b786586891", lastModified=Fri, 27 Sep 2024 15:08:54 GMT) (repository=local)
DEBUG: Package abandonment detected: rehype-stringify (npm) - most recent release: 2024-09-27T15:08:52.733Z (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/svelte (etag=W/"9933480a266ac38ebea8b1fc65dc9f7e", lastModified=Tue, 23 Jun 2026 18:48:41 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/astro-favicons (etag=W/"a23d2592223791fdb0cb9a436a12694f", lastModified=Sun, 08 Mar 2026 11:26:04 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/@astrojs%2Fcheck (etag=W/"566fb5b4f205ff938660bc646c160e8f", lastModified=Tue, 28 Apr 2026 12:32:00 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/remark-gfm (etag=W/"8ee772b10ade4e4daa440cb016aab861", lastModified=Mon, 10 Feb 2025 12:43:12 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/remark-parse (etag=W/"66d1a43c4d2dd76c373a8f37c6b21417", lastModified=Mon, 20 Nov 2023 10:43:29 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/remark-rehype (etag=W/"5f50c3d732d7cfd042c2d8167a50038a", lastModified=Wed, 02 Apr 2025 13:47:01 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/smol-toml (etag=W/"6f8fa0c4253113566f4fc9107c7812fd", lastModified=Sun, 21 Jun 2026 23:06:53 GMT) (repository=local)
DEBUG: Package abandonment detected: remark-parse (npm) - most recent release: 2023-09-18T09:42:28.170Z (repository=local)
DEBUG: Package abandonment detected: remark-gfm (npm) - most recent release: 2025-02-10T12:43:10.735Z (repository=local)
DEBUG: Package abandonment detected: remark-rehype (npm) - most recent release: 2025-04-02T13:46:59.156Z (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/yaml (etag=W/"cc5ee4de6a467feae948f45bb2edb825", lastModified=Mon, 11 May 2026 10:16:25 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/unified (etag=W/"0191730f663d7730d4e9ce60d937ca7f", lastModified=Wed, 19 Jun 2024 12:33:45 GMT) (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/vitest (etag=W/"84367f6ac1312746307daa327fe0e7ee", lastModified=Mon, 06 Jul 2026 06:54:10 GMT) (repository=local)
DEBUG: Package abandonment detected: unified (npm) - most recent release: 2024-06-19T12:33:43.464Z (repository=local)
DEBUG: http cache: saving https://registry.npmjs.org/wrangler (etag=W/"aad8d431e4b8d9704b3111ebc2106655", lastModified=Wed, 08 Jul 2026 18:23:07 GMT) (repository=local)
DEBUG: PackageFiles.add() - Package file saved for base branch (repository=local)
DEBUG: Package releases lookups complete (repository=local)
DEBUG: LibYears: no releaseTimestamp for @astrojs/check update to 0.9.9 (repository=local)
DEBUG: LibYears: no releaseTimestamp for @types/hast update to 3.0.4 (repository=local)
DEBUG: LibYears: no releaseTimestamp for @types/node update to 24.13.3 (repository=local)
DEBUG: LibYears: no releaseTimestamp for astro-favicons update to 3.1.6 (repository=local)
DEBUG: LibYears: no releaseTimestamp for rehype-stringify update to 10.0.1 (repository=local)
DEBUG: LibYears: no releaseTimestamp for smol-toml update to 1.7.0 (repository=local)
DEBUG: LibYears: no releaseTimestamp for typescript update to 6.0.3 (repository=local)
DEBUG: LibYears: no releaseTimestamp for unified update to 11.0.5 (repository=local)
DEBUG: LibYears: no releaseTimestamp for vitest update to 4.1.10 (repository=local)
DEBUG: LibYears: no releaseTimestamp for wrangler update to 4.107.1 (repository=local)
DEBUG: LibYears: no releaseTimestamp for yaml update to 2.9.0 (repository=local)
DEBUG: Repository libYears (repository=local)
       "libYears": {"managers": {"aube": 0.30146386434550987}, "total": 0.30146386434550987},
       "dependencyStatus": {"outdated": 12, "total": 23}
DEBUG: branchifyUpgrades (repository=local)
DEBUG: detectSemanticCommits() (repository=local)
DEBUG: getCommitMessages (repository=local)
DEBUG: semanticCommits: score=0 (repository=local)
DEBUG: semanticCommits: disabled (repository=local)
DEBUG: 18 flattened updates found: @astrojs/check, @types/hast, @types/node, @types/node, astro-favicons, rehype-stringify, smol-toml, typescript, typescript, unified, vitest, wrangler, yaml, @types/node, @types/node, typescript (repository=local)
DEBUG: Returning 5 branch(es) (repository=local)
DEBUG: Branch is not pending, removing pending upgrades (repository=local, branch=renovate/pin-dependencies)
DEBUG: Branch is not pending, removing pending upgrades (repository=local, branch=renovate/node-26.x)
DEBUG: Branch is not pending, removing pending upgrades (repository=local, branch=renovate/lock-file-maintenance)
DEBUG: config.repoIsOnboarded=true (repository=local)
DEBUG: packageFiles with updates (repository=local)
       "config": {
         "aube": [
           {
             "deps": [
               {
                 "depType": "dependencies",
                 "depName": "@astrojs/cloudflare",
                 "currentValue": "^14.0.0",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "@astrojs/cloudflare",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/withastro/astro",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/integrations/cloudflare",
                 "homepage": "https://docs.astro.build/en/guides/integrations-guide/cloudflare/",
                 "mostRecentTimestamp": "2026-07-08T16:03:24.539Z",
                 "isAbandoned": false,
                 "currentVersion": "14.1.2",
                 "currentVersionTimestamp": "2026-07-08T16:03:24.539Z",
                 "currentVersionAgeInDays": 0
               },
               {
                 "depType": "dependencies",
                 "depName": "@astrojs/markdown-remark",
                 "currentValue": "^7.2.0",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "@astrojs/markdown-remark",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/withastro/astro",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/markdown/remark",
                 "homepage": "https://astro.build",
                 "mostRecentTimestamp": "2026-07-02T19:27:32.482Z",
                 "isAbandoned": false,
                 "currentVersion": "7.2.1",
                 "currentVersionTimestamp": "2026-07-02T19:27:32.482Z",
                 "currentVersionAgeInDays": 6
               },
               {
                 "depType": "dependencies",
                 "depName": "@astrojs/rss",
                 "currentValue": "^4.0.18",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "@astrojs/rss",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/withastro/astro",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/astro-rss",
                 "homepage": "https://astro.build",
                 "mostRecentTimestamp": "2026-06-30T12:18:42.031Z",
                 "isAbandoned": false,
                 "currentVersion": "4.0.19",
                 "currentVersionTimestamp": "2026-06-30T12:18:42.031Z",
                 "currentVersionAgeInDays": 8
               },
               {
                 "depType": "dependencies",
                 "depName": "@astrojs/svelte",
                 "currentValue": "^9.0.0",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "@astrojs/svelte",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/withastro/astro",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/integrations/svelte",
                 "homepage": "https://docs.astro.build/en/guides/integrations-guide/svelte/",
                 "mostRecentTimestamp": "2026-07-01T18:21:04.107Z",
                 "isAbandoned": false,
                 "currentVersion": "9.0.1",
                 "currentVersionTimestamp": "2026-07-01T18:21:04.107Z",
                 "currentVersionAgeInDays": 7
               },
               {
                 "depType": "dependencies",
                 "depName": "astro",
                 "currentValue": "^7.0.2",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "astro",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/withastro/astro",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/astro",
                 "homepage": "https://astro.build",
                 "mostRecentTimestamp": "2026-07-08T16:03:25.771Z",
                 "isAbandoned": false,
                 "currentVersion": "7.0.7",
                 "currentVersionTimestamp": "2026-07-08T16:03:25.771Z",
                 "currentVersionAgeInDays": 0
               },
               {
                 "depType": "dependencies",
                 "depName": "sass",
                 "currentValue": "^1.101.0",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "sass",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/sass/dart-sass",
                 "registryUrl": "https://registry.npmjs.org",
                 "mostRecentTimestamp": "2026-06-11T21:16:38.805Z",
                 "isAbandoned": false,
                 "currentVersion": "1.101.0",
                 "currentVersionTimestamp": "2026-06-11T21:16:38.805Z",
                 "currentVersionAgeInDays": 27
               },
               {
                 "depType": "dependencies",
                 "depName": "svelte",
                 "currentValue": "^5.56.4",
                 "datasource": "npm",
                 "prettyDepType": "dependency",
                 "updates": [],
                 "packageName": "svelte",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/sveltejs/svelte",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/svelte",
                 "homepage": "https://svelte.dev",
                 "mostRecentTimestamp": "2026-06-23T18:48:39.984Z",
                 "isAbandoned": false,
                 "currentVersion": "5.56.4",
                 "currentVersionTimestamp": "2026-06-23T18:48:39.984Z",
                 "currentVersionAgeInDays": 15
               },
               {
                 "depType": "devDependencies",
                 "depName": "@astrojs/check",
                 "currentValue": "^0.9.9",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "0.9.9",
                     "newVersion": "0.9.9",
                     "newMajor": 0,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "@astrojs/check",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/withastro/astro",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/language-tools/astro-check",
                 "homepage": "https://github.com/withastro/astro/tree/main/packages/language-tools/astro-check",
                 "mostRecentTimestamp": "2026-04-28T12:31:59.128Z",
                 "isAbandoned": false,
                 "currentVersion": "0.9.9",
                 "currentVersionTimestamp": "2026-04-28T12:31:59.128Z",
                 "currentVersionAgeInDays": 71
               },
               {
                 "depType": "devDependencies",
                 "depName": "@types/hast",
                 "currentValue": "^3.0.4",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "3.0.4",
                     "newVersion": "3.0.4",
                     "newMajor": 3,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "@types/hast",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/DefinitelyTyped/DefinitelyTyped",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "types/hast",
                 "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/hast",
                 "currentVersion": "3.0.4",
                 "currentVersionTimestamp": "2024-01-30T22:06:19.288Z",
                 "currentVersionAgeInDays": 890
               },
               {
                 "depType": "devDependencies",
                 "depName": "@types/node",
                 "currentValue": "^24.13.0",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "24.13.3",
                     "newVersion": "24.13.3",
                     "newMajor": 24,
                     "branchName": "renovate/pin-dependencies"
                   },
                   {
                     "bucket": "major",
                     "newVersion": "26.1.0",
                     "newValue": "^26.0.0",
                     "hasAttestation": false,
                     "releaseTimestamp": "2026-07-01T11:04:10.429Z",
                     "newVersionAgeInDays": 7,
                     "newMajor": 26,
                     "newMinor": 1,
                     "newPatch": 0,
                     "updateType": "major",
                     "isBreaking": true,
                     "isRange": true,
                     "pendingVersions": ["26.1.1"],
                     "branchName": "renovate/node-26.x"
                   }
                 ],
                 "packageName": "@types/node",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/DefinitelyTyped/DefinitelyTyped",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "types/node",
                 "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
                 "currentVersion": "24.13.3",
                 "currentVersionTimestamp": "2026-07-08T06:48:03.261Z",
                 "currentVersionAgeInDays": 0,
                 "isSingleVersion": false
               },
               {
                 "depType": "devDependencies",
                 "depName": "astro-favicons",
                 "currentValue": "^3.1.6",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "3.1.6",
                     "newVersion": "3.1.6",
                     "newMajor": 3,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "astro-favicons",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/ACP-CODE/astro-favicons",
                 "registryUrl": "https://registry.npmjs.org",
                 "mostRecentTimestamp": "2026-03-08T11:26:02.568Z",
                 "isAbandoned": false,
                 "currentVersion": "3.1.6",
                 "currentVersionTimestamp": "2026-03-08T11:26:02.568Z",
                 "currentVersionAgeInDays": 122
               },
               {
                 "depType": "devDependencies",
                 "depName": "rehype-stringify",
                 "currentValue": "^10.0.1",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "10.0.1",
                     "newVersion": "10.0.1",
                     "newMajor": 10,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "rehype-stringify",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/rehypejs/rehype",
                 "registryUrl": "https://registry.npmjs.org",
                 "mostRecentTimestamp": "2024-09-27T15:08:52.733Z",
                 "isAbandoned": true,
                 "currentVersion": "10.0.1",
                 "currentVersionTimestamp": "2024-09-27T15:08:52.733Z",
                 "currentVersionAgeInDays": 649
               },
               {
                 "depType": "devDependencies",
                 "depName": "remark-gfm",
                 "currentValue": "4.0.1",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [],
                 "packageName": "remark-gfm",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/remarkjs/remark-gfm",
                 "registryUrl": "https://registry.npmjs.org",
                 "mostRecentTimestamp": "2025-02-10T12:43:10.735Z",
                 "isAbandoned": true,
                 "currentVersion": "4.0.1",
                 "currentVersionTimestamp": "2025-02-10T12:43:10.735Z",
                 "currentVersionAgeInDays": 513,
                 "fixedVersion": "4.0.1"
               },
               {
                 "depType": "devDependencies",
                 "depName": "remark-parse",
                 "currentValue": "11.0.0",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [],
                 "packageName": "remark-parse",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/remarkjs/remark",
                 "registryUrl": "https://registry.npmjs.org",
                 "homepage": "https://remark.js.org",
                 "mostRecentTimestamp": "2023-09-18T09:42:28.170Z",
                 "isAbandoned": true,
                 "currentVersion": "11.0.0",
                 "currentVersionTimestamp": "2023-09-18T09:42:28.170Z",
                 "currentVersionAgeInDays": 1024,
                 "fixedVersion": "11.0.0"
               },
               {
                 "depType": "devDependencies",
                 "depName": "remark-rehype",
                 "currentValue": "11.1.2",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [],
                 "packageName": "remark-rehype",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/remarkjs/remark-rehype",
                 "registryUrl": "https://registry.npmjs.org",
                 "mostRecentTimestamp": "2025-04-02T13:46:59.156Z",
                 "isAbandoned": true,
                 "currentVersion": "11.1.2",
                 "currentVersionTimestamp": "2025-04-02T13:46:59.156Z",
                 "currentVersionAgeInDays": 462,
                 "fixedVersion": "11.1.2"
               },
               {
                 "depType": "devDependencies",
                 "depName": "smol-toml",
                 "currentValue": "^1.7.0",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "1.7.0",
                     "newVersion": "1.7.0",
                     "newMajor": 1,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "smol-toml",
                 "versioning": "npm",
                 "warnings": [],
                 "registryUrl": "https://registry.npmjs.org",
                 "mostRecentTimestamp": "2026-06-21T23:06:52.111Z",
                 "isAbandoned": false,
                 "currentVersion": "1.7.0",
                 "currentVersionTimestamp": "2026-06-21T23:06:52.111Z",
                 "currentVersionAgeInDays": 17
               },
               {
                 "depType": "devDependencies",
                 "depName": "typescript",
                 "currentValue": "^6.0.3",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "6.0.3",
                     "newVersion": "6.0.3",
                     "newMajor": 6,
                     "branchName": "renovate/pin-dependencies"
                   },
                   {
                     "bucket": "major",
                     "newVersion": "7.0.2",
                     "newValue": "^7.0.0",
                     "hasAttestation": false,
                     "releaseTimestamp": "2026-07-08T15:55:18.431Z",
                     "newVersionAgeInDays": 0,
                     "newMajor": 7,
                     "newMinor": 0,
                     "newPatch": 2,
                     "updateType": "major",
                     "isBreaking": true,
                     "isRange": true,
                     "pendingChecks": true,
                     "libYears": 0.22651606183409437,
                     "branchName": "renovate/typescript-7.x"
                   }
                 ],
                 "packageName": "typescript",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/microsoft/TypeScript",
                 "registryUrl": "https://registry.npmjs.org",
                 "homepage": "https://www.typescriptlang.org/",
                 "mostRecentTimestamp": "2026-07-08T16:53:05.339Z",
                 "isAbandoned": false,
                 "currentVersion": "6.0.3",
                 "currentVersionTimestamp": "2026-04-16T23:38:27.905Z",
                 "currentVersionAgeInDays": 83,
                 "isSingleVersion": false
               },
               {
                 "depType": "devDependencies",
                 "depName": "unified",
                 "currentValue": "^11.0.5",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "11.0.5",
                     "newVersion": "11.0.5",
                     "newMajor": 11,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "unified",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/unifiedjs/unified",
                 "registryUrl": "https://registry.npmjs.org",
                 "homepage": "https://unifiedjs.com",
                 "mostRecentTimestamp": "2024-06-19T12:33:43.464Z",
                 "isAbandoned": true,
                 "currentVersion": "11.0.5",
                 "currentVersionTimestamp": "2024-06-19T12:33:43.464Z",
                 "currentVersionAgeInDays": 749
               },
               {
                 "depType": "devDependencies",
                 "depName": "vitest",
                 "currentValue": "^4.1.9",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "4.1.10",
                     "newVersion": "4.1.10",
                     "newMajor": 4,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "vitest",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/vitest-dev/vitest",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/vitest",
                 "homepage": "https://vitest.dev",
                 "mostRecentTimestamp": "2026-07-06T06:54:08.929Z",
                 "isAbandoned": false,
                 "currentVersion": "4.1.10",
                 "currentVersionTimestamp": "2026-07-06T06:44:42.684Z",
                 "currentVersionAgeInDays": 2
               },
               {
                 "depType": "devDependencies",
                 "depName": "wrangler",
                 "currentValue": "^4.83.0",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "4.107.1",
                     "newVersion": "4.107.1",
                     "newMajor": 4,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "wrangler",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/cloudflare/workers-sdk",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "packages/wrangler",
                 "currentVersion": "4.107.1",
                 "currentVersionTimestamp": "2026-07-07T18:11:02.682Z",
                 "currentVersionAgeInDays": 1
               },
               {
                 "depType": "devDependencies",
                 "depName": "yaml",
                 "currentValue": "^2.9.0",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "updateType": "pin",
                     "isPin": true,
                     "newValue": "2.9.0",
                     "newVersion": "2.9.0",
                     "newMajor": 2,
                     "branchName": "renovate/pin-dependencies"
                   }
                 ],
                 "packageName": "yaml",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/eemeli/yaml",
                 "registryUrl": "https://registry.npmjs.org",
                 "homepage": "https://eemeli.org/yaml/",
                 "currentVersion": "2.9.0",
                 "currentVersionTimestamp": "2026-05-11T10:16:24.045Z",
                 "currentVersionAgeInDays": 58
               }
             ],
             "extractedConstraints": {},
             "managerData": {
               "packageJsonName": "jpellis-me",
               "hasPackageManager": false
             },
             "packageFile": "package.json",
             "lockFiles": ["aube-lock.yaml"]
           },
           {
             "deps": [
               {
                 "depType": "devDependencies",
                 "depName": "@playwright/test",
                 "currentValue": "1.61.1",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [],
                 "packageName": "@playwright/test",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/microsoft/playwright",
                 "registryUrl": "https://registry.npmjs.org",
                 "homepage": "https://playwright.dev",
                 "mostRecentTimestamp": "2026-07-08T06:07:47.361Z",
                 "isAbandoned": false,
                 "currentVersion": "1.61.1",
                 "currentVersionTimestamp": "2026-06-23T19:49:12.825Z",
                 "currentVersionAgeInDays": 15,
                 "fixedVersion": "1.61.1"
               },
               {
                 "depType": "devDependencies",
                 "depName": "@types/node",
                 "currentValue": "24.13.2",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "bucket": "non-major",
                     "newVersion": "24.13.3",
                     "newValue": "24.13.3",
                     "hasAttestation": false,
                     "releaseTimestamp": "2026-07-08T06:48:03.261Z",
                     "newVersionAgeInDays": 0,
                     "newMajor": 24,
                     "newMinor": 13,
                     "newPatch": 3,
                     "updateType": "patch",
                     "isBreaking": false,
                     "pendingChecks": true,
                     "libYears": 0.07494780251141553,
                     "branchName": "renovate/node-24.x"
                   },
                   {
                     "bucket": "major",
                     "newVersion": "26.1.0",
                     "newValue": "26.1.0",
                     "hasAttestation": false,
                     "releaseTimestamp": "2026-07-01T11:04:10.429Z",
                     "newVersionAgeInDays": 7,
                     "newMajor": 26,
                     "newMinor": 1,
                     "newPatch": 0,
                     "updateType": "major",
                     "isBreaking": true,
                     "pendingVersions": ["26.1.1"],
                     "libYears": 0.05625701002029427,
                     "branchName": "renovate/node-26.x"
                   }
                 ],
                 "packageName": "@types/node",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/DefinitelyTyped/DefinitelyTyped",
                 "registryUrl": "https://registry.npmjs.org",
                 "sourceDirectory": "types/node",
                 "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
                 "currentVersion": "24.13.2",
                 "currentVersionTimestamp": "2026-06-10T22:15:29.361Z",
                 "currentVersionAgeInDays": 28,
                 "isSingleVersion": true,
                 "fixedVersion": "24.13.2"
               },
               {
                 "depType": "devDependencies",
                 "depName": "typescript",
                 "currentValue": "6.0.3",
                 "datasource": "npm",
                 "prettyDepType": "devDependency",
                 "updates": [
                   {
                     "bucket": "major",
                     "newVersion": "7.0.2",
                     "newValue": "7.0.2",
                     "hasAttestation": false,
                     "releaseTimestamp": "2026-07-08T15:55:18.431Z",
                     "newVersionAgeInDays": 0,
                     "newMajor": 7,
                     "newMinor": 0,
                     "newPatch": 2,
                     "updateType": "major",
                     "isBreaking": true,
                     "pendingChecks": true,
                     "libYears": 0.22651606183409437,
                     "branchName": "renovate/typescript-7.x"
                   }
                 ],
                 "packageName": "typescript",
                 "versioning": "npm",
                 "warnings": [],
                 "sourceUrl": "https://github.com/microsoft/TypeScript",
                 "registryUrl": "https://registry.npmjs.org",
                 "homepage": "https://www.typescriptlang.org/",
                 "mostRecentTimestamp": "2026-07-08T16:53:05.339Z",
                 "isAbandoned": false,
                 "currentVersion": "6.0.3",
                 "currentVersionTimestamp": "2026-04-16T23:38:27.905Z",
                 "currentVersionAgeInDays": 83,
                 "isSingleVersion": true,
                 "fixedVersion": "6.0.3"
               }
             ],
             "extractedConstraints": {},
             "packageFileVersion": "1.0.0",
             "managerData": {"packageJsonName": "end2end", "hasPackageManager": false},
             "packageFile": "e2e/package.json",
             "lockFiles": ["e2e/aube-lock.yaml"]
           }
         ]
       }
DEBUG: detectSemanticCommits() (repository=local)
DEBUG: semanticCommits: returning "disabled" from cache (repository=local)
DEBUG: Repository timing splits (milliseconds) (repository=local)
       "splits": {"init": 2785, "onboarding": 0, "extract": 420, "lookup": 4491, "update": 0},
       "total": 7699
DEBUG: Package cache statistics (repository=local)
       "get": {"count": 22, "avgMs": 17, "medianMs": 4, "maxMs": 200, "totalMs": 373},
       "set": {"count": 22, "avgMs": 186, "medianMs": 211, "maxMs": 366, "totalMs": 4082}
DEBUG: Datasource cache statistics (repository=local)
       "npm": {"https://registry.npmjs.org": {"hit": 0, "miss": 0, "set": 0, "skip": 22}}
DEBUG: HTTP statistics (repository=local)
       "hosts": {
         "registry.npmjs.org": {
           "count": 22,
           "reqAvgMs": 447,
           "reqMedianMs": 344,
           "reqMaxMs": 1270,
           "queueAvgMs": 0,
           "queueMedianMs": 0,
           "queueMaxMs": 2
         }
       },
       "requests": 22
DEBUG: HTTP cache statistics (repository=local)
       "https://registry.npmjs.org": {
         "/@astrojs%2Fcheck": {"hit": 0, "miss": 1},
         "/@astrojs%2Fcloudflare": {"hit": 0, "miss": 1},
         "/@astrojs%2Fmarkdown-remark": {"hit": 0, "miss": 1},
         "/@astrojs%2Frss": {"hit": 0, "miss": 1},
         "/@astrojs%2Fsvelte": {"hit": 0, "miss": 1},
         "/@playwright%2Ftest": {"hit": 0, "miss": 1},
         "/@types%2Fhast": {"hit": 0, "miss": 1},
         "/@types%2Fnode": {"hit": 0, "miss": 1},
         "/astro": {"hit": 0, "miss": 1},
         "/astro-favicons": {"hit": 0, "miss": 1},
         "/rehype-stringify": {"hit": 0, "miss": 1},
         "/remark-gfm": {"hit": 0, "miss": 1},
         "/remark-parse": {"hit": 0, "miss": 1},
         "/remark-rehype": {"hit": 0, "miss": 1},
         "/sass": {"hit": 0, "miss": 1},
         "/smol-toml": {"hit": 0, "miss": 1},
         "/svelte": {"hit": 0, "miss": 1},
         "/typescript": {"hit": 0, "miss": 1},
         "/unified": {"hit": 0, "miss": 1},
         "/vitest": {"hit": 0, "miss": 1},
         "/wrangler": {"hit": 0, "miss": 1},
         "/yaml": {"hit": 0, "miss": 1}
       }
DEBUG: Lookup statistics (repository=local)
       "npm": {"count": 24, "avgMs": 826, "medianMs": 703, "maxMs": 2184, "totalMs": 19817}
DEBUG: getReleases statistics summary (repository=local)
       "stats": {
         "count": 22,
         "avgMs": 842,
         "medianMs": 780.983958,
         "maxMs": 2047.517292,
         "totalMs": 18520.691752000002
       },
       "datasources": {
         "npm": {
           "stats": {
             "count": 22,
             "avgMs": 842,
             "medianMs": 780.983958,
             "maxMs": 2047.517292,
             "totalMs": 18520.691752000002
           },
           "registryUrls": {
             "https://registry.npmjs.org": {
               "stats": {
                 "count": 22,
                 "avgMs": 842,
                 "medianMs": 780.983958,
                 "maxMs": 2047.517292,
                 "totalMs": 18520.691752000002
               }
             }
           }
         }
       }
DEBUG: Cache fallback URLs (repository=local)
       "count": 0,
       "hits": {}
DEBUG: Abandoned package statistics (repository=local)
       "npm": {
         "rehype-stringify": "2024-09-27T15:08:52.733Z",
         "remark-gfm": "2025-02-10T12:43:10.735Z",
         "remark-parse": "2023-09-18T09:42:28.170Z",
         "remark-rehype": "2025-04-02T13:46:59.156Z",
         "unified": "2024-06-19T12:33:43.464Z"
       }
DEBUG: Git operations statistics (repository=local)
 INFO: Repository finished (repository=local)
       "cloned": undefined,
       "durationMs": 7699,
       "result": undefined,
       "status": undefined,
       "enabled": undefined,
       "onboarded": undefined
DEBUG: Checking file package cache for expired items
DEBUG: Deleted 0 of 162 file cached entries in 105ms

Also tested it for real (using my credentials) and it seems to work:

Comment thread lib/modules/manager/aube/extract.ts Outdated
// Support the nested packages property shape
if (
workspaces !== null &&
typeof workspaces === 'object' &&

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is.plainObject(workspaces)

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed :)

import type { Opt, ToolConfig, ToolConstraint, ToolName } from './types.ts';

export const allToolConfig: Record<ToolName, ToolConfig> = {
aube: {

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe wrong containerbase entry @viceice

The manager url is github.com/jdx/aube, and lib/data/mise-registry.json already resolves aube to jdx/aube via github/aqua, not npm.

Please, confirm the datasource and packageName.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Aube is published in a number of places:

So yeah, I'm not sure what the action item here is. Is the entry in mise-registry.json sufficient? Or do we need a PR upstreain in containerbase?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this needs to match the source containerbase will use to install aube

Signed-off-by: JP-Ellis <josh@jpellis.me>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants