v1.5.1184
Trotting forward
Decentralize your WordPress plugin distribution.
Troy is a suite of plugins that enables independent plugin and theme distribution outside WordPress.org. Host your own update server, protect user privacy, and maintain full control over your software distribution.
What's Changed
Server:
- Added public stats endpoint to retrieve active install, download, and rating counts for a plugin.
- Added download and active install counts to the info endpoint response for each plugin.
- Added auto-refresh checkboxes to the stats pages to enable automatic refreshing every 15 seconds; this also affects the detailed modals.
- Added epoch end date and total plugin count to the plugin stats overview data.
- Added RTL support for the stats interfaces.
- Added Troy icon to menu and settings page.
- Changed PHP, WordPress, Plugin, and Package stats to sort by the version number instead of downloads or "this epoch" counts.
- Changed Troy Mode to remove more admin menu items when enabled.
- Changed the date format used in the stats overview tables to use a shorter format to improve readability; it also uses your site's time preferences now.
- Resolved an issue where change values weren't colored correctly in the stats overview tables.
- Resolved an issue where plugin stats would stop aggregating forever after a failed attempt (this fix works retroactively).
- Resolved an issue where tooltips would be clipped by the accordion wrappers on the settings pages.
- Resolved an issue where "last epoch" installation counts were reset to 0 during epoch finalization. This resolves automatically in a week.
- We couldn't retroactively fix this because the snapshot data is relative to the server time, not epochs. Luckily, this issue was caught in the second week.
- Resolved an issue with plugin info thickbox filtering when WordPress passes a fields array with boolean values.
- Resolved an issue where
package_stats_total_daily_snapshotswasn't being populated. This data is still unused, however.
Client:
- No changes. No version bump.
What's Included
Troy Server — Host your own plugin repository with full WordPress admin integration. Manage plugins via the Block Editor, connect GitHub or WordPress.org repos for automatic updates, and generate installer packages for your clients. Includes anonymous usage statistics.
Troy Client — Enable sideloading for plugin updates, translations, and dependencies from any Troy Server. Simply add a Troy: <repo-url> header to your plugin. Optionally hide plugins from WordPress.org's update API entirely.
Troy Client Daemon — A must-use plugin that enforces Troy Client and blocks WordPress.org APIs until Troy Client is active. Drop it in mu-plugins/ — no configuration needed.
Troy Installer — A tiny installer plugin generated by Troy Server to distribute to your clients. Installs Troy Client and your selected plugins in one click.
Snippets — Helper snippets for hiding Troy Client from the admin, enabling beta channels, and embedding Troy Client in your plugins.
Requirements
| Component | PHP | WordPress | MySQL |
|---|---|---|---|
| Troy Server | 8.4+ | 6.8+ | 8.0.19+ |
| Troy Client | 7.4+ | 6.7+ | 8.0.0+ |
License
MIT — use it freely.
Made with love. By Sybre Waaijer, for the community.
Full Changelog: v1.4.1184...v1.5.1184