How do I change the update found prompt?

Asked by dlocpuwons

So the way our VCS is set up, our software has the CFBundleVersion set to "654" (for example) and the CFBundleShortVersionString set to "mainline".

When I run the updater it says "There is a new build 655, you currenlty have mainline".

Is there a way I can change it to read the CFBundleVersion instead of the CFBundleShortVersionString so it'll say something more like "There is a new build 655, you currently have 654"? I did some grepping around but I couldn't find where to change this.

Thanks in advance.

Question information

Language:
English Edit question
Status:
Answered
For:
Sparkle Edit question
Assignee:
No assignee Edit question
Last query:
Last reply:
Revision history for this message
Hofman (cmhofman) said :
#1

Sparkle uses the same logic for the displayed version from the bundle and the appcast: first try shortVersionString, if that's missing try the version. This is the best and most reasonable guess Sparkle can make, and is consistent.

Anyway, IMHO it seems to me you misunderstand the use of CFBundleShortVersionString. I strongly doubt that "mainline" properly describes the version of your product for your users.

This also means that I think it makes sense that Sparkle does not give an option to allow what you want.

Revision history for this message
dlocpuwons (cameron-pulsford) said :
#2

I agree that "mainline" does not accurately describe the version, but I'm not in charge of our VCS and that's what I'm working with. We have two branches, mainline and whatever the current release that is being worked on. The mainline is just the build number we use internally and the release branch is something more standard like 3.0.1 that our users see.

I was hoping there would just be a string somewhere that I could change. It is comparing correctly and doing the right thing, it's just a cosmetic thing. Am I missing something completely obvious?

Revision history for this message
Andy Matuschak (andymatuschak) said :
#3

I'm afraid you'll have to change the behavior of [SUHost displayVersion] to make Sparkle do what you want; that setup is non-standard. I hope that helps!

Revision history for this message
Hofman (cmhofman) said :
#4

If you have any influence on the VCS team, I would urge you to advice them they're doing things very wrong. In fact, it's about opposite: CFVersion is used for an internal version number (think of a MacOSX AppKit version number like 743.36, which the user never sees), and CFBundleShortVersionString is used for a user-visible version number (like a MacOSX version number 10.3.9). They should be considered /alternate/ representations of the version. Neither of them should be used for a branch name. Hence what you're doing is a deliberate bug, and you should expect buggy results. The fact that it compares correctly and only results in a cosmetic error is just pure luck.

Can you help with this problem?

Provide an answer of your own, or ask dlocpuwons for more information if necessary.

To post a message you must log in.