I’ve been wondering what is the self-updating mechanism used by some applications on macOS and found out it’s called Sparkle.
Has anyone used that with a JUCE based product? Any feedback to share? Thanks!
I’ve been wondering what is the self-updating mechanism used by some applications on macOS and found out it’s called Sparkle.
Has anyone used that with a JUCE based product? Any feedback to share? Thanks!
Yes, we’re using Sparkle for a JUCE GUI app!
I don’t know too much about it myself, but the implementation looks fairly straightforward - there’s nothing JUCE-specific AFAIK.
We’ve wrapped it in an AutoUpdate class which uses WinSparkle on Windows - the slightly odd thing is that the implementation on macOS is in Objective-C!
I once tried to integrate Sparkle for Audio Plugins, this was a huge disaster. For standalone apps it might be a good idea, but don’t use it for plugins, trust me!
Alternatively you could have a look at the way the Projucer implements the update-notification here!
Thanks for your feedback!
@ImJimmi thanks for letting me know about WinSparkle.
@vallant It rapidly went through my head, but I intuitively guessed plugins would be the worse candidates for such an integration. Thanks for confirming!
Ha - we’ve got Sparkle and WinSparkle running in an app. You definitely shouldn’t do it with a plugin ![]()
Also - WinSparkle’s developer is scary in GitHub issue responses. Be prepared to debug things yourself
![]()