Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
8cd876d
feat(lambda): Add Remote debugging support to Lambda Remote Invoke (#…
roger-zhangg Jul 16, 2025
3f34419
fix: update Q profile and customizations on language-servers crash re…
floralph Jul 12, 2025
da9755a
test(lambda): Remove duplicate code in Lambda tests (#7672)
rhamilt Jul 16, 2025
fdf1849
Merge branch 'master' into floralph/V1787412020
floralph Jul 16, 2025
26c5a6b
fix tests
floralph Jul 16, 2025
85f5045
Fix lint issues
floralph Jul 16, 2025
b39ab4e
feat(sagemaker): Merge sagemaker to master (#7681)
laileni-aws Jul 16, 2025
2eb0891
fix(sagemaker): Fix race-condition with multiple remote spaces trying…
aws-asolidu Jul 16, 2025
ef702fa
Release 3.69.0
Jul 16, 2025
687427c
feat(amazonq): adding a simple chat prompt test (#7643)
laura-codess Jul 16, 2025
9923793
fix(amazonq): Reduce plugin start-up latency
tsmithsz Jul 15, 2025
c267700
Update version to snapshot version: 3.70.0-SNAPSHOT
Jul 16, 2025
b7e8494
fix: should check if partialResultToken is empty for EDITS trigger on…
atonaamz Jul 16, 2025
7ba15ce
feature(amazonq): start rotating logging to disk with cleanup
abhraina-aws Jul 17, 2025
d0bcc40
fix(amazonq): should check if partialResultToken is empty for EDITS t…
atonaamz Jul 17, 2025
c6c5d76
fix(amazonq): remove feature flag for CodeReview tool, update change …
singhAws Jul 17, 2025
f07287d
Release 1.84.0
Jul 17, 2025
1a5e376
fix(amazonq): enable qCodeReview tool feature flag
singhAws Jul 17, 2025
3c76e30
fix(amazonq): Increase region profiles cache expiration to 1 hour
tsmithsz Jul 17, 2025
c9c061e
fix(amazonq): handle suppress single finding in agentic reviewer
blakelaz-amazon Jul 17, 2025
c9a3e9e
fix(amazonq): changed the icon for security issue hover fix option to…
mkovelam Jul 17, 2025
9bb3be3
fix(core): fixing Fix icon failed unit test
mkovelam Jul 17, 2025
4f9da7f
Update version to snapshot version: 1.85.0-SNAPSHOT
Jul 17, 2025
c43ff0f
feat(amazonq): write logs to disk with rotation & cleanup #7691
abhraina-aws Jul 17, 2025
3898ca2
Merge pull request #7696 from singhAws/code-review-tool
BlakeLazarine Jul 17, 2025
a3c1c03
fix(amazonq): skip edit suggestion if applyDiff fail (#7693)
Will-ShaoHua Jul 17, 2025
df9a02b
fix(test): add unit test for auth activation initialize method (#7679)
yueny2020 Jul 17, 2025
f2e9403
fix(amazonq): Use document change event for auto trigger classifier i…
leigaol Jul 17, 2025
477b71a
fix(amazonq): Let Enter invoke auto completion more consistently (#7700)
leigaol Jul 17, 2025
9b51191
fix(amazonq): rename QCodeReview tool to CodeReview
blakelaz-amazon Jul 17, 2025
20ec152
Merge pull request #7695 from tsmithsz/increase-cache
tsmithsz Jul 17, 2025
e49f15f
Merge pull request #7673 from tsmithsz/reduce-latency
tsmithsz Jul 17, 2025
5dbbbd7
feat(amazonq): added logs of toolkit to the same disk place too
abhraina-aws Jul 18, 2025
dfdf377
fix(amazonq): fix issue with casing
blakelaz-amazon Jul 18, 2025
5e256b9
feat(amazonq): added logs of toolkit to the same disk file too #7701
abhraina-aws Jul 18, 2025
34e7f1b
Make sso quickpick option display profiles
reedham-aws Jul 18, 2025
efb2d49
test: make sso quickpick option display profiles
reedham-aws Jul 18, 2025
9f082d9
changelog update
reedham-aws Jul 18, 2025
fb6b847
fix(amazonq): match rotating logger level
abhraina-aws Jul 18, 2025
d6fc897
fix(amazonq): match rotating logger level #7708
abhraina-aws Jul 18, 2025
88caf6b
fix(amazonq): update Q profile and customizations on language-servers…
floralph Jul 18, 2025
aff7180
Merge branch 'aws:master' into code-review-tool
mkovelam Jul 18, 2025
e62889f
feat(amazonq): enabling code review tool
mkovelam Jul 18, 2025
4fd2d45
revert(amazonq): should pass nextToken to Flare for Edits on acc… (#7…
yueny2020 Jul 18, 2025
c5b9976
Merge branch 'aws:master' into code-review-tool
singhAws Jul 19, 2025
ab7fb6a
fix(amazonq): reverting for Amazon Q (#7714)
laileni-aws Jul 19, 2025
ca66d79
fix(amazonq): removing unwanted files (#7715)
laileni-aws Jul 19, 2025
9facfdd
Release 1.85.0
Jul 19, 2025
6c7f040
Update version to snapshot version: 1.86.0-SNAPSHOT
Jul 19, 2025
990def6
Merge master branch and resolve conflicts
singhAws Jul 20, 2025
e193525
deps: bump @aws-toolkits/telemetry to 1.0.329
singhAws Jul 21, 2025
2770a81
fix(amazonq): handle suppress single finding in agentic reviewer
blakelaz-amazon Jul 21, 2025
06b4df6
fix(amazonq): changed the icon for security issue hover fix option to…
blakelaz-amazon Jul 21, 2025
34a6675
fix(amazonq): disable codeReviewInChat feature flag
blakelaz-amazon Jul 21, 2025
9562ccc
fix(amazonq): reverting for Amazon Q (#7714) (#7730)
yueny2020 Jul 22, 2025
daf0938
feat(amazonq): package.json npm scripts for build issues with vscode-…
surajrdy-aws Jul 22, 2025
532c37f
Merge branch 'master' into code-review-tool
BlakeLazarine Jul 22, 2025
ff9d816
fix(amazonq): correctly update the on show inlay hints for code refer…
leigaol Jul 22, 2025
683e49f
Merge branch 'aws:master' into code-review-tool
singhAws Jul 22, 2025
2fb0926
telemetry(lambda): nit to use sessionDuration correctly for debug dur…
roger-zhangg Jul 22, 2025
5211459
Merge branch 'aws:master' into code-review-tool
singhAws Jul 22, 2025
4a3f0e0
feat(amazonq): enable show logs (#7733)
abhraina-aws Jul 22, 2025
f2699b1
Merge branch 'aws:master' into code-review-tool
singhAws Jul 22, 2025
61d328d
Merge pull request #7731 from singhAws/code-review-tool
BlakeLazarine Jul 22, 2025
97397a8
feat(amazonq): UI Tests Baseline Framework Complete Set Up (#7727)
laura-codess Jul 23, 2025
b980406
fix(amazonq): fix Inline completion acceptance and reject telemetry r…
leigaol Jul 23, 2025
72f5168
Merge pull request #7707 from rhamilt/ssoQuickPickUpdate
bywang56 Jul 23, 2025
d0082e6
other(amazonq): remove unnecessary notes file
floralph Jul 23, 2025
41019e6
feat(amazonq): add keyboard shortcut for stop/reject/run commands (#7…
dungdong-aws Jul 23, 2025
2fe85cd
Revert "other(amazonq): remove unnecessary notes file"
floralph Jul 23, 2025
a3f0987
updated npm scripts in order to work correctly with our packaging and…
surajrdy-aws Jul 23, 2025
109a674
revert(amazonq): remove unnecessary notes file (#7737)
floralph Jul 23, 2025
669354b
fix(amazonq): update shortcut name to reuse for MCP tools
dungdong-aws Jul 23, 2025
95811a6
fix: revert dev config
dungdong-aws Jul 23, 2025
2093c59
fix(amazonq): point to the log file inside the folder (#7744)
abhraina-aws Jul 23, 2025
62fab80
Merge pull request #7742 from dungdong-aws/fix/shortcutname
dungdong-aws Jul 23, 2025
8748fc3
fix(amazonq): use diffWordsWithSpace instead of diffChars to calculat…
atonaamz Jul 23, 2025
9128f47
feat(amazonq): added show logs to the top menu bar dropdown (#7745)
abhraina-aws Jul 24, 2025
4f716c1
fix(amazonq): gitignore fix (#7749)
laura-codess Jul 24, 2025
2d9440a
refactor(amazonq): Removing unwanted / agents code (#7735)
laileni-aws Jul 24, 2025
4543593
fix(amazonq): use diffWordsWithSpace instead of diffChars to calculat…
atonaamz Jul 24, 2025
6c79154
fix(amazonq): disable SageMakerUnifiedStudio for show logs (#7747)
abhraina-aws Jul 24, 2025
3c10f10
Merge remote-tracking branch 'upstream/master' into feature/ui-e2e-tests
surajrdy-aws Jul 24, 2025
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
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,6 @@ packages/*/resources/css/icons.css

# Created by `npm run webRun` when testing extension in web mode
.vscode-test-web

# Generated by E2E UI Tests
packages/amazonq/test/e2e/amazonq/resources
630 changes: 0 additions & 630 deletions P261194666.md

This file was deleted.

1,782 changes: 373 additions & 1,409 deletions package-lock.json

Large diffs are not rendered by default.

8 changes: 6 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@
"test": "npm run test -w packages/ --if-present",
"testWeb": "npm run testWeb -w packages/ --if-present",
"testE2E": "npm run testE2E -w packages/ --if-present",
"test:ui:prepare": "./node_modules/.bin/extest get-vscode -s ~/.vscode-test-resources -n && extest get-chromedriver -s ~/.vscode-test-resources -n",
"test:ui:install": "cd packages/amazonq && npm run package 2>&1 | grep -o 'VSIX Version: [^ ]*' | cut -d' ' -f3 | xargs -I{} bash -c 'cd ../../ && ./node_modules/.bin/extest install-vsix -f amazon-q-vscode-{}.vsix -e packages/amazonq/test/e2e_new/amazonq/resources -s ~/.vscode-test-resources'",
"test:ui:run": "npm run testCompile && ./node_modules/.bin/extest run-tests -s ~/.vscode-test-resources -e packages/amazonq/test/e2e_new/amazonq/resources packages/amazonq/dist/test/e2e_new/amazonq/tests/*.js",
"test:ui": "npm run test:ui:prepare && npm run test:ui:install && npm run test:ui:run",
"testInteg": "npm run testInteg -w packages/ --if-present",
"package": "npm run package -w packages/toolkit -w packages/amazonq",
"newChange": "echo 'Must specify subproject/workspace with -w packages/<subproject>' && false",
Expand All @@ -41,7 +45,7 @@
"skippedTestReport": "ts-node ./scripts/skippedTestReport.ts ./packages/amazonq/test/e2e/"
},
"devDependencies": {
"@aws-toolkits/telemetry": "^1.0.328",
"@aws-toolkits/telemetry": "^1.0.329",
"@playwright/browser-chromium": "^1.43.1",
"@stylistic/eslint-plugin": "^2.11.0",
"@types/he": "^1.2.3",
Expand Down Expand Up @@ -71,7 +75,7 @@
"ts-node": "^10.9.1",
"typescript": "^5.0.4",
"util": "^0.12.5",
"vscode-extension-tester": "^8.15.0",
"vscode-extension-tester": "^8.16.2",
"webpack": "^5.95.0",
"webpack-cli": "^5.1.4",
"webpack-dev-server": "^4.15.2",
Expand Down
18 changes: 18 additions & 0 deletions packages/amazonq/.changes/1.84.0.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"date": "2025-07-17",
"version": "1.84.0",
"entries": [
{
"type": "Bug Fix",
"description": "Slightly delay rendering inline completion when user is typing"
},
{
"type": "Bug Fix",
"description": "Render first response before receiving all paginated inline completion results"
},
{
"type": "Feature",
"description": "Explain and Fix for any issue in Code Issues panel will pull the experience into chat. Also no more view details tab."
}
]
}
5 changes: 5 additions & 0 deletions packages/amazonq/.changes/1.85.0.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"date": "2025-07-19",
"version": "1.85.0",
"entries": []
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"type": "Bug Fix",
"description": "Let Enter invoke auto completion more consistently"
}

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"type": "Bug Fix",
"description": "Use documentChangeEvent as auto trigger condition"
}

This file was deleted.

This file was deleted.

10 changes: 10 additions & 0 deletions packages/amazonq/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,13 @@
## 1.85.0 2025-07-19

- Miscellaneous non-user-facing changes

## 1.84.0 2025-07-17

- **Bug Fix** Slightly delay rendering inline completion when user is typing
- **Bug Fix** Render first response before receiving all paginated inline completion results
- **Feature** Explain and Fix for any issue in Code Issues panel will pull the experience into chat. Also no more view details tab.

## 1.83.0 2025-07-09

- **Feature** Amazon Q /test, /doc, and /dev capabilities integrated into Agentic coding.
Expand Down
45 changes: 44 additions & 1 deletion packages/amazonq/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"name": "amazon-q-vscode",
"displayName": "Amazon Q",
"description": "The most capable generative AI-powered assistant for building, operating, and transforming software, with advanced capabilities for managing data and AI",
"version": "1.84.0-SNAPSHOT",
"version": "1.86.0-SNAPSHOT",
"extensionKind": [
"workspace"
],
Expand Down Expand Up @@ -405,6 +405,11 @@
"when": "(view == aws.amazonq.AmazonQChatView) && aws.codewhisperer.connected && !aws.isSageMakerUnifiedStudio",
"group": "2_amazonQ@4"
},
{
"command": "aws.amazonq.showLogs",
"when": "!aws.isSageMakerUnifiedStudio",
"group": "1_amazonQ@5"
},
{
"command": "aws.amazonq.reconnect",
"when": "(view == aws.amazonq.AmazonQChatView) && aws.codewhisperer.connectionExpired",
Expand Down Expand Up @@ -557,6 +562,21 @@
]
},
"commands": [
{
"command": "aws.amazonq.stopCmdExecution",
"title": "Stop Amazon Q",
"category": "%AWS.amazonq.title%"
},
{
"command": "aws.amazonq.runCmdExecution",
"title": "Run Amazon Q Tool",
"category": "%AWS.amazonq.title%"
},
{
"command": "aws.amazonq.rejectCmdExecution",
"title": "Reject Amazon Q Tool",
"category": "%AWS.amazonq.title%"
},
{
"command": "_aws.amazonq.notifications.dismiss",
"title": "%AWS.generic.dismiss%",
Expand Down Expand Up @@ -618,6 +638,11 @@
"category": "%AWS.amazonq.title%",
"enablement": "aws.codewhisperer.connected"
},
{
"command": "aws.amazonq.showLogs",
"title": "%AWS.command.codewhisperer.showLogs%",
"category": "%AWS.amazonq.title%"
},
{
"command": "aws.amazonq.selectRegionProfile",
"title": "Change Profile",
Expand Down Expand Up @@ -847,6 +872,24 @@
}
],
"keybindings": [
{
"command": "aws.amazonq.stopCmdExecution",
"key": "ctrl+shift+backspace",
"mac": "cmd+shift+backspace",
"when": "aws.amazonq.amazonqChatLSP.isFocus"
},
{
"command": "aws.amazonq.runCmdExecution",
"key": "ctrl+shift+enter",
"mac": "cmd+shift+enter",
"when": "aws.amazonq.amazonqChatLSP.isFocus"
},
{
"command": "aws.amazonq.rejectCmdExecution",
"key": "ctrl+shift+r",
"mac": "cmd+shift+r",
"when": "aws.amazonq.amazonqChatLSP.isFocus"
},
{
"command": "_aws.amazonq.focusChat.keybinding",
"win": "win+alt+i",
Expand Down
3 changes: 0 additions & 3 deletions packages/amazonq/src/app/chat/node/activateAgents.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,6 @@ export function activateAgents() {
const appInitContext = DefaultAmazonQAppInitContext.instance

amazonqNode.cwChatAppInit(appInitContext)
amazonqNode.featureDevChatAppInit(appInitContext)
amazonqNode.gumbyChatAppInit(appInitContext)
amazonqNode.testChatAppInit(appInitContext)
amazonqNode.docChatAppInit(appInitContext)
scanChatAppInit(appInitContext)
}
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,12 @@ export async function showEdits(
const { svgImage, startLine, newCode, origionalCodeHighlightRange } =
await svgGenerationService.generateDiffSvg(currentFile, item.insertText as string)

// TODO: To investigate why it fails and patch [generateDiffSvg]
if (newCode.length === 0) {
getLogger('nextEditPrediction').warn('not able to apply provided edit suggestion, skip rendering')
return
}

if (svgImage) {
// display the SVG image
await displaySvgDecoration(
Expand Down
52 changes: 5 additions & 47 deletions packages/amazonq/src/app/inline/EditRendering/svgGenerator.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
* SPDX-License-Identifier: Apache-2.0
*/

import { diffChars } from 'diff'
import { diffWordsWithSpace } from 'diff'
import * as vscode from 'vscode'
import { ToolkitError, getLogger } from 'aws-core-vscode/shared'
import { diffUtilities } from 'aws-core-vscode/shared'
Expand Down Expand Up @@ -413,45 +413,6 @@ export class SvgGenerationService {
const originalRanges: Range[] = []
const afterRanges: Range[] = []

/**
* Merges ranges on the same line that are separated by only one character
*/
const mergeAdjacentRanges = (ranges: Range[]): Range[] => {
const sortedRanges = [...ranges].sort((a, b) => {
if (a.line !== b.line) {
return a.line - b.line
}
return a.start - b.start
})

const result: Range[] = []

// Process all ranges
for (let i = 0; i < sortedRanges.length; i++) {
const current = sortedRanges[i]

// If this is the last range or ranges are on different lines, add it directly
if (i === sortedRanges.length - 1 || current.line !== sortedRanges[i + 1].line) {
result.push(current)
continue
}

// Check if current range and next range can be merged
const next = sortedRanges[i + 1]
if (current.line === next.line && next.start - current.end <= 1) {
sortedRanges[i + 1] = {
line: current.line,
start: current.start,
end: Math.max(current.end, next.end),
}
} else {
result.push(current)
}
}

return result
}

// Create reverse mapping for quicker lookups
const reverseMap = new Map<string, string>()
for (const [original, modified] of modifiedLines.entries()) {
Expand All @@ -465,7 +426,7 @@ export class SvgGenerationService {
// If line exists in modifiedLines as a key, process character diffs
if (Array.from(modifiedLines.keys()).includes(line)) {
const modifiedLine = modifiedLines.get(line)!
const changes = diffChars(line, modifiedLine)
const changes = diffWordsWithSpace(line, modifiedLine)

let charPos = 0
for (const part of changes) {
Expand Down Expand Up @@ -497,7 +458,7 @@ export class SvgGenerationService {

if (reverseMap.has(line)) {
const originalLine = reverseMap.get(line)!
const changes = diffChars(originalLine, line)
const changes = diffWordsWithSpace(originalLine, line)

let charPos = 0
for (const part of changes) {
Expand All @@ -522,12 +483,9 @@ export class SvgGenerationService {
}
}

const mergedOriginalRanges = mergeAdjacentRanges(originalRanges)
const mergedAfterRanges = mergeAdjacentRanges(afterRanges)

return {
removedRanges: mergedOriginalRanges,
addedRanges: mergedAfterRanges,
removedRanges: originalRanges,
addedRanges: afterRanges,
}
}
}
Expand Down
Loading
Loading