Build Number Ranges
Use this reference of build number ranges to specify the correct since-build
and until-build
values in your plugin descriptor. Setting the actual values in plugin.xml is managed by patchPluginXml
Gradle task, see Patching the Plugin Configuration File.
Please note the following regarding values:
Values must represent the actual build numbers, any made-up numbers must not be used (e.g., using
999.*
foruntil-build
).Not specifying
until-build
means it will include all future builds (including unreleased IDE versions, which might impact compatibility later).Dot star suffix (
.*
) can be used inuntil-build
to support all releases for the specific branch (i.e.,222.*
for all 2022.2.x releases).
Build Number Format
To denote a release, a multipart build number is used. It consists of the following parts:
Product ID (
IC
for IDEA Community,IU
for IDEA Ultimate,RM
for RubyMine,PY
for PyCharm,PS
for PhpStorm, etc.)Branch number (
162
)Build number in the branch (
94
)
Branch numbers are based on the YYYY.R
IDE release version numbers. The branch number takes the last two digits of the year and the R
release number. For example, 162
for 2016.2, 163
for 2016.3, etc.
The build number may have multiple components: IU-162.94.11
, IU-162.94.11.256.42
. This gives more flexibility for third-party plugins and IDE developers. Plugins may specify compatibility versions more precisely (e.g., requiring a specific bugfix release); IDE vendors may have build numbers based on a specific IntelliJ Platform version and specify additional internal version (e.g. 256.42
in XX-162.94.11.256.42
) to allow plugin developers for their IDE to specify compatibility.
Multipart build numbers can also be used in the since-build
and until-build
attributes of idea-version
. Usually you should omit the product ID and use only the branch number and build number, for example:
IntelliJ Platform Based Products of Recent IDE Versions
Please see also corresponding entries in Incompatible API Changes and Notable API Changes.
Branch number | IntelliJ Platform version |
---|---|
2022.2 NOTE Java 17 is now required (blog post) | |
2022.1 | |
2021.3 | |
2021.2 | |
2021.1 | |
2020.3 NOTE Java 11 is now required (blog post) | |
2020.2 | |
2020.1 | |
2019.3 | |
2019.2 | |
2019.1 | |
2018.3 | |
2018.2 | |
2018.1 | |
2017.3 | |
2017.2 | |
2017.1 | |
2016.3 | |
2016.2 |
Note that there is no 170
. In the YYYY.R
versioning scheme, the R
part starts at 1.