
BLOG.JETBRAINS.COM
Bringing Remote Closer to Local: 2025.2 Highlights
Our goal is to make remote development with JetBrains IDEs feel just as reliable and consistent as working locally does. Recently, weve made progress towards this goal in core areas like the editor, tool windows, plugin behavior, and settings synchronization.EditorAll the changes made to the editor in the 2025.2 release are based on a single underlying idea: to make remote editing feel as seamless and responsive as working locally.We improved the way the editor opens in remote sessions. To reduce the perceived delay between user action and UI feedback, weve changed how fast different UI elements appear when opening a file. Now, when a file is opened in a remote session, the editor tab appears immediately, first with the tab frame and file name, followed by the file content as soon as its available.Were also experimenting with a skeleton view for cases where the editor content cannot be displayed fast enough, with the goal of making the UI feel more responsive. Once the data arrives, the skeleton is seamlessly replaced by the actual file content. Please share your feedback on this change!To improve responsiveness, weve moved several basic editor actions to the frontend:The clipboard now reliably captures the correct selection when copy-pasting, even when actions happen quickly.Identifier highlighting under the caret now feels faster thanks to frontend caching. The first time something is highlighted, its calculated on the backend, but repeated highlights appear instantly while the file stays open.Using the Java plugin as an example, weve made progress toward smarter frontend execution by moving more functionality to the frontend. This includes:Code selection and navigation (brace matching and word selection).Statement and element movement (up/down and left/right).Code formatting and indentation.Smart Enter processing.Simple highlighting.Thanks to these changes, the caret now moves much more predictably, even after smart backend updates are applied.Weve also extended this approach to SQL, JSON, YAML, TOML, and Ruby, which are now all available in the released version.There is more work ongoing for upcoming releases, including native-feeling remote development support for other programming languages.DebuggerWeve started rolling out a split frontend/backend architecture for the debugger. One of the biggest advantages is that the debugger is less coupled with the network delay. For instance, if you place or delete a breakpoint, it will be applied immediately, with a subsequent interaction with the backend. Weve also added support for core debugging features like frames, variables, watches, and more, and were continuing to work on developing additional features.While not all functionality is in place yet, the current implementation is fully usable, and the missing features dont block core debugging workflows.TerminalThe initial implementation of the split terminal was written between 2024.3 and 2025.1. We finally enabled it by default in 2025.2. The new release fixed many issues related to the previous version of the terminal, and the change was highly anticipated by many individual and corporate customers.These updates improve the current experience and lay the foundation for future enhancements, ensuring new features will now work natively in remote development mode.Platform functional windowsPopups with long or dynamic lists have historically performed poorly in remote development scenarios, especially over unstable or high-latency connections. The redesigned versions now provide the same native-level performance when working remotely as they do when working locally, offering smooth scrolling and instant selection, even on slower or less reliable networks.Search Everywhere: The most used features are now fully supported, and the popup performs smoothly in remote development scenarios.Find in Files: This popup now feels fast and responsive, and several long-standing issues have been resolved.Git Branch widget: Weve improved this widgets performance and responsiveness under high latency.Plugin experienceWith the latest release, we introduced synchronization of plugins between the client and the host. The IDE now installs the necessary plugins on the client machine based on the hosts setup and vice versa. This allows the development environment to remain consistent with minimal user involvement. The synchronization behavior can be configured depending on the security requirements in specific companies.IDE settingsWe fixed an issue where various project settings were lost between IDE restarts. Recent updates make sure that selected UI and project-specific settings are preserved so that you can resume work exactly where you left off.Heres what now persists correctly:IDE window size and position.Layout and state of tool windows.Open files and their order.Tool window-specific settings, such as appearance and behavior in the Project view.Toolbox and remote developmentRemote development support in Toolbox was released in April, and while theres still room for improvement, early feedback has been very positive. Several companies have confirmed that using Toolbox significantly improves connection stability.In synthetic tests, we observed connection performance improvements of 1.5x or more:In addition to performance gains, Toolbox supports OpenSSH, works with any major remote hosts OS (not just Linux, but Windows and macOS, too), and lets you manage everything from setup to updates in the same way you handle your IDEs locally. This results in a smoother remote workflow thats built for how you actually work. You can read more about remote development with Toolbox in our recent blog post.Weve also added a new feature: If Toolbox is running, you can now see remote projects in the Recent Projects popup, right alongside your local projects.Other important improvementsThis year, we focused on improving core functionality frequently used windows, actions, and better separation of components and languages between the frontend and backend. Our goal is to build a unified architecture that works consistently in both monolith and remote development environments.That said, there are still some tricky parts of the IDE stack to tackle, like syncing keymaps, color schemes, and other settings.Weve also fixed several bugs. Here are some of the most important ones:IJPL-168465/Client-forgets-keymap-periodicallyIJPL-167788/State-of-splitted-editors-isnt-restored-after-reconnecting-to-the-sessionIJPL-166434/Project-View-only-Project-and-Packages-views-are-available-in-RemDevIJPL-170464/Clicking-the-Select-opened-File-in-the-project-tree-on-a-file-of-an-external-lib-does-not-workIJPL-168465/Client-forgets-keymap-periodically
0 Comments
0 Shares
5 Views