From 306d16f2b43e5b22129f50a9684d2655d887de0e Mon Sep 17 00:00:00 2001 From: nik Date: Thu, 21 Apr 2016 17:35:59 +0300 Subject: [PATCH] BuildNumber: deprecate 'fallback' method and use 'currentVersion' instead; 'fallback' name is obscure and it's better to use fallback version (999.SNAPSHOT) only if we cannot read more actual build number from build.txt, otherwise some plugins may be disabled as incompatible --- .../com/intellij/ide/plugins/PluginManagerCore.java | 2 +- .../src/com/intellij/openapi/util/BuildNumber.java | 12 ++++++++++-- .../com/intellij/openapi/util/BuildNumberTest.java | 12 ++++++------ 3 files changed, 17 insertions(+), 9 deletions(-) diff --git a/platform/core-impl/src/com/intellij/ide/plugins/PluginManagerCore.java b/platform/core-impl/src/com/intellij/ide/plugins/PluginManagerCore.java index 101dc097da03..9b5a6ba6fcb8 100644 --- a/platform/core-impl/src/com/intellij/ide/plugins/PluginManagerCore.java +++ b/platform/core-impl/src/com/intellij/ide/plugins/PluginManagerCore.java @@ -94,7 +94,7 @@ public class PluginManagerCore { if (ourBuildNumber == null) { ourBuildNumber = BUILD_NUMBER == null ? null : BuildNumber.fromString(BUILD_NUMBER); if (ourBuildNumber == null) { - ourBuildNumber = BuildNumber.fromString("SNAPSHOT"); + ourBuildNumber = BuildNumber.currentVersion(); } } return ourBuildNumber; diff --git a/platform/util/src/com/intellij/openapi/util/BuildNumber.java b/platform/util/src/com/intellij/openapi/util/BuildNumber.java index c736162a16e0..73a0bec3492a 100644 --- a/platform/util/src/com/intellij/openapi/util/BuildNumber.java +++ b/platform/util/src/com/intellij/openapi/util/BuildNumber.java @@ -96,7 +96,7 @@ public class BuildNumber implements Comparable { if (BUILD_NUMBER.equals(version) || SNAPSHOT.equals(version)) { final String productCode = name != null ? name : ""; - return new BuildNumber(productCode, Holder.CURRENT_VERSION.myComponents); + return new BuildNumber(productCode, currentVersion().myComponents); } String code = version; @@ -171,9 +171,17 @@ public class BuildNumber implements Comparable { } catch (IOException ignored) { } - return fallback(); + return fromString(FALLBACK_VERSION); } + /** + * This method is for internal platform use only. In regular code use {@link com.intellij.openapi.application.ApplicationInfo#getBuild()} instead. + */ + public static BuildNumber currentVersion() { + return Holder.CURRENT_VERSION; + } + + @Deprecated public static BuildNumber fallback() { return fromString(FALLBACK_VERSION); } diff --git a/platform/util/testSrc/com/intellij/openapi/util/BuildNumberTest.java b/platform/util/testSrc/com/intellij/openapi/util/BuildNumberTest.java index 2a49881972ec..cb91d33654c4 100644 --- a/platform/util/testSrc/com/intellij/openapi/util/BuildNumberTest.java +++ b/platform/util/testSrc/com/intellij/openapi/util/BuildNumberTest.java @@ -129,12 +129,12 @@ public class BuildNumberTest { } @Test - public void fallbackVersion() throws Exception { - assertParsed(BuildNumber.fallback(), 999, BuildNumber.SNAPSHOT_VALUE, "999.SNAPSHOT"); - assertTrue(BuildNumber.fallback().isSnapshot()); + public void currentVersion() throws Exception { + BuildNumber current = BuildNumber.currentVersion(); + assertTrue(current.isSnapshot()); - assertTrue(BuildNumber.fallback().compareTo(BuildNumber.fromString("7512")) > 0); - assertTrue(BuildNumber.fallback().compareTo(BuildNumber.fromString("145")) > 0); - assertTrue(BuildNumber.fallback().compareTo(BuildNumber.fromString("145.12")) > 0); + assertTrue(current.compareTo(BuildNumber.fromString("7512")) > 0); + assertTrue(current.compareTo(BuildNumber.fromString("145")) > 0); + assertTrue(current.compareTo(BuildNumber.fromString("145.12")) > 0); } } \ No newline at end of file