mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-05 01:50:56 +07:00
[kotlin] Move url with Kotlin versions to a registry key
KTIJ-26027 Merge-request: IJ-MR-119645 Merged-by: Victoria Petrakovich <Victoria.Petrakovich@jetbrains.com> GitOrigin-RevId: 463786432eaf5093f8ce21a92165f00fd1e8280c
This commit is contained in:
committed by
intellij-monorepo-bot
parent
3b88833e31
commit
79aa68995f
@@ -4,4 +4,12 @@
|
||||
<add-to-group group-id="KotlinToolsGroup"/>
|
||||
</action>
|
||||
</actions>
|
||||
|
||||
<extensions defaultExtensionNs="com.intellij">
|
||||
<registryKey
|
||||
key="repo.with.kotlin.versions.url"
|
||||
description="URL of a JSON file with Kotlin versions"
|
||||
defaultValue="https://search.maven.org/solrsearch/select?q=g:%22org.jetbrains.kotlin%22+AND+a:%22kotlin-stdlib%22&core=gav&rows=20&wt=json"
|
||||
restartRequired="false"/>
|
||||
</extensions>
|
||||
</idea-plugin>
|
||||
@@ -40,5 +40,6 @@
|
||||
<orderEntry type="module" module-name="intellij.platform.diff.impl" />
|
||||
<orderEntry type="module" module-name="intellij.platform.core" />
|
||||
<orderEntry type="module" module-name="intellij.platform.util.coroutines" />
|
||||
<orderEntry type="module" module-name="intellij.platform.util" />
|
||||
</component>
|
||||
</module>
|
||||
@@ -62,9 +62,7 @@ automatic.library.version.update.for.maven.and.gradle.projects.is.currently.unsu
|
||||
update.kotlin.runtime.library=Update Kotlin Runtime Library
|
||||
|
||||
configure.kotlin.title=Configure Kotlin with {0}
|
||||
configure.kotlin.find.maven.versions=Find Kotlin Maven plugin versions
|
||||
configure.kotlin.loading=loading\u2026
|
||||
configure.kotlin.cant.load.versions=Couldn't load versions list from search.maven.org
|
||||
configure.kotlin.cant.load.versions=Couldn't load Kotlin versions list
|
||||
|
||||
configure.kotlin.root.contains.another.kotlin=Your top-level build script contains Kotlin {0}.<br>
|
||||
configure.kotlin.root.should.contain.same.version=The top-level and modules' build scripts should contain the same version.<br>
|
||||
|
||||
@@ -5,14 +5,17 @@ import com.google.common.io.Closeables
|
||||
import com.google.gson.JsonParser
|
||||
import com.intellij.openapi.application.ApplicationManager
|
||||
import com.intellij.openapi.application.ModalityState
|
||||
import com.intellij.openapi.diagnostic.Logger
|
||||
import com.intellij.openapi.module.Module
|
||||
import com.intellij.openapi.observable.properties.AtomicProperty
|
||||
import com.intellij.openapi.observable.util.transform
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.ui.DialogWrapper
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import com.intellij.ui.dsl.builder.AlignX
|
||||
import com.intellij.ui.dsl.builder.bindText
|
||||
import com.intellij.ui.dsl.builder.panel
|
||||
import com.intellij.util.io.HttpRequests
|
||||
import com.intellij.util.net.HttpConfigurable
|
||||
import com.intellij.util.text.VersionComparatorUtil
|
||||
import org.jetbrains.kotlin.idea.compiler.configuration.IdeKotlinVersion
|
||||
@@ -204,12 +207,12 @@ class ConfigureDialogWithModulesAndVersion(
|
||||
}
|
||||
|
||||
companion object {
|
||||
|
||||
private val LOG = Logger.getInstance(ConfigureDialogWithModulesAndVersion::class.java)
|
||||
|
||||
private const val MODULES_TO_DISPLAY_SIZE = 2
|
||||
|
||||
internal const val DEFAULT_KOTLIN_VERSION = "1.8.22"
|
||||
|
||||
private const val VERSIONS_LIST_URL =
|
||||
"https://search.maven.org/solrsearch/select?q=g:%22org.jetbrains.kotlin%22+AND+a:%22kotlin-stdlib%22&core=gav&rows=20&wt=json"
|
||||
internal const val DEFAULT_KOTLIN_VERSION = "1.9.22"
|
||||
|
||||
@Throws(IOException::class)
|
||||
@JvmStatic
|
||||
@@ -232,7 +235,8 @@ class ConfigureDialogWithModulesAndVersion(
|
||||
eapConnection.disconnect()
|
||||
}
|
||||
}
|
||||
val urlConnection = HttpConfigurable.getInstance().openHttpConnection(VERSIONS_LIST_URL)
|
||||
val url = Registry.stringValue("repo.with.kotlin.versions.url")
|
||||
val urlConnection = HttpConfigurable.getInstance().openHttpConnection(url)
|
||||
try {
|
||||
val timeout = TimeUnit.SECONDS.toMillis(30).toInt()
|
||||
urlConnection.setConnectTimeout(timeout)
|
||||
@@ -251,6 +255,12 @@ class ConfigureDialogWithModulesAndVersion(
|
||||
} finally {
|
||||
Closeables.closeQuietly(streamReader)
|
||||
}
|
||||
} catch (e: HttpRequests.HttpStatusException) {
|
||||
LOG.warn("Cannot load data from ${url} (statusCode=${e.statusCode})", e)
|
||||
throw e
|
||||
} catch (e: Exception) {
|
||||
LOG.warn("Error parsing Kotlin versions JSON data: ${e} (URL=${url})", e)
|
||||
throw e
|
||||
} finally {
|
||||
urlConnection.disconnect()
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@ import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.ui.DialogPanel
|
||||
import com.intellij.openapi.util.Disposer
|
||||
import com.intellij.platform.util.coroutines.namedChildScope
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import com.intellij.ui.dsl.builder.*
|
||||
import com.intellij.ui.dsl.gridLayout.UnscaledGaps
|
||||
import com.intellij.uiDesigner.core.Spacer
|
||||
|
||||
Reference in New Issue
Block a user