Salut a tous,
A l'EclipseDay a Grenoble, on a pas mal discute de l'interaction
entre Tycho, p2, R5, OBR, Maven & cie. La tendance, d'apres ce
que j'ai compris, est de rendre possible le developpement
MANIFEST-first pour des bundles OSGi comme le permet Tycho, mais de
s'ouvrir aux repos standards OSGI plutot que de se bloquer dans les
repos p2. Pour ceux avec qui on en a parle, voici un truc assez
interessant qui est a mon avis un premier pas en avant pour R5 dans
le monde Eclipse.
https://github.com/bndtools/bindex . Ce projet permet de creer tres
simplement les metadatas R5 pour un set de bundles. Puisque ce
projet est tres simple a manipuler, il est donc simple de l'utiliser
dans un plugin pour PDE ou Maven afin de le plugger dans votre build
Tycho.
Au final, avec un minimum d'effort, il devient facile lorsqu'on
utilise Tycho de produire un repository conforme a la fois a p2 et
aux specs OSGi R5.
Par contre, Tycho ne saura pas le consommer directement, il ne
comprend pour l'instant p2 ou les mechanismes Maven (en configurant
pomDependency=consider de Tycho ou en utilisant le plugin Nexus qui
fait ca bien
https://docs.sonatype.org/display/Nexus/Nexus+OSGi+Experimental+Features+-+P2+Repository+Plugin
).
Ceci dit, il "suffit" d'ecrire la transfo des metadata R5 vers p2,
et le tour est joue! Il me semble, peut-etre a tort, que R5 inclut
une bonne partie de p2, donc la transfo doit etre en partie
realisable (avec des limitations sur ce qui est features &
products j'imagine, mais ce sont des specificites Eclipse qui ne
toucheront pas trop le monde du OSGi plus fondamental). Une fois que
quelqu'un l'a ecrite, il reste a la plugger dans les endroits les
plus sympas: Tycho, p2... p2 est surement le meilleur choix car si
p2 est automatiquement capable de transformer les repos R5 en repo
p2 pour les utiliser a l'installation, alors Eclipse et Tycho en
heriteront automatiquement.
J'espere qu'il y en a un qui va craquer dans la liste et nous
implementer ca dans les semaines qui viennet ;) Si vous vous lancez
la-dedans, pensez a le faire savoir. Pensez aussi a choisir une
license Eclipse-friendly (Apache ou EPL) si vous voulez que ca
rentre dans les communautes.
En attendant, si ces sujets vous interessent et que vous avez
Twitter, voici les personnes a suivre imperativement:
https://twitter.com/nbartlett https://twitter.com/fhuberts
|