From f1f767362efb5f781a55f7339fcbe34470e6cb7f Mon Sep 17 00:00:00 2001 From: samgst-amazon Date: Tue, 21 Jan 2025 11:22:12 -0800 Subject: [PATCH 1/6] state persistence across restarts --- .../toolkits/jetbrains/settings/CodeWhispererSettings.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt index c78a812bdf9..1f7a5e97114 100644 --- a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt +++ b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt @@ -117,10 +117,9 @@ class CodeWhispererSettings : PersistentStateComponent() - val intValue by map() - val stringValue by map() + var value by map() + var intValue by map() + var stringValue by map() } enum class CodeWhispererConfigurationType { From 5422c1a110077465a5febede703133e4e97e9969 Mon Sep 17 00:00:00 2001 From: samgst-amazon Date: Tue, 21 Jan 2025 11:23:47 -0800 Subject: [PATCH 2/6] default roaming type --- .../aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt index 1f7a5e97114..2b7417f6850 100644 --- a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt +++ b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt @@ -13,7 +13,7 @@ import com.intellij.openapi.components.service import com.intellij.util.xmlb.annotations.Property @Service -@State(name = "codewhispererSettings", storages = [Storage("aws.xml", roamingType = RoamingType.DISABLED)]) +@State(name = "codewhispererSettings", storages = [Storage("aws.xml")]) class CodeWhispererSettings : PersistentStateComponent { private val state = CodeWhispererConfiguration() From b8c839b8182b4bae6bf189a312ea38bdbb12c361 Mon Sep 17 00:00:00 2001 From: samgst-amazon Date: Tue, 21 Jan 2025 11:51:02 -0800 Subject: [PATCH 3/6] changelog --- .../bugfix-0f556efb-2868-4674-a67a-3a7446088cc3.json | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 .changes/next-release/bugfix-0f556efb-2868-4674-a67a-3a7446088cc3.json diff --git a/.changes/next-release/bugfix-0f556efb-2868-4674-a67a-3a7446088cc3.json b/.changes/next-release/bugfix-0f556efb-2868-4674-a67a-3a7446088cc3.json new file mode 100644 index 00000000000..441973460f6 --- /dev/null +++ b/.changes/next-release/bugfix-0f556efb-2868-4674-a67a-3a7446088cc3.json @@ -0,0 +1,4 @@ +{ + "type" : "bugfix", + "description" : "Fixed an issue where Amazon Q settings did not persist across IDE restarts" +} \ No newline at end of file From e6d2cebee7c8b97492d02a4da0a6923124980007 Mon Sep 17 00:00:00 2001 From: samgst-amazon Date: Tue, 21 Jan 2025 12:52:28 -0800 Subject: [PATCH 4/6] detekt --- .../aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt | 2 -- 1 file changed, 2 deletions(-) diff --git a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt index 2b7417f6850..5b8511ef25e 100644 --- a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt +++ b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt @@ -5,12 +5,10 @@ package software.aws.toolkits.jetbrains.settings import com.intellij.openapi.components.BaseState import com.intellij.openapi.components.PersistentStateComponent -import com.intellij.openapi.components.RoamingType import com.intellij.openapi.components.Service import com.intellij.openapi.components.State import com.intellij.openapi.components.Storage import com.intellij.openapi.components.service -import com.intellij.util.xmlb.annotations.Property @Service @State(name = "codewhispererSettings", storages = [Storage("aws.xml")]) From e9ce455ee9d95bbda11377d85cb52a30f14f4208 Mon Sep 17 00:00:00 2001 From: samgst-amazon Date: Tue, 21 Jan 2025 14:29:44 -0800 Subject: [PATCH 5/6] DetektMain unhappy, using Annotation implementation instead --- .../jetbrains/settings/CodeWhispererSettings.kt | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt index 5b8511ef25e..8c731970c93 100644 --- a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt +++ b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt @@ -9,6 +9,7 @@ import com.intellij.openapi.components.Service import com.intellij.openapi.components.State import com.intellij.openapi.components.Storage import com.intellij.openapi.components.service +import com.intellij.util.xmlb.annotations.Property @Service @State(name = "codewhispererSettings", storages = [Storage("aws.xml")]) @@ -115,9 +116,12 @@ class CodeWhispererSettings : PersistentStateComponent() - var intValue by map() - var stringValue by map() + @get:Property + val value by map() + @get:Property + val intValue by map() + @get:Property + val stringValue by map() } enum class CodeWhispererConfigurationType { From b8030086ee1923c470cf54b87ff06f18f528fb5b Mon Sep 17 00:00:00 2001 From: samgst-amazon Date: Tue, 21 Jan 2025 15:10:43 -0800 Subject: [PATCH 6/6] detekt --- .../aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt index 8c731970c93..e1aab7e0c0a 100644 --- a/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt +++ b/plugins/amazonq/shared/jetbrains-community/src/software/aws/toolkits/jetbrains/settings/CodeWhispererSettings.kt @@ -118,8 +118,10 @@ class CodeWhispererSettings : PersistentStateComponent() + @get:Property val intValue by map() + @get:Property val stringValue by map() }