Connect with us

Entwicklung & Code

Symfony 7.4 und 8.0: Doppel-Release räumt Codebasis auf


close notice

This article is also available in
English.

It was translated with technical assistance and editorially reviewed before publication.

Mit Symfony 7.4 und 8.0 hat das Symfony-Core-Team gleich zwei Versionen gleichzeitig veröffentlicht, die denselben Funktionsumfang teilen, sich aber in ihrer Struktur unterscheiden. 7.4 enthält sämtliche, als veraltet markierte Features (Deprecations) der 7.x-Reihe, 8.0 kommt ohne diese aus. Das erleichtert den Umstieg, sobald Anwendungen keine veralteten Schnittstellen mehr verwenden.

Weiterlesen nach der Anzeige

Der Doppel-Release markiert den Abschluss der vorangegangenen Entwicklungsphase und eröffnet einen neuen Zyklus. Entwicklerinnen und Entwickler können zwischen einer langfristig gepflegten LTS-Version und einer regulären Hauptversion wählen, die ohne Altlasten auskommt.

Eine der auffälligsten Änderungen in Symfony 7.4 betrifft das Konfigurationssystem. Das XML-Format gilt ab sofort offiziell als veraltet, sodass Symfony 8.0 es nicht mehr kennt. Bereits in jüngeren Versionen war XML standardmäßig deaktiviert, konnte aber manuell aktiviert werden. YAML bleibt Standardformat, alternativ kann die Konfiguration auch vollständig in PHP erfolgen.

Für auf XML basierende Bundles steht ein Werkzeug bereit, das die Konfiguration automatisch in PHP umwandelt. Parallel dazu führt Symfony neue JSON-Schemata für YAML-Dateien ein. Sie ermöglichen laut Blogbeitrag verbessertes Autovervollständigen und Validierung in modernen Entwicklungsumgebungen (IDEs).

Im Zuge der Modernisierung hat das Entwicklerteam die PHP-Konfiguration in Symfony 7.4 überarbeitet. Die seit Version 5.3 genutzten Config-Builder-Klassen ersetzt das Team durch ein arraybasiertes Format. Dieser Ansatz nutzt Array Shapes, die von Tools wie PHPStan oder PhpStorm erkannte werden. Ziel ist, eine bessere statische Analyse, Typprüfung und Autovervollständigung zu ermöglichen.

Weiterlesen nach der Anzeige

Das neue Format ähnelt YAML in seiner Struktur, wird aber direkt in PHP geschrieben. Laut Blogbeitrag ist es einfacher zu warten und soll langfristig die Integration in PHP-basierte Workflows erleichtern. Obwohl YAML weiterhin empfohlen wird, gilt die Neuerung als Schritt in Richtung einer stärkeren Annäherung zwischen Framework und Sprache. Passend dazu ist kürzlich PHP 8.5 erschienen – mit neuen Möglichkeiten für Typisierung und Analyse –, was die Richtung der Symfony‑Änderungen unterstützt: Beide Entwicklungen zielen darauf, Konfigurationen besser überprüfbar und Entwicklungswerkzeuge stärker in den Codefluss zu integrieren.

Das Symfony-Kernteam empfiehlt, Projekte zunächst auf Version 7.4 zu aktualisieren und alle Deprecations zu bereinigen, bevor der Wechsel zu Version 8.0 erfolgt. Der Blogbeitrag nennt als beste Methode, um als veraltet markierte Stellen zu erkennen, das Ausführen der eigenen Test-Suite:

$ php bin/phpunit --display-deprecations

Die Ausgabe listet Deprecations auf – sowohl direkte durch den eigenen Code als auch indirekte über Bundles oder Bibliotheken. Wer keine umfangreiche Testabdeckung besitzt, kann einfache Smoke-Tests einsetzen, um betroffene Bereiche zu identifizieren. Auch Drittanbieter-Bundles gilt es zu prüfen und entsprechend anzupassen. Besonders ältere Projekte, die noch auf XML- oder die frühere PHP‑Konfigurationssyntax setzen, sind von den Änderungen betroffen und sollten ihre Abhängigkeiten frühzeitig anpassen.

Symfony 7.4 ist eine LTS-Version (Long-term Support) mit Bugfixes bis November 2028 und Sicherheitsupdates bis November 2029. Version 8.0 erhält regulären Support für acht Monate, erlaubt aber schnelle Upgrades auf 8.1, 8.2 und nachfolgende Versionen. Das Symfony-Team empfiehlt für die meisten Projekte, dem regulären Zyklus zu folgen, um schrittweise an neue Funktionen und PHP-Versionen anzuschließen.

Weitere Informationen bietet der Blogbeitrag zum Doppel-Release: Symfony 7.4 und Version 8.0.


(mdo)



Source link

Entwicklung & Code

Hallo Developer, hallo heise, hallo C++


Weiterlesen nach der Anzeige

Ich bin Andreas Fertig. Seit vielen Jahren beschäftige ich mich mit der Programmiersprache C++. Mein Wissen teile ich im Rahmen von Trainings, Vorträgen und auch Artikeln wie in der iX oder meinem privaten Blog. Dort veröffentliche ich pro Monat einen Artikel zu C++ auf Englisch.


Portrait von Andreas Fertig

Portrait von Andreas Fertig

Andreas Fertig ist erfahrener C++-Trainer und Berater, der weltweit Präsenz- sowie Remote-Kurse anbietet. Er engagiert sich im C++-Standardisierungskomitee und spricht regelmäßig auf internationalen Konferenzen. Mit C++ Insights ( hat er ein international anerkanntes Tool entwickelt, das C++-Programmierenden hilft, C++ noch besser zu verstehen.

Die Neuerung für (C++)2026 ist, dass ihr diese Artikel ab sofort auch hier bei heise Developer und auf Deutsch lesen könnt.

Mir ist bewusst, dass ich mit dem Blog in die Fußstapfen von Rainer Grimm trete, den ich sehr geschätzt habe und der leider viel zu früh von uns gegangen ist. Uns beiden lagen C++ und Wissen teilen sehr am Herzen. Mit meinem Blog möchte ich das Thema C++ hier bei heise Developer weiterführen.

Wie der Name des Blogs (der Titel „C++ Werkbank“ verzichtet bewusst auf den Bindestrich) verrät, werde ich mich mit C++-Themen beschäftigen, die dir helfen sollen, deine C++-Kenntnisse zu verbessern und mit einem neuen Werkstück aus jedem Post zu gehen.

Da ich mich viel im Umfeld eingebetteter Systeme bewege, haben meine Artikel häufig einen Fokus auf Effizienz und Performance. Auch Aspekte wie Softwaredesign werden gelegentlich ein Thema sein. Wie in meinen Trainings werde ich auch immer wieder auf Fallstricke wie undefiniertes Verhalten hinweisen. Mein Ziel ist es immer selbst robusten Code zu schreiben, der lange leben kann, und genau das vermittle ich auch in meinen Beiträgen.

Weiterlesen nach der Anzeige

Als Mitglied im C++-Standardisierungskomitee werde ich gelegentlich auch über Neuerungen für den nächsten C++-Standard berichten.

Gerne kannst du mich auch schon vor dem ersten C++-Beitrag kennenlernen. Eine Übersicht meiner Social Media findest du hier.

Du bist an einem C++-Training für deine Firma interessiert? Hier findest du meine Trainings, welche selbstverständlich auf die Anforderungen deiner Firma und deines Teams angepasst werden können.

Andreas


(rme)



Source link

Weiterlesen

Entwicklung & Code

programmier.bar: Entwicklung von Headless Apps mit Rust


In dieser Podcastfolge der programmier.bar blicken Joachim Böhmer und Dennis Becker gemeinsam mit Marcel Koch, Softwareberater, Coach und Rust-Autor, über den Tellerrand klassischer Cross-Platform-Frameworks. Im Mittelpunkt steht das Konzept sogenannter Headless Apps und die Frage, wie sich Anwendungslogik unabhängig von konkreten UI-Technologien umsetzen lässt.

Weiterlesen nach der Anzeige

Die drei diskutieren, wie sich die Business-Logik einer Anwendung vollständig in Rust kapseln lässt, um sie plattformübergreifend einzusetzen – unabhängig davon, ob die Benutzeroberfläche mit Flutter, SwiftUI oder Jetpack Compose umgesetzt wird. Auch der Einsatz im Web über WebAssembly (Wasm) sowie auf Mikrocontrollern ist Teil der Betrachtung. Es geht um die Trennung von Core-Logik und UI für die Reduktion technologischer Abhängigkeiten.

Empfohlener redaktioneller Inhalt

Mit Ihrer Zustimmung wird hier ein externer Inhalt geladen.

In dieser Folge gibt es außerdem einen Architektur-Deep-Dive zu Headless Apps sowie zur Rolle von Rust in diesem Kontext, insbesondere mit Blick auf Performance, Memory Safety und Portabilität. Zudem stellt Marcel Koch das Crux-Framework von Red Badger vor, das den Datenaustausch zwischen dem Rust-Core und den jeweiligen UI-Shells automatisiert. Abschließend diskutieren die drei, in welchen Fällen sich der Mehraufwand einer Headless-Architektur lohnt und wann klassische Lösungen wie Flutter oder Kotlin Multiplatform die sinnvollere Wahl sind.

Die aktuelle Ausgabe des Podcasts steht auch im Blog der programmier.bar bereit: „Headless Apps mit Marcel Koch“. Fragen und Anregungen gerne per Mail oder via Mastodon, Bluesky, LinkedIn oder Instagram.

Weiterlesen nach der Anzeige


(mdo)





Source link

Weiterlesen

Entwicklung & Code

KI-Video- und -Bild-Ersteller Amuse am Ende, ComfyUI als Ersatz


Wer mit dem KI-Tool Amuse Bilder und Videos generiert, könnte sich über ausbleibende Aktualisierungen wundern. Das Projekt liegt offenbar auf Eis, ist aber seit Dezember als Open Source verfügbar. Als Alternative bietet sich ComfyUI an.

Weiterlesen nach der Anzeige

Genaue Hintergründe sind unbekannt, jedoch hat sich der Hauptentwickler hinter Amuse zurückgezogen. Die ursprünglich genutzte Domain amuse.ai steht inzwischen zum Verkauf. Der Quellcode ist unter Apache-2.0-Lizenz auf Github verfügbar. Allerdings sind zwei externe Abhängigkeiten vorhanden, für die Interessierte offenbar Lizenzen erstehen müssen. Die Entwicklung ist damit faktisch zum Erliegen gekommen.

Der bisherige Stand lässt sich weiterhin nutzen. Jedoch sind die Fähigkeiten der verfügbaren KI-Modelle rasch veraltet, aktuelle Modelle liefern etwa mehr, korrektere und natürlichere Details. Amuse hat die Bedienung massiv vereinfacht und auch Hardware-Beschleunigung auf Prozessoren mit ausreichend potenter GPU oder NPU angeboten.

AMD wirbt inzwischen nicht mehr für Amuse, sondern prescht aktuell mit einer besseren Integration mit AMD ROCm 7.1.1 in ComfyUI vor. Dafür empfiehlt AMD etwa ein Ryzen AI Max+-System mit 128 GByte Speicher oder eine Radeon AI Pro R9700 in Verbindung mit 64 GByte RAM „für eine optimale Erfahrung“.

Die Alternative ComfyUI gibt es als Download für Windows, macOS oder als manuelle Installation über Github – die liefert auch die größte Unterstützung etwa für Nvidia, AMD, Intel, Apple Silicon oder Ascend mit. Auf der Release-Webseite von ComfyUI gibt es aber auch Portable-Versionen mit Optimierungen für AMD oder Nvidia, die keine Installation benötigen.

Das Web-Interface von ComfyUI ist für Umsteiger erst einmal gewöhnungsbedürftig, lässt sich jedoch nach kurzer Zeit ebenfalls einfach nutzen. Es stehen viel mehr Modelle als in Amuse zur Auswahl, insbesondere zahlreiche Videogeneratoren. Aber auch zur Klangerzeugung und zur Erstellung von KI-Bildern sind zahlreiche Modelle vorhanden. Die Installation etwa in der portablen Version ist ebenfalls ungewohnt. Fehlen Dateien für ein Modell, erscheint ein Dialog mit Schaltflächen zum Herunterladen. Davor steht in dem Dialog dann das Verzeichnis, in das die Datei unter dem „models“-Ordner des ComfyUI-Verzeichnisses gehört; dahin muss die jeweilige Datei einfach gespeichert werden.

Im Graphen auf dem Web-Interface kann man etwa den Prompt und Ausgabegröße in den einzelnen Elementen anpassen und dann die KI ihr Werk vollbringen lassen. Allerdings gelingt das etwa mit AMD Ryzen 7840HS/7640HS-Prozessoren mit ihren mit rund 10 TOPS „schnellen“ NPUs nicht, was unter Amuse kein Problem war. Allerdings waren die Prozessoren auch unter Amuse nicht offiziell unterstützt. Für die älteren Prozessoren bleibt also lediglich, bei Bedarf die ältere Software mit den veraltenden Modellen zu nutzen.

Weiterlesen nach der Anzeige


(dmk)



Source link

Weiterlesen

Beliebt