Skip to content

Encore v2! Many Upgraded Dependencies

Compare
Choose a tag to compare
@weaverryan weaverryan released this 03 May 14:02
· 228 commits to main since this release

Hi bundlers!

This is a new major release. In Encore itself, nothing really changed. However, we upgraded many of our dependencies across new major versions. Upgrading should be easy, unless you're integrating more deeply into any of the upgraded dependencies.

To upgrade run:

yarn upgrade "@symfony/webpack-encore@^2.0.0"

Changes: v1.8.2..v2.0.0

Documentation: http://symfony.com/doc/current/frontend.html

Highlights:

This is a new major version that contains several backwards-compatibility breaks.

BC Breaks

The following dependencies were upgraded a major version. It's unlikely
these will cause problems, unless you were further configuring this part
of Encore:

  • clean-webpack-plugin Version 3 to 4: dropped old Node & Webpack version support
  • css-loader Version 5 to 6: dropped old Node version support & CHANGELOG
  • css-minimizer-webpack-plugin Version 2 to 3: dropped old Node version support
  • loader-utils REMOVED
  • mini-css-extract-plugin Version 1.5 to 2.2.1: dropped old Node & Webpack version support & CHANGELOG
  • pretty-error Version 3.0 to 4.0: dropped old Node version support
  • resolve-url-loader Version 3.0 to 5.0: dropped old Node version support, requires postcss ^8.0, remove rework engine & CHANGELOG
  • style-loader Version 2 to 3: dropped old Node and Webpack version support & CHANGELOG
  • yargs-parser Version 20.2 to 21: dropped old Node version support

Additionally, Encore changed the supported versions of the following packages,
which you may have installed to enable extra features:

  • eslint Minimum version increased from 7 to 8

  • eslint-webpack-plugin Minimum version increased from 2.5 to 3

  • fork-ts-checker-webpack-plugin Minimum version increased from 5 to 6 CHANGELOG

  • less-loader Minimum version increased from 7 to 10

  • postcss-loader Minimum version increased from 4 to 6

  • preact Minimum version increased from 8 to 10 CHANGELOG

  • sass-loader Minimum version increased from 9 to 12

  • stylus Minimum version increased from 0.54 to 0.56

  • stylus-loader Minimum version increased from 3 to 6 CHANGELOG

  • vue-loader Minimum version increased from 16 to 17 CHANGELOG

  • Removed Encore.enableEslintLoader(): use Encore.enableEslintPlugin().

  • If using enableEslintPlugin() with the @babel/eslint-parser parser,
    you may now need to create an external Babel configuration file. To see
    an example, temporarily delete your .eslintrc.js file and run Encore.
    The error will show you a Babel configuration file you can use.

  • With configureDefinePlugin(), the options['process.env'] key format
    passed to the callback has changed (see #960). If you are using configureDefinePlugin()
    to add more items to process.env, your code will need to change:

Encore.configureDefinePlugin((options) => {
-    options['process.env']['SOME_VAR'] = JSON.stringify('the value');
+    options['process.env.SOME_VAR'] = JSON.stringify('the value');
})