-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add feature to notify users of new plugin version availability #318
Conversation
plugin/src/software/aws/toolkits/eclipse/amazonq/util/UpdateUtils.java
Outdated
Show resolved
Hide resolved
plugin/src/software/aws/toolkits/eclipse/amazonq/util/UpdateUtils.java
Outdated
Show resolved
Hide resolved
plugin/META-INF/MANIFEST.MF
Outdated
@@ -9,6 +9,7 @@ Automatic-Module-Name: amazon.q.eclipse | |||
Bundle-ActivationPolicy: lazy | |||
Bundle-Activator: software.aws.toolkits.eclipse.amazonq.plugin.Activator | |||
Require-Bundle: org.eclipse.core.runtime;bundle-version="3.31.0", | |||
org.tukaani.xz, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we have an OSGI bundle dependency as well as a Maven dependency? We should only have one or the other. If this library is available through OSGI let's go that route (but also keep a version lock on it).
Keep in mind that we will need to add an entry in our attribution.xml for the new dependency as well: https://github.com/aws/amazon-q-eclipse/blob/main/attribution.xml
05432e4
to
1826699
Compare
} catch (Exception e) { | ||
e.printStackTrace(); | ||
} | ||
return null; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We definitely should not affect other parts of the plugin if this fails, but we should at least log a message here.
@@ -15,6 +15,9 @@ private Constants() { | |||
public static final String LSP_OPT_OUT_TELEMETRY_CONFIGURATION_KEY = "optOutTelemetry"; | |||
public static final String LSP_Q_CONFIGURATION_KEY = "aws.q"; | |||
public static final String LSP_CW_CONFIGURATION_KEY = "aws.codeWhisperer"; | |||
public static final String DO_NOT_SHOW_UPDATE_KEY = "doNotShowUpdate"; | |||
public static final String PLUGIN_UPDATE_NOTIFICATION_TITLE = "Amazon Q Update Available"; | |||
public static final String PLUGIN_UPDATE_NOTIFICATION_BODY = "Amazon Q plugin version %s is available. Please update for newest features."; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: Please update to receive the latest features and bug fixes.
private static boolean remoteVersionIsGreater(final Version remote, final Version local) { | ||
return remote.compareTo(local) > 0; | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One side note - #329 adds support for full semantic versioning of artifacts, and a different dependency (Maven Artifact library) for version constructs. Once that is merged you can switch to using those to get the benefits of being able to diff across labeled versions. Depending on when things get merged that can also be a follow up improvement.
78cec78
to
a918f98
Compare
Issue #313
Description of changes:
This addition sends the user a notification each time a new version of the plugin is made available on the marketplace.
This includes:
Screenshot:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.