CHANGELOG.md
July 2, 2026 · View on GitHub
Unreleased
Enhancements
- Update
stylelintto^16.26.1(#79648). - Widen the
@playwright/testpeer dependency to>=1and mark it optional, so consumers aren't forced to bump Playwright or satisfy it under strict peer deps (#78632).
32.6.0 (2026-07-01)
32.5.0 (2026-06-24)
Enhancements
lint-style: Detect .cjs and .mjs config files so the bundled default config is not used when one of these is present (#79226).
32.4.1 (2026-06-16)
32.4.0 (2026-06-10)
32.3.0 (2026-05-27)
32.2.0 (2026-05-14)
32.1.0 (2026-04-29)
32.0.0 (2026-04-15)
Breaking Changes
- The bundled
eslintdependency has been upgraded from v8 to v10 (#76654). - The
lint-jsscript now uses flat config (eslint.config.*) by default. Legacy.eslintrc.*files are still detected as a fallback, but this support is deprecated and will be removed in a future version (#76654). - The default config shipped with
wp-scriptshas changed fromconfig/.eslintrc.jstoconfig/eslint.config.cjs(#76654).
31.8.0 (2026-04-01)
31.7.0 (2026-03-18)
31.6.0 (2026-03-04)
31.5.0 (2026-02-18)
31.4.0 (2026-01-29)
31.3.0 (2026-01-16)
Internal
- The bundled
eslintdependency has been updated from^8.3.0to^8.57.1(#74316).
31.1.0 (2025-11-26)
31.0.0 (2025-11-12)
Breaking Changes
- The
lint-jsscript now includes.cjs,.mjs,.cts, and.mtsas default extensions to lint. This is considered a breaking change because the script may now surface lint errors in your project which would not have been previously identified.
30.27.0 (2025-10-29)
30.26.0 (2025-10-17)
30.25.0 (2025-10-01)
30.24.0 (2025-09-17)
30.23.0 (2025-09-03)
Internal
- Remove deprecated
clean-webpack-plugindependency in favor of webpack's native cleaning functionality (#71080)
30.22.0 (2025-08-20)
30.21.0 (2025-08-07)
30.20.0 (2025-07-23)
30.19.0 (2025-06-25)
30.18.0 (2025-06-04)
30.17.0 (2025-05-22)
30.16.0 (2025-05-07)
30.15.0 (2025-04-11)
30.14.1 (2025-04-01)
Bug Fixes
- Fix:
--blocks-manifestCLI flag doesn't work when the directory name has space (#69766).
30.14.0 (2025-03-27)
New Features
- Add
--blocks-manifestCLI flag to generate a PHP file containing block metadata from allblock.jsonfiles in the project (#69578).
30.13.0 (2025-03-13)
30.12.0 (2025-02-28)
30.11.0 (2025-02-12)
30.10.0 (2025-01-29)
30.9.0 (2025-01-15)
30.8.0 (2025-01-02)
Enhancements
- Recommend listing JavaScript entry points as paths passed to the
startandbuildcommands (#68251). - Introduce a new option
--source-pathto customize the source directory used with thestartandbuildcommands (#68251).
Internal
- The bundled
rtlcss-webpack-plugindependency has been replaced with a modified fork of the plugin to fix issues with the original package (#68201). - The bundled
sassdependency has been updated from^1.50.0to^1.54.0(#68380).
30.7.0 (2024-12-11)
Internal
- The bundled
sassdependency has been updated from^1.35.2to^1.50.1(#67572). - The bundled
sass-loaderdependency has been updated from^12.1.0to^16.0.3(#67572). - The bundled
mini-css-extract-plugindependency has been updated from^2.5.1to^2.9.2(#67572). - The bundled
webpackdependency has been updated from^5.95.0to^5.97.0(#67572). - The bundled
cross-spawndependency has been updated from^5.1.0to^7.0.6(#67708). - The bundled
jest-dev-serverdependency has been updated from^9.0.1to^10.1.4(#67708). - The bundled
puppeteer-coredependency has been updated from^23.1.0to^23.10.1(#67708).
Bug Fix
- Make React Fast Refresh in the
startcommand work with multiple blocks (64924).
30.6.0 (2024-11-27)
30.5.1 (2024-11-18)
Bug Fix
- Revert changes from #61121 that inlined CSS files imported from other CSS files before optimization in the
buildcommand.
30.5.0 (2024-11-16)
Bug Fix
- Make
startscript more resilient for developer errors (#66752).
30.4.0 (2024-10-30)
Enhancements
- Add BlueOak-1.0.0 the GPLv2-compatible licenses recognized by check-licenses (#66139).
- Add an optional
--root-folderargument to theplugin-zipcommand (#61375). By default, the command will use the plugin's name as the root folder of the zip. If the change in the behavior impacted your workflow, you could pass--no-root-folderto remove the root folder.
Internal
- Refactor to extract license related logic to a reusable module (#66179).
30.3.0 (2024-10-17)
New Features
- Add new
build-blocks-manifestcommand to generate a PHP file containing block metadata from allblock.jsonfiles in a project (#65866).
30.2.0 (2024-10-16)
30.1.0 (2024-10-03)
30.0.0 (2024-09-19)
Breaking Changes
- Updated
stylelintdependency to^16.8.2(#64828). - Switched default config from
@wordpress/stylelint-config/scssto use@wordpress/stylelint-config/scss-stylisticto keep stylistic rules (#64828).
29.0.0 (2024-09-05)
Breaking Changes
- Fixed the issue with having 5 high severity vulnerabilities by upgrading the
puppeteer-corepackage to the latest major version^23.1.0(#64597).
Enhancements
- Inlines CSS files imported from other CSS files before optimization in the
buildcommand (#61121).
Bug Fixes
- Added chunk filename in webpack config to avoid reading stale files (#58176).
28.6.0 (2024-08-21)
28.5.0 (2024-08-07)
28.4.0 (2024-07-24)
New Features
- Update webpack configuration for the
buildandstartcommands to automatically copy PHP files listed in thevariationsfield ofblock.jsonfiles from the source to the build folder (#63098).
28.3.0 (2024-07-10)
28.2.0 (2024-06-26)
28.1.0 (2024-06-15)
28.0.0 (2024-05-31)
Breaking Changes
Note If you're using @wordpress/scripts for building JS scripts to target WordPress 6.5 or earlier, you should not upgrade to this version and continue using @wordpress/scripts@27.
- Use React's automatic runtime to transform JSX (#61692).
- Variables like
process.env.IS_GUTENBERG_PLUGINhave been replaced byglobalThis.IS_GUTENBERG_PLUGIN. Build systems usingprocess.envshould be updated (#61486). - Increase the minimum required Node.js version to v18.12.0 matching long-term support releases (#31270). Learn more about Node.js releases.
27.9.0 (2024-05-16)
New Features
- Add RTL support when building CSS styles with
buildandstartscripts (#61540).
27.8.0 (2024-05-02)
27.7.0 (2024-04-19)
27.6.0 (2024-04-03)
27.5.0 (2024-03-21)
27.4.0 (2024-03-06)
27.3.0 (2024-02-21)
27.2.0 (2024-02-09)
New Features
- Add experimental support for
viewScriptModulefield in block.json forbuildandstartscripts (#57437).
Enhancements
- Ensure that watched module builds detect block.json changes (#57927).
Deprecations
- Experimental support for
viewModulefield in block.json is deprecated in favor ofviewScriptModule(#57437).
27.1.0 (2024-01-24)
27.0.0 (2024-01-10)
New Features
- Add experimental support for
viewModulefield in block.json forbuildandstartscripts (#57461).
Breaking Changes
- Drop support for Node.js versions < 18.
26.19.0 (2023-12-13)
Bug Fixes
- Fix CSS imports not minified (#56516).
26.18.0 (2023-11-29)
Internal
- The bundled
jest-dev-serverdependency has been updated from^6.0.2to^9.0.1(#33287).
26.17.0 (2023-11-16)
26.16.0 (2023-11-02)
26.15.0 (2023-10-18)
26.14.0 (2023-10-05)
Internal
- The bundled
@pmmmwh/react-refresh-webpack-plugindependency has been updated from requiring^0.5.2to requiring^0.5.11(#54657). - The bundled
browserslistdependency has been updated from requiring^4.21.9to requiring^4.21.10(#54657). - The bundled
react-refreshdependency has been updated from requiring^0.10.0to requiring^0.14.0(#54657). - The bundled
webpackdependency has been updated from requiring^5.47.1to requiring^5.88.2(#54657). - The bundled
webpack-bundle-analyzerdependency has been updated from requiring^4.4.2to requiring^4.9.1(#54657). - The bundled
webpack-clidependency has been updated from requiring^4.9.1to requiring^5.1.4(#54657). - The bundled
webpack-dev-serverdependency has been updated from requiring^4.4.0to requiring^4.15.1(#54657).
26.13.0 (2023-09-20)
Enhancements
- Added support for
test-playwrightscript (#53108). - The bundled
wp-prettierdependency has been upgraded from2.8.5to3.0.3(#54539).
Bug Fixes
- Correctly resolve entry points when the directory is symlinked (#54212).
26.12.0 (2023-08-31)
26.11.0 (2023-08-16)
Enhancements
- Updated
npm-package-json-lintpeer dependency to require v6.0.0 #53636. - The bundled
@svgr/webpackdependency has been updated from requiring ^6.2.1 to requiring ^8.0.1 (#53630). - The bundled
cssnanodependency has been updated from requiring ^5.07 to requiring ^6.0.1 (#53630).
Bug Fixes
- Fix prevent watch mode from aborting when encountering a
block.jsonfile that contains invalid JSON. (#51971)
26.10.0 (2023-08-10)
26.9.0 (2023-07-20)
26.8.0 (2023-07-05)
26.7.0 (2023-06-23)
26.6.0 (2023-06-07)
Enhancements
- The bundled
terser-webpack-plugindependency has been updated from requiring^5.1.4to requiring^5.3.9(#50994). - Optimize updating render paths when developing blocks with the
startcommand (#51162).
Bug Fixes
- Ensure files listed in
renderfield ofblock.jsonfiles are always copied to the build folder when using thestartcommand (#50939).
26.5.0 (2023-05-24)
26.4.0 (2023-05-10)
26.3.0 (2023-04-26)
Enhancements
- License check script supports conjunctive (AND) licenses (46801).
26.2.0 (2023-04-12)
26.1.0 (2023-03-29)
Enhancements
- The bundled
wp-prettierdependency has been upgraded from2.6.2to2.8.5(#49258).
26.0.0 (2023-03-15)
Breaking Changes
- Started using Jest v29 instead of v27 as a dependency. See breaking changes in Jest 28 and in jest 29 (#47388)
25.5.1 (2023-03-06)
Bug Fixes
- Fix
render.phpisn't copied in Windows OS (#48735).
25.5.0 (2023-03-01)
25.4.0 (2023-02-15)
New Features
- The
WP_DEVTOOLenvironment variable can now be used to set the Webpack devtool option for sourcemaps in production builds (#46812). Previously, this only worked for development builds. - Update default webpack config and lint-style script to allow PostCSS (
.pcssextension) file usage (#45352). - Add
--no-watchoption to allow creating the unminified/dev JS without starting the watcher (#44237).
25.3.0 (2023-02-01)
25.2.0 (2023-01-11)
25.1.0 (2023-01-02)
25.0.0 (2022-12-14)
Breaking Changes
- Updated dependencies to require React 18 (45235)
24.6.0 (2022-11-16)
24.5.0 (2022-11-02)
24.4.0 (2022-10-19)
24.3.0 (2022-10-05)
24.2.0 (2022-09-21)
24.1.0 (2022-09-13)
New Features
- Update the default webpack config to allow
webpimage format (#43880). - Update webpack configuration for the
buildandstartcommands to automatically copy PHP files listed in therenderfield ofblock.jsonfiles from the source to the build folder (#43917).
24.0.0 (2022-08-24)
Breaking Changes
- Increase the minimum Node.js version to 14 and minimum npm version to 6.14.4 (#43141).
- The bundled
@wordpress/eslint-pluginpackage got updated to the new major version and the default linting for Jest unit tests is now handled in the default config in this package (#43272).
Bug Fixes
- Packages: Replace
is-plain-objwithis-plain-object(#43511).
23.7.2 (2022-08-17)
Bug Fixes
- Jest Preset: Improve
is-plain-objtransformation ignore (#43271).
23.7.1 (2022-08-12)
Bug Fixes
- Jest Preset: Ignore
is-plain-objtransformation (#43179).
23.6.0 (2022-07-27)
Bug Fixes
- Fix the incorrect exit error code when status missing in
webpackcall forbuildandstartcommands (#42396).
23.3.0 (2022-06-15)
Enhancements
- The bundled
wp-prettierdependency has been upgraded from2.2.1to2.6.2(#40542).
23.2.0 (2022-06-01)
Bug Fixes
- Fix incorrect handling in
plugin-zipfor root-level files and some specific platform conditions (#41439).
23.1.0 (2022-05-18)
New Features
- Enable by default code formatting for JSON files in the
formatcommand (#40994). You can opt-out of this behavior by providing a custom file matcher, example:wp-scripts format src/**/*.js. - Support tsx files in
viewScript,script,editorScript(#41068).
Bug Fixes
- Fix: env unit test fails on Windows (#41070)
23.0.0 (2022-05-04)
Breaking Changes
- Remove
lint-md-jsscript that was broken for some time and it's extremely hard to make it work correctly with the recommended ESLint config in Markdown files (#40511). - Remove the previously deprecated and undocumented
format-jscommand (#40512). You should use theformatcommand instead.
New Features
- Add
--dist-tagflag to thepackages-updatecommand to allow specifying a custom dist-tag when updating npm packages ([#40514](https://github.com/WordPress/gutenberg/pull/
22.5.0 (2022-04-21)
Bug Fixes
- Update
markdownlintandmarkdownlint-clito the latest versions (#40479).
22.4.0 (2022-04-08)
New Features
- Add
--webpack-src-dirCLI flag to allow customizing the source code directory (srcby default) (#39618).
Bug Fixes
- Add
vendor/to.markdownlintignore, to matchlint-md-docsdocs (#39724). - Include files with
.jsxextension in the build process (#39613). - Ensure that the default logic for entry points in the build commands is executed only when used the default config (#39618).
22.2.0 (2022-03-11)
Enhancements
- The bundled
@wordpress/eslint-pluginpackage got updated to the new major version, but the breaking changes included don't affect this package (#39244).
22.1.0 (2022-03-03)
New Features
- Add
--webpack-copy-phpCLI flag to opt-in to copying php files fromsrcand its subfolders to the output directory (buildby default) (#39171).
22.0.0 (2022-02-22)
Breaking Changes
- The bundled
@svgr/webpackdependency has been updated from requiring^5.5.0to requiring^6.2.1(#38866). See official migration guide to v6 for details.
New Features
- Automatically copy PHP files located in the
srcfolder and its subfolders to the output directory (buildby default) (#38715).
21.0.2 (2022-02-15)
- Entry points are not detected in Windows OS (#38781).
21.0.1 (2022-02-11)
Bug Fixes
- Return a default entry object in the
buildcommand when no entry files discovered in the project (#38737).
21.0.0 (2022-02-10)
Breaking Changes
- The bundled
puppeteer-coredependency has been updated from requiring^11.0.0to requiring^13.2.0(#37078).
Bug Fixes
- Fix the handling for entry points when running
buildcommand (#38584).
20.0.2 (2022-01-31)
Bug Fixes
- Fix the
buildcommand that does not generate assets on Windows OS (#38348). - Adds fallback to
src/index.jswhen no valid scripts discovered in metadata files when running thebuildcommand (#38367).
20.0.1 (2022-01-28)
Bug Fixes
- Ensure that React Fast Refresh is not wired when it isn't explicitly enabled with
--hotCLI argument when running thestartcommand.
20.0.0 (2022-01-27)
Breaking Changes
- The bundled
eslintdependency has been updated from requiring^7.17.0to requiring^8.3.0(#36283). - The
puppeteer-coredependency has been updated from requiring^10.1.0to requiring^11.0.0(see Breaking Changes, #36040). - Removed support for live reload in the
startcommand (#28273). - The bundled
webpack-clidependency has been updated to the next major version^4.9.1(#28273). - The peer
jestdependency has been updated from requiring>=26to requiring>=27(see Breaking Changes, #33287). - The bundled
jest-dev-serverdependency has been updated to the next major version^6.0.0(#33287). - The bundled
stylelintdependency has been updated from requiring^13.8.0to requiring^14.2.0(#38091).
New Features
- Added a new
plugin-zipcommand to create a zip file for a WordPress plugin (#37687). - Added optional support for React Fast Refresh in the
startcommand. It can be activated with--hotCLI argument (#28273). For now, it requires that WordPress has theSCRIPT_DEBUGflag enabled and the Gutenberg plugin installed. - Automatically copy
block.jsonfiles located in thesrcfolder and its subfolders to the output folder (buildby default) (#37612). - Scan the
srcdirectory forblock.jsonfiles to detect defined scripts to use them as entry points with thestartandbuildcommands. (#37661).
Enhancements
- Disable
selector-class-patternrule when linting styles until we have more flexible handling (#37531).
Bug Fixes
- Prevent the
CleanWebpackPluginplugin from deleting webpack assets during multi-configuration builds #35980. - Remove temporary workaround fixing CommonJS import for
mini-css-extract-plugin#38027.
Internal
- The bundled
read-pkg-updependency has been updated from requiring^1.0.1to requiring^7.0.1(#37395).
19.2.3 (2022-01-17)
Bug Fixes
- Added temporary workaround to fix broken CommonJS import of
mini-css-extract-plugin#38004.
19.2.0 (2021-11-15)
New Features
- Add basic support for TypeScript in
build,start,test-e2eandtest-unit-jscommands (#36260).
Enhancements
- The bundled
browserslistdependency has been updated from requiring^4.16.6to requiring^4.17.6(#36244). - Updated the default ESLint config to work correctly with the latest version of
@wordpress/eslint-plugin(#36244).
19.1.0 (2021-11-07)
Enhancements
- Increase the timeout for e2e tests to 30 seconds (#35983).
19.0.0 (2021-10-22)
Breaking Changes
- The webpack config was updated to no longer include the polyfill by default when creating the
assets.phpfile. If your usage requires thewp-polyfill, you must explicitly set it as a dependency (#34536].
Enhancements
- Allow customization of the
ARTIFACTS_PATHin thejest-environment-puppeteerfailed test reporter via theWP_ARTIFACTS_PATHenvironment variable (#35371).
18.1.0 (2021-10-12)
Enhancements
- The bundled
jest-dev-serverdependency has been updated to the next major version^5.0.3(#34560).
18.0.1 (2021-09-09)
Bug Fixes
- Bring back support for SVG files in CSS (#34394). It wasn't correctly migrated when integrating webpack v5.
- Convert legacy entry point arguments supported in webpack 4 for compatibility with webpack 5 (#34264).
18.0.0 (2021-08-23)
Breaking Changes
- Increase the minimum Node.js version to v12.13 matching requirements from bundled dependencies (#33818).
- The bundled
webpackdependency has been updated to the next major version^5.47.1(see Breaking Changes, #33818). - The bundled
webpack-clidependency has been updated to the next major version^4.7.2(#33818). - The bundled
css-loaderdependency has been updated from requiring^5.1.3to requiring^6.2.0(#33818). - The bundled
file-loaderdependency has been removed (#33818). - The bundled
ignore-emit-webpack-plugindependency has been removed (#33818). - The bundled
mini-css-extract-plugindependency has been updated from requiring^1.3.9to requiring^2.1.0(#33818). - The bundled
postcss-loaderdependency has been updated from requiring^4.2.0to requiring^6.1.1(#33818). - The bundled
sass-loaderdependency has been updated from requiring^10.1.1to requiring^12.1.0(#33818). - The bundled
source-map-loaderdependency has been updated from requiring^0.2.4to requiring^3.0.0(#33818). - The bundled
thread-loaderdependency has been removed (#33818). - The bundled
terser-webpack-plugindependency has been updated from requiring^3.0.3to requiring^5.1.4(#33818). - The bundled
webpack-live-reload-plugindependency has been updated from requiring^2.3.0to requiring^3.0.1(#33818). - The bundled
webpack-sourcesdependency has been removed (#33818).
Enhancements
- The bundled
@svgr/webpackdependency has been updated from requiring^5.2.0to requiring^5.5.0(#33818). - The bundled
webpack-bundle-analyzerdependency has been updated from requiring^4.2.0to requiring^4.4.2(#33818).
Bug Fixes
- Add missing fallback for target in webpack 5 config (#34112),
17.1.0 (2021-07-29)
Enhancements
- Update
eslint-plugin-markdownpackage to2.20.0(#33432). - Update
sasspackage to1.35.2(#33433). - Update webpack config to minimize also CSS files (#33676).
- The default PostCSS config uses cssnano to minimize CSS output (#33750).
17.0.0 (2021-07-21)
Breaking Changes
- Upgrade
puppeteer-core(^9.0.0) to version^10.1.0. This version drops support for Node v10.
New Features
- Add .markdownlintignore config and reference from lint-md-docs script (#32633).
Enhancements
16.1.0 (2021-05-20)
Bug Fixes
- The default Babel configuration has changed to respect a local Browserslist configuration.
16.0.0 (2021-05-14)
Breaking Changes
- Drop support for Internet Explorer 11 (#31110). Learn more at https://make.wordpress.org/core/2021/04/22/ie-11-support-phase-out-plan/.
- Increase the minimum Node.js version to v12 matching Long Term Support releases (#31270). Learn more at https://nodejs.org/en/about/releases/.
- The bundled
puppeteer-core(^5.5.0) dependency has been upgraded to version^9.0.0. Puppeteer uses Chromium v91 instead of Chromium v88. See the full list of breaking changes of 9.0.0 and lower versions (#31138).
New Features
- Include a Jest Reporter that formats test results for GitHub Actions annotations (#31041).
- Have the
formatcommand ignore files listed in a.prettierignorefile, add a fallback.prettierignoreto the package (30844). - The e2e tests are now using
jest-circusas the test runner. This enable us to capture screenshots at the time the tests failed. The unit tests are also using the same test runner for consistency (#28449, #31178).
Security
- Update
postcssdependency to the latest patch version. Versions before 8.2.10 are vulnerable to Regular Expression Denial of Service (ReDoS) during source map parsing (#31685).
15.0.1 (2021-04-30)
Bug Fixes
- Add
postcssas a dependency to ensure that the correct version gets installed.
15.0.0 (2021-04-29)
Breaking Changes
- Rename
format-jsscript toformat(#30240). - Include YAML files when formatting files with
format(#30240). - The bundled
css-loaderdependency has been updated from requiring^3.5.2to requiring^5.1.3(#27821). - The bundled
mini-css-extract-plugindependency has been updated from requiring^0.9.0to requiring^1.3.9(#27821). - The bundled
postcss-loaderdependency has been updated from requiring^3.0.0to requiring^4.2.0(#27821). - The bundled
sass-loaderdependency has been updated from requiring^8.0.2to requiring^10.1.1(#27821). - The bundled
thread-loaderdependency has been updated from requiring^2.1.3to requiring^3.0.1(#27821). - The bundled
url-loaderdependency has been updated from requiring^3.0.0to requiring^4.1.1(#27821).
New Features
buildandstartcommand now bundle files ending with.module.cssas CSS modules and extractsstyle.module.css(#29182).
Enhancements
- The bundled
webpackdependency has been updated from requiring4.42.0to requiring^4.46.0(#27821).
14.1.0 (2021-04-06)
Enhancements
- The bundled
babel-loaderdependency has been updated from requiring^8.1.0to requiring^8.2.2(#30018).
14.0.0 (2021-03-17)
Breaking Changes
- Lint TypeScript files as part of
lint-js. #27143
New Features
- Default
check-enginescommand to theenginesconfig inpackage.jsonfile of the current project (#29066).
Enhancements
- Make
check-licensescommand compatible with npm v7 (#28909). - Add
Python 2.0to non-GPL compatible OSS licenses allowed for development incheck-licensescommand (#29968). - Updated
check-node-versionto version^4.1.0that no longer processes unrelated engines withcheck-enginescommand (#29066). - Replace
jest-puppeteerwith the forked version ofjest-environment-puppeteerto usepuppeteer-coredirectly (#29418).
13.0.0 (2021-01-21)
Breaking Changes
- Increase the minimum Node.js version to 12 (#27934).
- The bundled
jestdependency has been updated to the next major version^26.6.3(see Breaking Changes, #27956). - The bundled
@wordpress/eslint-plugindependency has been updated to the next major version^8.0.0. There are new ESLint rules enabled in the recommended config used bylint-jscommand. - The bundled
stylelint-config-wordpressdependency has been replaced with@wordpress/stylelint-config(#27810)[https://github.com/WordPress/gutenberg/pull/27810]. - The bundled
puppeteer-core(3.0.0) dependency has been upgraded to version5.5.0. Puppeteer uses Chromium v88 instead of Chromium v71. See the full list of breaking changes of 4.0.0 and 5.0.0.
Enhancements
wordpresssubfolder is no longer ignored when detecting files for testing, linting or formatting.- The bundled
eslintdependency has been updated from requiring^7.1.0to requiring^7.17.0(#27965). - Make it possible to transpile
.jsxfiles withbuildandstartcommands (#28002). - Add support for static assets (fonts and images) for
buildandstartcommands (#28043).
Bug Fixes
- Ensure that
check-enginesuses the same default version of Node.js and npm as this package (#28143). - Prevent translation function names from being mangled to ensure stings are extracted (#28231).
Internal
- The bundled
webpack-bundle-analyzerdependency has been updated from requiring^3.6.1to requiring^4.2.0.
12.6.1 (2021-01-05)
Bug Fixes
- Fix multiple build (
buildcommand) runtimes conflicting when using globals (#27985).
12.6.0 (2020-12-17)
Enhancements
- Autoformat TypeScript files (
*.tsand*.tsx) informat-jsscript (#27138)[https://github.com/WordPress/gutenberg/pull/27138]. - The bundled
wp-prettierdependency has been upgraded from2.0.5to2.2.1. - The bundled Babel dependency has been upgraded from
7.11to7.12.
Internal
- The bundled
ignore-emit-webpack-plugindependency has been updated from requiring2.0.3to requiring^2.0.6.
12.5.0 (2020-10-30)
Enhancements
- Ignore
/vendorfolder when searching for files to lint or format.
Bug Fixes
- Temporary pin
ignore-emit-webpack-pluginto the version2.0.3to fix a known issue with version2.0.4(GitHub issue).
12.1.0 (2020-07-07)
Enhancements
- Update webpack configuration to preserve translator comments in minified output.
Bug Fixes
- Allow the CSS, SVG, and Sass loaders to process files from node_modules directory.
- Improve the way licenses are validated with
check-licensesby falling back to license files verification when the entry inpackage.jsondoesn't contain an allowed match (#23550). - Fix
buildscript error when importingstyle.cssfiles (#23710). - Exclude
node_modulesfrom source map processing instartscript (#23711).
12.0.0-rc.0 (2020-06-24)
Breaking Changes
- The bundled
stylelintdependency has been updated from requiring^9.10.1to requiring^13.6.0. - The bundled
stylelint-config-wordpressdependency has been updated from requiring^13.1.0to requiring^17.0.0.
Bug Fixes
- During rebuilds, all webpack assets that are not used anymore will be removed automatically.
11.0.0 (2020-06-15)
Breaking Changes
- The
envfamily of scripts has been removed. Finally, exceeded in functionality and replaced bywp-env. - The default Babel configuration has changed to only support stage-4 proposals. This affects the
buildandstartcommands that use the bundled Babel configuration; if a project provides its own, this change doesn't affect it (#22083). - The bundled
wp-prettierdependency has been upgraded from1.19.1to2.0.5. Refer to the Prettier 2.0 "2020" blog post for full details about the major changes included in Prettier 2.0. - The bundled
eslintdependency has been updated from requiring^6.8.0to requiring^7.1.0.
New Features
- The PostCSS loader now gives preference to a
postcss.config.jsconfiguration file if present.
Bug Fixes
- Update webpack configuration to not run the Sass loader on CSS files. It's now limited to .scss and .sass files.
- Fix broken
style.(sc|sa|c)sshandling in thebuildandstartscripts (#23127).
10.0.0 (2020-05-28)
New Features
- New
--webpack-no-externalsflag added tobuildandstartscripts. It disables scripts' assets generation, and omits the list of default externals (#22310). - New
--webpack-bundle-analyzerflag added tobuildandstartscripts. It enables visualization for the size of webpack output files with an interactive zoomable treemap (#22310). - New
--webpack--devtoolflag added tostartscript. It controls how source maps are generated. See options at https://webpack.js.org/configuration/devtool/#devtool (#22310). - The
test-e2eandtest-unitscripts will now disambiguate custom configurations, preferring ajest-e2e.config.js,jest-e2e.config.json,jest-unit.config.js, orjest-unit.config.jsonJest configuration file if present, falling back tojest.config.jsorjest.config.json. This allows for configurations which should only apply to one or the other test variant.
9.1.0 (2020-05-14)
New Features
- Add new capability to
buildandstartscripts that automates handling CSS, SASS or SCSS files by importing them from JavaScript code (#21730). You can find more details about CSS assets management in webpack at https://webpack.js.org/guides/asset-management/#loading-css.
Enhancements
- Bundle analysis in
buildscript now runs with module concatenation disabled. This represents the size of individual modules more accurately, at the cost of not providing an exact byte-for-byte match to the final size in the production chunk.
Deprecations
envscript was marked as deprecated. We recommend using@wordpress/envpackage instead that lets you easily set up a local WordPress environment for building and testing plugins and themes.
9.0.0 (2020-04-30)
Breaking Changes
- The bundled
puppeteer(^2.0.0) dependency has been replaced withpuppeteer-corein version3.0.0. Puppeteer uses Chromium v81 instead of Chromium v79. See the full list of changes. It also allowed preventing Chromium installation together with@wordpress/scripts. It happens now on-demand when runningtest-e2escript, and it re-triggers only when a new version is required.
New Features
- Add support for passing node CLI options to scripts (#21631).
- Add debugging support for
test-unit-jsscript (#21631). Tests can be debugged by any inspector client that supports the Chrome DevTools Protocol using the--inspect-brkoption. - Add debugging support for
test-e2escript (#21861). Tests can be debugged by using the--inspect-brkoption and a new--puppeteer-devtoolsoption (orPUPPETEER_DEVTOOLS="true"environment variable).
Bug Fixes
- The bundled
npm-package-json-lintdependency has been updated from requiring^4.0.3to requiring^5.0.0(#21597). Breaking changes don't break anything in this package. It fixes the abrupt shutdown when"description"field inpackage.jsonis empty. - Update
check-licensesscript to parse JSON dependency tree recursively so sub-dependencies of packages passed in--ignoreflag are ignored as well.
8.0.0 (2020-04-15)
Breaking Changes
- The bundled
jestdependency has been updated from requiring^24.9.0to requiring^25.3.0(see Breaking Changes, #20766).
Enhancements
- The bundled
eslintdependency has been updated from requiring^6.1.0to requiring^6.8.0(#21424).
7.2.0 (2020-04-01)
Enhancements
- Incompatibility between
@svgr/webpackin version4.3.3andurl-loaderin version3.0.0was fixed by bumping@svgr/webpackto^5.2.0. - All webpack dependencies got minor version update if applicable.
Internal
- Package depends now on the shared Prettier config exposed in
@wordpress/prettier-configdependency (#20026).
7.1.2 (2020-02-25)
Bug Fixes
- Ensure
packages-updatework whendependenciesordevDependenciesare missing in thepackage.jsonfile (#20408).
7.1.0 (2020-02-10)
Bug Fixes
- Ensure the default Prettier config is used in the
lint-jsscript when no Prettier config is found in the project (#20071).
7.0.0 (2020-02-04)
Breaking Changes
- This package requires now
nodev10.0.0 or later, andnpmv6.9.0 or later (#18048). - The minimum version required for
npmincheck-enginesscript was increased to6.9.0+(#18048).
New Features
- Add SVGR support to compile SVG files to React components using the
@svgr/webpackplugin (#18243). - Add
format-jsscript to format JavaScript source code, it uses thewp-prettier– Prettier fork adjusted to WordPress coding style guidelines (#18048). - Add
lint-md-jsscript to lint JavaScript source code in markdown files, uses theeslint-plugin-markdownplugin (#19518). - Add
lint-md-docsscript to lint the markup of markdown files, uses themarkdownlintmodule (#19855). - Add
packages-updatescript to update WordPress packages to the latest version automatically (#19448).
Bug Fixes
- Fixes and updates valid rc configuration filenames for Babel, ESLint, markdownlint, npmpackagejsonlint, stylelint, and Prettier (#19994).
6.1.1 (2020-01-01)
Bug Fixes
- Update
jest-preset-defaultdependency to fix preset file extension for inclusion in NPM deployments (#19306).
6.1.0 (2019-12-20)
New Features
- Added support to collapse or omit successful test results from Travis CI builds (#16744)
6.0.0 (2019-11-14)
Breaking Changes
- The bundled
npm-package-json-lintdependency has been updated from requiring^3.6.0to requiring^4.0.3(#18054). Please see the migration guide. Note:npmPackageJsonLintConfigprop in thepackage.jsonfile needs to be renamed tonpmpackagejsonlint. - The bundled
puppeteerdependency has been updated from requiring^1.19.0to requiring^2.0.0(#18205). It uses Chromium v79 instead of Chromium v77. See the full list of changes.
5.1.0
New Features
- The bundled
webpackdependency has been updated from requiring4.8.3to requiring^4.41.0(#17746).
Bug Fixes
- Added a temporary workaround for the default config used with
lint-jscommand. It uses linting rules for both e2e and unit tests with all files until override files globbing logic is fixed when usingeslintwith--config(related issue).
5.0.0 (2019-09-16)
Breaking Changes
- The bundled
@wordpress/dependency-extraction-webpack-plugindependency has been updated to the next major version^2.0.0.startandbuildscripts save now the generated asset file for each entry point in the new PHP output format.
4.1.0 (2019-09-03)
New Features
- Add the new
envfamily of scripts (#17004).
Bug Fixes
- Add
wordpressfolder to the list of ignored paths in all applicable config files (#17296).
4.0.0 (2019-08-29)
Breaking Changes
- Test files matching has changed to fix the overlap between two types of tests implemented with
test-e2eandtest-unit. Refer to the documentation of the corresponding scripts to learn about new file discovery rules.
New Features
- The bundled
puppeteerdependency has been updated from requiring1.6.1to requiring^1.19.0(#16875). It uses Chromium v77 instead of Chromium v69. - The bundled
jest-puppeteerdependency has been updated from requiring^4.0.0to requiring^4.3.0(#16875). - The bundled
eslintdependency has been updated from requiring^5.16.0to requiring^6.1.0. - The bundled
@wordpress/eslint-plugindependency has been updated to the next major version^3.0.0due to new ESLint rules enabled for all test files.
Bug Fixes
- Use the SCSS shared
stylelint-config-wordpressconfig so that both CSS and SCSS rules are used (#17060)
3.4.0 (2019-08-05)
New Features
- The
buildandstartcommands supports simplified syntax for multiple entry points:wp-scripts build entry-one.js entry-two.js(15982).
Bug Fixes
- Added missing babel-jest dependency (#16259).
3.3.0 (2019-06-12)
New Features
- The
lint-jscommand lints now JS files in the entire project's directories by default (15890). - The
lint-pkg-jsoncommand lints nowpackage.jsonfiles in the entire project's directories by default (15890). - The
lint-stylecommand lints now CSS and SCSS files in the entire project's directories by default (15890). - The
lint-js,lint-pkg-jsonandlint-stylecommands ignore now files located inbuildandnode_modulesfolders by default (15977).
3.2.0 (2019-05-21)
New Features
- Leverage
@wordpress/dependency-extraction-webpack-pluginplugin to extract WordPress dependencies. - The bundled
eslintdependency has been updated from requiring^5.12.1to requiring^5.16.0.
Enhancements
- The default Webpack configuration uses
thread-loaderto parallelize Babel processing. - The default Webpack configuration now opts-in to the
cacheDirectoryoption for its Babel loader. - The
source-map-loaderis excluded from production builds. This serves only as an optimization and should otherwise have no impact on build results.
3.1.0 (2019-03-20)
New Features
- The
buildandstartcommands will use a default webpack config if none is provided.
3.0.0 (2019-03-06)
Breaking Changes
- The bundled
eslintdependency has been updated from requiring^4.19.1to requiring^5.12.1(see Migration Guide). - The bundled
jestdependency has been updated from requiring^23.6.0to requiring^24.1.0(see Breaking Changes, #13922). - The bundled
jest-puppeteerdependency has been updated from requiring3.2.1to requiring^4.0.0(#13922).
New Features
- Added support for
buildscript (#12837) - Added support for
startscript (#12837) - Updated
npm-package-json-lintdependency #14200
Bug Fixes
- Avoid inheriting from ESLint configurations in ancestor directories when using the default configuration (#13483)
2.5.0 (2019-01-09)
New Features
- Added support for
check-enginesscript (#12721) - Added support for
lint-stylescript (#12722) - Added support for
test-e2escript (#12437) - Update default config provided for
lint-jsscript (#12845)
2.4.4 (2018-11-20)
2.4.3 (2018-11-09)
2.4.2 (2018-11-09)
2.4.1 (2018-11-03)
2.4.0 (2018-10-16)
New Features
- Added support for
lint-jsscript (#10504)
2.3.0 (2018-09-30)
Enhancements
- New flag
--ignoreforcheck-licensesscript - Try deferring to LICENSE file for
licensefields which include filename - Add "BSD-3-Clause-W3C" as GPL-compatible
2.2.1 (2018-09-05)
Bug Fixes
- Resolves an issue where npm package lint script did not work in Windows environments (#9321
Internal
- Updated dependencies:
jest,npm-package-json-lintandread-pkg-up
2.0.0 (2018-07-12)
Breaking Changes
- Updated code to work with Babel 7 (#7832)
Internal
- Moved
@WordPress/packagesrepository to@WordPress/gutenberg(#7805)
1.2.0 (2018-05-29)
New Features
- Added support for
lint-pkg-jsonscript (#128)
1.1.5 (2018-05-18)
Internal
- Fix: Standardized
package.jsonformat (#119)