diff --git a/VERSION.cmake b/VERSION.cmake index 1a3b7b05f..ae96ec120 100644 --- a/VERSION.cmake +++ b/VERSION.cmake @@ -4,6 +4,11 @@ set( MIRALL_VERSION_PATCH 81 ) set( MIRALL_VERSION_YEAR 2020 ) set( MIRALL_SOVERSION 0 ) +# Minimum supported server version according to https://docs.nextcloud.com/server/latest/admin_manual/release_schedule.html +set(NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MAJOR 19) +set(NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MINOR 0) +set(NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_PATCH 0) + if ( NOT DEFINED MIRALL_VERSION_SUFFIX ) set( MIRALL_VERSION_SUFFIX "git") #e.g. beta1, beta2, rc1 endif( NOT DEFINED MIRALL_VERSION_SUFFIX ) diff --git a/src/libsync/account.cpp b/src/libsync/account.cpp index 5c5613e13..012d13360 100644 --- a/src/libsync/account.cpp +++ b/src/libsync/account.cpp @@ -21,6 +21,7 @@ #include "capabilities.h" #include "theme.h" #include "pushnotifications.h" +#include "version.h" #include "common/asserts.h" #include "clientsideencryption.h" @@ -531,8 +532,8 @@ bool Account::serverVersionUnsupported() const // not detected yet, assume it is fine. return false; } - // Older version which is not "end of life" according to https://docs.nextcloud.com/server/latest/admin_manual/release_schedule.html - return serverVersionInt() < makeServerVersion(18, 0, 0) || !serverVersion().endsWith("Nextcloud"); + return serverVersionInt() < makeServerVersion(NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MAJOR, + NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MINOR, NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_PATCH); } void Account::setServerVersion(const QString &version) diff --git a/src/libsync/networkjobs.cpp b/src/libsync/networkjobs.cpp index ecccff1ba..f701e2dc1 100644 --- a/src/libsync/networkjobs.cpp +++ b/src/libsync/networkjobs.cpp @@ -454,7 +454,7 @@ void CheckServerJob::onTimedOut() QString CheckServerJob::version(const QJsonObject &info) { - return info.value(QLatin1String("version")).toString() + "-" + info.value(QLatin1String("productname")).toString(); + return info.value(QLatin1String("version")).toString(); } QString CheckServerJob::versionString(const QJsonObject &info) diff --git a/version.h.in b/version.h.in index e96ba1fe0..c3a7975e5 100644 --- a/version.h.in +++ b/version.h.in @@ -37,4 +37,8 @@ #define MIRALL_VERSION_STRING "@MIRALL_VERSION_STRING@" +constexpr int NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MAJOR = @NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MAJOR@; +constexpr int NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MINOR = @NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_MINOR@; +constexpr int NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_PATCH = @NEXTCLOUD_SERVER_VERSION_MIN_SUPPORTED_PATCH@; + #endif // VERSION_H