From f30b5ce2c593b5b16071af31a4e04e62a8527e52 Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Sat, 6 Sep 2025 09:19:40 +0100 Subject: [PATCH 1/7] Initial Gulp 5 migration: Fix copy patterns and submodule setup MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Fix critical Gulp 5 exclusion pattern issue in build-config.js - Replace broad patterns with restrictive positive patterns - Add build submodule on feature/gulp5-update branch - Restore installer submodule configuration 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- .gitmodules | 1 - build | 2 +- build-config.js | 29 +++++++++++++++++++++-------- 3 files changed, 22 insertions(+), 10 deletions(-) diff --git a/.gitmodules b/.gitmodules index cf9c41897..753a4dfc8 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,7 +1,6 @@ [submodule "build"] path = build url = git@github.com:siteorigin/plugin-build.git - [submodule "base/inc/installer"] path = base/inc/installer url = git@github.com:siteorigin/siteorigin-installer.git diff --git a/build b/build index 7fd812fc6..42759d7af 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit 7fd812fc644879872d5ba315ad904d525de1e146 +Subproject commit 42759d7af31f25a07b0d9d2e86e60505b244fbc7 diff --git a/build-config.js b/build-config.js index 032953016..bc500158f 100644 --- a/build-config.js +++ b/build-config.js @@ -41,16 +41,29 @@ module.exports = { }, copy: { src: [ - '**/!(*.js|*.less|*.css)', // Everything except .js, .css and .less files + // Use restrictive positive patterns instead of broad match + exclusions. + // This fixes Gulp 5 exclusion pattern bug where !build/** is ignored. + + // Root level files (excluding those handled by version task). + 'changelog.txt', + 'wpml-config.xml', + + // Directory-based patterns. + 'admin/**/!(*.js|*.less|*.css)', + 'base/**/!(*.js|*.less|*.css)', + 'compat/**/!(*.js|*.less|*.css)', + 'css/**/!(*.js|*.less|*.css)', + 'icons/**/!(*.js|*.less|*.css)', + 'js/**/!(*.js|*.less|*.css)', + 'lang/**/!(*.js|*.less|*.css)', + 'widgets/**/!(*.js|*.less|*.css)', 'icons/**/*css', // Copy CSS for icon packs. 'js/lib/**/*css', // Copy CSS for JS libs. 'css/lib/**/*css', // Copy CSS for JS libs. - 'base/less/*.less', // LESS libraries used in runtime styles - 'base/inc/widgets/less/*.less', + 'base/less/*.less', // LESS libraries used in runtime styles. + 'base/inc/widgets/less/*.less', // Widget LESS libraries. 'base/inc/installer/css/*css', // Include Installer CSS. - 'widgets/**/styles/*.less', // All the widgets' runtime .less files - '!{build,build/**}', // Ignore build/ and contents - '!{tmp,tmp/**}', // Ignore tmp/ and contents + 'widgets/**/styles/*.less', // All the widgets' runtime .less files. '!so-widgets-bundle.php', // Not the base plugin file. It is copied by the 'version' task. '!readme.txt', // Not the readme.txt file. It is copied by the 'version' task. '!readme.md', // Ignore the readme.md file. It is for the github repo. @@ -61,8 +74,8 @@ module.exports = { i18n: { src: [ '**/*.php', // All the PHP files. - '!tmp/**/*.php', // Ignore tmp/ and contents - '!dist/**/*.php' // Ignore dist/ and contents + '!tmp/**/*.php', // Ignore tmp/ and contents. + '!dist/**/*.php' // Ignore dist/ and contents. ], }, googleFonts: { From 70d61a64d13e4a018e5b302c239ec53305b1f439 Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Sat, 6 Sep 2025 10:37:36 +0100 Subject: [PATCH 2/7] Fix build-config.js for Gulp 5 migration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Remove lang/ pattern from copy (created by i18n task) - Convert i18n config to pot config with proper WP settings - Fix restrictive positive patterns for proper file selection 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- build-config.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/build-config.js b/build-config.js index bc500158f..acdfcac8c 100644 --- a/build-config.js +++ b/build-config.js @@ -55,7 +55,6 @@ module.exports = { 'css/**/!(*.js|*.less|*.css)', 'icons/**/!(*.js|*.less|*.css)', 'js/**/!(*.js|*.less|*.css)', - 'lang/**/!(*.js|*.less|*.css)', 'widgets/**/!(*.js|*.less|*.css)', 'icons/**/*css', // Copy CSS for icon packs. 'js/lib/**/*css', // Copy CSS for JS libs. @@ -71,12 +70,18 @@ module.exports = { '!base/inc/installer/inc/github-plugin-updater.php', // Exclude Installer's Updater. ] }, - i18n: { + pot: { src: [ '**/*.php', // All the PHP files. '!tmp/**/*.php', // Ignore tmp/ and contents. '!dist/**/*.php' // Ignore dist/ and contents. ], + textdomain: 'so-widgets-bundle', + destFile: 'so-widgets-bundle.pot', + package: 'SiteOrigin Widgets Bundle', + bugReport: 'http://www.siteorigin.com/thread', + lastTranslator: 'SiteOrigin ', + team: 'SiteOrigin ' }, googleFonts: { dest: 'base/inc/fonts.php', From 6c779387ca1d567d0b710b1b926aa6be16bc97ac Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Sat, 6 Sep 2025 11:58:15 +0100 Subject: [PATCH 3/7] Update build submodule with binary file corruption fix --- build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build b/build index 42759d7af..8dd3cd194 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit 42759d7af31f25a07b0d9d2e86e60505b244fbc7 +Subproject commit 8dd3cd194a9a6daa5b13d2542ac83f7b745b0176 From 24fe82050408e02500bb704e2cafbc1bed88836f Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Sat, 6 Sep 2025 16:39:52 +0100 Subject: [PATCH 4/7] Complete Font Awesome configuration and update build submodule MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add Font Awesome version 6.7.2 and destination paths to build-config.js - Update build submodule to include Font Awesome update task fixes - Font Awesome update task now fully functional with binary file preservation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- build | 2 +- build-config.js | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/build b/build index 8dd3cd194..92b215e8a 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit 8dd3cd194a9a6daa5b13d2542ac83f7b745b0176 +Subproject commit 92b215e8ad1708f3a31f8387415cbbe8276240c1 diff --git a/build-config.js b/build-config.js index acdfcac8c..b08c9b9b0 100644 --- a/build-config.js +++ b/build-config.js @@ -88,5 +88,12 @@ module.exports = { }, fontAwesome: { base: 'icons/fontawesome/', + version: '6.7.2', + css: { + dest: 'icons/fontawesome/' + }, + fonts: { + dest: 'icons/fontawesome/webfonts/' + } } }; From ba3c6cb3f8ad66bb6ab77a4bfa93ed2c1c374d79 Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Mon, 8 Sep 2025 23:44:37 +0100 Subject: [PATCH 5/7] Update build submodule with Gulp 5 fixes MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This updates the build submodule to include fixes for: - Archive name showing %npm_config_release% instead of actual version - Version string in so-widgets-bundle.php showing %npm_config_release% - Google Fonts JSON not being converted to PHP array format - Extra spacing being added to installer PHP files during build 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build b/build index 92b215e8a..388f97b01 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit 92b215e8ad1708f3a31f8387415cbbe8276240c1 +Subproject commit 388f97b01a26916941aeb45d1e4f99fc4503b0c1 From 58070483f167fe3d409babee8b37eacc37d9f500 Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Fri, 12 Sep 2025 19:18:55 +0100 Subject: [PATCH 6/7] Sync build configuration with latest improvements MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Add missing exclusion patterns to build-config.js: - Ignore build/, node_modules/, tests/, tmp/ directories - Exclude playwright.config.js and package files - Update build submodule to feature/gulp5-update with latest fixes - Ensures consistent build behavior across branches 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- build | 2 +- build-config.js | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/build b/build index 388f97b01..2fb72dce2 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit 388f97b01a26916941aeb45d1e4f99fc4503b0c1 +Subproject commit 2fb72dce2cf7d5267ce7330ec54f4724707378be diff --git a/build-config.js b/build-config.js index b08c9b9b0..6a9f490fb 100644 --- a/build-config.js +++ b/build-config.js @@ -63,11 +63,17 @@ module.exports = { 'base/inc/widgets/less/*.less', // Widget LESS libraries. 'base/inc/installer/css/*css', // Include Installer CSS. 'widgets/**/styles/*.less', // All the widgets' runtime .less files. + '!{build,build/**}', // Ignore build/ and contents + '!{node_modules,node_modules/**}', // Ignore node_modules/ and contents. + '!{tests,tests/**}', // Ignore tests/ and contents. + '!{tmp,tmp/**}', // Ignore tmp/ and contents + '!playwright.config.js', // Exclude playwright config file. '!so-widgets-bundle.php', // Not the base plugin file. It is copied by the 'version' task. '!readme.txt', // Not the readme.txt file. It is copied by the 'version' task. '!readme.md', // Ignore the readme.md file. It is for the github repo. '!.editorconfig', // Ignore .editorconfig file. Only for development. '!base/inc/installer/inc/github-plugin-updater.php', // Exclude Installer's Updater. + '!{package.json,package-lock.json}', // Exclude node package files. ] }, pot: { From e31c8d18b7ff463aaf831999aa1f9a814752688e Mon Sep 17 00:00:00 2001 From: Andrew Misplon Date: Wed, 17 Sep 2025 19:23:59 +0100 Subject: [PATCH 7/7] Update build submodule to include gulp-replace spacing fix - Updated to commit 0876e5b which fixes PHP spacing issues during text-domain replacement - Resolves unwanted spacing being added to installer PHP files during build process --- build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build b/build index 2fb72dce2..0876e5b96 160000 --- a/build +++ b/build @@ -1 +1 @@ -Subproject commit 2fb72dce2cf7d5267ce7330ec54f4724707378be +Subproject commit 0876e5b9620196f6c9a5b58b0122886c874450d3