Skip to content

Commit a6d80b4

Browse files
samgst-amazonmanodnyabrli
authored
fix(amazonq): make q chat unavalable in IDE version 2024.2.1 (#5788)
* make chat unaccessible on 242.2.1 * detekt * feedback * detekt * alias * simplify * fix product code * Update plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/QUtils.kt Co-authored-by: Richard Li <[email protected]> * update message * Update plugins/core/resources/resources/software/aws/toolkits/resources/MessagesBundle.properties * revert --------- Co-authored-by: manodnyab <[email protected]> Co-authored-by: Richard Li <[email protected]>
1 parent bc95823 commit a6d80b4

File tree

3 files changed

+17
-1
lines changed
  • plugins
    • amazonq
      • chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/toolwindow
      • shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq
    • core/resources/resources/software/aws/toolkits/resources

3 files changed

+17
-1
lines changed

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/toolwindow/AmazonQPanel.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ import software.aws.toolkits.jetbrains.isDeveloperMode
2525
import software.aws.toolkits.jetbrains.services.amazonq.apps.AmazonQAppInitContext
2626
import software.aws.toolkits.jetbrains.services.amazonq.apps.AppConnection
2727
import software.aws.toolkits.jetbrains.services.amazonq.commands.MessageTypeRegistry
28+
import software.aws.toolkits.jetbrains.services.amazonq.isQSupportedInThisVersion
2829
import software.aws.toolkits.jetbrains.services.amazonq.lsp.AmazonQLspService
2930
import software.aws.toolkits.jetbrains.services.amazonq.lsp.artifacts.ArtifactManager
3031
import software.aws.toolkits.jetbrains.services.amazonq.lsp.flareChat.AsyncChatUiListener
@@ -42,6 +43,7 @@ import software.aws.toolkits.jetbrains.services.amazonqCodeTest.auth.isCodeTestA
4243
import software.aws.toolkits.jetbrains.services.amazonqDoc.auth.isDocAvailable
4344
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.auth.isFeatureDevAvailable
4445
import software.aws.toolkits.jetbrains.services.codemodernizer.utils.isCodeTransformAvailable
46+
import software.aws.toolkits.resources.message
4547
import java.util.concurrent.CompletableFuture
4648
import javax.swing.JButton
4749

@@ -102,6 +104,9 @@ class AmazonQPanel(val project: Project, private val scope: CoroutineScope) : Di
102104
webviewContainer.add(JBTextArea("JCEF not supported"))
103105
}
104106
browser.complete(null)
107+
} else if (!isQSupportedInThisVersion()) {
108+
webviewContainer.add(JBTextArea("${message("q.unavailable")}\n ${message("q.unavailable.node")}"))
109+
browser.complete(null)
105110
} else {
106111
val loadingPanel = JBLoadingPanel(null, this)
107112
val wrapper = Wrapper()

plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonq/QUtils.kt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@
33

44
package software.aws.toolkits.jetbrains.services.amazonq
55

6+
import com.intellij.openapi.application.ApplicationInfo
67
import com.intellij.openapi.project.Project
8+
import com.intellij.openapi.util.BuildNumber
79
import com.intellij.openapi.util.SystemInfo
810
import software.amazon.awssdk.services.codewhispererruntime.model.IdeCategory
911
import software.amazon.awssdk.services.codewhispererruntime.model.OperatingSystem
@@ -52,3 +54,12 @@ fun codeWhispererUserContext(): UserContext = ClientMetadata.getDefault().let {
5254
.ideVersion(it.awsVersion)
5355
.build()
5456
}
57+
58+
fun isQSupportedInThisVersion(): Boolean {
59+
val currentBuild = ApplicationInfo.getInstance().build.withoutProductCode()
60+
61+
return !(
62+
currentBuild.baselineVersion == 242 &&
63+
BuildNumber.fromString("242.22855.74")?.let { currentBuild < it } == true
64+
)
65+
}

plugins/core/resources/resources/software/aws/toolkits/resources/MessagesBundle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1656,7 +1656,7 @@ q.session_configuration=Extend your IDE sessions
16561656
q.session_configuration.description=Your maximum session length for Amazon Q can be extended to 90 days by your administrator. For more information, refer to How to extend the session duration for Amazon Q in the IDE in the IAM Identity Center User Guide.
16571657
q.sign.in=Get Started
16581658
q.ui.prompt.transform=/transform
1659-
q.unavailable=\ Not supported in v2023.2.0
1659+
q.unavailable=\ Amazon Q Chat is not supported in IDE versions <= v2024.2.1
16601660
q.unavailable.node=Please update to the latest IDE version
16611661
q.window.title=Amazon Q Chat
16621662
rds.aurora=Aurora

0 commit comments

Comments
 (0)