Schon öfters wurde im Contenido Forum die Frage gestellt, wie behandle ich die Vergabe von Versionsnummern bei eigenen Modulen und PlugIns.
Da es vom Hersteller 4fb dazu nur wenig Aussagen gibt, habe ich mich hingesetzt und im Netz vorhandene Informationen und die mir vorliegenden Informationen seitens 4fb gebündelt.
Von 4fb gibt es eine sogenannte Coding Convention, in welcher ganz kurz erläutert wird, wie sich 4fb eine Versionsnummer vorstellt.
Darüberhinaus soll eine manuelle Versionierung vorgenommen werden:
@version 1.0.0
Wobei die führende Nummer die Version, die mittlere Zahl ein neues Feature oder eine neue
Methode und die letzte Nummer einen Bugfix oder kleine Modifikationen kennzeichnet.Quelle: Coding Conventions zu Contenido ©4fb
Etwas ausführlicher gibt es dazu auch eine Erläuterung auf Wikipedia.
- Eine Hauptversionsnummer (englisch: major release) indiziert meist äußerst signifikante Änderung am Programm – zum Beispiel wenn das Programm komplett neu geschrieben wurde (zum Beispiel GIMP 1.x nach 2.x) oder sich bei Bibliotheken keine Schnittstellenkompatiblität aufrechterhalten lässt.
- Eine Nebenversionsnummer (englisch: minor release) bezeichnet meistens die funktionelle Erweiterung des Programms.
- Eine Revisionsnummer (englisch: patch level) enthält meist Fehlerbehebungen.
Quelle: Versionsnummer auf Wikipedia
Eine zusätzliche Build-Nummer muss man, meiner Meinung nach, nicht verwenden, diese würde ich nur bei großen Projekten und dann auch nur im Zusammenhang mit SnapShots aus einer Versionsverwaltung (CVS, SVN, etc.) verwenden.
Bleibt als Letztes noch die Möglichkeit einen zusätzlichen Status über eine Ergänzung mit zu geben. Hier wird oftmals ein Alpha- oder Beta-Status angegeben, aber auch RC (Release Candidat), Release oder Patch/-level sind mögliche Ergänzungen.
Ich persönlich unterscheide bei Versionsnummer auch noch auf Projekt und Dateiebene. So kann mein Modul oder Plugin z.B. die Version 2.1.2 haben, eine dazu benötigte externe Datei, z.B. eine Klasse, aber eine ganz andere Versionsnummer.
Man darf die Versionierungsnummer nur nicht mit der Revisionsnummer aus einer Versionsverwaltung verwechseln. Diese ist ja bekanntlich eine fortlaufende Nummer, die bei jeder Änderung hochgezählt wird.
Beispiele für Versionsnummern:
- V 2.6.12 Beta
- v0.3.0 oder in dem Fall v0.3
- MeinModul 1.1 RC
Ich hoffe damit ein bisschen Licht ins Dunkel der Versionsnummer gebracht zu haben, wobei es dafür (leider) keinerlei Normung gibt, und es somit Jedem überlassen ist sein eigenes Versionierungsnummernsystem zu etablieren.
zu 1. Garnicht. Es gibt in Contenido dafür noch keine Funktionen.
zu 2. Nein!
Gruß Ortwin
Das wäre dann eine Angabe wie sie weltweit üblich ist.
Interessant wäre allerdings folgendes:
1. Inwiefern hat Contenido mit den Versionsnummern der Module zu tun bzw. kan damit umgehen?
2. Gibt es seitens 4fb eine Vorgabe zum Anfangen mit Version 0 (bei Linux üblich) oder Version 1 (bei Windows üblich, das erste fertige Release)