how does 10.4.4's installer determine pkg version?
how does 10.4.4's installer determine pkg version?
- Subject: how does 10.4.4's installer determine pkg version?
- From: Julian Devlin <email@hidden>
- Date: Wed, 25 Jan 2006 16:16:09 -0600
I am trying to sort through the various Version properties which can
appear in a plist, and determine how to use each one.
We use four digits (e.g. 1.2.3.4) for our software versioning, and a
change in the final digit implies a new release.
In the past, we have put the full version, 1.2.3.4, in the
CFBundleShortVersionString. We did this both for our .apps, .pkgs, and
.mpkg.
Starting with the Tiger version of Package Maker, we started getting a
warning that CFBundleShortVersionString should only contain three
numbers.
This agrees with an Apple document which I found:
http://developer.apple.com/documentation/MacOSX/Conceptual/
BPRuntimeConfig/Articles/PListKeys.html#//apple_ref/doc/uid/20001431
-111349
I also found this document with a section called "How Installer
Computes a Version":
http://developer.apple.com/documentation/DeveloperTools/Conceptual/
SoftwareDistribution/Concepts/sd_pkg_version_info.html#//apple_ref/doc/
uid/20001942-1016661-CEGBFEAA
This document suggests that we should set CFBundleShortVersionString to
1.2.3 and SourceVersion to 4, and then the installer will see the
version as 1.2.3.4. So this is what we did. Tiger Package Maker stopped
showing an error, and the mpkg/pkgs worked fine in 10.3, and earlier
versions of 10.4.
As of 10.4.4 however, the behavior seems to have changed.
If an earlier version with CFBundleShortVersionString of 1.2.3.4 is
already installed and we try to install a new version with
CFBundleShortVersionString 1.2.3 and SourceVersion 5, this is seen as a
downgrade.
Likewise, if an earlier version with CFBundleShortVersionString of
1.2.3 and SourceVersion 4 is already installed and we try to install a
new version with CFBundleShortVersionString 1.2.3 and SourceVersion 5,
this isn't seen as a downgrade or an upgrade - by default the
subpackages in our mpkg are not selected (apparently since installer
sees the two versions is equal).
So, my conclusion is that the installer that is used with 10.4.4 ONLY
looks at CFBundleShortVersionString, so we will have to revert to using
our full version in that property, despite the warning of the package
maker.
Could anyone offer any advice on why 10.4.4 installer has changed like
this, and whether there is any better solution?
Thanks
-Julian
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Installer-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden