From 5e9210aed0b5f95655725a041899e525f6d0993d Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Fri, 24 Apr 2026 13:20:27 +0300 Subject: [PATCH 1/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE --- .../academy/platform/OpenProjectTaskCompat.kt | 44 +++++++------------ 1 file changed, 16 insertions(+), 28 deletions(-) diff --git a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt index cd432b7c4..158d2d1d4 100644 --- a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt +++ b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt @@ -21,33 +21,21 @@ object OpenProjectTaskCompat { beforeInit: ((Project) -> Unit)? = null, preparedToOpen: ((Project, Module) -> Unit)? = null ): OpenProjectTask { - return OpenProjectTask( - forceOpenInNewFrame = forceOpenInNewFrame, - forceReuseFrame = false, - projectToClose = projectToClose, - isNewProject = isNewProject, - useDefaultProjectAsTemplate = true, - project = null, - projectName = projectName, - showWelcomeScreen = true, - callback = null, - line = -1, - column = -1, - isRefreshVfsNeeded = false, - runConfigurators = runConfigurators, - runConversionBeforeOpen = true, - projectWorkspaceId = null, - projectFrameTypeId = null, - isProjectCreatedWithWizard = isProjectCreatedWithWizard, - preloadServices = false, - beforeInit = if (beforeInit != null) { { beforeInit(it) } } else null, - beforeOpen = null, - preparedToOpen = if (preparedToOpen != null) { { preparedToOpen(it.project, it) } } else null, - preventIprLookup = false, - processorChooser = null, - implOptions = null, - projectRootDir = null, - createModule = true - ) + return OpenProjectTask { + this.forceOpenInNewFrame = forceOpenInNewFrame + this.forceReuseFrame = false + this.isNewProject = isNewProject + this.isProjectCreatedWithWizard = isProjectCreatedWithWizard + this.runConfigurators = runConfigurators + this.projectName = projectName + this.projectToClose = projectToClose + this.createModule = true + this.useDefaultProjectAsTemplate = true + this.runConversionBeforeOpen = true + this.showWelcomeScreen = true + this.preloadServices = false + if (beforeInit != null) this.beforeInit = { beforeInit(it) } + if (preparedToOpen != null) this.preparedToOpen = { preparedToOpen(it.project, it) } + } } } From a7172747b3ad90a7e8fb9640e7e5e883a2040f8c Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Fri, 24 Apr 2026 14:00:59 +0300 Subject: [PATCH 2/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE --- gradle-261.properties | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gradle-261.properties b/gradle-261.properties index 9e9b685fe..7193272ff 100644 --- a/gradle-261.properties +++ b/gradle-261.properties @@ -4,8 +4,7 @@ customUntilBuild=261.* # Existent IDE versions can be found in the following repos: # https://www.jetbrains.com/intellij-repository/releases/ # https://www.jetbrains.com/intellij-repository/snapshots/ -#261.22158.234 -ideaVersion=IU-261.23567.71-EAP-CANDIDATE -clionVersion=CL-261.23567-EAP-CANDIDATE-SNAPSHOT -pycharmVersion=PC-261.23567.80-EAP-SNAPSHOT -riderVersion=RD-2026.1-RC1-SNAPSHOT +ideaVersion=IU-2026.1.1 +clionVersion=CL-2026.1.1 +pycharmVersion=PC-2026.1 +riderVersion=RD-261.23567.135 From 59cb18a34efffbbf8df36ea1ba542b3295571dc0 Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Fri, 24 Apr 2026 15:29:12 +0300 Subject: [PATCH 3/8] ALT-10998 [IDE Plugin] Code files are not transferred to the next stage fix version --- gradle-261.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gradle-261.properties b/gradle-261.properties index 7193272ff..3074b83cb 100644 --- a/gradle-261.properties +++ b/gradle-261.properties @@ -7,4 +7,4 @@ customUntilBuild=261.* ideaVersion=IU-2026.1.1 clionVersion=CL-2026.1.1 pycharmVersion=PC-2026.1 -riderVersion=RD-261.23567.135 +riderVersion=RD-2026.1.0.1 From 9ba7676c241dfa53291baf4be90ba12c874d3a8c Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Mon, 27 Apr 2026 11:36:34 +0300 Subject: [PATCH 4/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE --- .../academy/platform/OpenProjectTaskCompat.kt | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt index 158d2d1d4..6b701fe1d 100644 --- a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt +++ b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt @@ -3,7 +3,6 @@ package org.hyperskill.academy.platform import com.intellij.ide.impl.OpenProjectTask import com.intellij.openapi.module.Module import com.intellij.openapi.project.Project -import java.nio.file.Path /** * Compatibility helper to construct OpenProjectTask for 253+. @@ -21,21 +20,24 @@ object OpenProjectTaskCompat { beforeInit: ((Project) -> Unit)? = null, preparedToOpen: ((Project, Module) -> Unit)? = null ): OpenProjectTask { - return OpenProjectTask { - this.forceOpenInNewFrame = forceOpenInNewFrame - this.forceReuseFrame = false - this.isNewProject = isNewProject - this.isProjectCreatedWithWizard = isProjectCreatedWithWizard - this.runConfigurators = runConfigurators - this.projectName = projectName - this.projectToClose = projectToClose - this.createModule = true - this.useDefaultProjectAsTemplate = true - this.runConversionBeforeOpen = true - this.showWelcomeScreen = true - this.preloadServices = false - if (beforeInit != null) this.beforeInit = { beforeInit(it) } - if (preparedToOpen != null) this.preparedToOpen = { preparedToOpen(it.project, it) } - } + + val task = OpenProjectTask( + forceOpenInNewFrame = forceOpenInNewFrame, + projectToClose = projectToClose, + isNewProject = isNewProject + ) + return task.copy( + projectName = projectName, + runConfigurators = runConfigurators, + isProjectCreatedWithWizard = isProjectCreatedWithWizard, + beforeInit = beforeInit?.let { { beforeInit(it) } }, + preparedToOpen = preparedToOpen?.let { { preparedToOpen(it.project, it) } }, + forceReuseFrame = false, + createModule = true, + useDefaultProjectAsTemplate = true, + runConversionBeforeOpen = true, + showWelcomeScreen = true, + preloadServices = false + ) } } From 6dc4ba4e696dc05d7195280e73af3090c4962f37 Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Mon, 27 Apr 2026 13:47:38 +0300 Subject: [PATCH 5/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE --- .../academy/platform/OpenProjectTaskCompat.kt | 31 +++++++------------ 1 file changed, 12 insertions(+), 19 deletions(-) diff --git a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt index 6b701fe1d..be36d35c3 100644 --- a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt +++ b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt @@ -20,24 +20,17 @@ object OpenProjectTaskCompat { beforeInit: ((Project) -> Unit)? = null, preparedToOpen: ((Project, Module) -> Unit)? = null ): OpenProjectTask { - - val task = OpenProjectTask( - forceOpenInNewFrame = forceOpenInNewFrame, - projectToClose = projectToClose, - isNewProject = isNewProject - ) - return task.copy( - projectName = projectName, - runConfigurators = runConfigurators, - isProjectCreatedWithWizard = isProjectCreatedWithWizard, - beforeInit = beforeInit?.let { { beforeInit(it) } }, - preparedToOpen = preparedToOpen?.let { { preparedToOpen(it.project, it) } }, - forceReuseFrame = false, - createModule = true, - useDefaultProjectAsTemplate = true, - runConversionBeforeOpen = true, - showWelcomeScreen = true, - preloadServices = false - ) + return OpenProjectTask { + this.forceOpenInNewFrame = forceOpenInNewFrame + this.isNewProject = isNewProject + this.isProjectCreatedWithWizard = isProjectCreatedWithWizard + this.runConfigurators = runConfigurators + this.projectName = projectName + this.projectToClose = projectToClose + this.beforeInit = beforeInit + this.preparedToOpen = { module -> + preparedToOpen?.invoke(module.project, module) + } + } } } From a7d3a9d41aa696eb8e1ec4b733fe4f6a94e5d2d8 Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Mon, 27 Apr 2026 14:55:45 +0300 Subject: [PATCH 6/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE --- .../academy/platform/OpenProjectTaskCompat.kt | 40 +++++++++++++------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt index be36d35c3..b9c673bcc 100644 --- a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt +++ b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt @@ -20,17 +20,33 @@ object OpenProjectTaskCompat { beforeInit: ((Project) -> Unit)? = null, preparedToOpen: ((Project, Module) -> Unit)? = null ): OpenProjectTask { - return OpenProjectTask { - this.forceOpenInNewFrame = forceOpenInNewFrame - this.isNewProject = isNewProject - this.isProjectCreatedWithWizard = isProjectCreatedWithWizard - this.runConfigurators = runConfigurators - this.projectName = projectName - this.projectToClose = projectToClose - this.beforeInit = beforeInit - this.preparedToOpen = { module -> - preparedToOpen?.invoke(module.project, module) - } - } + return OpenProjectTask( + forceOpenInNewFrame = forceOpenInNewFrame, + forceReuseFrame = false, + projectToClose = projectToClose, + isNewProject = isNewProject, + useDefaultProjectAsTemplate = false, + project = null, + projectName = projectName, + showWelcomeScreen = true, + callback = null, + line = -1, + column = -1, + isRefreshVfsNeeded = false, + runConfigurators = runConfigurators, + runConversionBeforeOpen = false, + projectWorkspaceId = null, + projectFrameTypeId = null, + isProjectCreatedWithWizard = isProjectCreatedWithWizard, + preloadServices = false, + beforeInit = beforeInit, + beforeOpen = null, + preparedToOpen = if (preparedToOpen == null) null else { module -> preparedToOpen.invoke(module.project, module) }, + preventIprLookup = false, + processorChooser = null, + implOptions = null, + projectRootDir = null, + createModule = true + ) } } From 627cac7eaec6e421053ebc38c7236c4956e02b0b Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Tue, 28 Apr 2026 09:28:42 +0300 Subject: [PATCH 7/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE rollback changes --- .../hyperskill/academy/platform/OpenProjectTaskCompat.kt | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt index b9c673bcc..28cc744d0 100644 --- a/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt +++ b/intellij-plugin/hs-core/branches/261/src/org/hyperskill/academy/platform/OpenProjectTaskCompat.kt @@ -25,7 +25,7 @@ object OpenProjectTaskCompat { forceReuseFrame = false, projectToClose = projectToClose, isNewProject = isNewProject, - useDefaultProjectAsTemplate = false, + useDefaultProjectAsTemplate = true, project = null, projectName = projectName, showWelcomeScreen = true, @@ -34,14 +34,14 @@ object OpenProjectTaskCompat { column = -1, isRefreshVfsNeeded = false, runConfigurators = runConfigurators, - runConversionBeforeOpen = false, + runConversionBeforeOpen = true, projectWorkspaceId = null, projectFrameTypeId = null, isProjectCreatedWithWizard = isProjectCreatedWithWizard, preloadServices = false, - beforeInit = beforeInit, + beforeInit = if (beforeInit != null) { { beforeInit(it) } } else null, beforeOpen = null, - preparedToOpen = if (preparedToOpen == null) null else { module -> preparedToOpen.invoke(module.project, module) }, + preparedToOpen = if (preparedToOpen != null) { { preparedToOpen(it.project, it) } } else null, preventIprLookup = false, processorChooser = null, implOptions = null, From 8508adfac4e9482c92be45d3c5a1093da615c1bc Mon Sep 17 00:00:00 2001 From: Oleksandr Liemiahov Date: Tue, 28 Apr 2026 09:28:57 +0300 Subject: [PATCH 8/8] ALT-11011 [IDE Plugin] Problems opening a task in the IDE bump libs versions --- buildSrc/src/main/kotlin/intellijUtils.kt | 9 +++++++++ gradle/libs.versions.toml | 16 ++++++++-------- intellij-plugin/build.gradle.kts | 2 +- 3 files changed, 18 insertions(+), 9 deletions(-) diff --git a/buildSrc/src/main/kotlin/intellijUtils.kt b/buildSrc/src/main/kotlin/intellijUtils.kt index 13fd77402..ba9b37640 100644 --- a/buildSrc/src/main/kotlin/intellijUtils.kt +++ b/buildSrc/src/main/kotlin/intellijUtils.kt @@ -3,6 +3,7 @@ import org.gradle.process.JavaForkOptions import org.jetbrains.intellij.platform.gradle.IntelliJPlatformType import org.jetbrains.intellij.platform.gradle.TestFrameworkType import org.jetbrains.intellij.platform.gradle.extensions.IntelliJPlatformDependenciesExtension +import org.jetbrains.intellij.platform.gradle.extensions.IntelliJPlatformExtension import kotlin.reflect.KProperty const val VERIFY_CLASSES_TASK_NAME = "verifyClasses" @@ -157,6 +158,14 @@ fun IntelliJPlatformDependenciesExtension.intellijIde(versionWithCode: String) { jetbrainsRuntime() } +fun IntelliJPlatformExtension.PluginVerification.Ides.intellijIde(versionWithCode: String) { + val (type, version) = versionWithCode.toTypeWithVersion() + create(type, version) { + useInstaller.set(false) + useCache.set(true) + } +} + fun IntelliJPlatformDependenciesExtension.intellijPlugins(vararg notations: String) { for (notation in notations) { when { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index c46a1627f..d2b39c48f 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,9 +1,9 @@ [versions] educational-ml-library = "1.0.65" -jackson = "2.17.2" -kotlin = "2.3.0" -okhttp = "4.12.0" -retrofit = "2.9.0" +jackson = "2.21.2" +kotlin = "2.3.21" +okhttp = "5.3.2" +retrofit = "3.0.0" [libraries] annotations = { group = "org.jetbrains", name = "annotations", version = "23.0.0" } @@ -15,7 +15,7 @@ jackson-dataformat-yaml = { group = "com.fasterxml.jackson.dataformat", name = " jackson-datatype-jsr310 = { group = "com.fasterxml.jackson.datatype", name = "jackson-datatype-jsr310", version.ref = "jackson" } jackson-module-kotlin = { group = "com.fasterxml.jackson.module", name = "jackson-module-kotlin", version.ref = "jackson" } jsoup = { group = "org.jsoup", name = "jsoup", version = "1.17.2" } -kotlin-css-jvm = { group = "org.jetbrains.kotlin-wrappers", name = "kotlin-css-jvm", version = "2025.5.11" } +kotlin-css-jvm = { group = "org.jetbrains.kotlin-wrappers", name = "kotlin-css-jvm", version = "2026.4.12" } kotlin-stdlib = { group = "org.jetbrains.kotlin", name = "kotlin-stdlib", version.ref = "kotlin" } kotlinx-serialization = { group = "org.jetbrains.kotlinx", name = "kotlinx-serialization-json", version = "1.8.0" } logging-interceptor = { group = "com.squareup.okhttp3", name = "logging-interceptor", version.ref = "okhttp" } @@ -32,8 +32,8 @@ openTest4J = { group = "org.opentest4j", name = "opentest4j", version = "1.3.0" hamcrest = { group = "org.hamcrest", name = "hamcrest", version="2.2" } [plugins] -intelliJPlatformPlugin = { id = "org.jetbrains.intellij.platform", version = "2.10.5" } +intelliJPlatformPlugin = { id = "org.jetbrains.intellij.platform", version = "2.15.0" } kotlinPlugin = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" } kotlinSerializationPlugin = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlin" } -propertiesPlugin = { id = "net.saliman.properties", version = "1.5.2" } -testRetryPlugin = { id = "org.gradle.test-retry", version = "1.6.2" } +propertiesPlugin = { id = "net.saliman.properties", version = "1.6.0" } +testRetryPlugin = { id = "org.gradle.test-retry", version = "1.6.4" } diff --git a/intellij-plugin/build.gradle.kts b/intellij-plugin/build.gradle.kts index 0d196f161..21200b939 100644 --- a/intellij-plugin/build.gradle.kts +++ b/intellij-plugin/build.gradle.kts @@ -43,7 +43,7 @@ intellijPlatform { pluginVerification { ides { - ide(IntellijIdeaUltimate, ideaVersion.toTypeWithVersion().version) + intellijIde(ideaVersion) } }