diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index f78ae57..a5ec4ef 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -12,6 +12,10 @@ jobs: - uses: actions/checkout@v2 with: submodules: recursive + - uses: actions/setup-java@v4 + with: + java-version: '21' + distribution: 'corretto' - uses: actions/cache@v2 with: path: | diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml index 18308b4..a8a13bd 100644 --- a/.github/workflows/Release.yml +++ b/.github/workflows/Release.yml @@ -12,7 +12,11 @@ jobs: - uses: actions/checkout@v2 with: submodules: recursive - - run: ./gradlew :rdgen + - uses: actions/setup-java@v4 + with: + java-version: '21' + distribution: 'corretto' + - run: ./gradlew :protocol:rdgen - run: ./gradlew :buildPlugin -PBuildConfiguration=Release - run: ./gradlew :signPlugin -PBuildConfiguration=Release env: @@ -26,7 +30,6 @@ jobs: find: 'release/' replace: '' - uses: actions/upload-artifact@v3 - if: always() with: name: odata-cli-ui.${{ steps.fix_branch_name.outputs.value }} path: output diff --git a/build.gradle.kts b/build.gradle.kts index 2400909..e19309d 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -2,7 +2,6 @@ import com.jetbrains.plugin.structure.base.utils.isFile import groovy.ant.FileNameFinder import org.apache.tools.ant.taskdefs.condition.Os import org.jetbrains.intellij.platform.gradle.Constants -import org.jetbrains.intellij.platform.gradle.IntelliJPlatformType import java.io.ByteArrayOutputStream plugins { @@ -68,8 +67,13 @@ sourceSets { } } +tasks.compileJava { + sourceCompatibility = JavaVersion.VERSION_21.toString() + targetCompatibility = JavaVersion.VERSION_21.toString() +} + tasks.compileKotlin { - kotlinOptions { jvmTarget = "17" } + kotlinOptions { jvmTarget = "21" } } intellijPlatform { @@ -77,13 +81,14 @@ intellijPlatform { cliPath = File("/libs/verifier-cli-1.373-all.jar") // https://github.com/JetBrains/intellij-plugin-verifier ides { ides(listOf( - "RD-2024.1", - "RD-2024.1.1", - "RD-2024.1.2", - "RD-2024.1.3", - "RD-2024.1.4", - "RD-2024.1.5", - "RD-2024.1.6" + "RD-2024.2", + "RD-2024.2.1", + "RD-2024.2.2", + "RD-2024.2.3", + "RD-2024.2.4", + "RD-2024.2.5", + "RD-2024.2.6", + "RD-2024.2.7" )) } } diff --git a/gradle.properties b/gradle.properties index 7ebd3c6..57ff4e7 100644 --- a/gradle.properties +++ b/gradle.properties @@ -17,7 +17,7 @@ PublishToken="_PLACEHOLDER_" # Release: 2020.2 # EAP: 2020.3-EAP2-SNAPSHOT # Nightly: 2020.3-SNAPSHOT -ProductVersion=2024.1 +ProductVersion=2024.2 # Kotlin 1.4 will bundle the stdlib dependency by default, causing problems with the version bundled with the IDE # https://blog.jetbrains.com/kotlin/2020/07/kotlin-1-4-rc-released/#stdlib-default diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index a16d695..e7cc28e 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -1,8 +1,8 @@ [versions] -kotlin = "1.8.20" # https://plugins.jetbrains.com/docs/intellij/using-kotlin.html#kotlin-standard-library +kotlin = "1.9.24" # https://plugins.jetbrains.com/docs/intellij/using-kotlin.html#kotlin-standard-library rdGen = "2024.1.1" # https://github.com/JetBrains/rd/releases intellijPlatform = "2.0.1" # https://github.com/JetBrains/intellij-platform-gradle-plugin/releases -gradleJvmWrapper = "0.14.0" # https://github.com/JetBrains/intellij-platform-gradle-plugin/releases +gradleJvmWrapper = "0.14.0" # https://github.com/mfilippov/gradle-jvm-wrapper [libraries] kotlinStdLib = { group = "org.jetbrains.kotlin", name = "kotlin-stdlib", version.ref = "kotlin" } diff --git a/src/dotnet/Plugin.props b/src/dotnet/Plugin.props index 133ef71..4bb2d0e 100644 --- a/src/dotnet/Plugin.props +++ b/src/dotnet/Plugin.props @@ -3,7 +3,7 @@ - 2024.1.0 + 2024.2.0 OData CLI UI Description diff --git a/src/rider/main/kotlin/ru/ellizio/odatacliui/actions/OpenCliDialogAction.kt b/src/rider/main/kotlin/ru/ellizio/odatacliui/actions/OpenCliDialogAction.kt index 2470caa..23fab44 100644 --- a/src/rider/main/kotlin/ru/ellizio/odatacliui/actions/OpenCliDialogAction.kt +++ b/src/rider/main/kotlin/ru/ellizio/odatacliui/actions/OpenCliDialogAction.kt @@ -4,6 +4,7 @@ import com.intellij.execution.ui.ConsoleView import com.intellij.openapi.actionSystem.ActionUpdateThread import com.intellij.openapi.actionSystem.AnAction import com.intellij.openapi.actionSystem.AnActionEvent +import com.intellij.openapi.application.EDT import com.intellij.openapi.project.Project import com.intellij.openapi.rd.util.* import com.intellij.openapi.vfs.VirtualFileManager @@ -19,6 +20,8 @@ import com.jetbrains.rider.projectView.actions.isProjectModelReady import com.jetbrains.rider.projectView.solution import com.jetbrains.rider.projectView.workspace.isProject import com.jetbrains.rider.projectView.workspace.isWebReferenceFolder +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.withContext import ru.ellizio.odatacliui.extensions.printCommandError import ru.ellizio.odatacliui.models.ActionMetadata import ru.ellizio.odatacliui.terminal.executors.CommandLineExecutor @@ -33,7 +36,7 @@ class OpenCliDialogAction : AnAction() { project.lifetime.launchOnUi { val dialog = CliDialog(dialogModel) if (dialog.showAndGet()) { - withBackgroundContext { + withContext(Dispatchers.IO) { executeCommand(project, actionMetadata, dialogModel) } } @@ -54,8 +57,8 @@ class OpenCliDialogAction : AnAction() { private suspend fun executeCommand(project: Project, metadata: ActionMetadata, model: CliDialogModel) { - var consoleView: ConsoleView? = null - withUiContext { + var consoleView: ConsoleView? + withContext(Dispatchers.EDT) { consoleView = CliToolWindowManager.getInstance(project).instantiateConsole() } diff --git a/src/rider/main/resources/META-INF/plugin.xml b/src/rider/main/resources/META-INF/plugin.xml index 6455d35..b2b5698 100644 --- a/src/rider/main/resources/META-INF/plugin.xml +++ b/src/rider/main/resources/META-INF/plugin.xml @@ -3,7 +3,7 @@ OData CLI UI _PLACEHOLDER_ ellizio - + com.intellij.modules.rider org.jetbrains.plugins.terminal UiBundle