#
#
# patch "NEWS"
# from [44e459356b27d94e5f3c70224057bc75123e2b69]
# to [1e087a575ee909b0e667ad83dcd97f6630ff25b6]
#
# patch "guitone.pro"
# from [ba431b080233a6831ab7c78c83fa6cbc35f6fa10]
# to [357b1d79e4869690b7e60e437a4d765690ffbe4a]
#
# patch "res/forms/preferences.ui"
# from [7a7571da041337f90d222a67051d0b363fb6b9b2]
# to [6f90cf7783f03c267f1bff4be5c6cce4c8a1879d]
#
# patch "res/i18n/guitone_de.ts"
# from [009f9cb8c240cf936fbff247089a2949f7d05643]
# to [1ac99422749af61e6a8323f6fefad0bd01c7183a]
#
# patch "src/Guitone.cpp"
# from [b92124f06a493927d5989833e0350e346d2b94ee]
# to [22dcaeed1615785dd5370bab52797265d1634610]
#
# patch "src/monotone/MonotoneManager.cpp"
# from [cb2c38e6c54d4a1c7cdb5936ee6fd7b4d929e4d6]
# to [30ab167ee4bdb27ddb7255c8b0f52d01fef904c1]
#
# patch "src/monotone/MonotoneManager.h"
# from [ca14810692315d4a9d58d2c220ecbd00a2e69e20]
# to [a399ff054cb3b3eede2b51bbb1b4ef18a57b513a]
#
# patch "src/view/dialogs/Preferences.cpp"
# from [62c7d6fe31de9db358bff248db6a939786347670]
# to [e3b7d8f1a25f1d24124d6231e9553c983a979a82]
#
# patch "src/view/dialogs/Preferences.h"
# from [158ed167709f8220efc4d958319c8a60da2eaa45]
# to [4652f103fd3be0b712fba703ba2c35ed941b399f]
#
============================================================
--- NEWS 44e459356b27d94e5f3c70224057bc75123e2b69
+++ NEWS 1e087a575ee909b0e667ad83dcd97f6630ff25b6
@@ -1,3 +1,16 @@
+2008-04-06 (0.7.1)
+ - new: possibility to suppress the upper version check which lets
+ guitone partially work with newer, yet untested versions of monotone;
+ the 0.7 development line currently only supports monotone version
+ 0.37 and 0.38 completly.
+ Now If you have monotone 0.39 or newer installed, you can still start
+ and work with guitone, but at your own risk. One thing that will f.e.
+ not work with 0.7.x and monotone >= 0.39 is the commit functionality.
+ If you need this, please stick to an earlier, supported version.
+ guitone 0.8 will, of course, support newer versions of monotone, but
+ I still have no release date set for this.
+ - bugfix: make guitone compile cleanly on Mac OS X 10.5 Leopard
+
2008-01-16 (0.7)
- new: possibility to display the history of a single file in chronological
order: In the workspace view, right-click on any tracked file and hit
============================================================
--- guitone.pro ba431b080233a6831ab7c78c83fa6cbc35f6fa10
+++ guitone.pro 357b1d79e4869690b7e60e437a4d765690ffbe4a
@@ -1,7 +1,7 @@
#
# global version strings
#
-GUITONE_VERSION = "0.7"
+GUITONE_VERSION = "0.7.1"
MIN_MTN_INT_VERSION = "6.0"
MAX_MTN_INT_VERSION = "7.0"
@@ -225,6 +225,7 @@ macx {
# add x86, ppc archs for universal release builds
CONFIG(release, debug|release):CONFIG += x86 ppc
+ QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.4
QMAKE_MAC_SDK = /Developer/SDKs/MacOSX10.4u.sdk
}
============================================================
--- res/forms/preferences.ui 7a7571da041337f90d222a67051d0b363fb6b9b2
+++ res/forms/preferences.ui 6f90cf7783f03c267f1bff4be5c6cce4c8a1879d
@@ -5,8 +5,8 @@
00
- 433
- 370
+ 439
+ 381
@@ -68,39 +68,9 @@
Path to monotone executable
-
-
- 6
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
-
+
+
-
- 6
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
@@ -123,6 +93,13 @@
+
+
+
+ relaxed version check
+
+
+
@@ -132,96 +109,50 @@
Logging
-
- 6
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
-
-
- 6
+
+
+ enable console logging
-
- 0
+
+ true
-
- 0
+
+
+
+
+
+ enable file logging (%1)
-
- 0
+
+
+
+
+
+ 6
-
- 0
-
-
+
- enable console logging
+ Log level
-
- true
-
-
-
- enable file logging (%1)
-
-
+
-
-
- 6
+
+
+ Qt::Horizontal
-
- 0
+
+
+ 40
+ 20
+
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
- Log level
-
-
-
-
-
-
-
-
-
- Qt::Horizontal
-
-
-
- 40
- 20
-
-
-
-
-
+
@@ -234,21 +165,6 @@
Miscellaneous
-
- 6
-
-
- 9
-
-
- 9
-
-
- 9
-
-
- 9
-
============================================================
--- res/i18n/guitone_de.ts 009f9cb8c240cf936fbff247089a2949f7d05643
+++ res/i18n/guitone_de.ts 1ac99422749af61e6a8323f6fefad0bd01c7183a
@@ -1,6 +1,59 @@
+ @default
+
+
+
+ Konnte Datenbank nicht zum Lesen öffnen
+
+
+
+
+ Datenbank ist keine SQLite 3-Datenbank
+
+
+
+
+ SQLite-Datenbank ist keine monotone-Datenbank oder eine Datenbank einer älteren, nicht unterstützten Version von monotone
+
+
+
+
+ Pfad zur ausführbaren Datei von monotone nicht gesetzt
+
+
+
+
+ Verzeichnis %1 existiert nicht
+
+
+
+
+ konnte _MTN-Verzeichnis nicht finden
+
+
+
+
+ konnte _MTN/options nicht zum Lesen öffnen
+
+
+
+
+ Datei _MTN/options ist leer
+
+
+
+
+ konnte Format von _MTN/options nicht analysieren
+
+
+
+
+ konnte keine Datenbank für den Arbeitsbereich finden
+
+
+About
@@ -882,7 +935,7 @@ In jedem Fall sollte der derzeitige Arbe
Guitone
-
+ Fehler
@@ -907,51 +960,51 @@ In jedem Fall sollte der derzeitige Arbe
Der Pfad zur ausführbaren Datei von monotone ist entweder ungültig oder zeigt auf eine Version von monotone, mit der guitone nicht arbeiten kann. Guitone benötigt ein monotone mit einer Interface-Version zwischen %2 und %3. Sie können die Interface-Version Ihrer monotone-Installation durch den Aufruf des Kommandos `mtn automate interface_version` in Erfahrung bringen.
-
+ Der Pfad zur ausführbaren Datei von monotone ist entweder ungültig oder zeigt auf eine Version von monotone, mit der guitone nicht arbeiten kann. Guitone benötigt ein monotone mit einer Interface-Version zwischen '%1' und '%2'. Ihre monotone-Installation hat die Interface-Version '%3'.
-
+ Nicht-existierender Pfad '%1'
-
+ Pfad ist weder eine Datei noch ein Verzeichnis
-
+ Konnte Arbeitsbereich nicht laden
-
+ Der Arbeitsbereich konnte nicht geladen werden:
%1
-
+ Konnte Datenbank nicht laden
-
+ Die Datenbank konnte nicht geladen werden:
%1
-
+ Keine Aktualisierungen verfügbar
-
+ Ihre Version von guitone (%1) ist bereits aktuell.
@@ -1996,92 +2049,92 @@ Die letzte Ausgabe war:
MonotoneManager
-
+ Konnte Datenbank nicht zum Lesen öffnen
-
+ Datenbank ist keine SQLite 3-Datenbank
-
+ SQLite-Datenbank ist keine monotone-Datenbank oder eine Datenbank einer älteren, nicht unterstützten Version von monotone
-
+ Pfad zur ausführbaren Datei von monotone nicht gesetzt
-
+ Verzeichnis %1 existiert nicht
-
+ konnte _MTN-Verzeichnis nicht finden
-
+ konnte _MTN/options nicht zum Lesen öffnen
-
+ Datei _MTN/options ist leer
-
+ konnte Format von _MTN/options nicht analysieren
-
+ konnte keine Datenbank für den Arbeitsbereich finden
-
+ Start fehlgeschlagen
-
+ abgestürzt
-
+ Timeout während des Wartens auf Daten
-
+ Lesen fehlgeschlagen
-
+ Schreiben fehlgeschlagen
-
+ unbekannter Fehler
-
+ Der monotone-Prozess für '%1' wurde beendet (%2). Wenn Sie glauben, dass dies ein Fehler in guitone ist, senden Sie bitte einen Problembericht an den Autor!
-
+
-
+ Fehler
@@ -2100,7 +2153,7 @@ Letzte Fehlerausgabe war:
MonotoneThread
-
+ Das temporäre Verzeichnis '%1' enthält einen monotone-Arbeitsbereich, welcher zu ernsten Fehlfunktionen bei der Ausführung dieses Programmes führen kann. Bitte entfernen Sie diesen Arbeitsbereich, bevor Sie diese Aktion erneut versuchen!
@@ -2174,7 +2227,7 @@ Wenn Sie bereits ein Arbeitsverzeichnis
Preferences
-
+ Fehler
@@ -2184,7 +2237,7 @@ Wenn Sie bereits ein Arbeitsverzeichnis
Der Pfad zur ausführbaren Datei von monotone ist entweder ungültig oder zeigt auf eine ältere Version von monotone. Guitone benötigt monotone Version %1 oder ein monotone mit einer Interface-Version %2 oder neuer.
-
+ Hinweis
@@ -2194,12 +2247,12 @@ Wenn Sie bereits ein Arbeitsverzeichnis
Sie müssen Ihren derzeitigen Arbeitsbereich oder guitone neu laden, um die neue monotone-Binary zu nutzen.
-
+ Wählen Sie die ausführbare Datei von monotone
-
+ Binärdateien (mtn mtn.exe)
@@ -2229,20 +2282,39 @@ Wenn Sie bereits ein Arbeitsverzeichnis
Sehr hoch (Debug-Meldungen)
-
+ Der Pfad zur ausführbaren Datei von monotone ist entweder ungültig oder zeigt auf eine Version von monotone, mit der guitone nicht arbeiten kann. Guitone benötigt ein monotone mit einer Interface-Version zwischen '%1' und '%2'. Ihre monotone-Installation hat die Interface-Version '%3'.
-
+ Sie müssen guitone neu starten, um die neue ausführbare Datei von monotone zu nutzen.
-
+ Sie müssen Ihre(n) Arbeitsbereich(e) neu laden, um diese Einstellung wirksam werden zu lassen.
+
+
+
+ Warnung
+
+
+
+
+ Durch die Aktivierung dieser Option kann guitone dazu gebracht werden, mit neueren, bisher nicht getesteten Versionen von monotone zusammenzuarbeiten, in denen bestimmte Funktionalitäten verändert wurden oder nicht mehr verfügbar sind. Verwenden Sie diese Funktion auf eigene Gefahr!
+
+
+
+
+ Durch die Aktivierung dieser Option kann guitone dazu gebracht werden, mit neueren, bisher nicht getesteten Versionen von monotone zusammenzuarbeiten, in denen bestimmte Funktionalitäten verändert wurden oder nicht mehr verfügbar sind.
+
+Verwenden Sie diese Funktion auf eigene Gefahr!
+ PreferencesDialog
@@ -2257,55 +2329,60 @@ Wenn Sie bereits ein Arbeitsverzeichnis
Pfad zur ausführbaren Datei von monotone
-
+ Durchsuchen
-
+ Logmeldungen
-
+ Konsolenlogging aktivieren
-
+ Dateilogging aktivieren (%1)
-
+ Log-Level
-
+ OK
-
+ Abbrechen
-
+ Verschiedenes
-
+ prüfe auf neue Versionen beim Start der Anwendung
-
+ lies das Arbeitsverzeichnis inkrementell (schneller für groÃe Verzeichnisbäume)
+
+
+
+ einfache Versionsüberprüfung
+ QObject
@@ -2409,6 +2486,60 @@ Wenn Sie bereits ein Arbeitsverzeichnis
+ QProcess
+
+
+
+ Start fehlgeschlagen
+
+
+
+
+ abgestürzt
+
+
+
+
+ Timeout während des Wartens auf Daten
+
+
+
+
+ Lesen fehlgeschlagen
+
+
+
+
+ Schreiben fehlgeschlagen
+
+
+
+
+ unbekannter Fehler
+
+
+
+
+ Der monotone-Prozess für '%1' wurde beendet (%2). Wenn Sie glauben, dass dies ein Fehler in guitone ist, senden Sie bitte einen Problembericht an den Autor!
+
+
+
+
+
+
+Letzte Fehlerausgabe war:
+%1
+
+
+
+
+ Fehler
+
+
+QShortcut
============================================================
--- src/Guitone.cpp b92124f06a493927d5989833e0350e346d2b94ee
+++ src/Guitone.cpp 22dcaeed1615785dd5370bab52797265d1634610
@@ -90,7 +90,9 @@ void Guitone::setMonotoneBinaryPath()
QString installedVersion;
if (!monotoneManager->setMonotoneBinaryPath(
- Settings::getMtnBinaryPath(), installedVersion))
+ Settings::getMtnBinaryPath(),
+ Settings::getBool("RelaxedVersionCheck", false),
+ installedVersion))
{
QMessageBox::critical(
NULL,
============================================================
--- src/monotone/MonotoneManager.cpp cb2c38e6c54d4a1c7cdb5936ee6fd7b4d929e4d6
+++ src/monotone/MonotoneManager.cpp 30ab167ee4bdb27ddb7255c8b0f52d01fef904c1
@@ -48,16 +48,25 @@ MonotoneManager::~MonotoneManager()
}
}
-bool MonotoneManager::setMonotoneBinaryPath(const QString & mtnBinary, QString & pathVersion)
+bool MonotoneManager::setMonotoneBinaryPath(const QString & mtnBinary,
+ bool relaxedVersionCheck, QString & pathVersion)
{
pathVersion = getInterfaceVersion(mtnBinary);
- if (versionCompare(pathVersion, MinInterfaceVersion) >= 0 &&
- versionCompare(pathVersion, MaxInterfaceVersion) < 0)
+
+ // check if we match the minimum interface version
+ if (versionCompare(pathVersion, MinInterfaceVersion) < 0)
{
- mtnPath = mtnBinary;
- return true;
+ return false;
}
- return false;
+
+ // check if we should check and match also the maximum interface version
+ if (!relaxedVersionCheck && versionCompare(pathVersion, MaxInterfaceVersion) >= 0)
+ {
+ return false;
+ }
+
+ mtnPath = mtnBinary;
+ return true;
}
// FIXME: I think we need to care somehow if we pass
============================================================
--- src/monotone/MonotoneManager.h ca14810692315d4a9d58d2c220ecbd00a2e69e20
+++ src/monotone/MonotoneManager.h a399ff054cb3b3eede2b51bbb1b4ef18a57b513a
@@ -31,7 +31,7 @@ public:
~MonotoneManager();
//! set the path to the monotone binary to use for all new threads
- bool setMonotoneBinaryPath(const QString &, QString &);
+ bool setMonotoneBinaryPath(const QString &, bool, QString &);
//! returns if the path to the monotone binary was set successful before
inline bool monotoneBinaryPathSet() const { return !mtnPath.isEmpty(); }
============================================================
--- src/view/dialogs/Preferences.cpp 62c7d6fe31de9db358bff248db6a939786347670
+++ src/view/dialogs/Preferences.cpp e3b7d8f1a25f1d24124d6231e9553c983a979a82
@@ -70,6 +70,16 @@ Preferences::Preferences(QWidget * paren
selectMtnExecutable, SIGNAL(clicked()),
this, SLOT(openFileBrowser())
);
+
+ relaxedVersionCheck->setCheckState(
+ Settings::getBool("RelaxedVersionCheck", false) ?
+ Qt::Checked : Qt::Unchecked
+ );
+
+ connect(
+ relaxedVersionCheck, SIGNAL(toggled(bool)),
+ this, SLOT(warnAboutRelaxedVersionChecking(bool))
+ );
}
Preferences::~Preferences() {}
@@ -78,12 +88,14 @@ void Preferences::accept()
{
QString oldPath = Settings::getMtnBinaryPath();
QString newPath = mtnExecutablePath->text();
+ bool checkUpperBound = relaxedVersionCheck->isChecked();
+
QString installedVersion;
// check if the new executable satisfies our version needs
// we'll first check the program's plain version and if this
// does not succeed we check for the interface version
- if (!APP->manager()->setMonotoneBinaryPath(newPath, installedVersion))
+ if (!APP->manager()->setMonotoneBinaryPath(newPath, checkUpperBound, installedVersion))
{
QMessageBox::critical(
this,
@@ -121,6 +133,7 @@ void Preferences::accept()
DebugLog::setLogLevel(level);
Settings::setBool("CheckForUpdates", checkForUpdates->isChecked());
+ Settings::setBool("RelaxedVersionCheck", relaxedVersionCheck->isChecked());
if (Settings::getBool("ReadWorkspaceIncrementally", true) !=
readWorkspaceIncrementally->isChecked())
@@ -153,3 +166,18 @@ void Preferences::openFileBrowser()
}
}
+void Preferences::warnAboutRelaxedVersionChecking(bool enabled)
+{
+ if (!enabled) return;
+
+ QMessageBox::warning(
+ this,
+ tr("Warning"),
+ tr("Activating this may let guitone work with newer, yet untested "
+ "versions of monotone, in which certain functionalities may "
+ "have changed or be no longer available.\n\n"
+ "Use this at your own risk!"),
+ QMessageBox::Ok
+ );
+}
+
============================================================
--- src/view/dialogs/Preferences.h 158ed167709f8220efc4d958319c8a60da2eaa45
+++ src/view/dialogs/Preferences.h 4652f103fd3be0b712fba703ba2c35ed941b399f
@@ -34,6 +34,7 @@ private slots:
private slots:
void openFileBrowser();
void accept();
+ void warnAboutRelaxedVersionChecking(bool);
};
#endif