Das ist neu in PyCharm 2025.1

Ein PyCharm für alle, kostenloses KI-Angebot, offizielle Veröffentlichung von Junie, Einführung von Cadence, Jupyter-Verbesserungen, Unterstützung für Hatch und Implementierung von Data Wrangler.

Highlights in diesem Release

PyCharm vereinheitlicht: Pro-Funktionen einen Monat lang kostenlos

PyCharm ist jetzt ein leistungsstarkes, einheitliches Produkt! Die Kernfunktionen, einschließlich der Jupyter-Notebook-Unterstützung, werden kostenlos angeboten, und ein Pro-Abonnement schaltet zusätzliche Funktionen frei. Ab Version 2025.1 erhalten alle Benutzer*innen sofortigen Zugriff auf eine kostenlose einmonatige Pro-Testphase, sodass sie unmittelbar alle erweiterten Funktionen von PyCharm nutzen können. Nach der Testphase haben Sie die Wahl, ob Sie mit einem Pro-Abonnement fortfahren oder die Kernfunktionen weiterhin kostenlos nutzen möchten. Mehr über diese Änderung erfahren Sie in diesem Blogbeitrag.

Junie – Ihr persönlicher Coding-Agent Pro

Junie, der Coding-Agent von JetBrains, ist jetzt über JetBrains AI in PyCharm verfügbar. Junie plant, schreibt, optimiert und testet Ihren Code selbständig, um Ihnen eine reibungslose, effiziente und angenehme Entwicklungserfahrung zu bieten. Er übernimmt mühsame Aufgaben wie das Neustrukturieren von Code, das Erstellen von Tests und das Umsetzen von Optimierungen, damit Sie sich auf Herausforderungen und Innovationen konzentrieren können.

PyCharm goes AI

JetBrains AI hat ein umfangreiches Upgrade erhalten, das AI Assistant und Junie in einem einzigen Abonnement zusammenfasst. Ab dieser Version sind alle JetBrains-AI-Funktionen kostenlos in PyCharm Pro zugänglich. Dabei können einige Funktionen – etwa Code-Completion und Unterstützung für lokale Modelle – unbegrenzt genutzt werden, während bei anderen die Nutzung über Credits limitiert wird. Wir führen auch ein neues Abonnementsystem ein, das bei Bedarf mit den Stufen AI Pro und AI Ultimate eine unkomplizierte Skalierung ermöglicht.

Cadence – mühelose ML-Workflows in der Cloud Pro

Sie können Ihren ML-Code jetzt in wenigen Minuten direkt aus PyCharm auf leistungsstarker Cloud-Hardware ausführen – ohne eine komplexe Einrichtung und ohne Cloud-Kenntnisse. Das Cadence-Plugin vereinfacht ML-Workflows, sodass Sie skalierbare Rechenressourcen nutzen können, ohne sich auf etwas anderes als Ihren Code zu konzentrieren.

Mehr zu Cadence.

Data Wrangler Pro

Mit Data Wrangler bieten wir Python-Datenprofis ein leistungsstarkes Tool, mit dem sie Datenmanipulationen vereinfachen können, um sich auf wertvollere Analysen zu konzentrieren. Betrachten und analysieren Sie Ihre Daten, erkunden Sie Spaltenstatistiken und Visualisierungen und erzeugen Sie automatisch Python-Code für Transformationen.

Über die interaktive Bedienoberfläche können Sie gängige Dataframe-Transformationen – filtern, bereinigen, Ausreißer behandeln und mehr – durchführen, ohne ständig den gleichen oder ähnlichen Code schreiben zu müssen. Sie können auch den Änderungsverlauf nachverfolgen, Daten in einem praktischen Format exportieren und Transformationen als neue Zellen in Ihr Notebook einfügen.

Mehr zu Data Wrangler.

SQL-Zellen in Notebooks Pro

PyCharm 2025.1 führt SQL-Zellen ein. Mit diesem neuen Zellentyp können Sie Datenbanken, DataFrames und angehängte CSV-Dateien in Jupyter-Notebooks abfragen und die Ergebnisse automatisch in pandas-DataFrames speichern.

Unterstützung für Hatch

Wir führen Unterstützung für Hatch ein, den modernen und erweiterbaren Python-Projektmanager der Python Packaging Authority (PyPA). Hatch kann setuptools-Konfigurationen automatisch migrieren, isolierte Umgebungen erstellen sowie Builds erstellen und veröffentlichen, sodass Ihr Python-Paketmanagement noch effizienter wird.

Außerdem können Sie mit PyCharm neue Projekte erstellen, die von Hatch verwaltet werden. Die IDE erkennt Hatch-Projekte automatisch, wenn sie vom lokalen Rechner oder aus einer entfernten Quelle importiert werden.

Jupyter-Notebooks

Verbesserte Unterstützung für Jupyter-Notebooks

Wir verbessern kontinuierlich die allgemeine Entwicklungserfahrung in Jupyter-Notebooks. In dieser Version haben wir die folgenden Neuerungen eingeführt:

  • Aufbauend auf der bestehenden uv-Unterstützung können Jupyter-Server jetzt mit einem uv-Interpreter gestartet werden.
  • Einfache Drag-and-Drop-Umsortierung von Jupyter-Zellen über die Randleiste.
  • Das Zahnradmenü enthält eine neue Option Commit without outputs, um die Zellenausgaben vor einem Commit automatisch zu löschen.
  • Individuell einstellbare Farben für Notebook-Hintergründe, Codezellen, ausgewählte Zeilen und Zellenrahmen.
  • Eine Verwaltungssymbolleiste für einzelne Zellen bietet spezifische Aktionen für den jeweiligen Zellentyp. Pro
  • In der Structure-Ansicht von Notebooks wurden die Zellstatuswerte Crashed und Queued eingeführt.
  • Bei der Auswahl von Text in Markdown-Zellen erscheint eine schwebende Formatierungsleiste, und leere Markdown-Zellen werden jetzt übersichtlicher dargestellt.
  • Die Hauptsymbolleiste enthält jetzt die Schaltfläche Shut down kernel.

Verbesserungen für die Jupyter-Serverkonfiguration Pro

Wir haben die Einfachheit und Transparenz der Einstellungen für die Jupyter-Serverkonfiguration optimiert. Sie können jetzt mehrere Managed- und Remote-Serverkonfigurationen hinzufügen und unkompliziert zwischen ihnen wechseln.

Weitere Verbesserungen:

  • Möglichkeit zum Verbinden mit einem Remote-Server über Proxy.
  • Unterstützung für AWS-SageMaker-Remoteverbindungen.
  • Verbessertes Dateisystem für Remote-Jupyter-Server.
  • Möglichkeit zum Ausführen von Notebooks auf den Jupyter-Servern von Kaggle.

Verbesserungen für den Jupyter-Debugger

  • Run to caret-Funktionalität.
  • Beim Debuggen können Jupyter-Zellen jetzt Zeile für Zeile ausgeführt werden, da PyCharm automatisch einen Haltepunkt in der ersten Zeile von Jupyter-Zellen setzt, wenn noch keine weiteren Haltepunkte gesetzt sind.
  • Korrekturen für zahlreiche Probleme.
  • Debugging- und Variables-Ansicht für Remote-Jupyter-Instanzen. Pro

Data Science

Neuformatieren von SQL-Code, der in Python-Code eingebettet ist Pro

In Version 2025.1 können Sie in Python eingebetteten SQL-Code gemäß Ihren Codestil-Vorgaben neu formatieren. Dies gewährleistet Konsistenz und eine einfache Lesbarkeit bei der Verwendung von SQL in Python-Skripten.

Schnelles Öffnen neuer Data View-Tabs Pro

Sie können jetzt schnell neue Tabs im Data View-Toolfenster erstellen, indem Sie die +-Schaltfläche neben den vorhandenen Tabs anklicken. Ein zusätzlicher Tab bietet eine praktische Möglichkeit, NumPy-Arrays, pandas-DataFrames oder andere Datentypen durch einfache Eingabe eines Variablennamens oder Ausdrucks auszuwerten.

Anzeige von NumPy-Arrays und Tensoren als Bilder

Beim Debuggen von Anwendungen, die Bilder bearbeiten, können Sie mit der Aktion View as Image die Bilder im Debugger betrachten, ohne zusätzlichen Code schreiben zu müssen. Diese Aktion funktioniert mit NumPy-Arrays sowie den folgenden Bibliotheken: PyTorch, TensorFlow, Matplotlib, Seaborn, OpenCV, Pillow, ImageIO und scikit-image. Zur Verwendung rechtsklicken Sie einfach im Debug-Modus auf eine Datenvariable und wählen Sie View as Image aus.

Datenbank-Tools

Introspektionsstufen für MySQL und MariaDB Pro

Wir arbeiten weiterhin kontinuierlich an der Verbesserung der Introspektionsleistung. Ab Version 2025.1 stehen für MySQL und MariaDB verschiedene Introspektionsstufen zur Verfügung, und der Umfang der geladenen Metadaten wird automatisch an die Größe Ihrer Datenbank angepasst. Das heißt: Bei großen Datenbanken werden nicht alle Metadaten geladen. Dies reduziert die Introspektionszeit erheblich und ermöglicht ein sofortiges Arbeiten mit neu verbundenen Datenquellen. Um mehr über die Stufen zu erfahren und ihre Nutzung anzupassen, besuchen Sie diese Seite.

Unterstützung der ORM-Bibliothek SQLAlchemy

Diese Version verbessert die Integration von SQLAlchemy in PyCharm, indem Datenbank-Objekttypen automatisch erkannt werden. Diese Verbesserung ermöglicht präzise Completion-Vorschläge für Datenbankspalten und Abfrageergebnisse und bietet dadurch eine erhebliche Erleichterung bei der Verwendung von ORM-basierten Projekten.

Django Pro

Unterstützung für Typhinweise in request.user

PyCharm bietet jetzt automatisch korrekte Typhinweise für request.user basierend auf AUTH_USER_MODEL, wenn dies in der Django-Einstellungsdatei angegeben ist. Dadurch werden die Code-Completion und die Typprüfung bei benutzerdefinierten User-Modellen verbessert.

Unterstützung für Routendeklarationen im Django-Ninja-Framework

Wir haben die Option eingeführt, Endpunkte in Django-Projekten mit dem Django-Ninja-Framework zu deklarieren. Damit folgt die Endpunkterkennung von PyCharm den Best Practices und bietet Backend- und Full-Stack-Entwickler*innen die Möglichkeit, Endpunkte direkt im Endpoints-Toolfenster von PyCharm zu verwalten.

AI Assistant

Erweiterte LLM-Auswahl im Chat

Wir haben die KI-Modellauswahl im Chat erweitert! Jetzt können Sie die volle Kontrolle über Ihre KI-Erfahrung übernehmen und Ihre Wahl zwischen den neuesten und fortschrittlichsten Sprachmodellen treffen, darunter:

  • Claude 3.7 Sonnet
  • OpenAI GPT-4.1 (demnächst)
  • Gemini 2.0 Flash

Und damit geben wir uns noch nicht zufrieden! JetBrains wird weiterhin kontinuierlich neue KI-Modelle integrieren, um Ihnen Zugang zu den aktuellsten KI-Technologien zu bieten.

Offlinemodus: Arbeiten mit lokalen Modellen

AI Assistant gibt Ihnen die Flexibilität, entweder offline mit lokalen Modellen zu arbeiten oder die KI-Verarbeitung in der Cloud zu verwenden. Im neuen Offlinemodus können Sie jetzt ohne Internetverbindung arbeiten und trotzdem von den KI-gestützten Programmierhilfen profitieren. Sie können lokale Modelle über Ollama oder LM Studio für Chats, Codeerzeugung, Commit-Nachrichten, die Generierung von Inline-Dokumentationen und mehr verwenden.

Änderungen in mehreren Dateien im Bearbeitungsmodus

Noch nie war es so einfach, mehrere Dateien zu bearbeiten! AI Assistant unterstützt jetzt die Bearbeitung mehrerer Dateien im Chat und schlägt Änderungen in Ihrem gesamten Projekt vor. Durch die RAG-Methode (retrieval-augmented generation) werden dabei die relevantesten Dateien identifiziert. Ersparen Sie sich Routinehandgriffe, indem Sie Änderungen an mehreren Dateien in einem Zug durchführen.

KI-generierte Schnelldiagramme in Jupyter-Tabellen Pro

Sie können jetzt Diagrammvorschauen in Jupyter-Notebooks generieren, indem Sie auf AI Quick Charts klicken. AI Assistant verwendet die DataFrame-Metadaten für seine Visualisierungsvorschläge und bettet die erzeugten Diagramme direkt in das Widget der Tabelle ein, sodass Sie eine sofortige Vorschau erhalten. Klicken Sie auf ein generiertes Diagramm, um den entsprechenden Code in Ihr Notebook einzufügen.

Verbesserte Codegenerierung in Jupyter-Notebooks Pro

KI-generierter Code wird jetzt sinnvoll in mehrere Zellen – einschließlich Markdown-Zellen – aufgeteilt, was dem Workflow in Notebooks besser entspricht.

Ausschließen von Dateien aus dem AI-Assistant-Kontext

Sie können Ihre Kontrolle darüber, was AI Assistant zu sehen bekommt, weiter verfeinern, indem Sie eine .aiignore-Datei anlegen. Indem Sie auf diese Weise verhindern, dass JetBrains AI auf bestimmte Dateien oder Ordner zugreift, sorgen Sie dafür, dass unter keinen Umständen auf sensible Informationen zugegriffen wird.

Websuche im Chat

Mit dem neuen Befehl /web kann AI Assistant jetzt Dokumentationen, Fehlersuchtipps und die neuesten technischen Ressourcen aus dem Internet abrufen – direkt in Ihrem Chatfenster. Das manuelle Suchen und Wechseln zwischen Tabs ist damit Geschichte!

Codeabschnitte aus dem Chat übernehmen

Wenn Sie im KI-Chat einen Codevorschlag erhalten, können Sie den generierten Code jetzt mit der Schaltfläche Apply automatisch an der optimalen Stelle einfügen – ein manuelles Kopieren ist nicht mehr notwendig. Diese Funktion beschleunigt Ihren Workflow erheblich.

Verbesserte KI-Kontextsensitivität

AI Assistant kann Ihr gesamtes Projekt jetzt besser überblicken und nutzt moderne RAG-Methoden, um die relevantesten Dateien, Methoden und Klassen zu finden. Darüber hinaus enthält der Kontext kürzlich verwendete Dateien, sodass die Interaktionen noch relevanter für Ihren aktuellen Workflow werden. Da Sie jetzt auch die Möglichkeit haben, Anhänge zum Kontext hinzuzufügen und zu entfernen, behalten Sie die volle Kontrolle über den Kontext, der dem KI-Assistenten bereitgestellt wird.

Benutzererfahrung

Neue Terminal-Architektur Beta

In Version 2025.1 führen wir eine überarbeitete Terminal-Architektur als Beta ein. Das Terminal läuft jetzt auf einem stabilen, standardkonformen Kern und verwendet den IDE-Editor zum Darstellen der Bedienoberfläche. Durch diese Änderung können wir Neuerungen einführen und dabei die Kompatibilität und Performance auf verschiedenen lokalen und Remote-Plattformen gewährleisten. Weitere Details zu unseren Plänen und Fortschritten erhalten Sie in diesem Blogbeitrag.

Betriebssystem-eigene Dateidialoge unter Windows

PyCharm verwendet jetzt standardmäßig native Windows-Dateidialoge anstelle der IDE-spezifischen Implementierung. Dadurch steht Ihnen beim Öffnen und Speichern von Dateien eine vertraute Oberfläche zur Verfügung. Wenn Sie das bisherige Verhalten bevorzugen, können Sie dieses unter Advanced Settings | User Interface wiederherstellen.

Erstellen neuer Dateien im Project-Toolfenster

Sie können jetzt noch einfacher neue Dateien erstellen. Über das +-Symbol in der Symbolleiste des Project-Fensters lässt sich direkt ein Popup mit den verfügbaren Vorlagen aufrufen, und im Suchfeld können Sie schnell die Optionen filtern und den gewünschten Dateityp finden.

Automatische Plugin-Updates

Sie können PyCharm so einstellen, dass Plugins automatisch im Hintergrund aktualisiert werden. Verfügbare Updates werden heruntergeladen und beim nächsten Neustart der IDE ohne zusätzliche Benachrichtigungen installiert. Sie können automatische Updates aktivieren, indem Sie im Update-Dialog das Kontrollkästchen Enable auto-update anklicken oder unter File | Settings | Appearance & Behavior | System Settings | Updates die entsprechende Einstellung aktivieren.

Direkter Export von Kafka-Datensätzen im JSON-, CSV- und TSV-Format Pro

Mit PyCharm können Sie jetzt Kafka-Datensätze direkt in JSON-, CSV- und TSV-Dateien exportieren, um die Analyse und Weitergabe von Streaming-Daten zu erleichtern. Die IDE kann vollständige Datensätze – einschließlich Thema, Zeitstempel, Schlüssel, Wert, Partition und Offset – in gängigen Formaten speichern. Dank diesem Update können Sie Probleme schneller diagnostizieren, die Datenintegrität überprüfen, erweiterte Analysen durchführen und die Zusammenarbeit optimieren, da durch den Export von Kafka-Datensätzen die Zugänglichkeit und Nutzbarkeit der Daten sichergestellt wird. Durch verkürzte Problembehebungszeiten und eine höhere Datentransparenz ermöglicht diese Verbesserung eine effizientere und effektivere Kafka-Erfahrung.

Einfachere Nutzung von generierten HTTP-Anfragen Pro

Der HTTP-Client öffnet jetzt HTTP-Anfragen, die im Code generiert werden, in einem rechten Editor-Teilfenster, sodass Sie sie nicht mehr in einem separaten Tab überprüfen müssen.

Versionsverwaltung

Commit-Details in der Diff-Ansicht

Sie können Details zum Commit jetzt direkt in der Diff-Ansicht sehen. Der Diff-Dialog zeigt die Commit-Nachricht, den Autor, das Datum, die Uhrzeit und den vollständigen Commit-Hash an – so erhalten Sie einen klareren Überblick über die Dateihistorie und können Änderungen einfacher verstehen.

Ausführen von Tools bei Pre-Commit-Prüfungen

Neben Inspektionen und Formatierungsaktionen können Sie jetzt jedes beliebige Tool starten, um eine Pre-Commit-Prüfung durchzuführen. Benutzerdefinierte Prüfungen können als Run-Konfigurationen im Run Configuration-Dialog eingerichtet werden. Dadurch können Sie noch vor dem Commit potenzielle Probleme erkennen und die Einhaltung von Projektstandards sicherstellen.

Optionale Deaktivierung von Git-Commit-Hooks

Mit einer neuen Option können Sie die IDE anweisen, keine Git-Commit-Hooks auszuführen. Bisher wurden Git-Hooks beim Commit-Vorgang automatisch ausgeführt, was nicht unbedingt in jeder Situation wünschenswert war. Seit diesem Update können Sie die IDE so konfigurieren, dass diese Hooks übersprungen werden, sodass Sie mehr Kontrolle über Ihren Commit-Prozess erhalten.

Weitere Features

PyPackage: Installation fehlender Pakete über die Konsole

Wenn beim Ausführen Ihres Codes erforderliche Pakete nicht installiert sind, bietet die IDE jetzt direkt in der Python-Konsole bzw. dem Run- oder Debug-Toolfenster die Installation an, um einen reibungsloseren Arbeitsablauf zu gewährleisten.

FastAPI-Endpunkte: mount-Unterstützung Pro

Das Endpoints-Toolfenster unterstützt jetzt gemountete Apps in FastAPI, darunter auch Django- und Flask-Apps. Gemountete Routen werden erkannt und mit den entsprechenden Pfadpräfixen im Endpoints-Toolfenster angezeigt. Dadurch wird die Verwaltung von Projekten mit mehreren Apps erleichtert.

Bugfixes

  • [PY-54850] Package requirement is not satisfied when the package name differs from what appears in the requirements file with respect to whether dots, hyphens, or underscores are used.
  • [PY-56935] Functions modified with ParamSpec incorrectly report missing arguments with default values.
  • [PY-76059] An erroneous Incorrect Type warning is displayed with asdict and dataclass.
  • [PY-34394] An Unresolved attribute reference error occurs with AUTH_USER_MODEL.
  • [PY-73050] The return type of open("file.txt", "r") should be inferred as TextIOWrapper instead of TextIO.
  • [PY-75788] Django admin does not detect model classes through admin.site.register, only from the decorator @admin.register.
  • [PY-65326] The Django Structure tool window doesn't display models from subpackages when wildcard import is used.