Skip to content

3.3.8 (develop to uat) - #1289

Merged
gabrielcld2 merged 33 commits into
uatfrom
develop
Sep 22, 2026
Merged

gabrielcld2 merged 33 commits into
uatfrom
develop

Conversation

@gabrielcld2

Copy link
Copy Markdown
Collaborator

dependabot Bot and others added 30 commits September 11, 2026 01:02
Bumps [globals](https://github.com/sindresorhus/globals) from 17.11.0 to 17.12.0.
- [Release notes](https://github.com/sindresorhus/globals/releases)
- [Commits](sindresorhus/globals@v17.11.0...v17.12.0)

---
updated-dependencies:
- dependency-name: globals
  dependency-version: 17.12.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [@codemirror/state](https://github.com/codemirror/state) from 6.7.1 to 6.7.4.
- [Changelog](https://github.com/codemirror/state/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codemirror/state/commits)

---
updated-dependencies:
- dependency-name: "@codemirror/state"
  dependency-version: 6.7.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [lint-staged](https://github.com/lint-staged/lint-staged) from 17.3.0 to 17.5.0.
- [Release notes](https://github.com/lint-staged/lint-staged/releases)
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md)
- [Commits](lint-staged/lint-staged@v17.3.0...v17.5.0)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-version: 17.5.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
WPML hooks WordPress's `home_url` filter to inject the browsing language
into every generated URL. Since rest_url() applies that filter to the
REST base before the endpoint path is appended, a non-default language
corrupts the background sync loopback URL into e.g.
`/wp-json/?lang=fr/cloudinary/v1/queue` instead of a valid route. The
loopback request "succeeds" (200) by hitting the REST index rather than
the sync endpoint, so queued assets are silently never processed and
stay stuck in a "syncing" state.
Bumps [@playwright/test](https://github.com/microsoft/playwright) from 1.61.0 to 1.63.0.
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](microsoft/playwright@v1.61.0...v1.63.0)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-version: 1.63.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
remove_global_hooks() alone only fixes directory/domain negotiation
mode, where WPML separately hooks core's rest_url filter to re-insert
the language after the full URL is built. In parameter mode
(WPML_Lang_Parameter_Filters), nothing does that, so the cleaned URL
was missing ?lang= entirely - not just for the sync loopback, but for
every Utils::rest_url() consumer (asset fetch/save, cache purge,
analytics, UI state), silently running them under the default
language's context. wpml_permalink is WPML's documented API for
exactly this and is idempotent across all three negotiation modes.

Also wraps the hook removal in try/finally so a thrown exception can't
leave WPML's URL filters permanently disabled for the rest of the
request, and guards the undocumented remove_global_hooks/
add_global_hooks methods with method_exists().

Addresses review feedback on PR #1281.
Bumps [php-stubs/woocommerce-stubs](https://github.com/php-stubs/woocommerce-stubs) from 11.0.0 to 11.1.0.
- [Commits](php-stubs/woocommerce-stubs@v11.0.0...v11.1.0)

---
updated-dependencies:
- dependency-name: php-stubs/woocommerce-stubs
  dependency-version: 11.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan-phar-composer-source) from 2.2.12 to 2.2.13.
- [Commits](https://github.com/phpstan/phpstan-phar-composer-source/commits)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-version: 2.2.13
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
The local environment ran on plain HTTP, which hid behaviour that only
appears under TLS: is_ssl() picks the delivery URL scheme, auth cookies
only get the Secure flag over HTTPS, and the admin enforces
FORCE_SSL_ADMIN. Those differences surfaced only in production.

Add an nginx proxy that terminates TLS in front of wp-env, using a
certificate issued by a locally generated CA. Host names resolve through
public wildcard DNS, so no /etc/hosts entry is needed, and the proxy
binds the standard ports so no port number leaks into generated URLs.

Loopback REST requests verify the certificate rather than skipping the
check, so they exercise the same path as production.

CI keeps running over plain HTTP through .wp-env.ci.json, because
runners have no local CA and no proxy container.
Fix media uploaded in a non-default WPML language never finishing sync
…lop/globals-17.12.0

chore(deps-dev): bump globals from 17.11.0 to 17.12.0
…lop/codemirror/state-6.7.4

chore(deps): bump @codemirror/state from 6.7.1 to 6.7.4
…lop/playwright/test-1.63.0

chore(deps-dev): bump @playwright/test from 1.61.0 to 1.63.0
…lop/lint-staged-17.5.0

chore(deps-dev): bump lint-staged from 17.3.0 to 17.5.0
…phpstan/phpstan-2.2.13

chore(deps-dev): bump phpstan/phpstan from 2.2.12 to 2.2.13
…php-stubs/woocommerce-stubs-11.1.0

chore(deps-dev): bump php-stubs/woocommerce-stubs from 11.0.0 to 11.1.0
Bumps [phpstan/phpstan](https://github.com/phpstan/phpstan-phar-composer-source) from 2.2.13 to 2.2.14.
- [Commits](https://github.com/phpstan/phpstan-phar-composer-source/commits)

---
updated-dependencies:
- dependency-name: phpstan/phpstan
  dependency-version: 2.2.14
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps the wordpress group with 13 updates:

| Package | From | To |
| --- | --- | --- |
| [@wordpress/api-fetch](https://github.com/WordPress/gutenberg/tree/HEAD/packages/api-fetch) | `7.54.0` | `7.55.0` |
| [@wordpress/block-editor](https://github.com/WordPress/gutenberg/tree/HEAD/packages/block-editor) | `17.0.0` | `17.1.0` |
| [@wordpress/blocks](https://github.com/WordPress/gutenberg/tree/HEAD/packages/blocks) | `15.27.0` | `16.0.0` |
| [@wordpress/browserslist-config](https://github.com/WordPress/gutenberg/tree/HEAD/packages/browserslist-config) | `6.54.0` | `6.55.0` |
| [@wordpress/components](https://github.com/WordPress/gutenberg/tree/HEAD/packages/components) | `40.0.0` | `40.1.0` |
| [@wordpress/data](https://github.com/WordPress/gutenberg/tree/HEAD/packages/data) | `10.54.0` | `10.55.0` |
| [@wordpress/e2e-test-utils-playwright](https://github.com/WordPress/gutenberg/tree/HEAD/packages/e2e-test-utils-playwright) | `1.54.0` | `2.0.0` |
| [@wordpress/element](https://github.com/WordPress/gutenberg/tree/HEAD/packages/element) | `8.6.0` | `8.7.0` |
| [@wordpress/env](https://github.com/WordPress/gutenberg/tree/HEAD/packages/env) | `11.14.0` | `11.15.0` |
| [@wordpress/eslint-plugin](https://github.com/WordPress/gutenberg/tree/HEAD/packages/eslint-plugin) | `25.10.0` | `26.0.0` |
| [@wordpress/hooks](https://github.com/WordPress/gutenberg/tree/HEAD/packages/hooks) | `4.54.0` | `4.55.0` |
| [@wordpress/i18n](https://github.com/WordPress/gutenberg/tree/HEAD/packages/i18n) | `6.27.0` | `6.28.0` |
| [@wordpress/scripts](https://github.com/WordPress/gutenberg/tree/HEAD/packages/scripts) | `34.2.0` | `35.0.0` |


Updates `@wordpress/api-fetch` from 7.54.0 to 7.55.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/api-fetch/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/api-fetch@7.55.0/packages/api-fetch)

Updates `@wordpress/block-editor` from 17.0.0 to 17.1.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/block-editor/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/block-editor@17.1.0/packages/block-editor)

Updates `@wordpress/blocks` from 15.27.0 to 16.0.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/blocks/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/blocks@16.0.0/packages/blocks)

Updates `@wordpress/browserslist-config` from 6.54.0 to 6.55.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/browserslist-config/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/browserslist-config@6.55.0/packages/browserslist-config)

Updates `@wordpress/components` from 40.0.0 to 40.1.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/components/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/components@40.1.0/packages/components)

Updates `@wordpress/data` from 10.54.0 to 10.55.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/data/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/data@10.55.0/packages/data)

Updates `@wordpress/e2e-test-utils-playwright` from 1.54.0 to 2.0.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/e2e-test-utils-playwright/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/e2e-test-utils-playwright@2.0.0/packages/e2e-test-utils-playwright)

Updates `@wordpress/element` from 8.6.0 to 8.7.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/element/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/element@8.7.0/packages/element)

Updates `@wordpress/env` from 11.14.0 to 11.15.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/env/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/env@11.15.0/packages/env)

Updates `@wordpress/eslint-plugin` from 25.10.0 to 26.0.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/eslint-plugin@26.0.0/packages/eslint-plugin)

Updates `@wordpress/hooks` from 4.54.0 to 4.55.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/hooks/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/hooks@4.55.0/packages/hooks)

Updates `@wordpress/i18n` from 6.27.0 to 6.28.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/i18n/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/i18n@6.28.0/packages/i18n)

Updates `@wordpress/scripts` from 34.2.0 to 35.0.0
- [Release notes](https://github.com/WordPress/gutenberg/releases)
- [Changelog](https://github.com/WordPress/gutenberg/blob/trunk/packages/scripts/CHANGELOG.md)
- [Commits](https://github.com/WordPress/gutenberg/commits/@wordpress/scripts@35.0.0/packages/scripts)

---
updated-dependencies:
- dependency-name: "@wordpress/api-fetch"
  dependency-version: 7.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/block-editor"
  dependency-version: 17.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/blocks"
  dependency-version: 16.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: wordpress
- dependency-name: "@wordpress/browserslist-config"
  dependency-version: 6.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/components"
  dependency-version: 40.1.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/data"
  dependency-version: 10.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/e2e-test-utils-playwright"
  dependency-version: 2.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: wordpress
- dependency-name: "@wordpress/element"
  dependency-version: 8.7.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/env"
  dependency-version: 11.15.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/eslint-plugin"
  dependency-version: 26.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: wordpress
- dependency-name: "@wordpress/hooks"
  dependency-version: 4.55.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/i18n"
  dependency-version: 6.28.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: wordpress
- dependency-name: "@wordpress/scripts"
  dependency-version: 35.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: wordpress
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [lint-staged](https://github.com/lint-staged/lint-staged) from 17.5.0 to 17.5.1.
- [Release notes](https://github.com/lint-staged/lint-staged/releases)
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md)
- [Commits](lint-staged/lint-staged@v17.5.0...v17.5.1)

---
updated-dependencies:
- dependency-name: lint-staged
  dependency-version: 17.5.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Bumps [cssnano](https://github.com/cssnano/cssnano) from 7.1.9 to 9.0.4.
- [Release notes](https://github.com/cssnano/cssnano/releases)
- [Commits](https://github.com/cssnano/cssnano/compare/cssnano@7.1.9...cssnano@9.0.4)

---
updated-dependencies:
- dependency-name: cssnano
  dependency-version: 9.0.4
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Three problems found in review of the HTTPS proxy scripts.

Container lookup matched on a name pattern, but wp-env derives its
Compose project name from a hash of the config path, so the pattern was
loose enough to match other projects. The scripts edited /etc/hosts and
the certificate store of an unrelated container. Identify containers by
the bind mount of this repository instead.

sed -i cannot write /etc/hosts, because Docker bind-mounts it and sed
works by renaming a temporary file over the target. The failure was
discarded, so stale host entries accumulated while the script reported
success. Filter through a temporary file and copy the contents back.

Upstream ports were hard-coded, so a developer using wp-env's supported
port overrides got an nginx upstream error. Read the port from the
environment, then the config files, then fall back to the defaults.
The unit job installed @wordpress/env on its own into a scratch prefix
to avoid a full npm ci. That install resolved dependency ranges fresh
against npm rather than obeying package-lock.json, so the job depended
on whatever upstream had published that day.

A broken @wp-playground/cli 3.1.55 release, pulled in transitively by
@wordpress/env, pinned a @php-wasm/node-8-1 version that was never
published. Every run of the job failed while the lockfile-based jobs
were unaffected.

Use npm ci, which installs the locked tree and cannot break because of
a third-party release. Its postinstall hook also runs composer install,
so the separate Composer step is no longer needed. Enable npm caching,
which this job alone was missing and which explains the slow npm ci
timings that motivated the original workaround.

Also stop exporting NODE_EXTRA_CA_CERTS unconditionally for e2e runs.
CI has no certificate, so Node logged "Ignoring extra certs" on every
run; a small wrapper now sets it only when the file exists.
…phpstan/phpstan-2.2.14

chore(deps-dev): bump phpstan/phpstan from 2.2.13 to 2.2.14
…lop/wordpress-0ec5f3298c

chore(deps-dev): bump the wordpress group with 13 updates
…lop/lint-staged-17.5.1

chore(deps-dev): bump lint-staged from 17.5.0 to 17.5.1
…lop/cssnano-9.0.4

chore(deps-dev): bump cssnano from 7.1.9 to 9.0.4
Bumps [webpack](https://github.com/webpack/webpack) from 5.109.0 to 5.111.1.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Changelog](https://github.com/webpack/webpack/blob/main/CHANGELOG.md)
- [Commits](webpack/webpack@v5.109.0...v5.111.1)

---
updated-dependencies:
- dependency-name: webpack
  dependency-version: 5.111.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
…lop/webpack-5.111.0

chore(deps-dev): bump webpack from 5.109.0 to 5.111.1
PatelUtkarsh and others added 3 commits September 22, 2026 13:43
PR review found two places that still assumed the default ports after
this branch made them configurable.

The Apache listener was hard-coded to 8888, so with a custom port
wp-env published one port while Apache opened another and loopback
requests failed. It now uses the resolved port from config.sh.

The URL filter matched a literal 8888 or 8889, so a custom port stayed
in every generated URL. It now derives the public origin from
WP_CONTENT_URL, which wp-env never rewrites, and replaces whatever port
is present. It also leaves URLs on other hosts untouched, which the
previous pattern did not guard against.
feat(env): Serve local wp-env over HTTPS
@gabrielcld2
gabrielcld2 merged commit e4076b0 into uat Sep 22, 2026
12 checks passed
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.

3 participants