Incompatible OpenApi/Plugin (Git4Idea) Changes, Multiple Plugin Versions?

Hi,

for the Heroku Plugin I need to use the Git4Idea plugin for the deployment to Heroku, unfortunately its API changed several times, by now I have been able to keep it all in one plugin and handling the changes with Class-checks and different strategies. This doesn't work any longer.


So it is necessary to release different plugins with different API (or rather Git4Idea) version dependencies

#1 what is the best way to determine the correct since-build / until-build versions for the API changes? The commits in the idea-community github repo are not really related to build numbers? (e.g. this one)
#2 the build-number-ranges wiki page is out of date?
#3 what is the best way for the plugin version in dependency of the build-version? Should it just continue to increment so that I have to release 3 plugin version increments to cope for the 3 openapi build versions? Or would it be more sensible to have build numbers of the plugin that correspond to the Idea build-versions and minor numbers for the increments? (like 8.1 , 10.1, 11.1) ? Also with regard of the selection mechanism of the plugin manager.
#4 can I depend on a version of a plugin? The <depends> tag has no version information.

This is my current setup.

    <version>0.3.8</version>

    <idea-version since-build="117.117"/>
    <vendor>Michael Hunger</vendor>
    <depends>com.intellij.modules.lang</depends>
    <depends>com.intellij.modules.platform</depends>
    <depends>com.intellij.modules.vcs</depends>



Thanks alot

Michael
3 comments
Comment actions Permalink

Hello Michael,

#1 Git repo is tagged for every release, so you can find out corresponding releases where commits are included. Note: this will only be needed if you want to support EAP versions, usually it will be enough to support official releases where build numbers are easily available from Wiki.
#2 will be updated, thanks
#3 if you want to support 3 incompatible releases, you will need to release 3 different plugin versions
#4 no, this is not possible

Hope this helps,
Yann

0
Comment actions Permalink

Thanks,

could you tell me (for that commit) how to derive the correct build version? There are 6000 tags on the idea repository.

If I just look at the commit time, the next tag is:

storm/116.97

d08eeca088 · Uploaded a month ago.

But this is not really related to the version when it starts breaking, at least with 117.277 it still works.

Michael

0
Comment actions Permalink

Hello Michael,  do find out all affected/nearest tags you can follow instructions from here:  http://stackoverflow.com/questions/1474115/find-tag-information-for-a-given-commit  Yann

0

Please sign in to leave a comment.