Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
a1f8b1d
Update packages
ahegyes Nov 10, 2026
e38ad3d
Add rows for spoken notices, entity ids, block help and nested groups
ahegyes Nov 10, 2026
2ed07c3
Add rows for the reshaped component, requirement and notice APIs
ahegyes Nov 10, 2026
e024acc
Speak block-editor notices as plain text
ahegyes Nov 10, 2026
3568379
Point every row label at a control whose id holds an entity
ahegyes Nov 10, 2026
39351b3
Keep formatted help inside the element its control names
ahegyes Nov 10, 2026
14b3f5d
Print the product panel's choice groups in one fieldset
ahegyes Nov 10, 2026
5ab8897
Make every conditional component a component
ahegyes Nov 10, 2026
591780e
Check the WooCommerce floor through a static entry point
ahegyes Nov 10, 2026
7ea812a
Name the notice scripts' callbacks after their handles
ahegyes Nov 10, 2026
588c2ae
Declare the woocommerce package's WooCommerce floor
ahegyes Nov 10, 2026
d27451c
Quote the user, name the data revision and end the uninstall message
ahegyes Nov 10, 2026
89887bc
Check consumer-a's uninstall engine inside its build boundary
ahegyes Nov 10, 2026
c1431b0
Call the fixtures' boot boundary by its role
ahegyes Nov 10, 2026
0509124
Drop unneeded interpolation braces and compare null through is_null()
ahegyes Nov 10, 2026
d960a2d
Unpack the expressions the audit found hard to read
ahegyes Nov 10, 2026
9cb8fd3
Name helpers as their siblings do and check the cache key first
ahegyes Nov 10, 2026
53bc6cd
Place hook callbacks, helpers and getters in their regions
ahegyes Nov 10, 2026
53c0874
State the scheduler's and caches' behavior once, as they behave
ahegyes Nov 10, 2026
c47de38
Describe the bootstrap classes by their roles
ahegyes Nov 10, 2026
396154b
State the notices' and storage's reasons once and in the house form
ahegyes Nov 10, 2026
63c4f3a
Describe the uninstall engine's failures as they happen
ahegyes Nov 10, 2026
70803be
Align class-level PHPStan tags and let Version serve any project
ahegyes Nov 10, 2026
df84b97
Keep each settings docblock to its role and the why it owns
ahegyes Nov 10, 2026
3b218a6
Align the repository docs with CI and the sibling repositories
ahegyes Nov 10, 2026
f59faee
Give every fixture entry and scoper config its description and versions
ahegyes Nov 10, 2026
c33c95d
Teach each package's helpers through the persona its README quotes
ahegyes Nov 10, 2026
dde288a
Give the core tests' copied doubles and helpers one home
ahegyes Nov 10, 2026
4b70a9a
Build the admin-notice tests' notices through one fixture trait
ahegyes Nov 10, 2026
1618fc6
Share the object-form helpers and field behaviors across the tests
ahegyes Nov 10, 2026
8df1fdf
Write the requirement and updater tests' plugin files in one place
ahegyes Nov 10, 2026
e0461bb
Run the tests' child processes through one proc_open helper
ahegyes Nov 10, 2026
9fff4bb
Check every fixture build's scoping in one data-driven test
ahegyes Nov 10, 2026
9e3fb43
Assert uninstall rows through closures, not method-name strings
ahegyes Nov 10, 2026
c7909f5
Derive the package tests' list and stack walk from one source
ahegyes Nov 10, 2026
0f117d7
Give ResultTest's predicate row its own two-column provider
ahegyes Nov 10, 2026
5a8477c
Load the bootstrap classes from a global file
ahegyes Nov 10, 2026
359fbef
Call methods on new objects in PHP 8.4's bare form everywhere
ahegyes Nov 10, 2026
2e1737d
Separate each closing brace from the statement after it
ahegyes Nov 10, 2026
e64190f
Point the WooCommerce row labels at controls whose id holds an entity
ahegyes Nov 10, 2026
389a77b
Correct the docblocks and docs the reviews found inaccurate
ahegyes Nov 10, 2026
ff1d2ef
Speak a delivered notice's paragraphs and list items apart
ahegyes Nov 10, 2026
a80ba0e
Ask WooCommerce's logging settings only about errors
ahegyes Nov 10, 2026
91e9222
Register the core persona's scheduler once and declare one interface
ahegyes Nov 10, 2026
8bba4c8
Print plain help as a paragraph WordPress styles as a description
ahegyes Nov 10, 2026
b392faa
Keep help in a div for every element that ends a paragraph
ahegyes Nov 10, 2026
f89f6c1
Name the angle-bracketed text the post editor does not speak
ahegyes Nov 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

- [ ] Tests added or updated (Unit and/or Integration as appropriate)
- [ ] `composer quality-check` passes locally (PHPCS, PHPStan and the tests)
- [ ] Public API changes are documented in the affected package's `README.md`
- [ ] Changelog fragment added (`composer changelog:add`)
- [ ] Breaking changes are explicitly justified below

## Breaking changes / migration notes
Expand Down
18 changes: 9 additions & 9 deletions AGENTS.md

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# Changelog

Notable changes to the five framework packages, which release together under one version.
All notable changes to the five framework packages, which release together under one version, are documented in this file. Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), versioning follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

Pending entries live in [`changelog/`](./changelog) — add via `composer changelog:add`. Aggregate into a release with `composer changelog:write`.
24 changes: 24 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,32 @@ actionlint
zizmor .github/
```

## Changelog entries

Each user-visible change adds one fragment, so pull requests never conflict on `CHANGELOG.md`:

```sh
composer changelog:add
```

The command asks for the change's significance, its type and its entry, and writes the fragment to `changelog/<branch-name>`, which the pull request commits. CI validates the fragments with `composer changelog:validate`.

## Filing changes

- Keep one concern per pull request.
- Fill in the template's breaking-changes section.
- Follow the code, documentation and commit conventions in [AGENTS.md](AGENTS.md).

## Releases

The five packages release together under one version. A release writes the fragments into a new version block of `CHANGELOG.md`, whose version the fragments' significance sets:

```sh
composer changelog:write
```

Pushing the tag `v<version>` on that commit splits it to every mirror, where consumers' `vcs` repositories find the release.

## WooCommerce floor

The woocommerce package tracks the newest stable WooCommerce release until a tag. Raising the floor moves, in one commit, the manifest's `extra.requires-wc`, the root's and the fixtures' `wp-plugin/woocommerce` and `php-stubs/woocommerce-stubs` constraints, the fixtures' `WC requires at least` and `WC tested up to` headers, and the locks. The same commit re-checks that WooCommerce still uses each cache group `MetaTypes::DEFINITIONS` names, because the uninstall engine flushes them.
4 changes: 1 addition & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,7 @@ The packages form a stack: core builds on bootstrap and shared, settings on core
## Local development

```sh
composer packages-install # PHP deps (wraps composer install, ignoring only the PHP upper bound)
npm install # Node deps (wp-env)
npm run wp-env:start # developer environment at http://localhost:8800, as local, with WooCommerce
npm run setup # PHP and Node deps, then the developer environment at http://localhost:8800, as local, with WooCommerce
composer quality-check # Validation, PHPCS, PHPStan, Unit and Integration tests (starts the tests environment)
```

Expand Down
4 changes: 1 addition & 3 deletions SECURITY.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@

## Reporting a vulnerability

Please report security vulnerabilities privately via [GitHub's security advisory form](https://github.com/ahegyes/wordpress-framework/security/advisories/new). Do not open a public issue.

You can expect an initial response within 7 days. Once the report is triaged, you'll receive updates as fixes land. Once a fix is released, credit is given in the advisory unless you request anonymity.
Report it privately through [GitHub's security advisory form](https://github.com/ahegyes/wordpress-framework/security/advisories/new), never in a public issue. The first response comes within 7 days, and the advisory credits the reporter once a fix is released, unless they ask to stay anonymous.

## Supported versions

Expand Down
13 changes: 7 additions & 6 deletions composer.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading