Skip to content

Commit 5441f3f

Browse files
Merge branch 'main' into samgst/q-lsp-token-refresh-periodic
2 parents 962a650 + 30f3cca commit 5441f3f

File tree

69 files changed

+1434
-322
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

69 files changed

+1434
-322
lines changed

.changes/3.70.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
{
2+
"date" : "2025-05-08",
3+
"version" : "3.70",
4+
"entries" : [ {
5+
"type" : "feature",
6+
"description" : "Amazon Q: Support selecting customizations across all Q profiles with automatic profile switching for enterprise users"
7+
}, {
8+
"type" : "bugfix",
9+
"description" : "Do not always show 'Amazon Q Code Issues' tab when switching to the 'Problems' tool window"
10+
}, {
11+
"type" : "bugfix",
12+
"description" : "/dev: Fix missing Amazon Q feature dev auto build setting."
13+
}, {
14+
"type" : "bugfix",
15+
"description" : "increase /review timeout"
16+
}, {
17+
"type" : "bugfix",
18+
"description" : "Fix JavascriptLanguage not found on 2025.1+"
19+
} ]
20+
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"type" : "bugfix",
3+
"description" : "Fix UI freezes that may occur when interacting with large files in the editor"
4+
}

.changes/next-release/bugfix-7e09465d-6cb8-4180-9131-7ec6543db20c.json

Lines changed: 0 additions & 4 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
# _3.70_ (2025-05-08)
2+
- **(Feature)** Amazon Q: Support selecting customizations across all Q profiles with automatic profile switching for enterprise users
3+
- **(Bug Fix)** Do not always show 'Amazon Q Code Issues' tab when switching to the 'Problems' tool window
4+
- **(Bug Fix)** /dev: Fix missing Amazon Q feature dev auto build setting.
5+
- **(Bug Fix)** increase /review timeout
6+
- **(Bug Fix)** Fix JavascriptLanguage not found on 2025.1+
7+
18
# _3.69_ (2025-04-28)
29
- **(Bug Fix)** Amazon Q: Fix issue where context menu items are not available after re-opening projects or restarting the IDE
310
- **(Bug Fix)** Fix LinkageError while attempting to do Amazon Q inline suggestions in certain environments

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# SPDX-License-Identifier: Apache-2.0
33

44
# Toolkit Version
5-
toolkitVersion=3.70-SNAPSHOT
5+
toolkitVersion=3.71-SNAPSHOT
66

77
# Publish Settings
88
publishToken=

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/FeatureDevExceptions.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,9 @@ class GuardrailsException(operation: String, desc: String?, cause: Throwable? =
8282
class PromptRefusalException(operation: String, desc: String?, cause: Throwable? = null) :
8383
ClientException(message("amazonqFeatureDev.exception.prompt_refusal"), operation, desc, cause)
8484

85+
class FileCreationFailedException(operation: String, desc: String?, cause: Throwable? = null) :
86+
ServiceException(message("amazonqFeatureDev.exception.failed_generation"), operation, desc, cause)
87+
8588
class ThrottlingException(operation: String, desc: String?, cause: Throwable? = null) :
8689
ClientException(message("amazonqFeatureDev.exception.throttling"), operation, desc, cause)
8790

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/controller/FeatureDevController.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -544,7 +544,8 @@ class FeatureDevController(
544544
}
545545

546546
private suspend fun handleDevCommandUserSetting(tabId: String, value: Boolean) {
547-
CodeWhispererSettings.getInstance().toggleAutoBuildFeature(context.project.basePath, value)
547+
val session = getSessionInfo(tabId)
548+
CodeWhispererSettings.getInstance().toggleAutoBuildFeature(session.context.workspaceRoot.path, value)
548549
messenger.sendAnswer(
549550
tabId = tabId,
550551
message = message("amazonqFeatureDev.chat_message.setting_updated"),

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/amazonqFeatureDev/session/CodeGenerationState.kt

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.EmptyPatchExce
1313
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.FEATURE_NAME
1414
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.FeatureDevException
1515
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.FeatureDevOperation
16+
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.FileCreationFailedException
1617
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.GuardrailsException
1718
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.NoChangeRequiredException
1819
import software.aws.toolkits.jetbrains.services.amazonqFeatureDev.PromptRefusalException
@@ -261,6 +262,10 @@ private suspend fun CodeGenerationState.generateCode(
261262
codeGenerationResultState.codeGenerationStatusDetail()?.contains(
262263
"EmptyPatch",
263264
),
265+
-> throw FileCreationFailedException(operation = FeatureDevOperation.GenerateCode.toString(), desc = "File creation failed")
266+
codeGenerationResultState.codeGenerationStatusDetail()?.contains(
267+
"FileCreationFailed",
268+
),
264269
-> {
265270
if (codeGenerationResultState.codeGenerationStatusDetail().contains("NO_CHANGE_REQUIRED")) {
266271
throw NoChangeRequiredException(operation = FeatureDevOperation.GenerateCode.toString(), desc = "No change required")

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/controller/ChatController.kt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import com.intellij.openapi.fileEditor.FileEditorManager
2121
import com.intellij.openapi.options.ShowSettingsUtil
2222
import com.intellij.psi.PsiDocumentManager
2323
import kotlinx.coroutines.cancelChildren
24+
import kotlinx.coroutines.delay
2425
import kotlinx.coroutines.flow.catch
2526
import kotlinx.coroutines.flow.filter
2627
import kotlinx.coroutines.flow.first
@@ -36,6 +37,7 @@ import software.aws.toolkits.core.utils.getLogger
3637
import software.aws.toolkits.core.utils.info
3738
import software.aws.toolkits.core.utils.warn
3839
import software.aws.toolkits.jetbrains.core.coroutines.EDT
40+
import software.aws.toolkits.jetbrains.core.credentials.sono.isInternalUser
3941
import software.aws.toolkits.jetbrains.services.amazonq.apps.AmazonQAppInitContext
4042
import software.aws.toolkits.jetbrains.services.amazonq.auth.AuthController
4143
import software.aws.toolkits.jetbrains.services.amazonq.auth.AuthNeededState
@@ -49,6 +51,8 @@ import software.aws.toolkits.jetbrains.services.codewhisperer.settings.CodeWhisp
4951
import software.aws.toolkits.jetbrains.services.codewhisperer.telemetry.CodeWhispererUserModificationTracker
5052
import software.aws.toolkits.jetbrains.services.codewhisperer.telemetry.QFeatureEvent
5153
import software.aws.toolkits.jetbrains.services.codewhisperer.telemetry.broadcastQEvent
54+
import software.aws.toolkits.jetbrains.services.codewhisperer.util.getDiagnosticDifferences
55+
import software.aws.toolkits.jetbrains.services.codewhisperer.util.getDocumentDiagnostics
5256
import software.aws.toolkits.jetbrains.services.cwc.InboundAppMessagesHandler
5357
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.exceptions.ChatApiException
5458
import software.aws.toolkits.jetbrains.services.cwc.clients.chat.model.ChatRequestData
@@ -214,6 +218,7 @@ class ChatController private constructor(
214218
val caret: Caret = editor.caretModel.primaryCaret
215219
val offset: Int = caret.offset
216220

221+
val oldDiagnostics = getDocumentDiagnostics(editor.document, context.project)
217222
ApplicationManager.getApplication().runWriteAction {
218223
WriteCommandAction.runWriteCommandAction(context.project) {
219224
if (caret.hasSelection()) {
@@ -236,6 +241,12 @@ class ChatController private constructor(
236241
)
237242
}
238243
}
244+
if (isInternalUser(getStartUrl(context.project))) {
245+
// wait for the IDE itself to update its diagnostics for current file
246+
delay(500)
247+
val newDiagnostics = getDocumentDiagnostics(editor.document, context.project)
248+
message.diagnosticsDifferences = getDiagnosticDifferences(oldDiagnostics, newDiagnostics)
249+
}
239250
}
240251
telemetryHelper.recordInteractWithMessage(message)
241252

plugins/amazonq/chat/jetbrains-community/src/software/aws/toolkits/jetbrains/services/cwc/controller/chat/telemetry/TelemetryHelper.kt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -270,6 +270,8 @@ class TelemetryHelper(private val project: Project, private val sessionStorage:
270270
acceptedCharacterCount(message.code.length)
271271
acceptedLineCount(message.code.lines().size)
272272
hasProjectLevelContext(getMessageHasProjectContext(message.messageId))
273+
addedIdeDiagnostics(message.diagnosticsDifferences?.added)
274+
removedIdeDiagnostics(message.diagnosticsDifferences?.removed)
273275
}.build()
274276
}
275277

0 commit comments

Comments
 (0)