[unreleased]

#### 1.4.1 / 2026-8-25

* Pass at validation of hash by @afragen in https://github.com/fairpm/fair-plugin/pull/436
* Validate bundle hash by @afragen in https://github.com/fairpm/fair-plugin/pull/437
* Rearchitect `Updater` into a registry by @johnbillion in https://github.com/fairpm/fair-plugin/pull/428
* set update-browserslist.yaml to manual dispatch only by @chuckadams in https://github.com/fairpm/fair-plugin/pull/447
* Update RELEASE.MD by @Ipstenu in https://github.com/fairpm/fair-plugin/pull/458
* hotfix, originally in PR4428 by @afragen in https://github.com/fairpm/fair-plugin/pull/463
* Did manager integration by @namithj in https://github.com/fairpm/fair-plugin/pull/465
* Add PHPStan checks by @kasparsd in https://github.com/fairpm/fair-plugin/pull/382
* bump fairpm/did-manager-wordpress to 0.0.4-a by @chuckadams in https://github.com/fairpm/fair-plugin/pull/470
* Release 1.4.1 by @Ipstenu in https://github.com/fairpm/fair-plugin/pull/515

#### 1.4.0 / 2026-5-14

* [bump-version] Bump version to 1.3.0-RC1 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/432
* release: merge release_1.3.0 into development for RC testing by @cdils in https://github.com/fairpm/fair-plugin/pull/433
* Pass at validation of hash by @afragen in https://github.com/fairpm/fair-plugin/pull/436
* Validate bundle hash by @afragen in https://github.com/fairpm/fair-plugin/pull/437
* Rearchitect `Updater` into a registry by @johnbillion in https://github.com/fairpm/fair-plugin/pull/428
* set update-browserslist.yaml to manual dispatch only by @chuckadams in https://github.com/fairpm/fair-plugin/pull/447
* release: merge release/1.3.0-RC4 into development for RC testing by @cdils in https://github.com/fairpm/fair-plugin/pull/449
* Update RELEASE.MD by @Ipstenu in https://github.com/fairpm/fair-plugin/pull/458
* hotfix, originally in PR4428 by @afragen in https://github.com/fairpm/fair-plugin/pull/463
* Update ca POT translation (02-26-25) by @marcarmengou in https://github.com/fairpm/fair-plugin/pull/459
* Update stable tag version to 1.4.0 by @marcarmengou in https://github.com/fairpm/fair-plugin/pull/461
* Did manager integration by @namithj in https://github.com/fairpm/fair-plugin/pull/465
* Add PHPStan checks by @kasparsd in https://github.com/fairpm/fair-plugin/pull/382
* [bump-version] Bump version to 1.4.0-BETA by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/468
* Release: merge 1.4.0 into development for BETA testing by @cdils in https://github.com/fairpm/fair-plugin/pull/469
* Remove < PHP 8.0 & WP 6.2 from test matrix by @jazzsequence in https://github.com/fairpm/fair-plugin/pull/485
* release: merge Release 1.4.0 into main for production release by @cdils in https://github.com/fairpm/fair-plugin/pull/484

##### New Contributors
* @namithj made their first contribution in https://github.com/fairpm/fair-plugin/pull/465
* @kasparsd made their first contribution in https://github.com/fairpm/fair-plugin/pull/382

#### 1.3.0 / 2026-2-25

* Improved automated release process
* Improved caching errors
* Clarify steps in RELEASE.MD by @cdils in https://github.com/fairpm/fair-plugin/pull/407
* set update-browserslist.yaml to manual dispatch only by @chuckadams in https://github.com/fairpm/fair-plugin/pull/444
* [bump-version] Bump version to 1.3.0 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/453
* Generate POT - 2026-02-25-215627 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/454
* Release merging 1.3.0 into main for production release! by @Ipstenu in https://github.com/fairpm/fair-plugin/pull/439

#### 1.2.2 / 2025-12-24

* Add RELEASE.md documenting the version release process by @cdils in https://github.com/fairpm/fair-plugin/pull/355
* Update changelog.md with 1.2.1 release notes by @cdils in https://github.com/fairpm/fair-plugin/pull/391
* Pass 4 arguments to `maybe_rename_on_package_download`. by @costdev in https://github.com/fairpm/fair-plugin/pull/394
* [bump-version] Bump version to 1.2.2 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/395

#### 1.2.1 / 2025-12-22

* confirm array or object parts exist before using by @norcross in https://github.com/fairpm/fair-plugin/pull/372
* Rename function for context by @afragen in https://github.com/fairpm/fair-plugin/pull/377
* Update rename on download by @afragen in https://github.com/fairpm/fair-plugin/pull/378
* Fix modal for empty $sections by @afragen in https://github.com/fairpm/fair-plugin/pull/375
* Update jdecked/twemoji to 17.0.2. by @costdev in https://github.com/fairpm/fair-plugin/pull/379
* Workflows: Add WP 6.8, 6.9 and PHP 8.5 to PHPUnit tests. by @costdev in https://github.com/fairpm/fair-plugin/pull/380
* More FAIR Connect naming changes by @johnbillion in https://github.com/fairpm/fair-plugin/pull/385
* Hash the directory name of a package on install. by @costdev in https://github.com/fairpm/fair-plugin/pull/227
* Update ca POT translation (12-18-25) by @marcarmengou in https://github.com/fairpm/fair-plugin/pull/387
* [bump-version] Bump version to 1.2.1 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/388
* Fix variable quoting in Generate POT by @cdils in https://github.com/fairpm/fair-plugin/pull/389

##### New Contributors
* @cdils made their first contribution inhttps://github.com/fairpm/fair-plugin/pull/389

#### 1.2.0 / 2025-12-11

* Generate POT - 2025-11-07 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/314
* Issue and PR Templates by @Ipstenu in https://github.com/fairpm/fair-plugin/pull/304
* Updater: Use stylesheet directory to determine theme’s style.css location. by @peterwilsoncc in https://github.com/fairpm/fair-plugin/pull/323
* Docs: Convert block comments to multiple single line comments. by @costdev in https://github.com/fairpm/fair-plugin/pull/326
* Make emoji use and rendering consistent in GitHub templates. by @costdev in https://github.com/fairpm/fair-plugin/pull/321
* Link to the FAIRPM repo's discussions section. by @costdev in https://github.com/fairpm/fair-plugin/pull/322
* fix for non-fair plugin install with no did string by @afragen in https://github.com/fairpm/fair-plugin/pull/328
* Parse IndexNow request earlier. by @peterwilsoncc in https://github.com/fairpm/fair-plugin/pull/317
* Skip IndexNow notifications during imports. by @peterwilsoncc in https://github.com/fairpm/fair-plugin/pull/319
* Add readme.txt and changelog by @afragen in https://github.com/fairpm/fair-plugin/pull/331
* Add array_first() and array_last() compatibility from WP6.9 by @afragen in https://github.com/fairpm/fair-plugin/pull/332
* Update get|set_transient to get|set_site_transient by @afragen in https://github.com/fairpm/fair-plugin/pull/330
* Rename minifair to FAIR Beacon by @jdevalk in https://github.com/fairpm/fair-plugin/pull/340
* Ensure proper format of $icons in transient by @afragen in https://github.com/fairpm/fair-plugin/pull/343
* Add Author URI and Security contact to plugin header by @toderash in https://github.com/fairpm/fair-plugin/pull/346
* rework dotorg_connectivity site health check - 2 by @joedolson in https://github.com/fairpm/fair-plugin/pull/337
* removing data on uninstall by @norcross in https://github.com/fairpm/fair-plugin/pull/347
* Appropriate slug rename on update by @afragen in https://github.com/fairpm/fair-plugin/pull/342
* Support custom avatars when gravatar is left enabled. by @joedolson in https://github.com/fairpm/fair-plugin/pull/349
* [browserslist] Update browser regex by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/325
* Change text naming of plugin by @joedolson in https://github.com/fairpm/fair-plugin/pull/351
* Update assets for FAIR Connect renaming by @joedolson in https://github.com/fairpm/fair-plugin/pull/352
* Add screenshots by @jazzsequence in https://github.com/fairpm/fair-plugin/pull/348
* Generate POT - 2025-11-08 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/324
* Generate POT - 2025-12-10 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/358
* Update ca POT translation (9-24-25) by @marcarmengou in https://github.com/fairpm/fair-plugin/pull/270
* add missing translator comments by @afragen in https://github.com/fairpm/fair-plugin/pull/359
* German translation files for FAIR 1.0 by @La-Geek in https://github.com/fairpm/fair-plugin/pull/297
* Generate missing i18n files - 2025-12-10 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/361
* Generate POT - 2025-12-10 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/360
* Populate alsoKnownAs data after fetching it from the ledger. by @johnbillion in https://github.com/fairpm/fair-plugin/pull/357
* Open the validated domain in a new tab so it doesn't open in the modal iframe by @johnbillion in https://github.com/fairpm/fair-plugin/pull/356
* Update conditional for possible empty $svg by @afragen in https://github.com/fairpm/fair-plugin/pull/363
* Generate POT - 2025-12-11 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/365
* Don't create a bundle for versions older than FAIR supports by @johnbillion in https://github.com/fairpm/fair-plugin/pull/288
* Update de_DE translation by @Soean in https://github.com/fairpm/fair-plugin/pull/112
* Close existing automated PRs before creating new ones by @jazzsequence in https://github.com/fairpm/fair-plugin/pull/362
* Update sv_SE to .pot for 2025-06-16 by @tobifjellner in https://github.com/fairpm/fair-plugin/pull/109
* Generate missing i18n files - 2025-12-11 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/366
* [bump-version] Bump version to 1.2.0 by @github-actions[bot] in https://github.com/fairpm/fair-plugin/pull/368
* Fix jq command in workflow for closing PRs by @rmccue in https://github.com/fairpm/fair-plugin/pull/369

##### New Contributors
* @toderash made their first contribution in https://github.com/fairpm/fair-plugin/pull/346
* @jazzsequence made their first contribution in https://github.com/fairpm/fair-plugin/pull/348

#### 1.1.0 / 2025-11-02

* Workflows: When detecting POT changes, ignore the creation date. by @costdev in #274
* Add a Playground link to a PR. by @costdev in #278
* Banner defaults should be empty string, not null by @afragen in #280
* Fix icon dimension check to match protocol requirements by @meszarosrob in #282
* Add WP-CLI support by @costdev in #277
* [browserslist] Update browser regex by @github-actions[bot] in #275
* Generate POT - 2025-10-04 by @github-actions[bot] in #285
* Add more data to get_package_data(), renamed from get_update_data() by @afragen in #286
* Generate POT - 2025-10-09 by @github-actions[bot] in #289
* [browserslist] Update browser regex by @github-actions[bot] in #298
* Add last_updated to metadata document by @costdev in #262
* Add plugin banner & icon assets by @joedolson in #306
* Skip avatar URLs or link markup that do not contain secure.gravatar.com. by @costdev in #302
* Modify Add Plugins message. by @afragen in #305
* fix duplicate entries in featured tab by @afragen in #307
* Fix plugin search, broke with escaping by @afragen in #309
* [browserslist] Update browser regex by @github-actions[bot] in #312
* Sort plugin modal tabs by @afragen in #310
* Patch update browsers bin by @ramonfincken in #44
* [bump-version] Bump version to 1.1.0 by @github-actions[bot] in #313
* Generate POT - 2025-10-27 by @github-actions[bot] in #303

#### 1.0.0 / 2025-09-23

* [browserslist] Update browser regex by @github-actions[bot] in #209
* Add release asset header by @afragen in #211
* [browserslist] Update browser regex by @github-actions[bot] in #214
* Add defaults for missing data by @afragen in #220
* Use wp_cache_* instead of get|set_transient by @afragen in #218
* Fix dashboard news widget and add caching by @afragen in #223
* Generate POT - 2025-08-17 by @github-actions[bot] in #224
* [browserslist] Update browser regex by @github-actions[bot] in #226
* Use local metadata when attempting to get Mini-FAIR data from same site as package is registered by * @afragen in #221
* Remove primary dashboard widget news feed by @afragen in #229
* Increase planets items by @afragen in #230
* Icons: Guard against a non-array updates response by @afragen in #244
* Prevent pings of unpublished URLs. by @peterwilsoncc in #246
* Change from wp_cache_* to *_transient for fair-plugin by @afragen in #248
* [browserslist] Update browser regex by @github-actions[bot] in #232
* Use bridged data from legacy endpoints by @rmccue in #250
* Add the "Activate" button to get_action_button(). by @costdev in #251
* Check if the package is installed before trying to set its filepath and slug. by @costdev in #253
* [browserslist] Update browser regex by @github-actions[bot] in #254
* Update class-lite.php to use wp_remote_get by @afragen in #256
* Verify signatures when downloading packages by @costdev in #247
* Add package domain validation by @rmccue in #243
* Ensure the user is allowed to activate the plugin. by @costdev in #260
* Remove debug message upon successful signature verification. by @costdev in #259
* Rename package from fair to fairpm by @rmccue in #263
* Only support PLC DIDs for now. by @costdev in #261
* Allow searching by DID by @costdev in #258
* Add some contact info to composer.json by @philipjohn in #119
* [bump-version] Bump version to 1.0.0 by @github-actions[bot] in #264
* Generate POT - 2025-09-23 by @github-actions[bot] in #265

#### 0.4.1 / 2025-07-31

* Update plugin.php version 0.3.0 -> 0.4.0 by @handpressed in #202
* Add workflow to bump the version by @rmccue in #203
* [bump-version] Bump version to 0.4.1 by @github-actions[bot] in #206
* Fix header version bump by @rmccue in #207

#### 0.4.0 / 2025-07-29

* un-escape class-lite.php for Ryan by @afragen in #121
* Add random color SVG icons for updates by @afragen in #120
* Add some phpcs fixes to FAIR/Icons by @afragen in #133
* Add and apply coding standards. by @costdev in #129
* Use const in icons/namespace.php by @afragen in #134
* add Git Updater Lite based updater for packages by @afragen in #131
* Declare the plugin as network-only by @johnbillion in #135
* Updated italian translation by @andreg in #118
* Remove the main constraint when running the PHPCS workflow. by @costdev in #140
* Update CONTRIBUTING.md by @jorydotcom in #146
* Refactor for reuse of functions elsewhere by @afragen in #150
* add check to update transient for default icons check by @afragen in #149
* [browserslist] Update browser regex by @github-actions[bot] in #141
* Only exclude class-lite.php from PHPCS by @afragen in #157
* Ping IndexNow for newly 404ing URLs. by @peterwilsoncc in #160
* Add WP Core compat.php by @afragen in #164
* Make compat.php compliant with the coding standard. by @costdev in #165
* refactoring avatar settings by @norcross in #123
* Fix code standards issues by @afragen in #171
* Replace strpos() with newer str_*() functions. by @costdev in #166
* Split compat.php into php-polyfill.php and wp-polyfill.php by @afragen in #170
* Add installer for FAIR protocol by @rmccue in #71
* Remove unused use statement in FAIR\Updater. by @costdev in #194
* Fix an inconsistent error code in parse_did(). by @costdev in #191
* Generate POT - 2025-07-28 by @github-actions[bot] in #195
* Fix context message for platform string. by @joedolson in #198
* Remove Packages, Updater from feature flag by @afragen in #197
* Generate POT - 2025-07-29 by @github-actions[bot] in #200
* Fix the documented type and default value of MetadataDocument::$sections. by @costdev in #193
* Ensure the returned MetadataDocument ID matches the DID in the request. by @costdev in #192
