Skip to content

Upgrade js & remove abandoned packages#1945

Merged
johanib merged 4 commits intomainfrom
feature/1940-fix-last-js-issue
Mar 18, 2026
Merged

Upgrade js & remove abandoned packages#1945
johanib merged 4 commits intomainfrom
feature/1940-fix-last-js-issue

Conversation

@johanib
Copy link
Contributor

@johanib johanib commented Mar 17, 2026

Resolves #1940

johanib added 2 commits March 17, 2026 11:17
Prior to this change, yarn complained about missing peer dependencies. This was caused by postcss being included as a transcendent dependency, without being explicitly included.
Remove @babel/polyfill which is deprecated and redundant; polyfilling
  is already handled by @babel/preset-env with useBuiltIns and core-js 3
@johanib johanib force-pushed the feature/1940-fix-last-js-issue branch from d9a9199 to 30523c8 Compare March 17, 2026 14:17
johanib added 2 commits March 17, 2026 15:45
The JS build toolchain has been migrated from browserify + babelify +
watchify + terser to webpack + babel-loader. This eliminates several
unmaintained or deprecated packages and resolves a Dependabot security
alert for a vulnerable transitive dependency (elliptic 6.6.1), which
was introduced via browserify and watchify.

Removed packages:
- browserify: largely unmaintained, last release Oct 2024, 346 open
  issues. Was the root cause of the elliptic vulnerability alert.
- babelify: the browserify transform for Babel, no longer needed.
- watchify: effectively unmaintained since Jan 2021. Also introduced
  elliptic via its own dependency chain.
- terser: standalone minifier, now replaced by webpack's built-in
  TerserPlugin with equivalent compression settings.

Added packages:
- webpack + webpack-cli Replaces watchify and minification.
- babel-loader: the webpack equivalent of babelify, connects webpack
  to the existing Babel configuration.

The webpack.config.js mirrors the previous build behaviour:
- Production mode outputs application.min.js with the same Terser
  compression settings as the old .terserrc.json

Browser compatibility is preserved. Previously, Babel targets were
set explicitly in .babelrc as ">0.25%". With webpack + babel-loader,
Babel automatically reads the existing .browserslistrc file, so babel
output should be similar to the old setup.

.babelrc has been simplified accordingly
Use a cp commpand to prevent more js packages
@johanib johanib force-pushed the feature/1940-fix-last-js-issue branch from 30523c8 to 0ded8b9 Compare March 17, 2026 14:45
@johanib johanib marked this pull request as ready for review March 17, 2026 14:45
@johanib johanib requested review from kayjoosten March 17, 2026 14:45
@johanib johanib merged commit b6e4c60 into main Mar 18, 2026
2 checks passed
@johanib johanib deleted the feature/1940-fix-last-js-issue branch March 18, 2026 08:02
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.

Dependabot en security updates

2 participants