sudara / pamplejuce

A JUCE audio plugin template. JUCE 7, Catch2, Pluginval, macOS notarization, Azure Trusted Signing, Github Actions
https://melatonin.dev/blog/
MIT License
406 stars 39 forks source link

Support for alpha and beta versioning #51

Open sudara opened 1 year ago

sudara commented 1 year ago

Context: https://forum.juce.com/t/how-do-you-handle-plugin-versioning/57673

Plugin companies are in a unique spot where

  1. Changes to parameters, etc completely break existing user projects
  2. Alphas, betas and major versions all tend to do this
  3. There's not much consensus/hygiene from plugin companies or trust from users around this
  4. There's no tooling or convention for this

Requirements:

Example PLUGIN_MANUFACTURER_CODE:

Two digits reserver for major version numbers support

SM10 Mela  -  Melatonin: Sine Machine v10
SM11 Mela  -  Melatonin: Sine Machine v11 
SM12 Mela  -  Melatonin: Sine Machine v12 
SM13 Mela  -  Melatonin: Sine Machine v13 

One digit available for major versions, Alpha and Beta specified with A or B

TP3X GDHZ  -  Goodhertz: Ghz Tupe 3    
TPB1 GDHZ  -  Goodhertz: Ghz Tupe 3 B1 
TPB2 GDHZ  -  Goodhertz: Ghz Tupe 3 B2