- Im PHP-Projekt wird derzeit ein RFC diskutiert, das die bisher komplexen und inkompatiblen PHP-eigenen Lizenzen sowie die Zend-Engine-Lizenz auf BSD 3-Clause (Modified BSD License) vereinheitlichen soll
- Der neue Lizenzstandard soll ab PHP 9.0 gelten; im gesamten Quellcode, in Headern und in der Dokumentation würde dann BSD 3-Clause verwendet, während frühere Sonderklauseln und markenbezogene Einschränkungen entfallen
- Durch OSI- und FSF-Zulassung sowie GPL-Kompatibilität wird rechtliche Klarheit geschaffen; die Rechte von Mitwirkenden und Nutzern bleiben dabei unverändert gewahrt
- Für die Lizenzänderung ist die offizielle Zustimmung der PHP Group und von Perforce Software (ehemals Zend) erforderlich; nach der Community-Diskussion folgt ein Verfahren mit mehr als 6 Monaten Diskussion und Abstimmung
- Die Änderung empfiehlt auch externen Projekten wie PECL/Erweiterungen die Wahl von BSD 3-Clause; die Bezeichnung „PHP-Lizenz“ wird nicht empfohlen
Überblick
- Das PHP-Projekt war lange Zeit durch seine eigenen Open-Source-Lizenzen und die Zend Engine License von Verwirrung und Kontroversen geprägt
- Besonders die Zend Engine License für Quellcode im Zend-Verzeichnis machte die Lage noch komplexer, da sie keine OSI-anerkannte Lizenz ist
- Dieses RFC schlägt eine praktische Vereinfachung der Lizenzierung vor, die das Urheberrecht aller PHP-Mitwirkenden bewahrt und Nutzern zugleich dieselben Rechte wie unter den bisherigen Lizenzen einräumt
- Ziel ist es, BSD 3-Clause (Modified BSD License) als neue offizielle Lizenz einzuführen, um Rechte und Nutzungsbedingungen beizubehalten und zugleich Komplexität und Missverständnisse zu reduzieren
Vorschlag und wichtigste Änderungen
- Im Kern geht es darum, neue Versionen der PHP License und der Zend Engine License zu veröffentlichen und damit die Modified BSD License (BSD-3-Clause, von OSI und FSF anerkannt) offiziell zu übernehmen
- Die bisherige PHP License (Version 3.01) und die Zend Engine License (Version 2.00) sind abgesehen von Sonderklauseln praktisch identisch mit der Modified BSD License; die grundlegenden Rechte ändern sich daher nicht
- Nach der Lizenzaktualisierung:
- keine Änderungen an den Rechten für Mitwirkende und Nutzer
- Entfernung gruppenspezifischer Sonderklauseln in Zusammenarbeit mit der PHP Group und Perforce Software
- PHP und Zend Engine werden unter einer OSI-anerkannten, GPL-kompatiblen Lizenz bereitgestellt
- Von der weiteren Nutzung der alten PHP License und Zend Engine License wird abgeraten
- Auch die Lizenz-Header in LICENSE-Dateien und im Quellcode werden durch das neue Format ersetzt
Zusammenfassung des Lizenztexts
- BSD 3-Clause erlaubt freies Kopieren, Modifizieren und Weiterverbreiten, enthält jedoch Bedingungen zu Urheberrechtshinweisen, Haftungsausschluss sowie zum Verbot unautorisierter Nutzung von Namen und Marken
- BSD-3-Clause ist eine von OSI (Open Source Initiative) und FSF anerkannte freie Softwarelizenz und GPL-kompatibel
Änderungsverfahren und Genehmigung
- Das RFC wird nach öffentlicher Diskussion in der Community per Abstimmung entschieden; nach offizieller Zustimmung und Abstimmung folgt die Umsetzung
- Die Lizenzänderung erfordert die offizielle Zustimmung der PHP Group und von Perforce Software
- Die Rechte früherer Quellcode-Mitwirkender bleiben unverändert erhalten; die Änderung verletzt keine bestehenden Rechte
- Der Community wird ein Diskussionszeitraum von mehr als 6 Monaten eingeräumt, bevor abgestimmt wird
- Die Änderung soll in PHP 9.0 offiziell übernommen werden
Hintergrund und historischer Kontext
- Die frühen Versionen PHP 1 und 2 standen unter GPL; später entwickelte sich das Projekt über die Apache-Lizenz und eine angepasste BSD-basierte Lizenz weiter
- Die Zend Engine behielt zwar eine separate Lizenz, wird heute jedoch faktisch als Teil eines untrennbaren gemeinsamen Projekts betrachtet
- Die Einschränkungen der bisherigen PHP-Lizenz bei der Nutzung des Namens sowie Klauseln zum Markenschutz haben wiederholt Probleme bei Kompatibilität und Distribution mit anderer Open-Source-Software verursacht
Auswirkungen auf bestehenden Code, Erweiterungen und Dokumentation
- Dieses RFC gilt für das gesamte php-src (ausgenommen Code mit explizit anderer Lizenz); auch PECL/Erweiterungen wird die Einführung von BSD 3-Clause empfohlen
- Betroffen ist sämtlicher Code in neuen und bestehenden PHP-Source-Repositories, der unter der PHP License oder Zend Engine License steht
- Bereits bestehende Lizenzen (z.B. timelib und anderer separat lizenzierter Code) sind von dieser Änderung nicht betroffen
- Das PHP-Handbuch bleibt weiterhin unter der Lizenz Creative Commons Attribution 3.0 oder höher
- Bestehende Erweiterungsmodule/Software erhalten die Wahlmöglichkeit, PHP License v4 (Modified BSD) zu verwenden
- Für künftige Erweiterungen und neue Projekte wird die Nutzung aktueller anerkannter Lizenzen wie BSD oder Apache empfohlen
Fazit
- Die Lizenzstruktur von PHP und Zend Engine wird auf 3-clause BSD vereinfacht, was Klarheit, Kompatibilität, kommerzielle Nutzungsmöglichkeiten und rechtliche Stabilität im Open-Source-Ökosystem stärken dürfte
- Wird der Vorschlag genehmigt und umgesetzt, können Nutzer PHP und Zend Engine nach den Bedingungen von BSD-3-Clause frei verwenden
- Nach Zustimmung von Mitwirkenden, Community und wichtigen Unternehmen sowie dem Abschluss des Abstimmungsverfahrens soll die Änderung offiziell in Kraft treten
1 Kommentare
Hacker-News-Kommentare
zval***) begegnet zu sein. Danach habe er mit PHP vieles gemacht und sogar als Gymnasiast bei Programmierwettbewerben im CLI-Umfeld mit PHP teilgenommen, sei damals aber ausgeschieden, weil die Betreuer mit Sprache und Umgebung nicht vertraut gewesen seien. Er drückt seine Dankbarkeit für die Möglichkeiten aus, die PHP ihm damals eröffnet habe.struct-Member könne man noch verstehen, doch zusätzliche Komplexität ohne Not sei unvernünftig. In Erinnerung bleibt der häufige Satz eines Bekannten: „Warum ist es nicht einfach?“