For checking newer version from omaha server, sparkle uses CFBundleVersion is used.
It's last two part of full version.
(Ex, CFBundleVersion is 72.95 whereas CFBundleShortVersionString is 78.0.72.59)
If we start our 1.0 with xx.1.0.1, sparkle don't update to our 1.0 because 0.1 is lower than previous one(ex, 72.59).
We should test and handle this issue for our 1.0 era.
cc @bsclifton @bbondy @mbacchi @mihaiplesa
What is our version string policy with 1.0?
As you can see with below capture, we set two version strings when update dmg to Omaha server and
Version string maybe used for checking newer version from Sparkle.

If we want to start with 1.0.0, IMO, managing Version separately would be one possible option by just incrementing from our latest version. WDYT?
cc: @mbacchi prepping for 1.0 versioning
This is relevant to Windows as well. We have to test and decide if we are planning to merely update the version string on the Omaha server, vs. in the product build. I did a simple test and find that it is not possible to simply change the version in Omaha server from say 78.0.70.121 to 78.1.0.0, as it will update the version installed, but give an error during installation, and go into an infinite update loop.
Example: screenshot of omaha-server using test channel x64-one0, changing the version string from 78.0.70.121 to 78.1.0.0:

Error message in BraveUpdate.log:
[10/23/19 17:10:02.987][BraveUpdate:goopdate][13120:5156][Registered version does not match expected][{AFE6A462-C574-4B8A-AF43-4CC60DF4563B}][78.0.70.121][78.1.0.0]
It then tries to update once again if you restart Brave, and gives the same error:

@mbacchi Did you use new installer binary that built with proper version for testing 78.1.0.0 or just use different version string in omaha server with 78.0.70.121 installer binary?
I think installer binary should be built with proper version setting for testing.
@simonhong @bsclifton @mbacchi what test plan can QA run through for this one? Also, I added the OS/Windows label based on comment above that this is applicable to Win as well. if that's not still accurate please remove the label 馃槃
cc @kjozwiak
@LaurenWags the test plan for both Mac and Windows is described in issue https://github.com/brave/devops/issues/2042. Please let myself, @bsclifton or someone in the releng team when you want to test and we can set the dev omaha server up with the correct versions to perform tests.
Verified PASSED on macOS x64 Catalina 10.15.1 by @kjozwiak
Verified PASSED on macOS x64 High Sierra 10.13.6 by @LaurenWags
macOS testing notes can be found here: https://github.com/brave/devops/issues/2042#issuecomment-552611208
Verified on Windows x64
Most helpful comment
@LaurenWags the test plan for both Mac and Windows is described in issue https://github.com/brave/devops/issues/2042. Please let myself, @bsclifton or someone in the releng team when you want to test and we can set the dev omaha server up with the correct versions to perform tests.