UUPD 2.0.0-beta is now available — and this release is a big step toward the next stable version of the Universal Updater Drop-In.
What started in alpha as a major internal rewrite is now already being used successfully across dozens of plugins. While this is still a beta, feedback so far has been consistently strong, with reported testing results looking very positive across real-world environments.
At the heart of UUPD 2.0 is a new vendor-aware identity model, where each updater instance is uniquely scoped using vendor + slug. In practice, that means better reliability, fewer collisions, cleaner filter targeting, and a much safer foundation for plugins that bundle UUPD at scale.
Why this matters: if you ship multiple plugins, work across client environments, or need predictable update behaviour in more complex setups, UUPD 2.0 is designed to make that experience more robust and far easier to control.
What’s improved since the first alpha:
- A new layered filter resolution system for more flexible control
- Global filters via
uupd/<filter>
- Vendor-wide filters via
uupd/<filter>/<vendor>
- Fully scoped filters via
uupd/<filter>/<vendor>/<slug>
- Support for bulk overrides, such as routing all plugins from one vendor to a staging update server
- Full compatibility with existing V2 scoped filters
apply_filters_scoped() now resolves filters in sequence, making behaviour clearer and more powerful
- Filter callbacks now consistently receive
$value, $vendor, $slug, $instance_key
Documentation has also been expanded to make adoption easier:
- Added a dedicated Filter Hierarchy section to the main docblock
- Updated examples to show both global and vendor-level overrides
- Clarified the removal of legacy slug-only filters and the recommended replacement patterns
- Published a dedicated migration guide for moving from UUPD 1.4 to 2.0
Migration guide: Read the UUPD 1.4 → 2.0 Migration Guide
This beta is already proving itself, but testing now is especially important. Broader testing helps validate update behaviour across different plugin stacks, hosting environments, private GitHub setups, and bundled multi-plugin scenarios — all of which are exactly where UUPD 2.0 is designed to shine.
If you build with UUPD, now is the ideal time to test your integrations, verify your filter strategy, and make sure your update flows behave exactly as expected before final release. Every test helps strengthen the path to a solid, stable 2.0.