mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-04-21 14:01:44 +07:00
[Gradle][IJ-CR-174282] fix: suggest Gradle 9.0.0 instead of Gradle 9.0
### Issues * IDEA-378326 Incorrect distributionUrl for Gradle 9 (cherry picked from commit fa1fc5ad14d23fb67d9fb349558f528040fe0165) GitOrigin-RevId: faef6d7822ee0cc6e053f14537392834e4efa8e5
This commit is contained in:
committed by
intellij-monorepo-bot
parent
8eeced5680
commit
cb7dd9e222
@@ -19,19 +19,19 @@ internal val DEFAULT_DATA = GradleCompatibilityState(
|
||||
"6.0", "6.0.1", "6.1", "6.2", "6.3", "6.4", "6.5", "6.6", "6.7", "6.8", "6.8.3", "6.9",
|
||||
"7.0", "7.1", "7.2", "7.3", "7.4", "7.5", "7.5.1", "7.6",
|
||||
"8.0", "8.1", "8.2", "8.3", "8.4", "8.5", "8.6", "8.7", "8.8", "8.9", "8.10", "8.10.2", "8.11", "8.12", "8.13", "8.14",
|
||||
"9.0"
|
||||
"9.0.0"
|
||||
),
|
||||
compatibility = listOf(
|
||||
VersionMapping(java = "6-8", gradle = "INF-5.0"),
|
||||
VersionMapping(java = "8-9", gradle = "INF-9.0"),
|
||||
VersionMapping(java = "9-10", gradle = "4.3-9.0"),
|
||||
VersionMapping(java = "10-11", gradle = "4.7-9.0"),
|
||||
VersionMapping(java = "11-12", gradle = "5.0-9.0"),
|
||||
VersionMapping(java = "12-13", gradle = "5.4-9.0"),
|
||||
VersionMapping(java = "13-14", gradle = "6.0-9.0"),
|
||||
VersionMapping(java = "14-15", gradle = "6.3-9.0"),
|
||||
VersionMapping(java = "15-16", gradle = "6.7-9.0"),
|
||||
VersionMapping(java = "16-17", gradle = "7.0-9.0"),
|
||||
VersionMapping(java = "8-9", gradle = "INF-9.0.0"),
|
||||
VersionMapping(java = "9-10", gradle = "4.3-9.0.0"),
|
||||
VersionMapping(java = "10-11", gradle = "4.7-9.0.0"),
|
||||
VersionMapping(java = "11-12", gradle = "5.0-9.0.0"),
|
||||
VersionMapping(java = "12-13", gradle = "5.4-9.0.0"),
|
||||
VersionMapping(java = "13-14", gradle = "6.0-9.0.0"),
|
||||
VersionMapping(java = "14-15", gradle = "6.3-9.0.0"),
|
||||
VersionMapping(java = "15-16", gradle = "6.7-9.0.0"),
|
||||
VersionMapping(java = "16-17", gradle = "7.0-9.0.0"),
|
||||
VersionMapping(java = "17-18", gradle = "7.2-INF"),
|
||||
VersionMapping(java = "18-19", gradle = "7.5-INF"),
|
||||
VersionMapping(java = "19-20", gradle = "7.6-INF"),
|
||||
|
||||
@@ -99,19 +99,19 @@
|
||||
"6.0", "6.0.1", "6.1", "6.2", "6.3", "6.4", "6.5", "6.6", "6.7", "6.8", "6.8.3", "6.9",
|
||||
"7.0", "7.1", "7.2", "7.3", "7.4", "7.5", "7.5.1", "7.6",
|
||||
"8.0", "8.1", "8.2", "8.3", "8.4", "8.5", "8.6", "8.7", "8.8", "8.9", "8.10", "8.10.2", "8.11", "8.12", "8.13", "8.14",
|
||||
"9.0"
|
||||
"9.0.0"
|
||||
],
|
||||
"compatibility": [
|
||||
{"java": "6-8", "gradle": "INF-5.0"},
|
||||
{"java": "8-9", "gradle": "INF-9.0"},
|
||||
{"java": "9-10", "gradle": "4.3-9.0"},
|
||||
{"java": "10-11", "gradle": "4.7-9.0"},
|
||||
{"java": "11-12", "gradle": "5.0-9.0"},
|
||||
{"java": "12-13", "gradle": "5.4-9.0"},
|
||||
{"java": "13-14", "gradle": "6.0-9.0"},
|
||||
{"java": "14-15", "gradle": "6.3-9.0"},
|
||||
{"java": "15-16", "gradle": "6.7-9.0"},
|
||||
{"java": "16-17", "gradle": "7.0-9.0"},
|
||||
{"java": "8-9", "gradle": "INF-9.0.0"},
|
||||
{"java": "9-10", "gradle": "4.3-9.0.0"},
|
||||
{"java": "10-11", "gradle": "4.7-9.0.0"},
|
||||
{"java": "11-12", "gradle": "5.0-9.0.0"},
|
||||
{"java": "12-13", "gradle": "5.4-9.0.0"},
|
||||
{"java": "13-14", "gradle": "6.0-9.0.0"},
|
||||
{"java": "14-15", "gradle": "6.3-9.0.0"},
|
||||
{"java": "15-16", "gradle": "6.7-9.0.0"},
|
||||
{"java": "16-17", "gradle": "7.0-9.0.0"},
|
||||
{"java": "17-18", "gradle": "7.2-INF"},
|
||||
{"java": "18-19", "gradle": "7.5-INF"},
|
||||
{"java": "19-20", "gradle": "7.6-INF"},
|
||||
|
||||
@@ -7,11 +7,11 @@ import org.jetbrains.plugins.gradle.jvmcompat.GradleJvmSupportMatrix
|
||||
class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
|
||||
companion object {
|
||||
private const val FUTURE_GRADLE_VERSION = "100.0"
|
||||
private const val FUTURE_GRADLE_VERSION = "100.0.0"
|
||||
private const val LATEST_SUPPORTED_JAVA_VERSION = 24
|
||||
private const val FUTURE_JAVA_VERSION = 100
|
||||
private const val BUNDLED_GRADLE_VERSION = "8.14"
|
||||
private const val LATEST_GRADLE_VERSION = "9.0"
|
||||
private const val LATEST_GRADLE_VERSION = "9.0.0"
|
||||
}
|
||||
|
||||
fun `test bundled gradle version`() {
|
||||
@@ -47,8 +47,8 @@ class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
assertTrue(isSupported("5.4.1", 11))
|
||||
assertTrue(isSupported("7.5", 11))
|
||||
|
||||
assertFalse(isSupported("9.0", 16))
|
||||
assertTrue(isSupported("9.0", 17))
|
||||
assertFalse(isSupported("9.0.0", 16))
|
||||
assertTrue(isSupported("9.0.0", 17))
|
||||
|
||||
assertFalse(isSupported("7.1", 17))
|
||||
assertTrue(isSupported("7.2", 17))
|
||||
@@ -77,7 +77,7 @@ class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
assertTrue(isSupported("8.10", 23))
|
||||
|
||||
assertTrue(isSupported("8.14", 24))
|
||||
assertTrue(isSupported("9.0", 24))
|
||||
assertTrue(isSupported("9.0.0", 24))
|
||||
}
|
||||
|
||||
fun `test suggesting gradle version for java version`() {
|
||||
@@ -85,6 +85,7 @@ class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
assertEquals("4.10.3", suggestGradleVersion(7))
|
||||
assertEquals("8.14", suggestGradleVersion(8))
|
||||
assertEquals("8.14", suggestGradleVersion(11))
|
||||
|
||||
assertEquals(BUNDLED_GRADLE_VERSION, suggestGradleVersion(17))
|
||||
assertEquals(BUNDLED_GRADLE_VERSION, suggestGradleVersion(19))
|
||||
assertEquals(BUNDLED_GRADLE_VERSION, suggestGradleVersion(20))
|
||||
@@ -109,6 +110,7 @@ class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
assertEquals("4.10.3", suggestLatestSupportedGradleVersion(7))
|
||||
assertEquals("8.14", suggestLatestSupportedGradleVersion(8))
|
||||
assertEquals("8.14", suggestLatestSupportedGradleVersion(11))
|
||||
|
||||
assertEquals(LATEST_GRADLE_VERSION, suggestLatestSupportedGradleVersion(17))
|
||||
assertEquals(LATEST_GRADLE_VERSION, suggestLatestSupportedGradleVersion(19))
|
||||
assertEquals(LATEST_GRADLE_VERSION, suggestLatestSupportedGradleVersion(20))
|
||||
@@ -147,7 +149,7 @@ class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
assertEquals(22, suggestLatestSupportedJavaVersion("8.8"))
|
||||
assertEquals(23, suggestLatestSupportedJavaVersion("8.10"))
|
||||
assertEquals(24, suggestLatestSupportedJavaVersion("8.14"))
|
||||
assertEquals(24, suggestLatestSupportedJavaVersion("9.0"))
|
||||
assertEquals(24, suggestLatestSupportedJavaVersion("9.0.0"))
|
||||
|
||||
assertEquals(24, suggestLatestSupportedJavaVersion(FUTURE_GRADLE_VERSION))
|
||||
}
|
||||
@@ -189,8 +191,25 @@ class GradleJvmSupportMatricesTest : GradleJvmSupportMatricesTestCase() {
|
||||
assertEquals(8, suggestOldestSupportedJavaVersion("8.8"))
|
||||
assertEquals(8, suggestOldestSupportedJavaVersion("8.10"))
|
||||
assertEquals(8, suggestOldestSupportedJavaVersion("8.14"))
|
||||
assertEquals(17, suggestOldestSupportedJavaVersion("9.0"))
|
||||
assertEquals(17, suggestOldestSupportedJavaVersion("9.0.0"))
|
||||
|
||||
assertEquals(17, suggestOldestSupportedJavaVersion(FUTURE_GRADLE_VERSION))
|
||||
}
|
||||
|
||||
fun `test Gradle version format`() {
|
||||
assertSupportedGradleVersion("4.5") { minOrNull() }
|
||||
assertSupportedGradleVersion("4.10.3") { maxOrNull() }
|
||||
assertSupportedGradleVersion("5.0") { minOrNull() }
|
||||
assertSupportedGradleVersion("5.6.2") { maxOrNull() }
|
||||
assertSupportedGradleVersion("6.0") { minOrNull() }
|
||||
assertSupportedGradleVersion("6.9") { maxOrNull() }
|
||||
assertSupportedGradleVersion("7.0") { minOrNull() }
|
||||
assertSupportedGradleVersion("7.6") { maxOrNull() }
|
||||
assertSupportedGradleVersion("8.0") { minOrNull() }
|
||||
assertSupportedGradleVersion("8.14") { maxOrNull() }
|
||||
assertSupportedGradleVersion("9.0.0") { minOrNull() }
|
||||
assertSupportedGradleVersion("9.0.0") { maxOrNull() }
|
||||
|
||||
assertSupportedGradleVersion(LATEST_GRADLE_VERSION) { maxOrNull() }
|
||||
}
|
||||
}
|
||||
@@ -8,8 +8,16 @@ import com.intellij.util.lang.JavaVersion
|
||||
import org.gradle.util.GradleVersion
|
||||
import org.jetbrains.plugins.gradle.jvmcompat.GradleCompatibilitySupportUpdater
|
||||
import org.jetbrains.plugins.gradle.jvmcompat.GradleJvmSupportMatrix
|
||||
import org.junit.jupiter.api.Assertions
|
||||
import java.util.regex.Matcher
|
||||
import java.util.regex.Pattern
|
||||
|
||||
abstract class GradleJvmSupportMatricesTestCase : LightIdeaTestCase() {
|
||||
|
||||
private companion object {
|
||||
val GRADLE_VERSION_PATTERN: Pattern = Pattern.compile("((\\d+)(\\.\\d+)+)(-(\\p{Alpha}+)-(\\w+))?(-(SNAPSHOT|\\d{14}([-+]\\d{4})?))?")
|
||||
}
|
||||
|
||||
override fun setUp() {
|
||||
super.setUp()
|
||||
ApplicationManager.getApplication().replaceService(GradleCompatibilitySupportUpdater::class.java,
|
||||
@@ -38,4 +46,24 @@ abstract class GradleJvmSupportMatricesTestCase : LightIdeaTestCase() {
|
||||
|
||||
fun suggestOldestSupportedJavaVersion(gradleVersion: String): Int? =
|
||||
GradleJvmSupportMatrix.suggestOldestSupportedJavaVersion(GradleVersion.version(gradleVersion))?.feature
|
||||
|
||||
fun assertSupportedGradleVersion(gradleVersion: String, chooseGradleVersion: List<GradleVersion>.() -> GradleVersion?) {
|
||||
val expectedGradleVersion = GradleVersion.version(gradleVersion)
|
||||
val allSupportedGradleVersions = GradleJvmSupportMatrix.getAllSupportedGradleVersionsByIdea()
|
||||
val actualGradleVersions = allSupportedGradleVersions
|
||||
.filter { it.getMajorVersion() == expectedGradleVersion.getMajorVersion() }
|
||||
Assertions.assertEquals(expectedGradleVersion, actualGradleVersions.chooseGradleVersion()) {
|
||||
"Incorrect Gradle version format\n" +
|
||||
"All supported versions = $allSupportedGradleVersions\n" +
|
||||
"Chosen versions = $actualGradleVersions\n"
|
||||
}
|
||||
}
|
||||
|
||||
private fun GradleVersion.getMajorVersion(): Int {
|
||||
val matcher: Matcher = GRADLE_VERSION_PATTERN.matcher(version)
|
||||
if (!matcher.matches()) {
|
||||
throw IllegalStateException("Unable to parse Gradle version: $version")
|
||||
}
|
||||
return matcher.group(2).toInt(10)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user