UUPD – Working towards Version 1.3.0

Tech Articles | July 27, 2025 | Blog, Coding, Plugins, reallyusefulplugins.com, Wordpress

I today started work on what will become version 1.3.0 (currently pre-released as version 1.2.6) and this adds the final items I have wanted to add since I started this project and clears my current roadmap. So I will need to give additional thought about future improvements and its likley development will slow down here for a while as it beds in and begins to leach out into the wild.

What’s Coming?

  • New config option: 'allow_prerelease' => true enables support for prerelease versions (-alpha-beta-rc) during update checks.
  • Regex-based detection of prerelease versions using SemVer-style matching: 1.2.3-beta2.0.0-alpha.1, etc.
  • Fully backward-compatible: prereleases are skipped by default unless explicitly opted in.
  • Updated both plugin and theme update flows to honour pre-release rules
  • New docs folder with lots of new docs and work flow ideas in them
  • Minor inline doc updates for better integration guidance. (Code Blocks)

With this update we will be working to have full native updates for pre-releases and the ability for people to turn on and accept pre-releases

If you’re managing plugin updates outside of WordPress.org using UUPD, you can now safely roll out prerelease versions (like 2.0.0-beta.4) to beta testers without affecting your stable user base. By default, UUPD respects stability and won’t offer prereleases to users unless you’ve explicitly allowed them using the allow_prerelease flag. This makes it possible to tag 1.9.9 as your current stable release and still distribute prereleases of 2.0.0 to a select group for testing and feedback.

To go one step further, you can combine this with WordPress’ built-in auto-update filters. For example, using a snippet that checks a setting like your_plugin_allow_prerelease, you can opt specific users into pre-release updates automatically. Everyone else remains on the stable channel, seeing no update until you officially publish 2.0.0. This approach keeps your core user base safe and stable while giving testers and power users early access all without splitting your codebase or requiring multiple update mechanisms.

add_filter( 'auto_update_plugin', function( $update, $item ) {
    if ( $item->slug === 'your-plugin-slug' && get_option( 'your_plugin_allow_prerelease' ) ) {
        return true;
    }
    return $update;
}, 10, 2 );
PHP

Now out of the box UUPD does all of this

  • Safe defaults for production sites
  • Optional opt-in for testers, staging, or CI workflows
  • Flexible config (per-plugin/theme!)
  • Encourages confident testing without risking your install base

UUPD Prelease check is carried out by the following code snippet in UUPD

if ( ! $allow_prerelease && preg_match('/\d+\.\d+\.\d+-(alpha|beta|rc)[\.\d\-]*/i', $remote_version) )
PHP

New Docs added for advance config

Uupd docs example

Next Steps

I will now begin testing this in my own plugins but with the code changes there should be no breaking changes and I hope to have this out of pre-release and into version 1.3.0 within a week or so.

Support the Author

buy me a coffee
Really Useful Plugin Logo
Wpvideobank temp
Appoligies for any spelling and grammer issue. As a dyslexic i need to rely on tools for this they like me are not perfect but I do try my best