Im Gespräch mit Steffen Pingel

Eclipse Juno Highlight #5: Mylyn springt auf Eclipse 4.2

Viele interessante Neuerungen hat Eclipse Juno im Tooling-Bereich zu bieten. Eines der langjährigen Erfolgsprojekte in diesem Bereich ist Mylyn, mit dem die nötigen Arbeitsschritte bei der Projektentwicklung fokussiert werden können. Wir sprachen mit Projektentwickler Steffen Pingel über die Innovationen in Mylyn und den Umstieg auf die neue Plattform 4.2.

JAXenter: Mylyn ist ja inzwischen als Top-Level-Projekt breit aufgestellt bei Eclipse. Mindestens 8 Unterprojekte gibt es mittlerweile. Da stellt sich die Frage: Welche Projekte sind auch Teil des Eclipse Juno Release Train?

Steffen Pingel: Mylyn Commons, Mylyn Context und Mylyn Tasks sind bereits seit geraumer Zeit Teil des Release Trains. Im letzten Jahr sind Mylyn Builds und Mylyn Versions mit den Konnektoren für Hudson/Jenkins und einer Integration für EGit dazugekommen. Dieses Jahr haben wir noch Mylyn Reviews mit dem Konnektor für Gerrit aufgenommen und damit sind jetzt alle Mylyn Unterprojekte (mit Ausnahme vom Mylyn Inkubator) in Juno vertreten. Mit dem Juno Release haben Mylyn Builds, Mylyn Reviews und Mylyn Versions zudem den Inkubations-Status verlassen und sind jetzt als Version 1.0 verfügbar.

JAXenter: Was hat sich Neues im Eclipse Mylyn Kernprojekt getan?

Steffen Pingel: Seit dem Indigo Release haben wir die Integration der verschiedenen Komponenten verbessert. Hyperlinks zwischen Tasks, Builds und Reviews werden jetzt immer automatisch in den jeweiligen Editoren geöffnet, sodass man nicht mehr im Webbrowser landet, wenn man einen Link in Eclipse klickt. Besonders hilfreich finde ich auch den neuen Volltext-Index in der Task-Liste. Mit diesem kann man z.B. in Sekundenschnelle alle Kommentare der gespeicherten Tasks durchsuchen oder die Task-Liste filtern, sodass nur Tasks anzeigt werden, die einem bestimmten Benutzer zugeordnet sind.

Da wir im Mylyn Projekt mittlerweile sehr konsequent Gerrit für Code Reviews einsetzen, haben wir, um uns selbst die Arbeit zu erleichtern und basierend auf Rückmeldungen von Benutzern, Code Review Integration weiter verbessert. Verschiedene Iterationen einer Änderung lassen sich jetzt direkt in der IDE vergleichen, und eine eingebettete Baumstruktur ermöglicht die Navigation durch die Dateistruktur. Die Review-Kommentare können direkt im Compare Editor eingefügt werden, sodass sich die wesentlichen Arbeitsschritte von Gerrit Code Reviews direkt in Eclipse abbilden lassen.

Eine Vollständige Übersicht aller neuen Funktionen findet sich in unserem New & Noteworthy unter http://eclipse.org/mylyn/new/.

JAXenter: Mylyn machte bislang zumindest ja recht intensiv von einigen Interna der
Eclipse-3.x-Codebasis Gebrauch. Wie kamt ihr mit der Umstellung auf Eclipse 4.2 zurecht? Die wird ja mittels einer Kompatibilitätsschicht realisiert, die dann
problemlos funktioniert, wenn man nicht auf solche Interna zugreift.

Steffen Pingel: Wir waren erstaunt, wie gut die Kompatibilitätsschicht funktioniert hat, als wir erste Milestones von Eclipse 4.2 mit Mylyn getestet haben. Es gab allerdings auch einige Ecken und Kanten. Wir haben daher im letzten Jahr mit dem Plattform Team zusammengearbeitet, die uns hervorragend unterstützt haben. Teilweise wurden Fehler in der Plattform behoben, die bisher nicht aufgefallen waren, da Mylyn sich stärker integriert als viele andere Plug-ins, aber wir haben auch Änderungen in Mylyn vorgenommen und konnten mehrere Aufrufe von Internals durch APIs ersetzen.

Am schwierigsten war es, die Wiederherstellung von Editoren bei Aktivierung von Tasks für Eclipse 4 zu implementieren, da dies den Zugriff auf das neue Workbench API notwendig gemacht hat und sich die Schnittstellen grundlegend von Eclipse 3 unterscheiden. Es war uns wichtig, dass Mylyn sowohl weiterhin auf Eclipse 3.x funktioniert, als auch die gleiche Funktionalität unter 4.x bietet, und dass wir beide Plattformversionen mit einem Branch und einer Distribution bedienen können. Wir mussten einmal in die Trickkiste greifen, aber ich bin sehr froh, dass es uns am Ende rechtzeitig für das Juno Release gelungen ist, beide Eclipse-Versionen vollständig zu unterstützen.

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.