summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Vogtländer <c.vogtlaender@sigma-surface-science.com>2015-01-16 13:17:22 +0100
committerChristoph Vogtländer <c.vogtlaender@sigma-surface-science.com>2015-01-20 17:01:39 +0100
commit552d964c6f0c3e9e9addc9b97eb247a039b6d140 (patch)
tree2fa02ed39fcc7fc65cc97363d765f97f67749d32
parent36a9594bce7b6e0be22446734dede93a31e95ed3 (diff)
no longer use Version as the repository format version
Use the Version value defined in config.xml as the product version exclusively instead of sometimes using it as the repository format version in components.xml (which must be 1.0.0) and sometimes as the product version. Change-Id: I63864947bf131ac6e246a2aaf6febdda0555c13d Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
-rw-r--r--doc/includes/installerfw-examples-configuring.qdocinc3
-rw-r--r--doc/installerfw.qdoc5
-rw-r--r--doc/tutorial.qdoc3
-rw-r--r--src/libs/installer/packagemanagercore_p.cpp13
-rw-r--r--src/libs/installer/packagemanagercoredata.cpp2
-rw-r--r--src/libs/installer/settings.cpp2
-rw-r--r--src/libs/installer/settings.h2
-rw-r--r--tests/auto/installer/settings/tst_settings.cpp2
-rw-r--r--tools/binarycreator/binarycreator.cpp2
9 files changed, 17 insertions, 17 deletions
diff --git a/doc/includes/installerfw-examples-configuring.qdocinc b/doc/includes/installerfw-examples-configuring.qdocinc
index 9f4d6161c..3a29af3dc 100644
--- a/doc/includes/installerfw-examples-configuring.qdocinc
+++ b/doc/includes/installerfw-examples-configuring.qdocinc
@@ -6,8 +6,7 @@
\list
\li The \c <Name> element specifies the application name that is added
to the page name and introduction text.
- \li The \c <Version> element specifies the version number of the
- repository format, and must be set to \c 1.0.0.
+ \li The \c <Version> element specifies the application version number.
\li The \c <Title> element specifies the installer name displayed on the
title bar.
\li The \c <Publisher> element specifies the publisher of the software
diff --git a/doc/installerfw.qdoc b/doc/installerfw.qdoc
index d759462b4..5c981fb57 100644
--- a/doc/installerfw.qdoc
+++ b/doc/installerfw.qdoc
@@ -175,8 +175,9 @@
\li Name of the product being installed. This is mandatory.
\row
\li Version
- \li Version number of the repository format. This is mandatory and
- must always be set to \c 1.0.0.
+ \li Version of the product being installed in the following format:
+ [0-9]+((\\.|-)[0-9]+)* such as 1-1; 1.2-2; 3.4.7. This is
+ mandatory.
\row
\li Title
\li Name of the installer as displayed on the title bar.
diff --git a/doc/tutorial.qdoc b/doc/tutorial.qdoc
index e9fad20a0..4360c0125 100644
--- a/doc/tutorial.qdoc
+++ b/doc/tutorial.qdoc
@@ -100,8 +100,7 @@
\list
- \li The \c <Version> element specifies the version number of the
- repository format, and must be set to \c 1.0.0.
+ \li The \c <Version> element specifies the application version number.
\li The \c <Publisher> element specifies the publisher of the software
(as shown in the Windows Control Panel, for example).
diff --git a/src/libs/installer/packagemanagercore_p.cpp b/src/libs/installer/packagemanagercore_p.cpp
index aa712c675..7735f280c 100644
--- a/src/libs/installer/packagemanagercore_p.cpp
+++ b/src/libs/installer/packagemanagercore_p.cpp
@@ -78,6 +78,9 @@
#include <qt_windows.h>
#endif
+#define QUOTE_(x) #x
+#define QUOTE(x) QUOTE_(x)
+
namespace QInstaller {
class OperationTracer
@@ -565,8 +568,7 @@ void PackageManagerCorePrivate::initialize(const QHash<QString, QString> &params
}
if (isInstaller() || packagesInfo.applicationVersion().isEmpty()) {
- // TODO: this seems to be wrong, we should ask for ProductVersion defaulting to applicationVersion...
- packagesInfo.setApplicationVersion(m_data.settings().applicationVersion());
+ packagesInfo.setApplicationVersion(QLatin1String(QUOTE(IFW_REPOSITORY_FORMAT_VERSION)));
}
if (isInstaller()) {
@@ -1477,11 +1479,10 @@ bool PackageManagerCorePrivate::runInstaller()
info.setFileName(componentsXmlPath());
// Clear the packages as we might install into an already existing installation folder.
info.clearPackageInfoList();
- // also update the application name and version, might be set from a script as well
+ // also update the application name, might be set from a script as well
info.setApplicationName(m_data.value(QLatin1String("ProductName"),
m_data.settings().applicationName()).toString());
- info.setApplicationVersion(m_data.value(QLatin1String("ProductVersion"),
- m_data.settings().applicationVersion()).toString());
+ info.setApplicationVersion(QLatin1String(QUOTE(IFW_REPOSITORY_FORMAT_VERSION)));
const int progressOperationCount = countProgressOperations(componentsToInstall)
// add one more operation as we support progress
@@ -2092,7 +2093,7 @@ LocalPackagesHash PackageManagerCorePrivate::localInstalledPackages()
if (packagesInfo.applicationName().isEmpty())
packagesInfo.setApplicationName(m_data.settings().applicationName());
if (packagesInfo.applicationVersion().isEmpty())
- packagesInfo.setApplicationVersion(m_data.settings().applicationVersion());
+ packagesInfo.setApplicationVersion(QLatin1String(QUOTE(IFW_REPOSITORY_FORMAT_VERSION)));
}
if (packagesInfo.error() != KDUpdater::PackagesInfo::NoError)
diff --git a/src/libs/installer/packagemanagercoredata.cpp b/src/libs/installer/packagemanagercoredata.cpp
index d8b6d3a28..3acc24a76 100644
--- a/src/libs/installer/packagemanagercoredata.cpp
+++ b/src/libs/installer/packagemanagercoredata.cpp
@@ -108,7 +108,7 @@ PackageManagerCoreData::PackageManagerCoreData(const QHash<QString, QString> &va
// fill the variables defined in the settings
m_variables.insert(QLatin1String("ProductName"), m_settings.applicationName());
- m_variables.insert(QLatin1String("ProductVersion"), m_settings.applicationVersion());
+ m_variables.insert(QLatin1String("ProductVersion"), m_settings.version());
m_variables.insert(scTitle, m_settings.title());
m_variables.insert(scPublisher, m_settings.publisher());
m_variables.insert(QLatin1String("Url"), m_settings.url());
diff --git a/src/libs/installer/settings.cpp b/src/libs/installer/settings.cpp
index 3d5fcf284..b591eed90 100644
--- a/src/libs/installer/settings.cpp
+++ b/src/libs/installer/settings.cpp
@@ -337,7 +337,7 @@ QString Settings::applicationName() const
return d->m_data.value(scName).toString();
}
-QString Settings::applicationVersion() const
+QString Settings::version() const
{
return d->m_data.value(scVersion).toString();
}
diff --git a/src/libs/installer/settings.h b/src/libs/installer/settings.h
index 68f97b82a..ed60219b1 100644
--- a/src/libs/installer/settings.h
+++ b/src/libs/installer/settings.h
@@ -94,7 +94,7 @@ public:
int wizardDefaultHeight() const;
QString applicationName() const;
- QString applicationVersion() const;
+ QString version() const;
QString runProgram() const;
QStringList runProgramArguments() const;
diff --git a/tests/auto/installer/settings/tst_settings.cpp b/tests/auto/installer/settings/tst_settings.cpp
index 241e4e546..018650b1c 100644
--- a/tests/auto/installer/settings/tst_settings.cpp
+++ b/tests/auto/installer/settings/tst_settings.cpp
@@ -31,7 +31,7 @@ void tst_Settings::loadTutorialConfig()
// specified values
QCOMPARE(settings.applicationName(), QLatin1String("Your application"));
- QCOMPARE(settings.applicationVersion(), QLatin1String("1.2.3"));
+ QCOMPARE(settings.version(), QLatin1String("1.2.3"));
QCOMPARE(settings.title(), QLatin1String("Your application Installer"));
QCOMPARE(settings.publisher(), QLatin1String("Your vendor"));
QCOMPARE(settings.startMenuDir(), QLatin1String("Super App"));
diff --git a/tools/binarycreator/binarycreator.cpp b/tools/binarycreator/binarycreator.cpp
index ea11a3405..749edbbef 100644
--- a/tools/binarycreator/binarycreator.cpp
+++ b/tools/binarycreator/binarycreator.cpp
@@ -713,7 +713,7 @@ int main(int argc, char **argv)
// 3; copy the meta data of the available packages, generate Updates.xml
QInstallerTools::copyMetaData(tmpMetaDir, tmpRepoDir, packages, settings
- .applicationName(), settings.applicationVersion());
+ .applicationName(), settings.version());
// 4; copy the configuration file and and icons etc.
copyConfigData(configFile, tmpMetaDir + QLatin1String("/installer-config"));