Repository navigation
Upgrade dependencies and fix vulnerabilities - #75
Merged
Merged
Conversation
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.
Why
Routine dependency maintenance. Everything is moved to its latest version, known security advisories are resolved and overrides that are no longer needed are removed.
What
Upgrades
@envelop/graphql-modules@graphql-tools/load-filesdotenvgraphql-yogatypescript(root, server)vite-plugin-pwaPatch and minor bumps (43 more)
@biomejs/biome@radix-ui/react-collapsible@radix-ui/react-dialog@radix-ui/react-dropdown-menu@radix-ui/react-scroll-area@radix-ui/react-select@radix-ui/react-separator@radix-ui/react-slot@radix-ui/react-switch@tanstack/react-table@types/nodebullmqexpressgraphql-wslefthooklucide-reactradix-uireact-routershadcnturbows@apollo/client@bull-board/api@bull-board/express@graphql-codegen/cli@graphql-codegen/graphql-modules-preset@graphql-codegen/schema-ast@graphql-codegen/typescript-resolvers@radix-ui/react-label@types/ws@vitejs/plugin-reactdrizzle-kitdrizzle-ormgql.tadagraphql-scalarsjotaiparse-durationreactreact-domtsc-aliastsxvitezodCode changes required by the upgrades
apps/web/src/layouts/dashboard-layout.tsx: Biome 2.6 addedlint/correctness/noComponentHookFactories, which flaggedNavigationLinks,FooterLinksandNavBarHeaderbecause they were defined insideDashboardLayout. I moved them to module level.NavigationLinksnow getsgroupsandpathnameas props.biome.json:$schemabumped to 2.6.2 viabiome migrate.apps/web/package.json:typescriptstays on^6.0.3for web only, see "Still open".Security
@tailwindcss/typography0.5.20, prod)@tailwindcss/typography>postcss-selector-parser: ^7.1.6, resolves to 7.1.7@tailwindcss/typographypinspostcss-selector-parserto exactly 6.0.10 and has no newer release. The only 7.0 breaking change is about safe insertions during iteration, which the plugin isn't affected by (see tailwindlabs/tailwindcss-typography#429). I compared the built web CSS before and after the override and it's byte-identical (md5 a816f91149ea6b7f8d92dc5c8b5e47cf).Removed overrides and pins
serialize-javascript@<7.0.5: '>=7.0.5'workbox-build>@rollup/plugin-terser(added in #67)@rollup/plugin-terser1.0.2 now pulls 7.1.2 on its own, audit stays clean without itrollupdevDependency inapps/webrolluppeer ofworkbox-build/@mdx-js/rollup(added in #67)patches/graphql-modules.patchgraphql-modulespatchpatches/graphql-modules@3.1.2.patchis wired up inpatchedDependenciesChecked and kept:
esbuild@<=0.24.2: '>=0.25.0'is still needed. Without itdrizzle-kit0.31.11 >@esbuild-kit/esm-loader>@esbuild-kit/core-utils3.3.2 pullsesbuild0.18.20 again (GHSA-67mh-4wv8-2f99).graphql-modules: 3.1.2exact pin pluspatchedDependenciesis still needed. Without the patchtscfails with TS7016 because the packageexportsdon't exposetypes. 3.1.2 is also the latest stable release, the patch is version keyed, hence the pin stays.pnpm dedupe --checkhad nothing to collapse.Still open
typescriptinapps/web@gql.tada/cli-utils1.9.4 (used bygql-tada generate outputin the web build) callsts.parseConfigFileTextToJsonand crashes, and@0no-co/graphqlsp1.17.5 only supportstypescript ^5 || ^6. Root and server are on 7.0.2.braces(GHSA-vfj7-8cjw-p6xm, high)<0.0.0)@graphql-codegen/cli7.4.6 >@graphql-tools/*loaders /globby11 >fast-glob/micromatch4.0.8. Nothing to upgrade to, needs upstream to dropmicromatchor a fix inbraces.graphql-modulespeergraphqlgraphql17graphql@^14 || ^15 || ^16, found 17.0.2. Already the case onmain, server works fine at runtime.@esbuild-kit/core-utils3.3.2,@esbuild-kit/esm-loader2.6.5drizzle-kit0.31.11 (latest), this is also why the esbuild override staysVerification
Same commands as
.github/workflows/build.yml:pnpm install- passpnpm check- passpnpm build(turbo run build: server codegen +tsc+tsc-alias, web codegen +tsc -b+vite build) - pass. Codegen output didn't change.pnpm test- pass, but note there are no test tasks in any workspace, so turbo runs nothingpnpm audit- 1 advisory left (braces, dev only, no fix available), see aboveOn top I started the built server with database and redis disabled and queried
{ health { __typename } }on/graphqlto check the graphql-yoga 6 /@envelop/graphql-modules10 / dotenv 18 /@graphql-tools/load-files8 majors at runtime. Returned 200 without errors.The run was done by an agent in a sandbox with 1 GiB memory. That's why turbo ran with
TURBO_ENV_MODE=loose(strict mode dropped the proxy vars so corepack couldn't fetch pnpm) andpnpm buildwas invoked asturbo run builddirectly, because the webvite buildpeaks at roughly 800 MB RSS. I checked: it's the same with vite 8.3.0 and vite-plugin-pwa 1.3.0, so it's not a regression from this PR. CI isn't affected by either.