Release/2026.2.1 (2) - #316
Open
DetachHead wants to merge 100 commits into
Open
Conversation
GitOrigin-RevId: 0814e3e6bd1d4f40b51fa04e712869e08359a418
GitOrigin-RevId: 3ddfef8dc80f342d8f92012af8b9adc0c81f925a
https://buildserver.labs.intellij.net/build/1010415608 GitOrigin-RevId: 446c13e50c526f85ca9a26f1a1f0fe383b6cb8a9
https://buildserver.labs.intellij.net/build/1010463434 GitOrigin-RevId: a5a6e20088d0fb7b22b1b3a8de4da76ba5ff23ca
https://buildserver.labs.intellij.net/build/1010546931 GitOrigin-RevId: a9212c45a9cf2c678b34d397b69c91ad21c694eb
(cherry picked from commit bd154a069a7aec7f89baec5db220d23604a75f99) (cherry picked from commit 84f1d1bdf34440731d5a9092b28a2935bcff24d1) IJ-MR-214629 GitOrigin-RevId: e94ca63870d1fbf37ad912104033d4875c955de9
(cherry picked from commit d25703768046ea3715c4c78b187f19c5f9d6eab6) (cherry picked from commit b9d098c63b582c85f8adc61880c1a5b9ee007789) IJ-MR-214629 GitOrigin-RevId: 50a5369971ba03038c7b9db4c0cd265f09282600
https://buildserver.labs.intellij.net/build/1010682653 GitOrigin-RevId: 8697415b151be040f138de650bc8352853d5c3a5
https://buildserver.labs.intellij.net/build/1010696154 GitOrigin-RevId: 3066e0974d54ff0ef570791f34b176b8208d9a5e
https://buildserver.labs.intellij.net/build/1010769072 GitOrigin-RevId: ea1b6e2f676e03b8596510b2c3f093378055b56a
https://buildserver.labs.intellij.net/build/1010781910 GitOrigin-RevId: f2438af640f7c27cf238cbffdaecc5c0e3bfce2d
https://buildserver.labs.intellij.net/build/1011088448 GitOrigin-RevId: 1f078ed8a39c8dac75d800cf80274e623433658c
https://buildserver.labs.intellij.net/build/1011102407 GitOrigin-RevId: 909fad66e634398fc485335339889e791f129dbb
…ENT_NON_INDEXABLE filesets WorkspaceFileIndexImpl.processContentUnderDirectory calls getFileInfo to find filesets. It searches for both CONTENT and CONTENT_NON_INDEXABLE filesets However, ModuleFilesIteratorImpl passes fileset filter, checking that filesets belong to the module. When inner non-indexable root does not belong to the module (almost always), the iterator skip file as not indexable, instead of taking it (cherry picked from commit e7e69a64d85b0426175376ec5a4cc4796d00da1a) GitOrigin-RevId: 260a2a9503338bd83fdc11d4d818854cb7f0d09f
IJ-MR-207996 GitOrigin-RevId: 8a8619c679d0991f0a3c8a1cf3c425e3d1eaa4c4
…rueValidationRule creatable Backport of the JBAI-20852 mechanism (master 1062c6873c196): add LlmFieldKind and the TrueValidationRuleCode/TrueValidationRuleText accept-all rules so the TRACE PII filter can anonymize code and text separately. Unlike master, TrueValidationRule stays a concrete, instantiable class marked @deprecated instead of becoming abstract, and the deprecated single-arg RequestPrivateData constructor / default CheckedFilePrivateData kind map to LlmFieldKind.UNSPECIFIED -> the legacy `llm_parameters` rule. This keeps all existing call sites compiling and their validation strings (and FUS group versions) unchanged, so old usages do not need to be migrated. The TRACE PII filter now matches llm_parameters, llm_code_parameters and llm_text_parameters. IJ-MR-214799 GitOrigin-RevId: 19333a6aed6e47fcd9f7f58e62bb715a330924c4
(cherry picked from commit 7d6fdaac03ee88e1577def4c352ccd8bf432e430) IJ-CR-214733 GitOrigin-RevId: ca56d20d6ed0adbea2a41d1d4583f80ee290dd6e
(cherry picked from commit 449b7371f2d7aa16772c2fef497a4ef764864666) IJ-MR-215322 GitOrigin-RevId: aa25555ea1d382296f238de64a5a4194f493fba0
Persist the project working directory and requirements file name in PythonSdkAdditionalData so SDK consumers use one source of truth. Keep legacy requirements serialization for rollback compatibility and migrate existing SDKs at project startup, with flavor hooks for tool-specific data. (cherry picked from commit e5159a1713d187a0a0382a79418def1aefd8a367) IJ-MR-215198 GitOrigin-RevId: d8714bcaca37760165392325a0c6215dc545d9ad
Back uv, Poetry, Pipenv, and venv SDKs with the common working-directory model while preserving legacy serialized fields for rollback compatibility. Target wrappers copy only project execution metadata, and uv derives its environment root from the SDK interpreter path instead of persisted flavor data. (cherry picked from commit 2f7f3d1b4eeb079736ef838e72a0c34feba4c01b) IJ-MR-215198 GitOrigin-RevId: 4c93917f2003728299513c7fec6a5a3e7e6d59e1
Let target-backed process launches create their working directory and upload only requested project metadata. Reuse persistent deployment mappings without scheduling their remote roots for cleanup, while keeping temporary upload roots disposable. (cherry picked from commit 746c082e3ad2d8ac4f30d1f95d433b8305f2b73d) IJ-MR-215198 GitOrigin-RevId: 29e84212fee02f037800535e264abe1d17b720cc
Generalize Python run-tool and Hatch CLI/service APIs over SDK flavors and filesystem path holders so environment discovery, creation, package synchronization, and execution work through EEL or legacy targets. Upload only Hatch project metadata for target-side detection, keep local scaffolding EEL-only, and preserve legacy Hatch SDK serialization during migration. (cherry picked from commit 66d5baeb5ac27fc947b3ad85e02350e92210f523) IJ-MR-215198 GitOrigin-RevId: 6e398681eab6fc13601e40aacd8302a133225cd1
Track when effective SDK data comes from legacy fields so migration is committed even when the loaded values already match. Keep canonical Hatch metadata authoritative while using legacy attributes as fallbacks. Migrate a writable SDK copy and avoid using the current project directory as a fallback for unrelated global SDKs. (cherry picked from commit db1227249757deb32c45b817beadf18c1dd3db8e) IJ-MR-215198 GitOrigin-RevId: 38ff5b9c5d0cb6a5d4b0988519deb0f9d9519962
(cherry picked from commit 29f62aa09b653caf57a7d2c1a577f1eea9509d66) IJ-MR-215198 GitOrigin-RevId: 548f46186b0fa110776c1539b51d08ba659f9012
(cherry picked from commit 422467f4730b890eaf112f4ed3d82b6cd0f0907d) IJ-MR-215198 GitOrigin-RevId: 171fc9758c4ab95bbada4a90f543d93689433845
The settings configurable needs to show the tools that are actually available for the product while still letting users edit their own MCP tool filters. Apply MCP tool filter providers when rebuilding settings groups, excluding only the settings-backed providers that would otherwise filter the configurable by its own persisted state. This keeps Rider-specific replacements such as rename_refactoring hidden from the settings list while preserving user control over the exposed tools. Settings-backed providers are marked with the UserConfigurableMcpToolFilterProvider marker interface instead of hard-coding their classes in the configurable. RIDER-140018 fix IJ-MR-214874 GitOrigin-RevId: 174cb6b318a2e5b9b4209441ab585ecbc6766599
…oblems/lint_files The backend error checker protocol expressed severity as a two-valued BackendErrorSeverity (WARNING/ERROR), so after MCP lint switched to the backend error checker channel, ReSharper highlightings below WARNING (HINT/SUGGESTION — e.g. "use var", missing braces) could neither be requested nor transmitted, and get_file_problems(errorsOnly=false) silently dropped them. Widen BackendErrorSeverity to Error/Warning/Suggestion/Hint: a "warning" request now travels as Hint and is filtered on the backend as Severity.HINT, so HINT/SUGGESTION problems are collected and reported as WEAK WARNING. Additionally, honor the new DaemonCustomDataConstants.MinimalSeverityKey in the daemon dispatcher: the error-check daemon runs as SOLUTION_ANALYSIS, where the default SWEA warnings mode (DoNotShowAndDoNotRun) used to raise the minimal severity to ERROR and skip hint-only analyzers entirely. Also extract the platform LintMinSeverity enum into LintFilesRequestSupport and reuse it in RiderAnalysisToolset instead of hardcoded "warning"/"error" severity strings. RIDER-140279 fix IJ-MR-214874 GitOrigin-RevId: 083b40375865c0bfcce79248a47e47884e221a39
… need to update it manually to restore the behavior (cherry picked from commit 92025d469e9c7773620f76b009614a383d8362fa) IJ-CR-215324 GitOrigin-RevId: fc23f256764767b7dbce7c57f26efbcdee47635d
https://buildserver.labs.intellij.net/build/1013570564 GitOrigin-RevId: f0cb9afdee1bd056acb314d777e82e410ac2fd0d
https://buildserver.labs.intellij.net/build/1013593429 GitOrigin-RevId: cd1d665d2780eb5fa5ffc8209451b0cd7250c290
(cherry picked from commit 3794fe67ff5bce098c48779b7047c524c6c9b390) IJ-MR-216462 GitOrigin-RevId: 4382d26a0cc9c2712c256d6a3643d21ab17436b6
…ugger plugin in plugin suggestions Merge-request: IJ-MR-216357 Merged-by: Maxim Popov <maxim.popov@jetbrains.com> (cherry picked from commit 9b8343d4342d019ff4c4dffa7c14ae01d6318fde) IJ-MR-216357 GitOrigin-RevId: 051016e7b7d602705a508aced468ba21de2517bb
(cherry picked from commit 86cc011fc32d93c8c85a0d63e6bec0f3e8eff06d) Platform-only pick: the original commit also touched plugins/air (AgentPromptLaunchSettingsController.kt, AgentPromptLaunchSettingsView.kt, AgentPromptPaletteView.kt, AgentPromptInlineEmptyStateProvider.kt, AgentPromptInlineEmptyStatePrologue.kt, AgentPromptGenerationSettingsCatalogService.kt, associated tests, and spec files); those changes were stripped from this pick. GitOrigin-RevId: f5a153ea382a429334e442f33a15efc0b5652b73
(cherry picked from commit 97780ae9d90e5658fdddf7c4669e2d57766823fd) Platform-only pick: the original commit also touched plugins/air spec files (global-prompt-composer.spec.md, global-prompt-entry.spec.md); those changes were stripped from this pick. GitOrigin-RevId: 17536cf0fd4ea2f715c6dbdef9fedaf71a8da46e
…cuments/editors (cherry picked from commit f932654ebb993ed2b120dd1eee14cc506696b88c) Platform-only pick: the original commit was almost entirely a plugins/air refactor (AIR file-mention/completion services moved between backend/session/runtime, frontend/prompt/prompt, and shared/prompt, plus BUILD.bazel/.iml/spec updates); all of that was stripped from this pick, leaving only the platform-side BackendBasedDocument.kt change. GitOrigin-RevId: e6a6a9cff01525e5a365e960abcae64f046e997c
(cherry picked from commit e7d49b9c5ca4a3e11c510cb4a23721ea257f6e40) Platform-only pick: the original commit also touched plugins/air (AgentPromptInlineEmptyStateProvider.kt, its test, and global-prompt-entry.spec.md); those changes were stripped from this pick. GitOrigin-RevId: bcc87a6acdb72088818a17630605081b8b208ff9
(cherry picked from commit 69e1e9067feba65cf59dfa3acb0f2fdeeb0f2a3c) Platform-only pick: the original commit also touched plugins/air (AgentThreadsSessionSearch.kt, its test, and agent-sessions-search.spec.md); those changes were stripped from this pick. GitOrigin-RevId: 81db874a273ade5f1b5f39756d3afeb64b983a9d
… in tooltips and GotIt prompts. Merge-request: IJ-MR-216490 Merged-by: Maxim Popov <maxim.popov@jetbrains.com> (cherry picked from commit 4d1666d1db4236fed8246c828036f585cebd18be) IJ-MR-216490 GitOrigin-RevId: 4cfc994c19699346f619c071a954ab766d8c1345
The debugpy/DAP backend does not launch the debuggee through PythonCommandLineState.startProcess: DebugpyConfigProvider.createConfig assembles the environment from scratch and serializes it into the DAP launch request. Compared with PythonCommandLineState.prepareEnv it was missing setupVirtualEnvVariables (VIRTUAL_ENV and the venv-prefixed PATH) and addCommonEnvironmentVariables (PYCHARM_HOSTED, PYTHONUNBUFFERED, resetHomePathChanges), so a debugged process ran without its virtualenv activated and subprocess calls to tools installed in the venv failed with FileNotFoundError. The pydevd backend was unaffected because it goes through PythonCommandLineState.execute. Extract those two steps into PythonCommandLineState.addCommonAndVirtualEnvVariables, along with the PYCHARM_HOSTED decision inlined in initEnvironment (shouldAddPyCharmHosted), and call them from the default createConfig at the same ordering point, so run-configuration envs still win over the activated ones and PATH is prefix-merged. Placing the call in the interface default means every provider inherits it. Add PyDebuggerVirtualEnvTest, which runs against both backends and so asserts the parity directly. IJ-MR-216263 (cherry picked from commit 21b59a59a1a1f9550c68e4c1d61d4e27a376ead2) IJ-MR-216551 GitOrigin-RevId: 81080faed737880d84ffdab470791be629a293b0
Air plugin code depends on this platform method. Partial cherry-pick of 5e27b1400321582612657da9ecd321eefea8aea5, extracting only this method. GitOrigin-RevId: 84c9aa9f1ba2be6f4489fca7371c6d931ab07b36
Partial cherry-pick of 5e27b1400321582612657da9ecd321eefea8aea5, extracting only the client-tagging. GitOrigin-RevId: 1cf07418aad47cdaf361daca048556e9dcabbc46
…configured McpToolFilter.MaskBased.fromMaskList treated a null mask list the same as an empty/blank one and returned ProhibitAll. ACP agents without an explicit idea_mcp_allowed_tools / mcp.tool.filter resolve their session tool filter to null, so every IDE MCP tool (including the dotTrace analyze tools) was denied and the execute_tool router exposed nothing but itself. This was latent until MCP tool-state filtering was unified to also apply the session filter in VIA_ROUTER mode; previously router mode hardcoded AllowAll, so the null->ProhibitAll mapping had no visible effect. Treat a null mask (no filter configured) as AllowAll, matching the documented "null exposes all tools" contract, while keeping an explicitly empty/blank string as ProhibitAll. The fix lives in the shared community filter, so it covers both the AIA and AIR ACP paths. (cherry picked from commit 1e55c1950ea1630b38061037df5321f01804f2e8) NET-MR-18836 (cherry picked from commit 5249db4a775d13cd4bfcb386ced1474ec22800b3) IJ-CR-216670 GitOrigin-RevId: 235b9d76ff51ababb12935aaa4cc35cef92b1471
…ugin (cherry picked from commit dd1be36d543708fd0dfce10d7f0bb9998e57c64b) Merge-request: IJ-MR-216644 Merged-by: Alesia Matuzok <alesia.matuzok@jetbrains.com> Merge-request: IJ-MR-216718 Merged-by: Alesia Matuzok <alesia.matuzok@jetbrains.com> GitOrigin-RevId: 8fc90f0902e4985640315ca7d17e0cc904c55143
https://buildserver.labs.intellij.net/build/1020449057 GitOrigin-RevId: aca5a1dcca3e57c0c922181c5b92bdf50b6814fb
…cal variables IJ-CR-215549 (cherry picked from commit 18f61afb2c6ad3dae45ac5d1c012ac26e5fdec1c) (cherry picked from commit 22b67d10a47645524bfea06e72facad70250715a) IJ-CR-216735 GitOrigin-RevId: cdb9179c16ccedd86c4a80a2e55c3e0111091973
(cherry picked from commit f8213f4333026dbf8541c4facb703c5aa8fff537) (cherry picked from commit 989f8eae9c7b04d7ee01d37a1a4fe406e89bbe10) IJ-CR-216735 GitOrigin-RevId: 37e198ead34bcf32ee6657b882737b6f09676c06
… the Install Package dialog and tool window. Original MR: IJ-MR-216488 GitOrigin-RevId: b1cb4d55f5dc1bc193d3ed0ec7a18144c6c09fe9
…ion panel UI (cherry picked from commit 12dd3c7d4a7e7cd123f27bd26e6e0cb0f3dc81a5) IJ-MR-216737 GitOrigin-RevId: 2c8e639f27bc3d5fabae9d40ca7260bafd127683
GitOrigin-RevId: 5f91a0ba6523de0250caf0f90f83a7bab86cc95d
…rror (cherry picked from commit aa216ae0370dc1e6d60870f073fe9d7a9d74d1df) IJ-MR-213683 (cherry picked from commit 498fbb0c04142eaaea437a8d75f8338dc773d05c) IJ-CR-216837 GitOrigin-RevId: fcf78e2e7e7ac3db6b378f076f0635935daf3f95
…p corners (cherry picked from commit a77f3701d23190b4f5a4f89cfd32b9228bf0a5f7) IJ-MR-216784 (cherry picked from commit 2efbdee31ab450d03819debf2c9f56aef90a3edc) GitOrigin-RevId: 545fbdcb0511a519e89a2921c24e37953449d4b8
Skip uv SDK configuration when the associated module has no resolvable base directory. This avoids missing-working-directory failures and preserves the normal missing-SDK notification path. (cherry picked from commit 5aa7b369b7b658e311c47a616b332f2b40d8392a) IJ-MR-216899 GitOrigin-RevId: 77878855d244c1fb6446d025edc8a6ddb744f147
https://buildserver.labs.intellij.net/build/1021434740 GitOrigin-RevId: 8604d584fc35f2a7321775a404fa565cfc9bc965
https://buildserver.labs.intellij.net/build/1021742493 GitOrigin-RevId: 5dde1e8453b502adbd7d3d299954400a159680c7
https://buildserver.labs.intellij.net/build/1021830230 GitOrigin-RevId: 0d643c8857ebe48dd207cb916c9d0ae45679574f
https://buildserver.labs.intellij.net/build/1021873698 GitOrigin-RevId: cadc92f302d66df48ab7c3be417ed9791d506807
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.
for some reason they deleted the 2026.2.1 release tag and released it again at a different commit, so i closed #309 and made a new release branch