chore: Resolve npm audit warnings (includes major bumps) - #129
Open
antobinary wants to merge 2 commits into
Open
antobinary wants to merge 2 commits into
antobinary wants to merge 2 commits into
Conversation
The whiteboard is not always visible on start and one of the main testing servers had it hidden by default causing test failures.
|
This pull request has conflicts ☹ |
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.
merge after #128
What does this PR do?
Refreshes the dependency tree: moves three dev-tooling packages onto their current supported major lines, removes one that is no longer needed, and declares the project's Node requirement.
@typescript-eslint/{eslint-plugin,parser}^6.2.0→^8.66.06.21.0is its final release — and it pins several transitive dependencies to versions that are no longer maintained. v8 is the current line and works with the ESLint 8.57.1 already in the tree, so no ESLint change is needed. Lint output is unchanged.copy-webpack-plugin^12.0.2→^14.0.0manifest.jsonand the locale files intodist/; behaviour verified unchanged (see below).webpack-dev-server^4.15.1→^6.0.0wsfor the client transport instead ofsockjs, and needs a small config migration (below). Dev-only — not used bybuild-bundle.watchlint:watch, which shelled out towatch 'yarn lint'— invoking yarn in an npm project.eslint-watchwas already a devDependency, solint:watchnow runseswdirectly.engines: { "node": ">=22.15.0" }Config migration.
webpack-dev-serverv5 removedonBeforeSetupMiddleware, whichwebpack.config.jsused to servemanifest.jsonfrom the project root. It is now registered throughsetupMiddlewares, still ondevServer.app, so middleware ordering — and therefore response headers — behave exactly as before.Why declare
engines.webpack-dev-server@6requires Node ≥ 22.15.0. Without anenginesfield that requirement surfaces only as anEBADENGINEwarning from a transitive package at install time, which is easy to miss and hard to attribute to anything in particular. Declaring it on the project states the supported floor once, in the place people look for it, and matches.nvmrc(22, which resolves to the latest 22.x). It is the strictest requirement in the tree — building the plugin itself needs only Node ≥ 20.9.Closes Issue(s)
Closes #
Motivation
The dependency tree had drifted well behind current releases, with a number of individual bump branches open against the repo. Handling them together means the toolchain gets exercised end to end once — build, unit tests, e2e, dev server — instead of validating each bump in isolation. Three of the changes are majors that needed a deliberate decision, and one of them required a config migration, which is easier to review as a single unit than spread across separate PRs.
More
Verification — these upgrades touch the build, so the output was checked directly rather than assumed:
md5 e08b65594d2119d5f62a1ea368ab26ca), i.e. thecopy-webpack-pluginmajor did not alter build output.dist/still containsmanifest.jsonand all 7 locale files.npm startexercised manually against the migrated devServer config:/manifest.json→ 200 with correct JSON, bundle → 200,/locales/en.json→ 200.npm run lintandtsc --noEmitclean,npm ciresolves.Reviewer notes:
webpack.config.jsis the only non-manifest file changed.release-upload-assets.ymlandrelease-publish-do-spaces.ymlstill pinnode-version: 20.x. They continue to build fine — the build needs only ≥ 20.9, andwebpack-dev-serveris not used bybuild-bundle— but they will emitEBADENGINEwarnings against the new floor. Switching them tonode-version-file: '.nvmrc'(as the other four workflows already do) is left out to keep this PR to one thing.Added/updated documentation