Skip to content

Commit 979b585

Browse files
committed
Merge from Main to feature/extension
2 parents 468898b + f66912c commit 979b585

File tree

683 files changed

+8654
-3860
lines changed

Some content is hidden

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

683 files changed

+8654
-3860
lines changed

.changes/2.15.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"date" : "2024-03-28",
3+
"version" : "2.15",
4+
"entries" : [ {
5+
"type" : "feature",
6+
"description" : "CodeTransform: new experience with Amazon Q chat integration"
7+
}, {
8+
"type" : "bugfix",
9+
"description" : "Move 'Send to Amazon Q' action group to the bottom of right click menu"
10+
}, {
11+
"type" : "bugfix",
12+
"description" : "Fix scripts missing when connecting through JetBrains Gateway (#4188)"
13+
} ]
14+
}

.changes/2.16.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
{
2+
"date" : "2024-03-29",
3+
"version" : "2.16",
4+
"entries" : [ {
5+
"type" : "bugfix",
6+
"description" : "Fix issue where Amazon Q Chat does not appear in IDEs other than IntelliJ IDEA (#4218)"
7+
} ]
8+
}

.changes/2.17.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{
2+
"date" : "2024-04-04",
3+
"version" : "2.17",
4+
"entries" : [ {
5+
"type" : "bugfix",
6+
"description" : "Fix \"null\" appearing in feedback dialog prompts"
7+
}, {
8+
"type" : "bugfix",
9+
"description" : "Amazon Q Code Transformation - Omit Maven metadata files when uploading dependencies to fix certain build failures in backend."
10+
}, {
11+
"type" : "bugfix",
12+
"description" : "Amazon Q Code Transformation: use actual project JDK when transforming project"
13+
} ]
14+
}

.changes/2.18.json

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
{
2+
"date" : "2024-04-12",
3+
"version" : "2.18",
4+
"entries" : [ {
5+
"type" : "feature",
6+
"description" : "Add support for Lambda runtime Java 21"
7+
}, {
8+
"type" : "feature",
9+
"description" : "Add support for Lambda runtime Node.js 20"
10+
}, {
11+
"type" : "feature",
12+
"description" : "Add support for Lambda runtime Python 3.12"
13+
}, {
14+
"type" : "bugfix",
15+
"description" : "CodeWhisperer: handle exception when code scan service returns out of bounds line numbers"
16+
}, {
17+
"type" : "bugfix",
18+
"description" : "Amazon Q Code Feature Development: fix the welcome message for /dev command"
19+
}, {
20+
"type" : "removal",
21+
"description" : "Drop support for the Python 3.7 Lambda runtime"
22+
}, {
23+
"type" : "removal",
24+
"description" : "Drop support for the Node.js14 Lambda runtime"
25+
}, {
26+
"type" : "removal",
27+
"description" : "Drop support for the .NET 5.0 Lambda runtime"
28+
}, {
29+
"type" : "removal",
30+
"description" : "Removed support for Gateway 2023.3"
31+
}, {
32+
"type" : "removal",
33+
"description" : "Removed support for 2023.1.x IDEs"
34+
}, {
35+
"type" : "removal",
36+
"description" : "Drop support for the Java 8 (AL2012) Lambda runtime"
37+
} ]
38+
}

.github/CODEOWNERS

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
* @aws/aws-ides-team
2-
codewhisperer/ @aws/codewhisperer-team
3-
amazonq/ @aws/aws-mynah
2+
3+
amazonq/ @aws/dexp @aws/aws-mynah
44
amazonqFeatureDev/ @aws/earlybird
5-
mynah-ui/ @aws/aws-mynah
5+
66
codemodernizer/ @aws/elastic-gumby
7+
codetransform/ @aws/elastic-gumby
8+
codewhisperer/ @aws/codewhisperer-team
9+
10+
mynah-ui/ @aws/dexp @aws/aws-mynah
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
import json
2+
import re
3+
import sys
4+
5+
if __name__ == '__main__':
6+
arg = sys.argv[1:][0]
7+
if arg == '-':
8+
data = json.load(sys.stdin)
9+
else:
10+
with open(arg) as f:
11+
data = json.load(f)
12+
13+
xml = ['<?xml version="1.0" encoding="UTF-8"?>', '<plugins>']
14+
15+
buildRegex = r'.*(\d{3}).zip'
16+
for asset in data['assets']:
17+
name = asset['name']
18+
if ('plugin-amazonq' in name):
19+
plugin = 'amazon.q'
20+
elif ('plugin-core' in name):
21+
plugin = 'aws.toolkit.core'
22+
else:
23+
plugin = 'aws.toolkit'
24+
build = re.match(buildRegex, name).group(1)
25+
26+
xml.append(f'''<plugin id="{plugin}" url="{asset['url']}" version="999">
27+
<idea-version since-build="{build}" until-build="{build}.*"/>
28+
</plugin>''')
29+
30+
xml.append('</plugins>')
31+
32+
print('\n'.join(xml))

.github/workflows/prerelease.yml

Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,217 @@
1+
name: Prerelease
2+
on:
3+
workflow_dispatch:
4+
inputs:
5+
tag_name:
6+
description: 'Tag name for release'
7+
required: false
8+
default: prerelease
9+
push:
10+
branches: [ main, feature/* ]
11+
12+
13+
jobs:
14+
generate_artifact_toolkit:
15+
strategy:
16+
matrix:
17+
supported_versions: [ '2023.3', '2023.2', '2024.1' ]
18+
runs-on: ubuntu-latest
19+
steps:
20+
- uses: actions/checkout@v4
21+
with:
22+
fetch-depth: 0
23+
- name: remove unwanted dependencies
24+
run: |
25+
sudo rm -rf /usr/share/dotnet
26+
sudo rm -rf /opt/ghc
27+
sudo rm -rf "/usr/local/share/boost"
28+
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
29+
- uses: actions/setup-java@v4
30+
with:
31+
distribution: 'corretto'
32+
java-version: '17'
33+
- uses: actions/setup-dotnet@v4
34+
with:
35+
dotnet-version: '6.x'
36+
- name: Generate artifact
37+
run: |
38+
./gradlew -PideProfileName=${{ matrix.supported_versions }} :plugin-toolkit:intellij:buildPlugin
39+
- name: Upload artifact
40+
uses: actions/upload-artifact@v4
41+
with:
42+
name: plugin-toolkit-${{ matrix.supported_versions }}
43+
path: ./plugins/toolkit/intellij/build/distributions/*.zip
44+
retention-days: 1
45+
generate_artifact_toolkit_standalone:
46+
strategy:
47+
matrix:
48+
supported_versions: [ '2023.3', '2023.2', '2024.1' ]
49+
runs-on: ubuntu-latest
50+
steps:
51+
- uses: actions/checkout@v4
52+
with:
53+
fetch-depth: 0
54+
- name: remove unwanted dependencies
55+
run: |
56+
sudo rm -rf /usr/share/dotnet
57+
sudo rm -rf /opt/ghc
58+
sudo rm -rf "/usr/local/share/boost"
59+
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
60+
- uses: actions/setup-java@v4
61+
with:
62+
distribution: 'corretto'
63+
java-version: '17'
64+
- uses: actions/setup-dotnet@v4
65+
with:
66+
dotnet-version: '6.x'
67+
- name: Generate artifact
68+
run: |
69+
./gradlew -PideProfileName=${{ matrix.supported_versions }} :plugin-toolkit:intellij-standalone:buildPlugin
70+
- name: Upload artifact
71+
uses: actions/upload-artifact@v4
72+
with:
73+
name: plugin-standalone-${{ matrix.supported_versions }}
74+
path: ./plugins/toolkit/intellij-standalone/build/distributions/*.zip
75+
retention-days: 1
76+
77+
generate_artifact_q:
78+
strategy:
79+
matrix:
80+
supported_versions: [ '2023.3', '2023.2', '2024.1' ]
81+
runs-on: ubuntu-latest
82+
steps:
83+
- uses: actions/checkout@v4
84+
with:
85+
fetch-depth: 0
86+
- name: remove unwanted dependencies
87+
run: |
88+
sudo rm -rf /usr/share/dotnet
89+
sudo rm -rf /opt/ghc
90+
sudo rm -rf "/usr/local/share/boost"
91+
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
92+
- uses: actions/setup-java@v4
93+
with:
94+
distribution: 'corretto'
95+
java-version: '17'
96+
- name: Generate artifact
97+
run: |
98+
./gradlew -PideProfileName=${{ matrix.supported_versions }} :plugin-amazonq:buildPlugin --exclude-task buildResharperPlugin
99+
- name: Upload artifact
100+
uses: actions/upload-artifact@v4
101+
with:
102+
name: plugin-amazonq-${{ matrix.supported_versions }}
103+
path: ./plugins/amazonq/build/distributions/*.zip
104+
retention-days: 1
105+
106+
generate_artifact_core:
107+
strategy:
108+
matrix:
109+
supported_versions: [ '2023.3', '2023.2', '2024.1' ]
110+
runs-on: ubuntu-latest
111+
steps:
112+
- uses: actions/checkout@v4
113+
with:
114+
fetch-depth: 0
115+
- name: remove unwanted dependencies
116+
run: |
117+
sudo rm -rf /usr/share/dotnet
118+
sudo rm -rf /opt/ghc
119+
sudo rm -rf "/usr/local/share/boost"
120+
sudo rm -rf "$AGENT_TOOLSDIRECTORY"
121+
- uses: actions/setup-java@v4
122+
with:
123+
distribution: 'corretto'
124+
java-version: '17'
125+
126+
- name: Generate artifact
127+
run: |
128+
129+
./gradlew -PideProfileName=${{ matrix.supported_versions }} :plugin-core:buildPlugin
130+
- name: Upload artifact
131+
uses: actions/upload-artifact@v4
132+
with:
133+
name: plugin-core-${{ matrix.supported_versions }}
134+
path: ./plugins/core/build/distributions/*.zip
135+
retention-days: 1
136+
137+
generate_changelog:
138+
runs-on: ubuntu-latest
139+
outputs:
140+
feature: ${{ steps.assign_output.outputs.feature }}
141+
tagname: ${{ steps.assign_output.outputs.tagname }}
142+
version: ${{ steps.assign_output.outputs.version }}
143+
changes: ${{ steps.assign_output.outputs.changes }}
144+
steps:
145+
- uses: actions/checkout@v4
146+
147+
- uses: actions/setup-java@v4
148+
with:
149+
distribution: 'corretto'
150+
java-version: '17'
151+
152+
- if: github.event_name == 'workflow_dispatch'
153+
run: |
154+
echo "TAG_NAME=${{ github.event.inputs.tag_name }}" >> $GITHUB_ENV
155+
- if: github.ref_name != 'main'
156+
run: |
157+
TAG_NAME=${{ github.ref_name }}
158+
FEAT_NAME=$(echo $TAG_NAME | sed 's/feature\///')
159+
echo "FEAT_NAME=$FEAT_NAME" >> $GITHUB_ENV
160+
echo "TAG_NAME=pre-$FEAT_NAME" >> $GITHUB_ENV
161+
- if: github.ref_name == 'main'
162+
run: |
163+
echo "FEAT_NAME=" >> $GITHUB_ENV
164+
echo "TAG_NAME=prerelease" >> $GITHUB_ENV
165+
- name: Generate changelog
166+
id: changelog
167+
run: |
168+
./gradlew :createRelease :generateChangelog
169+
- name: Provide the metadata to output
170+
id: assign_output
171+
run: |
172+
echo "feature=$FEAT_NAME" >> $GITHUB_OUTPUT
173+
echo "tagname=$TAG_NAME" >> $GITHUB_OUTPUT
174+
echo "version=$(cat gradle.properties | grep toolkitVersion | cut -d'=' -f2)" >> $GITHUB_OUTPUT
175+
echo 'changes<<EOF' >> $GITHUB_OUTPUT
176+
cat CHANGELOG.md | perl -ne 'BEGIN{$/="\n\n"} print; exit if $. == 1' >> $GITHUB_OUTPUT
177+
echo 'EOF' >> $GITHUB_OUTPUT
178+
179+
publish:
180+
needs: [ generate_artifact_toolkit, generate_artifact_toolkit_standalone, generate_artifact_core, generate_artifact_q, generate_changelog ]
181+
env:
182+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
183+
GH_REPO: ${{ github.repository }}
184+
FEAT_NAME: ${{ needs.generate_changelog.outputs.feature }}
185+
TAG_NAME: ${{ needs.generate_changelog.outputs.tagname }}
186+
AWS_TOOLKIT_VERSION: ${{ needs.generate_changelog.outputs.version }}
187+
BRANCH: ${{ github.ref_name }}
188+
AWS_TOOLKIT_CHANGES: ${{ needs.generate_changelog.outputs.changes }}
189+
runs-on: ubuntu-latest
190+
permissions:
191+
contents: write
192+
steps:
193+
- uses: actions/checkout@v4
194+
- uses: actions/download-artifact@v4
195+
- name: Delete existing prerelease
196+
# "prerelease" (main branch) or "pre-<feature>"
197+
if: "env.TAG_NAME == 'prerelease' || startsWith(env.TAG_NAME, 'pre-')"
198+
run: |
199+
echo "SUBJECT=AWS Toolkit ${AWS_TOOLKIT_VERSION}: ${FEAT_NAME:-${TAG_NAME}}" >> $GITHUB_ENV
200+
gh release delete "$TAG_NAME" --cleanup-tag --yes || true
201+
- name: Publish to GitHub Releases
202+
run: |
203+
envsubst < "$GITHUB_WORKSPACE/.github/workflows/prerelease_notes.md" > "$RUNNER_TEMP/prerelease_notes.md"
204+
gh release create "$TAG_NAME" --prerelease --notes-file "$RUNNER_TEMP/prerelease_notes.md" --title "$SUBJECT" --target $GITHUB_SHA plugin-toolkit-*/*.zip
205+
- name: Publish core
206+
run: |
207+
gh release upload "$TAG_NAME" plugin-core-*/*.zip
208+
- name: Publish Q
209+
run: |
210+
gh release upload "$TAG_NAME" plugin-amazonq-*/*.zip
211+
- name: Publish Toolkit Standalone
212+
run: |
213+
gh release upload "$TAG_NAME" plugin-standalone-*/*.zip
214+
- name: Publish XML manifest
215+
run: |
216+
gh release view "$TAG_NAME" --repo aws/aws-toolkit-jetbrains --json assets | python3 "$GITHUB_WORKSPACE/.github/workflows/generateUpdatesXml.py" - > updatePlugins.xml
217+
gh release upload "$TAG_NAME" updatePlugins.xml
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
_This is an **unsupported preview build** of the `${BRANCH}` branch of AWS Toolkit._
2+
3+
# Install
4+
5+
1. Download the respective plugin zip from the assets below
6+
2. In the IDE, go to Settings -> Plugins
7+
3. Click on Install plugin from disk and select the downloaded zip
8+
9+
# Changes
10+
11+
${AWS_TOOLKIT_CHANGES}

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ unload-*
2121
jetbrains-core/bin/
2222
jetbrains-ultimate/bin/
2323
resources/bin/
24-
jetbrains-rider/**/NuGet.config
24+
**/jetbrains-rider/**/NuGet.config
2525
RiderSdkPackageVersion.props
2626
*.Generated.cs
2727
core/bin

.run/Run AWS Toolkit - Core [2023.1].run.xml

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

0 commit comments

Comments
 (0)