Repository navigation
chore(deps): apply renovate dashboard updates and prepare 0.4.0 - #55
Merged
Merged
Conversation
Applies the open dependency dashboard items at the newest release of each that is at least seven days old, matching minimumReleaseAge in renovate.json. graphql 17.1.0, jsdom 31 and zizmor 1.32.0 are still inside that window and wait for Renovate. TypeScript stays at 6: typescript-eslint 8.72 still caps typescript below 6.1 and throws on import under 7. Node 26 becomes the floor in .nvmrc, engines, both Dockerfile stages, the README and CONTRIBUTING. Node 25 stopped bundling corepack, so the image installs it from npm at ARG COREPACK_VERSION, which a new regex manager keeps current. pnpm 12 ships as a native binary. Corepack used to fetch pnpm into the /home/node/.cache tmpfs on first start, and Docker mounts tmpfs noexec, so the container failed to boot with EACCES. pnpm is now installed into the image at build time under COREPACK_HOME. The container boots read-only without network access, and nothing writes to the cache tmpfs any more, so compose and the docs drop it. The Go builder moves to 1.27.3 rather than the dashboard's 1.27.2, which carries a HIGH crypto/x509 CVE that 1.26.10 had already fixed. knip 6.43 flags RelationOrigin as an unused export and the e2e serve fixture as a redundant entry, so both go.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Bundle ReportChanges will increase total bundle size by 33.01kB (1.99%) ⬆️. This is within the configured threshold ✅ Detailed changes
Affected Assets, Files, and Routes:view changes for bundle: beans-web-web-esmAssets Changed:
Files in
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Applies the open items on the Renovate dependency dashboard (#44) in one PR and adds the 0.4.0 changelog entry, so the release can be tagged from the merge commit. Each package moves to its newest release that is at least 7 days old, matching
minimumReleaseAgeinrenovate.json, so a few stop short of latest (eslint lands on 10.13.0, for example, while 10.14.0 is six days old).Two changes go beyond version bumps, because the bumps broke the image without them.
pnpm is now installed into the image at build time. pnpm 12 ships as a native binary. Corepack used to download pnpm into the
/home/node/.cachetmpfs on the container's first start, and Docker mounts tmpfsnoexec, so the container died withEACCESbefore the server started. The runtime stage now setsCOREPACK_HOME=/usr/local/share/corepackand runscorepack install && pnpm --versionduring the build; that firstpnpmrun is what downloads the native binary. The container boots read-only with no network access and writes nothing to/home/node/.cache, sodocker-compose.yml, the README anddocs/SECURITY.mddrop that tmpfs. A compose file that still mounts it keeps working.The Go builder moves to 1.27.3, one patch past the dashboard's 1.27.2. Trivy reports HIGH CVE-2026-111943 (crypto/x509) against 1.27.2, and it is fixed in 1.27.3 and in the 1.26.10 that
mainalready uses. 1.27.3 was released on 2026-10-19, so it also clears the 7-day window.Changes
.nvmrc,engines.node, both Dockerfile stages, the README and CONTRIBUTING, which thenoderule inrenovate.jsonkeeps in step. Node 25 stopped bundling corepack, so both Node stages runnpm install -g corepack@${COREPACK_VERSION}. That pin is one globalARG, and a new regex manager inrenovate.jsonkeeps it currentpackageManager. The lockfile stays at v9.0watch,add,unwatchandclose, and chokidar 6 changes none of them in a way that matters here@vitest/coverage-v85.0.5,@types/node26 and eslint-plugin-unicorn 79@types/react, plugin-react and viteRelationOrigin, which knip 6.43 reports as unused because only its own file refers to it. knip now findse2e/fixtures/serve.mjsthrough Playwright'swebServer, so its explicit entry is removedNot included
typescript <6.1.0and throws on import under 7.0.2, althoughtsc7 typechecks the repo cleanly. chore(deps): apply pending renovate updates #46 chose to wait for typescript-eslint support instead of running the two versions side by side, and that support has not shipped (typescript-eslint#10940)Test Plan
pnpm audit --audit-level moderatepasses (the same 2 ignored as before)beansbinary built byscripts/build-beans.sh, with coverage above 94% on every metricdocker build, thentrivy image --severity HIGH,CRITICAL --ignore-unfixedwith.trivyignore: no findings--read-only,--tmpfs /tmp,--cap-drop ALL,no-new-privileges), the container serves/and/api/projectsfor a seeded project with the old cache tmpfs, without it, as uid 1234, and under--network noneEACCESonpnpm-nativeThe one peer warning (
@codecov/vite-pluginwants vite 6 or older) and theMaxListenersExceededWarningin the server'sevents.test.tsboth predate this change.Review Checklist