Skip to content

Release 3.4.1#430

Merged
jrfnl merged 11 commits intomainfrom
develop
Mar 13, 2026
Merged

Release 3.4.1#430
jrfnl merged 11 commits intomainfrom
develop

Conversation

@jrfnl
Copy link
Collaborator

@jrfnl jrfnl commented Mar 13, 2026

Pre-release

  • If no upcoming versioned milestone exists, and there are merged PRs in the Next release milestone:
    • Determine what the version number should be for the release and rename the Next release milestone to that version number.
      This project uses semantic versioning to determine the version of the next release.
    • Create a new "Next release" milestone for the release after this one.
    • Move anything that is still open in the current milestone to the new Next release milestone.
  • Verify that any PR merged since the last release has a milestone attached to it.
  • Create a changelog based on everything in the milestone, pull the changelog changes & merge the PR. - PR PHPCS: bug fix - prevent error for property which is not always available (incl changelog 3.4.1) #428
    Verify that a release link at the bottom of the CHANGELOG.md file has been added.
  • Double-check that nothing was merged into the main branch.
    • If there are unreleased commits in main, merge main into develop or cherrypick the commits from main into the develop branch.

Release

  • Open a PR to merge the develop branch to main.
    • Pro-tip: use this release checklist as the PR description to document that this release checklist has been followed.
  • Merge that PR once all CI checks have passed.
  • Create a release on GitHub, also creating a new tag (targeting main) in the process, and copy & paste the changelog to it.
    • Add/edit the relevant links to the bottom of the changelog to make sure all texts between [] in changelog entries become links.
    • For example: [PHP_CodeSniffer] only becomes a link when [PHP_CodeSniffer]: https://github.com/squizlabs/PHP_CodeSniffer/releases is present as well.
  • Publish the release.
  • Fast-forward develop to main.
  • Close the milestone.

Announce

  • Post a message in the #yoastcs Slack channel on the Yoast Slack to announce the new release:
    We just released YoastCS x.y.z
    Changelog: https://github.com/Yoast/yoastcs/releases/tag/x.y.z
    

jrfnl and others added 11 commits February 20, 2026 13:42
The changelog link for PHPCompatibilityWP changed from a Readme subsection to a separate file, but then when I updated that link, I started wondering why the majority of packages uses links to the "Releases" page and only some to CHANGELOG files, even though most projects have changelog files.

As the CHANGELOG links are branch specific, while the "Releases" links are permalinks in the GH interface, I've now fixed the links to always point to the "Releases" page.
…able

Turns out the `checkIfConditions` property for the `SlevomatCodingStandard.ControlStructures.RequireNullCoalesceEqualOperator` sniff is only available as of Slevomat 8.17.0.

As Slevomat raised their minimum PHP version to PHP 7.4 in v 8.16.0 and this package still supports a minimum of PHP 7.2, the version constraint for the Slevomat dependency cannot be changed for the time being.

If we set the property directly on the sniff (like originally done), PHPCS will error out with the following error message when run with Slevomat < 8.17.0:
```
ERROR: Property "checkIfConditions" does not exist on sniff SlevomatCodingStandard.ControlStructures.RequireNullCoalesceEqualOperator.
```

So, even though the property is useful for those Yoast packages which can run with a higher Slevomat version (i.e. all packages which have a PHP 7.4 minimum and no conflicting dependencies), we unfortunately cannot (yet) set it by default.

Ref:
* slevomat/coding-standard@2031373
* https://github.com/slevomat/coding-standard/releases/tag/8.17.0
Co-authored-by: Juliette <663378+jrfnl@users.noreply.github.com>
Co-authored-by: Juliette <663378+jrfnl@users.noreply.github.com>
Add a release checklist to guide and standardize the release process
PHPCS: bug fix - prevent error for property which is not always available (incl changelog 3.4.1)
@jrfnl jrfnl added this to the 3.4.1 milestone Mar 13, 2026
@coveralls
Copy link

Coverage Status

coverage: 99.248%. remained the same
when pulling acfaceb on develop
into c3f5b28 on main.

@jrfnl jrfnl merged commit dedd30d into main Mar 13, 2026
52 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants