Inventage

Version Tiger


In der Entwicklung stützen wir uns täglich auf dutzende Tools, welche unsere Arbeit erleichtern. Eine bis jetzt offene Lücke haben wir mit Version Tiger geschlossen: Damit kann man nun auch für Rich Client Projekte Release-Builds automatisieren ohne eine semantisch präzise Versionierung der Komponenten vernachlässigen zu müssen. Dies eliminiert eine grosse Fehlerquelle und spart enorm Zeit.

Facts

  • Als Opensource (BSD) verfügbar auf GitHub und im Eclipse Marketplace
  • Mit GUI und Kommandozeilen-Tool für Batch-Scripts
  • Unterstützt individuelle Komponenten-Versionierung

Tech

Die individuelle Versionierung von dutzenden Maven-Projekten wird ohne gutes Werkzeug zur Qual, insbesondere von Tycho-Projekten mit OSGi-Metadaten. Hier springt Version Tiger ein: Es hilft in der Eclipse IDE Versionen zu vergeben, wenn der Entwickler APIs ändert, aber auch während eines Builds anhand von Batch-Scripten.

Da in Tycho-Projekten eine Versionsnummer immer im pom.xml und im Manifest.MF abgelegt ist und diese übereinstimmen müssen, ist die Anpassung einer Version von Hand mühsam. Dies aber auch deshalb, weil unter Umständen verschiedenste Abhängigkeiten angepasst werden müssen (Parent-Pom-Verlinkung, Require-Bundle, Features, Tycho-Categories, Product files).

Mit Version Tiger liegt nun ein Tool vor, mit dem man Batch-Scripte schreiben kann, um in der ganzen Applikation Versionsnummern anzupassen - sei dies die Umstellung auf Release-Nummern, eine Erhöhung auf die nächste Major-Version oder eine individuelle Versionierung von Komponenten. Auch lassen sich Maven-Properties mit Version Tiger setzen, damit die Versionsnummern weiter verwendet werden können.

Während Batch-Scripte in einem Release-Build nützlich sind, können sie den Entwickler aber auch während seiner täglichen Arbeit unterstützen. Da wir häufig semantische Versionen verwenden, sind wir der Ansicht, dass gerade während dem Entwickeln Versionsnummern richtig gestellt werden müssen und nicht erst beim Release. Hierzu bietet Version Tiger in der Eclipse IDE auch eine Integration, um via GUI Komponenten zu versionieren.

Version Tiger liegt als Opensource-Tool jedem zur Verfügung auf Github. Durch die Github-Community erhielten wir schon einige Bugfixes und Feature-Requests.

Testimonial

Der Version Tiger erlaubt mir viel schneller Releases zu bauen, ohne dass ich von Hand in die OSGi-Metadaten eingreifen muss. Neue Features gelangen somit häufiger und schneller zum Endkunden.

Dominik Businger (Azine IT Services AG)

Updates