spring-io / spring-javaformat

Apache License 2.0
786 stars 109 forks source link

Publish the plugin to the JetBrains Plugin Repository #163

Open snicoll opened 4 years ago

snicoll commented 4 years ago

To make it easier for IntelliJ IDEA users to use this plugin, we should publish it to the JetBrains Plugin Repository, see the instructions.

As far as I can see, it requires to do so with an account so we should probably create one for the team or something.

snicoll commented 4 years ago

Let's increase the priority of this one please. It looks like the Jetbrains team is testing plugins that are published there and the recent breakage in 2020.1 could have been caught that way.

vpavic commented 3 years ago

Any updates on this?

Managing plugin updates manually is really a tedious chore, and that's far from being the only benefit of having the plugin published to Jetbrains plugin repo.

philwebb commented 3 years ago

I've not had a chance to look into it in any detail yet. I wonder if there's an API for updating a plugin. I don't like the idea of doing it manually for each release.

vpavic commented 3 years ago

I don't like the idea of doing it manually for each release.

I agree that automation is desirable, but isn't it overall much less of a hassle to publish manually compared to having everyone go through the manual download and installation?

philwebb commented 3 years ago

Yeah, I agree.

vpavic commented 3 years ago

It appears that the plugin was published to Jetbrains plugin repo as IntelliJ offered the plugin update to me today.

However, it's a bit unclear whether this was done by the Spring team or someone from the community? See here for more details.

philwebb commented 3 years ago

It wasn't done by us. Looks like someone called Tony Cody uploaded it.

snicoll commented 3 years ago

I'll reach out to JetBrains.

vpavic commented 3 years ago

It seems that the plugin was removed from the Jetbrains plugin repo.

However this situation IMO makes it even more important to get the plugin (properly) published to repo as it seems that everyone who has it installed is under a risk of having it updated if someone else publishes a plugin with matching id (or whatever IntelliJ uses to match update candidates).

This opens a possibility for some quite nasty consequences.

wilkinsona commented 3 years ago

This opens a possibility for some quite nasty consequences.

Agreed. Hopefully JetBrains have put something in place that stops this from happening again.

snicoll commented 3 years ago

I asked them to remove it but they can't guarantee that it won't happen again. The person who published the jar had to modify it as the metadata are incomplete (I know that first hand trying to publish it yesterday).

I agree we need to put some priority on this, even if we have to publish it manually initially.

tonycody commented 2 years ago

It wasn't done by us. Looks like someone called Tony Cody uploaded it.

I'm so sorry. I uploaded it earlier. Source open source addresses have been added, but not officially released to the Jetbrains market yet. People who want to use the IDEA plugin need to build their own.

snicoll commented 2 years ago

People who want to use the IDEA plugin need to build their own.

They don't. This plugin is released on Maven Central so you can download it from there, or from repo.spring.io. It's true that it would be better if you could install it from the JetBrains market place, which is what we'll address in this issue.

tonycody commented 2 years ago

People who want to use the IDEA plugin need to build their own.

They don't. This plugin is released on Maven Central so you can download it from there, or from repo.spring.io. It's true that it would be better if you could install it from the JetBrains market place, which is what we'll address in this issue.

Plugin support IDEA, submit to the Jetbrains Plugin market, otherwise build your own installation, too much trouble.

vpavic commented 2 years ago

Honestly speaking, I'm uneasy about using the plugin at all until it gets uploaded to the plugin market properly (that is, by the Spring team). Last time it was (unofficially) uploaded just showed how easy it is for someone to take over a manually installed plugin. That incident occurred around a year and a half ago now - if I'm counting right, there were 6 releases since so it doesn't seem that uploading it manually from time to time would take so much time.

tonycody commented 2 years ago

Honestly speaking, I'm uneasy about using the plugin at all until it gets uploaded to the plugin market properly (that is, by the Spring team). Last time it was (unofficially) uploaded just showed how easy it is for someone to take over a manually installed plugin. That incident occurred around a year and a half ago now - if I'm counting right, there were 6 releases since so it doesn't seem that uploading it manually from time to time would take so much time.

image

In China, from https://checkstyle.org/eclipse-cs-update-site/ to download the jar package is very slow. The first build took me at least half an hour to pull the JAR package.

snicoll commented 2 years ago

@tonycody I've already mentioned that you don't have to build the plugin yourself. Here is a link to make that more obvious: https://repo1.maven.org/maven2/io/spring/javaformat/spring-javaformat-intellij-idea-plugin/0.0.34/

scordio commented 6 months ago

I'd love to see the IntelliJ plugin published to the JetBrains repository.

In certain projects where we use both the Maven and the IntelliJ plugins, the former usually gets updated by Dependabot. In some cases, this forced the next users who touch the codebase to perform the IDE plugin update immediately, otherwise the validate goal of the Maven plugin (enforced in the build) would fail if the IDE did a reformatting that is no longer compatible with the Maven plugin's expectations.

Obviously, spring-javaformat:apply can help in such situations. However, having the IDE pull the update would be very nice.