Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions .run/Run AWS Toolkit - Community [2026.1].run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run AWS Toolkit - Community [2026.1]" type="GradleRunConfiguration" factoryName="Gradle" folderName="2026.1">
<log_file alias="idea.log" path="$PROJECT_DIR$/plugins/toolkit/intellij-standalone/build/idea-sandbox/IC-2026.1/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="-PrunIdeVariant=IC -PideProfileName=2026.1" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":plugin-toolkit:intellij-standalone:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>false</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
25 changes: 25 additions & 0 deletions .run/Run AWS Toolkit - Gateway [2026.1].run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run AWS Toolkit - Gateway [2026.1]" type="GradleRunConfiguration" factoryName="Gradle" folderName="2026.1">
<log_file alias="idea.log" path="$PROJECT_DIR$/plugins/toolkit/jetbrains-gateway/build/idea-sandbox/GW-2026.1/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value=" -PideProfileName=2026.1" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":plugin-toolkit:jetbrains-gateway:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>false</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
25 changes: 25 additions & 0 deletions .run/Run AWS Toolkit - Rider [2026.1].run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run AWS Toolkit - Rider [2026.1]" type="GradleRunConfiguration" factoryName="Gradle" folderName="2026.1">
<log_file alias="idea.log" path="$PROJECT_DIR$/plugins/toolkit/intellij-standalone/build/idea-sandbox/RD-2026.1/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="-PrunIdeVariant=RD -PideProfileName=2026.1" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":plugin-toolkit:intellij-standalone:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>false</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
25 changes: 25 additions & 0 deletions .run/Run AWS Toolkit - Ultimate [2026.1].run.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
<component name="ProjectRunConfigurationManager">
<configuration default="false" name="Run AWS Toolkit - Ultimate [2026.1]" type="GradleRunConfiguration" factoryName="Gradle" folderName="2026.1">
<log_file alias="idea.log" path="$PROJECT_DIR$/plugins/toolkit/intellij-standalone/build/idea-sandbox/IU-2026.1/log/idea.log" />
<ExternalSystemSettings>
<option name="executionName" />
<option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="externalSystemIdString" value="GRADLE" />
<option name="scriptParameters" value="-PrunIdeVariant=IU -PideProfileName=2026.1" />
<option name="taskDescriptions">
<list />
</option>
<option name="taskNames">
<list>
<option value=":plugin-toolkit:intellij-standalone:runIde" />
</list>
</option>
<option name="vmOptions" />
</ExternalSystemSettings>
<ExternalSystemDebugServerProcess>false</ExternalSystemDebugServerProcess>
<ExternalSystemReattachDebugProcess>true</ExternalSystemReattachDebugProcess>
<DebugAllEnabled>false</DebugAllEnabled>
<RunAsTest>false</RunAsTest>
<method v="2" />
</configuration>
</component>
4 changes: 1 addition & 3 deletions .run/generateConfigs.py
Original file line number Diff line number Diff line change
Expand Up @@ -52,16 +52,14 @@ def write_config(mv: str, ide: IdeVariant, plugin: PluginVariant):
f.write(TEMPLATE.format(plugin = plugin, variant = ide, major_version = mv))

if __name__ == '__main__':
mvs = ["2025.1", "2025.2", "2025.3"]
mvs = ["2025.1", "2025.2", "2025.3", "2026.1"]
ides = [
IdeVariant("Community", "IC"),
IdeVariant("Rider", "RD"),
IdeVariant("Ultimate", "IU"),
]
plugins = [
PluginVariant("Amazon Q", "amazonq", ":plugin-amazonq"),
PluginVariant("AWS Toolkit", "toolkit/intellij-standalone", ":plugin-toolkit:intellij-standalone"),
PluginVariant("All", "sandbox-all", ":sandbox-all"),
]


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ fun Project.jvmTarget(): Provider<JavaVersion> = withCurrentProfileName {
// https://plugins.jetbrains.com/docs/intellij/using-kotlin.html#stdlib-miscellaneous
fun Project.kotlinTarget(): Provider<String> = withCurrentProfileName {
when (it) {
"2025.1", "2025.2", "2025.3" -> KotlinVersionEnum.KOTLIN_2_1
"2025.1", "2025.2", "2025.3", "2026.1" -> KotlinVersionEnum.KOTLIN_2_1
else -> error("not set")
}.version
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -149,6 +149,48 @@ object IdeVersions {
rdGenVersion = "2025.3.1",
nugetVersion = "2025.3.0"
)
),
Profile(
name = "2026.1",
gateway = ProductProfile(
sdkVersion = "2026.1",
bundledPlugins = listOf("org.jetbrains.plugins.terminal")
),
community = ProductProfile(
sdkVersion = "2026.1",
bundledPlugins = commonPlugins + listOf(
"com.intellij.java",
"com.intellij.gradle",
"org.jetbrains.idea.maven",
"com.intellij.properties"
),
marketplacePlugins = listOf(
"org.toml.lang:261.22158.185",
"PythonCore:261.22158.277",
"Docker:261.22158.299",
"com.intellij.modules.json:261.22158.182"
)
),
ultimate = ProductProfile(
sdkVersion = "2026.1",
bundledPlugins = commonPlugins + listOf(
"JavaScript",
"JavaScriptDebugger",
"com.intellij.database"
),
marketplacePlugins = listOf(
"Pythonid:261.22158.277",
"org.jetbrains.plugins.go:261.22158.277",
"com.intellij.modules.json:261.22158.182"
)
),
rider = RiderProfile(
sdkVersion = "2026.1",
bundledPlugins = commonPlugins,
netFrameworkTarget = "net472",
rdGenVersion = "2026.1.3",
nugetVersion = "2026.1.0"
)
)
).associateBy { it.name }

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,8 +83,10 @@ dependencies {
gatewayResources(project(":plugin-toolkit:jetbrains-gateway", configuration = "gatewayResources"))
}

implementation(project(":plugin-toolkit:jetbrains-rider"))
resharperDlls(project(":plugin-toolkit:jetbrains-rider", configuration = "resharperDlls"))
project.findProject(":plugin-toolkit:jetbrains-rider")?.let {
implementation(it)
resharperDlls(project(":plugin-toolkit:jetbrains-rider", configuration = "resharperDlls"))
}
}

tasks.withType<TestIdeUiTask>().configureEach {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ dependencies {
if (!project.name.contains("jetbrains-gateway")) {
val type = toolkitIntelliJ.ideFlavor.map { flavor ->
// Starting with 2025.3, IntelliJ IDEA is unified (no separate Community edition)
if (version.get().startsWith("2025.3") && flavor == IdeFlavor.IC) {
if ((version.get().startsWith("2025.3") || version.get().startsWith("2026.")) && flavor == IdeFlavor.IC) {
IntelliJPlatformType.IntellijIdeaUltimate
} else {
IntelliJPlatformType.fromCode(flavor.toString())
Expand All @@ -115,9 +115,10 @@ dependencies {
bundledPlugins(toolkitIntelliJ.productProfile().map { it.bundledPlugins })
plugins(toolkitIntelliJ.productProfile().map { it.marketplacePlugins })

// OAuth modules split in 2025.3 (253) - must be explicitly bundled
// OAuth modules split in 2025.3+ - must be explicitly bundled
val versionStr = version.get()
if (versionStr.contains("253")) {
if (versionStr.contains("253") || versionStr.startsWith("2025.3") ||
versionStr.startsWith("2026.")) {
bundledModule("intellij.platform.collaborationTools")
bundledModule("intellij.platform.collaborationTools.auth.base")
bundledModule("intellij.platform.collaborationTools.auth")
Expand Down
4 changes: 4 additions & 0 deletions kotlinResolution.settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ dependencyResolutionManagement {
"1.10.1-intellij-5"
}

"2026.1" -> {
"1.10.2-intellij-1"
}

else -> { error("not set") }
}

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// Copyright 2020 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0

package software.aws.toolkits.jetbrains.services.lambda.python

// PyAddSdkGroupPanel and PyAddSdkPanel were removed in 2026.1 (261)
// This file is intentionally empty — the only caller was in src-242 which is no longer supported
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
// Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
package software.aws.toolkits.jetbrains.services.s3.editor

import com.intellij.ui.tree.AsyncTreeModel
import com.intellij.ui.tree.StructureTreeModel
import com.intellij.ui.tree.TreeVisitor
import com.intellij.ui.treeStructure.SimpleTreeStructure
import com.intellij.ui.treeStructure.treetable.TreeTableModel
import com.intellij.util.ui.ColumnInfo
import org.jetbrains.concurrency.Promise
import javax.swing.JTree
import javax.swing.tree.TreeModel
import javax.swing.tree.TreePath

/**
* Fork of JetBrain's intellij-community TreeTableModelWithColumns allowing us to use a custom AsyncTreeModel
* The only changes to this from original version are changing of imports and name of model
*/
class S3TreeTableModel(
private val delegate: AsyncTreeModel,
private val columns: Array<ColumnInfo<Any?, Any?>>,
val structureTreeModel: StructureTreeModel<SimpleTreeStructure>,
) : TreeTableModel, TreeModel by delegate, TreeVisitor.Acceptor {

override fun getColumnCount(): Int = columns.size

override fun getColumnName(column: Int): String = columns[column].name

override fun getColumnClass(column: Int): Class<*> = columns[column].columnClass

override fun getValueAt(node: Any?, column: Int): Any? = columns[column].valueOf(node)

override fun setValueAt(aValue: Any?, node: Any?, column: Int) = columns[column].setValue(node, aValue)

override fun isCellEditable(node: Any?, column: Int): Boolean = columns[column].isCellEditable(node)

override fun setTree(tree: JTree?) {}

override fun accept(visitor: TreeVisitor): Promise<TreePath?> = delegate.accept(visitor)
}
14 changes: 5 additions & 9 deletions plugins/toolkit/jetbrains-rider/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ import io.gitlab.arturbosch.detekt.Detekt
import io.gitlab.arturbosch.detekt.DetektCreateBaselineTask
import org.jetbrains.intellij.platform.gradle.TestFrameworkType
import org.jetbrains.intellij.platform.gradle.tasks.PrepareSandboxTask
import org.jetbrains.kotlin.com.intellij.openapi.util.SystemInfo
import software.aws.toolkits.gradle.intellij.IdeFlavor
import software.aws.toolkits.gradle.intellij.IdeVersions
import java.nio.file.Path
Expand Down Expand Up @@ -136,13 +135,6 @@ val rdModelJarFile: File by lazy {

configure<RdGenExtension> {
verbose = true
hashFolder = rdgenDir.toString()

classpath({
rdModelJarFile
})

sources(projectDir.resolve("protocol/model"))
packages = "model"
}

Expand All @@ -151,6 +143,10 @@ val generateModels = tasks.named<JavaExec>("generateModels") {
group = protocolGroup
description = "Generates protocol models"

// rd-gen 2026.1+ only adds rd-* jars to classpath, missing kotlin-stdlib
classpath(project.buildscript.configurations.getByName("classpath"))
classpath(rdModelJarFile)

inputs.dir(file("protocol/model"))

outputs.dir(riderGeneratedSources)
Expand Down Expand Up @@ -356,7 +352,7 @@ tasks.integrationTest {

tasks.test {
enabled = false
if (SystemInfo.isWindows) {
if (System.getProperty("os.name").lowercase().contains("win")) {
// extremely flaky
filter.excludeTestsMatching("software.aws.toolkits.jetbrains.services.lambda.dotnet.LambdaGutterMarkHighlightingTest*")
}
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
// Copyright 2019 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0

package software.aws.toolkits.jetbrains.utils

import com.intellij.execution.process.ProcessHandler
import com.intellij.execution.runners.ExecutionEnvironment
import com.intellij.execution.ui.ExecutionConsole
import com.intellij.openapi.application.PathManager
import com.intellij.xdebugger.XDebugProcess
import com.intellij.xdebugger.XDebugProcessStarter
import com.intellij.xdebugger.XDebugSession
import com.jetbrains.rd.framework.IProtocol
import com.jetbrains.rd.util.lifetime.Lifetime
import com.jetbrains.rider.debugger.DotNetDebugProcess
import com.jetbrains.rider.debugger.DotNetDebugRunner
import com.jetbrains.rider.debugger.actions.utils.OptionsUtil
import com.jetbrains.rider.model.debuggerWorker.DotNetDebuggerSessionModel
import com.jetbrains.rider.run.IDebuggerOutputListener
import java.io.File

// RiderEnvironment moved to com.jetbrains.rider.environment.RiderEnvironment in 2026.1
// and became a project-scoped coroutine service. Use PathManager for static access.
object DotNetDebuggerUtils {
const val debuggerName = "JetBrains.Debugger.Worker.exe"

val debuggerAssemblyFile: File = File(PathManager.getHomePath())
.resolve("lib/ReSharperHost")
.resolve(debuggerName)

val debuggerBinDir: File = debuggerAssemblyFile.parentFile

fun createAndStartSession(
executionConsole: ExecutionConsole,
env: ExecutionEnvironment,
sessionLifetime: Lifetime,
processHandler: ProcessHandler,
protocol: IProtocol,
sessionModel: DotNetDebuggerSessionModel,
outputEventsListener: IDebuggerOutputListener,
): XDebugProcessStarter {
val fireInitializedManually = env.getUserData(DotNetDebugRunner.FIRE_INITIALIZED_MANUALLY) ?: false

return object : XDebugProcessStarter() {
override fun start(session: XDebugSession): XDebugProcess = DotNetDebugProcess(
sessionLifetime,
session,
processHandler,
executionConsole,
protocol,
sessionModel,
fireInitializedManually,
outputEventsListener,
OptionsUtil.toDebugKind(sessionModel.sessionProperties.debugKind.valueOrNull),
env.project,
env.executionId
)
}
}
}
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0

package software.aws.toolkits.jetbrains.remoteDev.caws

// rdserver Gateway APIs moved to remoteController module in 2026.1
// No-op until dependency resolution for the new module is addressed
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
// Copyright 2025 Amazon.com, Inc. or its affiliates. All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0

package software.aws.toolkits.jetbrains.remoteDev.caws

// codeWithMe metrics APIs moved to remoteController module in 2026.1
// No-op until dependency resolution for the new module is addressed
Loading
Loading