✨ feat(sdk): support IntelliJ Platform 262 (2026.2)#186
Merged
Conversation
Build 262 reshaped the Python SDK API the plugin relies on: - UvSdkAdditionalData venv/uv paths are now String, not Path - VirtualEnvSdkFlavor moved to com.intellij.python.venv.sdk.flavors - PythonSdkUtil.isVirtualEnv(String) was removed; detect via pyvenv.cfg - uv icons moved to com.intellij.python.uv.common.icons Target the 262 EAP build, set sinceBuild=262, reopen untilBuild, and bump to 2.4.0-dev. The 261-capped 2.3.x line keeps serving 2026.1 users.
EAP-SNAPSHOT builds have no download.jetbrains.com installer; they exist only as snapshot maven artifacts. Set useInstaller=false (via the dependency configuration block) so the platform dependency and the verifier IDEs resolve from the repository.
The 262 VirtualEnvSdkFlavor.getInstance() is a companion-object function backed by an extension point. mockkStatic(::class) does not intercept it, so the real lookup ran and threw outside a platform fixture. Use mockkObject(VirtualEnvSdkFlavor.Companion) instead.
The Professional EAP build shows an evaluation-login dialog on startup that blocks the headless robot, timing out the interpreter UI tests. Community resolves the same 262 snapshot, carries every Python SDK API the plugin touches, and starts without a login wall. The verifier still checks both Community and Professional.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
PyCharm
262(2026.2) reshaped the Python SDK API the plugin builds against, so the2.3.xline is binary incompatible there and was capped at261in #184. This brings the plugin forward onto the262API so 2026.2 gets a working build. 🚀Four call sites had to move:
UvSdkAdditionalDatanow takes interpreter paths asStringrather thanPath,VirtualEnvSdkFlavorrelocated tocom.intellij.python.venv.sdk.flavors, the uv icons relocated tocom.intellij.python.uv.common.icons, andPythonSdkUtil.isVirtualEnv(String)was removed entirely. The first three are direct swaps. For the last one the detector now infers a virtualenv from the presence ofpyvenv.cfgin the environment root, which every modernvenv/virtualenvwrites and which the uv and conda branches already rely on. One consequence worth noting: a legacy environment with nopyvenv.cfgnow reportsSYSTEMinstead ofVIRTUALENV.The build targets the latest
262EAP (262.6653.28-EAP-SNAPSHOT, resolved from the snapshots channel), movessinceBuildto262, reopensuntilBuild, and bumps to2.4.0-dev(superseding the automated #185). The261-capped2.3.xline continues to serve 2026.1, so the two ranges coexist on the Marketplace. Because 2026.2 is still EAP, the API may shift again before GA and need a follow-up.🤖 Generated with Claude Code