Что нового в PyCharm 2024.2

Теперь AI Assistant можно использовать для анализа данных прямо в Jupyter-ноутбуках, а модели Hugging Face помогут работать продуктивнее.

Скачать

AI Assistant

В JetBrains AI Assistant 2024.2 улучшено облачное автодополнение кода: теперь оно быстрее предлагает более точные варианты. Мы постарались лучше интегрировать автодополнение на основе ИИ в рабочие процессы IDE: теперь в предлагаемом коде есть подсветка синтаксиса и его можно принимать по частям. Чат-бот тоже стал умнее и теперь поддерживает новейшую модель GPT-4o, ссылки на чаты и семантический поиск.

Мы интегрировали искусственный интеллект в окно Terminal для удобной генерации команд и эффективного разрешения конфликтов в системе контроля версий. Также теперь можно настраивать промты для создания документации и генерации юнит-тестов, учитывая особенности языка и требования стандартов оформления.

Подробнее об этих и других улучшениях читайте в нашем блоге.

ИИ-ячейки в Jupyter-ноутбуках

В новой версии PyCharm AI Assistant еще больше интегрирован с Jupyter-ноутбуками. Теперь вы можете создать запрос к AI Assistant и работать с ним прямо в ноутбуке. Достаточно выбрать опцию создания AI-ячейки, доступную под любой ячейкой ноутбука, и PyCharm создаст поле для ввода запроса к AI Assistant прямо в ноутбуке.

Если у вас возникли затруднения при анализе данных и вы хотите узнать, какие шаги выполняют другие аналитики на этом этапе, нажмите на значок лампочки справа от ИИ-ячейки. AI Assistant предложит самые подходящие варианты с учетом текущего контекста ноутбука, и вы сможете быстрее и эффективнее очистить свои данные.

Если вы хотите обсудить с AI Assistant код в конкретной ячейке, откройте контекстное меню и выберите вариант AI Edit Cell. Откроется поле ввода запроса прямо в выбранной ячейке. Предложения AI Assistant будут показаны в режиме сравнения, так что вы сразу увидите, какие изменения вносятся в код.

Визуализация DataFrame в один клик

AI Assistant поможет визуализировать DataFrame, предлагая наиболее подходящие варианты диаграмм и графиков с учетом контекста.

Нажмите на иконку ИИ в правом верхнем углу DataFrame и выберите Suggest Visualization. В PyCharm откроется чат-бот, где будут показаны варианты визуализации. Выберите самый удачный, и AI Assistant сгенерирует в ноутбуке новую ячейку с соответствующим кодом. Запустите ее, и готово! Диаграмма появится в вашем ноутбуке.

Интеграция с Databricks

PRO

Новая версия PyCharm напрямую интегрирована с Databricks. Вы можете подключиться к кластеру Databricks, выполнять скрипты и ноутбуки как рабочие процессы, запускать файлы прямо в оболочке Spark в кластере, а также отслеживать ход работы, не выходя из привычного интерфейса IDE.

PyCharm может находить на диске файлы конфигурации Databricks и использовать их для подключения к кластерам Databricks. Код можно выполнить в Databricks в одном из двух режимов: Run on Cluster или Run as a Workflow.

Чтобы использовать интеграцию с Databricks, установите специальный плагин.

Интеграция с Hugging Face

PRO

Подсказки моделей

Теперь PyCharm предлагает список моделей Hugging Face, которые лучше всего подойдут для ваших задач. Выбрать и установить модель можно не покидая IDE. Кликните правой кнопкой мыши в редакторе для вызова меню, выберите Insert HF Model, укажите, что должна делать модель,и PyCharm предложит свои варианты. Когда вы выберете модель, PyCharm предложит вставить сниппет, позволяющий использовать ее прямо в открытом файле, а затем скачает и установит недостающие пакеты, необходимые для работы модели.

Интерактивные датафреймы для библиотеки Hugging Face Datasets

Теперь для библиотеки Datasets от Hugging Face можно создавать интерактивные датафреймы. Для них доступны те же функции, что и для датафреймов pandas, Polars, PyTorch и TensorFlow, в том числе представление в виде диаграммы, разбивка на страницы и возможность сортировки и экспорта таблиц.

Поиск и удаление неиспользуемых моделей

В новом специальном окне Hugging Face можно отслеживать, какие модели Hugging Face хранятся на вашей машине. С помощью этой функции удобно копировать пути к моделям, открывать папки, где они хранятся, а также можно найти неиспользуемые модели и удалить их, освободив дисковое пространство.

Jupyter-ноутбуки

PRO

Превью значений переменных в редакторе

Если нужно просто проверить значения переменных, вам больше не придется запускать отладчик или использовать print(). Просто наведите курсор на строку с переменной, и ее значение отобразится мгновенно.

Работа с Jupyter-ноутбуками

Упрощенное выполнение ячеек

В новой версии рядом с каждой ячейкой есть кнопка Run, поэтому больше не надо открывать верхнее меню. Появилась также кнопка Go To, позволяющая переходить к последней выполненной ячейке.

Кроме того, теперь для каждой ячейки отображается статус: выполнена успешно, выполнена с ошибкой или выполнение отменено. Чтобы узнать статус, наведите курсор на кнопку Go To на главной панели инструментов ноутбука. PyCharm сообщит, когда ячейка будет выполнена, даже если ноутбук уже закрыт.

Теги

Теперь назначенные каждой ячейке теги видны в редакторе. Новые теги можно добавить через контекстное меню.

Сворачивание и разворачивание ячеек кода и Markdown

В новой версии можно сворачивать и разворачивать ячейки кода и Markdown, чтобы эффективнее использовать рабочее пространство. Текущая ячейка показана синей линией. Нажав на нее, можно свернуть или развернуть содержимое ячейки и результаты ее выполнения. Другие ячейки также можно свернуть, наведя на них курсор и кликнув по серой линии.

Окно Endpoints: поддержка @action для наборов представлений Django REST Framework

PRO

Окно Endpoints распознает маршруты, указанные с помощью декоратора @action для наборов представлений. Вы можете посмотреть маршруты и HTTP-методы, указанные в параметре methods. Кроме того, помимо исходного маршрута, назначенного набору представлений, PyCharm генерирует маршруты на основании параметров detail и url_path. HTTP-клиент предложит для каждого маршрута запрос с соответствующими методами.

Взаимодействие с IDE

Превью результатов поиска в Search Everywhere

В диалоге Search Everywhere теперь можно посмотреть превью элементов кода, которые вы ищете. Нажмите на значок Preview на панели инструментов диалога, и под результатами поиска откроется панель предварительного просмотра. Это даст вам дополнительный контекст и упростит навигацию по проекту.

Улучшенное автодополнение строки целиком

PRO

В версии 2024.2 процесс принятия вариантов автодополнения стал проще и точнее. Теперь в предлагаемом коде работает подсветка, а новые сочетания клавиш позволяют принимать строки целиком или только отдельные слова. Мы также улучшили интеграцию принятых изменений, чтобы избежать проблем с форматированием и других ошибок.

Другие улучшения

  • Hовый интерфейс включен по умолчанию для всех пользователей. В PyCharm 2024.2 новый интерфейс установлен по умолчанию, а классический теперь можно использовать только через плагин. Подробнее о новом интерфейсе
  • Помимо этого, PyCharm теперь автоматически обнаруживает системные настройки прокси на вашем компьютере и использует их по умолчанию.

Редактор кода

Поддержка формул в Markdown-файлах

Теперь PyCharm отображает математические формулы в Markdown-файлах. Работая с Markdown, используйте $, чтобы добавить формулу на строке, и $$ для блоков кода с формулами.

Липкие строки с учетом языка

Теперь вы можете выбрать, для каких языков отображать закрепленные строки. Сделайте это в настройках Settings/Preferences | Editor | General | Sticky Lines или в контекстном меню (вызывается правым кликом по закрепленной строке в редакторе).

Запуск и отладка

Визуализация строковых переменных для JSON, XML и других форматов

Просмотр и отладка длинных строк со сложными форматами данных стали проще. Обновленный отладчик корректно форматирует строки с JSON, XML, HTML, JWT и URL. Просто нажмите View рядом с переменной, и отладчик сам быстро найдет причину проблемы. Отладчик сам выберет подходящий формат для отображения.

Покрытие изменений в текущей функциональной ветке

В PyCharm 2024.2 стало проще проверять покрытие кода тестами локально — без использования CI/CD-пайплайна.В окне Coverage теперь отображаются только классы, измененные в текущей ветке, что упрощает проверку покрытия последних изменений.Чтобы просмотреть покрытие всего проекта, отключите опцию Show Only Modified Classes.

Системы контроля версий

Теги в виджете Version Control

Теперь в виджете Version Control есть отдельный узел для тегов, чтобы их было легче просматривать. Он отображается по умолчанию, но вы можете его скрыть, нажав на значок шестеренки и сняв флажок Show Tags.

Другие улучшения

  • Под значком Graph Options в окне Git появились две новых опции: --first-parent и --no-merges. Используйте опцию First Parent, чтобы сосредоточиться на основных изменениях, скрывая отдельные коммиты из слияний. Либо вы можете полностью исключить коммиты слияния, выбрав опцию No Merges.
  • Чтобы вам было проще следить за изменениями в больших проектах, действие Local History теперь можно вызывать сразу для нескольких файлов или папок. В окне проекта выделите нужные файлы или папки и выберите Local History | Show History, чтобы просмотреть историю их изменений.
  • Вы можете открыть Git-лог в виде вкладки в редакторе для удобной работы и навигации по коммитам. Эту опцию вы также найдете в выпадающем меню на панели инструментов окна Log.
  • Мы улучшили цветовую кодировку и расположение веток в дереве коммитов на вкладке Log в окне Git. Теперь важные ветки всегда располагаются слева и сохраняют свои цвета — так их удобнее отслеживать.

Фреймворки и технологии

PRO

GraalJS в HTTP-клиенте

В качестве JavaScript-движка в HTTP-клиенте теперь используется GraalJS. А значит вам доступны все возможности GraalJS, включая полную поддержку спецификации ECMAScript 2023, при тестировании конечных точек в HTTP-клиенте PyCharm и при использовании JavaScript для обработки результатов в файлах .http.

Улучшения HTTP-клиента

Мы внесли важные обновления в HTTP-клиент. Теперь с помощью функции XPath можно напрямую извлекать элементы из XML- и HTML-документов. Кроме того, доступны новые методы, которые избавляют от необходимости ручного парсинга XML.

HTTP-клиент теперь умеет работать с коллекциями переменных. Можно создать один запрос с коллекцией JSONPath и автоматически отправить запросы для каждого элемента коллекции. Вы также можете обращаться к определенным элементам коллекции в скриптах постобработки, используя синтаксис JSONPath.

Помимо этого, теперь можно создавать пользовательские методы для работы с API, которые требуют специальных методов. Вы можете добавлять свои методы с помощью быстрого исправления или указывать их через запятую в разделе Settings | Tools | HTTP Client.

Расширенная поддержка Terraform

Мы значительно расширили функции помощи в написании кода для Terraform. Теперь доступно автодополнение строки целиком, улучшены контекстное автодополнение, подсветка синтаксиса и обнаружение ошибок с быстрыми исправлениями. Добавлена быстрая документация с подсказками при наведении на элементы, чтобы вы могли мгновенно получать нужную информацию о Terraform, не отвлекаясь на ее поиск.

Инструменты для работы с базами данных

PRO

Новые возможности AI Assistant

В этом выпуске мы добавили новые функции AI Assistant для работы с базами данных. Теперь вы можете генерировать SQL-код прямо в редакторе с помощью текстового запроса, нажав Generate Code with AI. Предложенный код можно принять, сгенерировать заново или скорректировать и задать дополнительные вопросы в чате с искусственным интеллектом.

AI Assistant поможет и при редактировании таблиц: попросите его, например, заменить все VARCHAR на CHAR. Он также умеет объяснять и исправлять разные проблемы, связанные с SQL. Кроме того, вы можете добавить схему базы данных в чат с AI Assistant, просто упомянув ее в промте.

Настраиваемый импорт данных при помощи скриптов-загрузчиков

Теперь можно импортировать данные из табличных файлов (Excel, JSON, Parquet и shapefile) с помощью настраиваемых скриптов. Просто перетащите файл из окна Project в схему в проводнике баз данных и задайте настройки в диалоге Import.

Также можно открывать эти файлы в редакторе данных одним кликом в окне Project. Чтобы отключить эту функцию, перейдите в Settings/Preferences | Advanced Settings | Open file as table if detected by scripted loader.

Вы можете создать свои загрузчики и сохранять их в специальной директории: Scratches and Consoles | Extensions | Database Tools and SQL | data | loaders.

Другие улучшения

  • Чтобы перейти к строкам, связанным с заданной ячейкой, выделите ее и нажмите на значок Related Rows. Опция Navigate And Select First показывает все строки, выделяя первые упомянутые, а Navigate And Filter All показывает только связанные строки.
  • Мы улучшили подстановку значений. Теперь она работает автоматически и показывает хорошие результаты по производительности. Функция работает локально и предлагает варианты на основе значений, уже загруженных в текущий столбец.

Фронтенд

PRO

Быстрый запуск и отладка TypeScript-файлов

Теперь можно запускать и отлаживать TypeScript-файлы без лишних настроек. Вы можете делать это прямо из контекстного меню файла, виджета запуска или конфигурации Current File.

Обновленная поддержка веб-фреймворков

B PyCharm теперь проще работать с фреймворками, использующими для маршрутизации файловую систему. IDE обнаруживает пути маршрутизации на основе файловой системы вашего проекта, обеспечивая автодополнение и навигацию для соответствующих атрибутов в компонентах, реализующих ссылки в Next.js, Nuxt, SvelteKit и Astro. Кроме того, добавлена поддержка новых сниппетов и тегов рендеринга для Svelte 5. А еще PyCharm поддерживает Vue Language Service v2 и протокол языкового сервера (LSP) Astro, что улучшает автодополнение и общее удобство взаимодействия с IDE.

Другие улучшения

Обратная переадресация портов при удаленной разработке

PRO

Теперь при удаленной разработке можно использовать обратную переадресацию портов. Это позволяет удаленной IDE подключаться к портам на клиентской машине,что особенно полезно при мобильной разработке и подключении к локальным базам данных.

JetBrains Runtime — Переход на JBR 21

Мы переходим с JetBrains Runtime 17 (JBR17) на JetBrains Runtime 21 (JBR21). Начиная с PyCharm 2024.2, все обновления IDE будут включать JBR21, обеспечивая лучшую безопасность, производительность и поддержку рендеринга Wayland для Linux.

Скачать