Make WordPress Core

Changeset 61492 for trunk/package.json


Ignore:
Timestamp:
01/16/2026 10:30:09 AM (2 months ago)
Author:
youknowriad
Message:

Build: Improve Gutenberg integration workflow.

This changeset improves the Gutenberg build integration to simplify the developer workflow and reinstore a flow similar to how package dependencies worked before the Gutenberg checkout-and-build approach was introduced.

Key improvements:

  • Automatic rebuild on ref change: Adds a new gutenberg:sync script that stores a hash of the built ref in .gutenberg-hash and only rebuilds when the ref changes.
  • Full integration on npm install: Running npm install now produces a fully working development environment with Gutenberg assets in src/.
  • Clean Gutenberg checkout: Restores Gutenberg's package.json after the build completes.
  • Stops copying .js.map files to wp-includes/js/dist since they reference non-existent paths.
  • Remove package.json files from the build folder.
  • Avoid closures and use prefixed functions.
  • Updates build checks to use jquery.js instead of edit-post.js as the build indicator.

Props youknowriad, ellatrix, mcsf, dmsnell, ntsekouras, jorgefilipecosta, tobiasbg, peterwilsoncc.
Fixes #64393.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/package.json

    r61487 r61492  
    88    },
    99    "gutenberg": {
    10         "ref": "892bfad51d2261f44f3a21f934b1c72bd29a2449"
     10        "ref": "7bf80ea84eb8b62eceb1bb3fe82e42163673ca79"
    1111    },
    1212    "engines": {
     
    100100    },
    101101    "scripts": {
    102         "postinstall": "npm run gutenberg:checkout",
     102        "postinstall": "npm run gutenberg:sync && npm run gutenberg:copy -- --dev",
    103103        "build": "grunt build",
    104104        "build:dev": "grunt build --dev",
     
    127127        "gutenberg:build": "node tools/gutenberg/build-gutenberg.js",
    128128        "gutenberg:copy": "node tools/gutenberg/copy-gutenberg-build.js",
    129         "gutenberg:integrate": "npm run gutenberg:checkout && npm run gutenberg:build && npm run gutenberg:copy",
     129        "gutenberg:sync": "node tools/gutenberg/sync-gutenberg.js",
    130130        "vendor:copy": "node tools/vendors/copy-vendors.js",
    131131        "sync-gutenberg-packages": "grunt sync-gutenberg-packages",
Note: See TracChangeset for help on using the changeset viewer.