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.*for- until-build).
- Not specifying - until-buildmeans it will include all future builds (including unreleased IDE versions, which might impact compatibility later).
- Dot star suffix ( - .*) can be used in- until-buildto 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 ( - ICfor IDEA Community,- IUfor IDEA Ultimate,- RMfor RubyMine,- PYfor PyCharm,- PSfor 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.