Releases: fairpm/fair-plugin
0.4.1
Whoops, we forgot to bump the plugin header - apologies if you saw the "you need to update" notice after updating! Fear not, we've automated this to avoid it in the future.
What's Changed
- 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
New Contributors
- @handpressed made their first contribution in #202
Full Changelog: 0.4.0...0.4.1
0.4.0
Say hello to 0.4.0 - and with it, the ability to install and update packages via the FAIR protocol! 🎉
The biggest change in this release is the introduction of the decentralized protocol. Now, given a plugin's Decentralized ID (DID), you can install it directly from the plugins screen. This uses the decentralized FAIR protocol to find where the plugin is hosted and install it, without touching a centralized repository.
install.mp4
Try it out with a test plugin ID: did:plc:deoui6ztyx6paqajconl67rz
Plus, once installed, any plugin with a Plugin ID
header or any theme with a Theme ID
header will receive updates over the FAIR protocol.
This is just the start of our decentralized package management tools, and we're now on the road towards 1.0, where we plan to introduce the listing and search functionality to replace the existing plugins list.
Also in this release:
- FAIR has improved compatibility with multisite, but now only allows network activation - since plugins and themes are only managed at the network level.
- Avatars are also managed more effectively across the network, with changes to how settings are stored (thanks @norcross!)
- Pings are now sent via IndexNow when content is deleted, ensuring that 404s are picked up sooner (thanks @peterwilsoncc!)
- The browser update check has been updated to reflect current browsers.
Thanks as always to our fantastic contributors!
What's Changed
- 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 newerstr_*()
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 inFAIR\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
New Contributors
- @jorydotcom made their first contribution in #146
- @peterwilsoncc made their first contribution in #160
- @norcross made their first contribution in #123
Full Changelog: 0.3.0...0.4.0
0.3.0
Our first post-launch update!
In this release, we're fixing a bunch of small bugs reported by the community after launch. We're also adding a lot of translations thanks to contributions from the polyglot community.
Note: the plugin's slug may have changed since 0.2.0 depending on how you installed it. This should be the last time this needs to change, but is necessary for compatibility with the update tools we're currently using.
Thanks to all of our wonderful new contributors for their work, and for the reception from everyone!
Future releases will follow our roadmap and 6 week release schedule.
What's Changed
- Update URL for REST schema by @afragen in #5
- Add Git Updater integration headers by @afragen in #7
- Fix invalid CSS declaration by @Soean in #10
- Typo in Readme by @rowanc1 in #35
- Fix a typo in class-lite.php by @szepeviktor in #31
- Fix errors discovered by static analysis by @szepeviktor in #32
- Fix localization issues preventing strings from being translated by @TeemuSuoranta in #24
- [browserslist] Update browser regex by @github-actions in #48
- Terminology improvements by @milesddavis in #52
- More terminology improvements within the plugin by @milesddavis in #54
- Keep generate-pot up to date with main by @timiwahalahti in #58
- Generate POT - 2025-06-10 by @github-actions in #61
- Add
Domain Path
plugin header #17 by @ideag in #21 - Update Readme with Installation and Uninstallation notes by @Ipstenu in #55
- Revert #5 by @afragen in #16
- Remove check on stable PHP versions from dashboard widget logic by @afragen in #46
- Revert "Keep generate-pot up to date with main" by @afragen in #74
- it_IT translation for FAIR plugin by @andreg in #49
- ca translation for FAIR plugin (POT 6-10-25) by @marcarmengou in #27
- Generate POT - 2025-06-11 by @github-actions in #75
- Add a bit of explanatory text to the settings page by @jdevalk in #73
- Add translator comments by @afragen in #77
- [DOCS] Extend comment to prevent fatal errors on generated strings by @ramonfincken in #43
- Support ClassicPress News widget by @xxsimoxx in #65
- Translation German de_DE for the Fair-Plugin by @La-Geek in #78
- zh_TW Language Pack Based on 0.2.0 by @alexclassroom in #79
- Add Swedish translation (based on POT 2025-06-07) by @tobifjellner in #40
- Generate POT - 2025-06-12 by @github-actions in #81
- Improve comments to translators and removing indirect formatting by @tobifjellner in #63
- Switch escaping to
aria-label
and change text order. by @joedolson in #83 - Add fair-de_DE.l10n.php by @Presskopp in #84
- Correct the text domain for translation files by @johnbillion in #88
- lt_LT translation for FAIR plugin #17 by @ideag in #20
- Add Hungarian (hu_HU) translation support by @trueqap in #85
- Add Dutch translations files (including formal) by @toineenzo in #92
- Update README.md to change it's to its by @JoeRess in #89
- Generate POT - 2025-06-16 by @github-actions in #94
- Estonian translation for FAIR plugin by @webdocdisain in #91
- fi translation for FAIR plugin #17 by @TeemuSuoranta in #23
- Fix loading translations by @TeemuSuoranta in #96
- Add initial PHPUnit test infrastructure. by @costdev in #60
- Make priority later to override GU data, pref to GUL if present by @afragen in #97
- Add generate missing i18n files action by @timiwahalahti in #98
- Update Query Monitor to 3.18.0 by @johnbillion in #93
- Change type definition on notify_users to allow for null input by @topher1kenobe in #34
- Add
.gitattributes
and exclude other development files. by @costdev in #103 - Use "fair-plugin" in the bundled distribution script. by @costdev in #105
- [browserslist] Update browser regex by @github-actions in #90
- Privacy Statement by @Ipstenu in #106
- Bump the version to 0.3.0 by @rmccue in #107
New Contributors
- @Soean made their first contribution in #10
- @rowanc1 made their first contribution in #35
- @szepeviktor made their first contribution in #31
- @TeemuSuoranta made their first contribution in #24
- @milesddavis made their first contribution in #52
- @timiwahalahti made their first contribution in #58
- @ideag made their first contribution in #21
- @Ipstenu made their first contribution in #55
- @andreg made their first contribution in #49
- @marcarmengou made their first contribution in #27
- @jdevalk made their first contribution in #73
- @ramonfincken made their first contribution in #43
- @xxsimoxx made their first contribution in #65
- @La-Geek made their first contribution in #78
- @alexclassroom made their first contribution in #79
- @tobifjellner made their first contribution in #40
- @joedolson made their first contribution in #83
- @Presskopp made their first contribution in #84
- @johnbillion made their first contribution in #88
- @trueqap made their first contribution in #85
- @toineenzo made their first contribution in #92
- @JoeRess made their first contribution in #89
- @webdocdisain made their first contribution in #91
- @costdev made their first contribution in #60
- @topher1kenobe made their first contribution in #34
- @rmccue made their first contribution in #107
Milestone: https://github.com/fairpm/fair-plugin/milestone/1?closed=1
Full Changelog: 0.2.0...0.3.0
Release 0.2.0
The initial public release includes the base code that
- Stops calling home to WordPress.org servers
- Calls packages from AspireCloud
- Uses local images instead of Gravatar