<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Benjamin Cabé &#187; p2</title>
	<atom:link href="http://blog.benjamin-cabe.com/tag/p2/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.benjamin-cabe.com</link>
	<description>Eclipse, the birds and yo momma</description>
	<lastBuildDate>Wed, 17 Mar 2010 09:21:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Equinox p2: Large Scale Deployment</title>
		<link>http://blog.benjamin-cabe.com/2009/02/03/equinox-p2-large-scale-deployment</link>
		<comments>http://blog.benjamin-cabe.com/2009/02/03/equinox-p2-large-scale-deployment#comments</comments>
		<pubDate>Tue, 03 Feb 2009 09:19:04 +0000</pubDate>
		<dc:creator>Benjamin Cabé</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[deployment]]></category>
		<category><![CDATA[equinox]]></category>
		<category><![CDATA[ganymede]]></category>
		<category><![CDATA[p2]]></category>

		<guid isPermaLink="false">http://blog.benjamin-cabe.com/?p=453</guid>
		<description><![CDATA[Last year&#8217;s Eclipse release (Ganymede) came with a new provisioning platform called p2. For years, Eclipse has been shipped along with a component called the &#8220;Update Manager&#8221;, which allowed users to easily update their Eclipse installations. Nevertheless, year after year, and especially when Eclipse 3.0 came out, it has become much more than just an [...]]]></description>
			<content:encoded><![CDATA[<p>Last year&#8217;s Eclipse release (Ganymede) came with a new provisioning platform called p2. For years, Eclipse has been shipped along with a component called the &#8220;Update Manager&#8221;, which allowed users to easily update their Eclipse installations. Nevertheless, year after year, and especially when Eclipse 3.0 came out, it has become much more than just an IDE: it is now a software platform, built on top of Equinox (the reference implementation of the OSGi specification).</p>
<p>Thus, deployment needs are not limited to installing and updating only plug-ins anymore. People building software on top of Eclipse need to be able to deliver an installer for their product, which may come with a license manager which needs provisioning too, they need to have their own UI for the updating process, &#8230; and p2 answers to virtually all these needs.</p>
<h2>p2: a provisioning platform&#8230;</h2>
<p>To be able to provision virtually everything, the main strength of p2 is to have no a priori knowledge of the way Eclipse plug-ins or even Java applications must be handled. It&#8217;s indeed a very light framework to describe the parts that are to be installed (the Installable Units), and how they depend on each other. p2 comes with some basic instructions about how an OSGi bundle or an Eclipse product should be installed, but nothing else.</p>
<p>It&#8217;s up to the software vendor who wants to deliver, let&#8217;s say, a Windows executable program (which may require adding keys to the registry, or icons on the desktop, for instance) together with its Eclipse RCP application, to write the code (in fact, a p2 plug-in!) to explain p2 how this particular Installable Unit should be handled when provisioned in a given system.</p>
<h2>&#8230; and, the next deployment standard?</h2>
<p>Of course, although p2 is still a very young project, and may not seem mature enough for industrial usage. It is still not 100% reliable yet and lacks tooling, but the quality of this very first release is still pretty high. Since it was released, p2 has started gathering a community which is leveraging p2 in other domains than just the Eclipse project itself. Software companies like Cloudsmith, EclipseSource and Anyware Technologies are already developing tools on top of p2 ; and IBM, among others, is working hard to improve the p2 core and design a clear API.</p>
<p>The massive adoption of OSGi in many different areas (Eclipse runtime technologies like Equinox itself or RAP, applications servers like Websphere or Glassfish, etc.) will definitely make p2 the smartest way to deploy not only Eclipse-based applications, but any sort of scalable application as well. Indeed, when high availability is an important requirement (in other words &#8212; almost always), then you need to be able to dynamically install new modules into the running system, update existing ones, sometimes even do this remotely.</p>
<p>Since there is currently no real sustainable alternative for industrial deployments – did you ever try to use Java Web Start for more than just a very simple Swing or RCP application? – p2 will probably come up as a de facto provisioning technology standard.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benjamin-cabe.com/2009/02/03/equinox-p2-large-scale-deployment/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Update sites Eclipse</title>
		<link>http://blog.benjamin-cabe.com/2008/11/14/update-sites-eclipse</link>
		<comments>http://blog.benjamin-cabe.com/2008/11/14/update-sites-eclipse#comments</comments>
		<pubDate>Fri, 14 Nov 2008 16:01:50 +0000</pubDate>
		<dc:creator>Benjamin Cabé</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[galileo]]></category>
		<category><![CDATA[ganymede]]></category>
		<category><![CDATA[mise à jour]]></category>
		<category><![CDATA[p2]]></category>
		<category><![CDATA[site]]></category>
		<category><![CDATA[update]]></category>

		<guid isPermaLink="false">http://blog.benjamin-cabe.com/?p=394</guid>
		<description><![CDATA[Parce que j&#8217;en ai marre de galérer à chaque fois que je veux retrouver les URLs des entrepôts p2 d&#8217;Eclipse 3.4, ou des builds d&#8217;intégration de la 3.5, les voici&#8230; Update Site Update Site URL Integration builds toward 3.5 http://download.eclipse.org/eclipse/updates/3.5-I-builds Nightly builds toward 3.5 http://download.eclipse.org/eclipse/updates/3.5-N-builds 3.5 milestones http://download.eclipse.org/eclipse/updates/3.5milestones Maintenance builds toward 3.4.x http://download.eclipse.org/eclipse/updates/3.4.x 3.4.x releases [...]]]></description>
			<content:encoded><![CDATA[<p>Parce que j&#8217;en ai marre de galérer à chaque fois que je veux retrouver les URLs des entrepôts p2 d&#8217;Eclipse 3.4, ou des builds d&#8217;intégration de la 3.5, les voici&#8230;</p>
<table border="1" cellspacing="0" cellpadding="3" align="center">
<tbody>
<tr>
<th>Update Site</th>
<th>Update Site URL</th>
</tr>
<tr>
<td><strong>Integration builds toward 3.5</strong></td>
<td><a class="external free" title="http://download.eclipse.org/eclipse/updates/3.5-I-builds" rel="nofollow" href="http://download.eclipse.org/eclipse/updates/3.5-I-builds">http://download.eclipse.org/eclipse/updates/3.5-I-builds</a></td>
</tr>
<tr>
<td><strong>Nightly builds toward 3.5</strong></td>
<td><a class="external free" title="http://download.eclipse.org/eclipse/updates/3.5-N-builds" rel="nofollow" href="http://download.eclipse.org/eclipse/updates/3.5-N-builds">http://download.eclipse.org/eclipse/updates/3.5-N-builds</a></td>
</tr>
<tr>
<td><strong>3.5 milestones</strong></td>
<td><a class="external free" title="http://download.eclipse.org/eclipse/updates/3.5milestones" rel="nofollow" href="http://download.eclipse.org/eclipse/updates/3.5milestones">http://download.eclipse.org/eclipse/updates/3.5milestones</a></td>
</tr>
<tr>
<td><strong>Maintenance builds toward 3.4.x</strong></td>
<td><a class="external free" title="http://download.eclipse.org/eclipse/updates/3.4.x" rel="nofollow" href="http://download.eclipse.org/eclipse/updates/3.4.x">http://download.eclipse.org/eclipse/updates/3.4.x</a></td>
</tr>
<tr>
<td><strong>3.4.x releases</strong></td>
<td><a class="external free" title="http://download.eclipse.org/eclipse/updates/3.4" rel="nofollow" href="http://download.eclipse.org/eclipse/updates/3.4">http://download.eclipse.org/eclipse/updates/3.4</a></td>
</tr>
<tr>
<td><strong>3.5.x releases</strong></td>
<td><a class="external free" title="http://download.eclipse.org/eclipse/updates/3.5" rel="nofollow" href="http://download.eclipse.org/eclipse/updates/3.5">http://download.eclipse.org/eclipse/updates/3.5</a></td>
</tr>
</tbody>
</table>
<p><strong><span style="text-decoration: underline;">Attention</span></strong>, ces entrepôts ne sont pas ceux de Ganymede et de Galileo, ils contiennent simplement le SDK Eclipse !</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benjamin-cabe.com/2008/11/14/update-sites-eclipse/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Présentation p2 @ Eclipse Now You Can</title>
		<link>http://blog.benjamin-cabe.com/2008/10/21/presentation-p2-eclipse-now-you-can</link>
		<comments>http://blog.benjamin-cabe.com/2008/10/21/presentation-p2-eclipse-now-you-can#comments</comments>
		<pubDate>Tue, 21 Oct 2008 20:43:11 +0000</pubDate>
		<dc:creator>Benjamin Cabé</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[p2]]></category>
		<category><![CDATA[platform]]></category>
		<category><![CDATA[présentation]]></category>
		<category><![CDATA[provisioning]]></category>
		<category><![CDATA[slides]]></category>

		<guid isPermaLink="false">http://blog.benjamin-cabe.com/?p=340</guid>
		<description><![CDATA[Voici les transparents de la présentation de p2 que j&#8217;ai réalisée aujourd&#8217;hui lors de l&#8217;évènement Eclipse Now You Can, à Paris. L&#8217;objectif était de présenter les défauts de l&#8217;ancien mécanisme de gestion des mises à jour d&#8217;Eclipse (l&#8217;Update Manager), et d&#8217;indiquer comment ils sont corrigés par son remplaçant : p2. Il est important de comprendre [...]]]></description>
			<content:encoded><![CDATA[<div style="text-align: left; ">Voici les transparents de la présentation de <strong>p2</strong> que j&#8217;ai réalisée aujourd&#8217;hui lors de l&#8217;évènement Eclipse Now You Can, à Paris.</div>
<div style="text-align: left; "></div>
<div style=" text-align: center;"><object width="425" height="355" data="http://static.slideshare.net/swf/ssplayer2.swf?doc=p2export-1224618845638332-8&amp;stripped_title=p2-the-new-eclipse-provisioning-system-presentation" type="application/x-shockwave-flash"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=p2export-1224618845638332-8&amp;stripped_title=p2-the-new-eclipse-provisioning-system-presentation" /><param name="allowfullscreen" value="true" /></object></div>
<div style="text-align: left; "></div>
<div style="text-align: left; ">L&#8217;objectif était de présenter les défauts de l&#8217;ancien mécanisme de gestion des mises à jour d&#8217;Eclipse (l&#8217;<strong>Update Manager</strong>), et d&#8217;indiquer comment ils sont corrigés par son remplaçant : p2.</div>
<div style="text-align: left; "></div>
<div style="text-align: left; ">Il est important de comprendre que <strong>p2 </strong>est à la fois un <strong>outil </strong>&#8220;fini&#8221; utilisable par tout développeur voulant simplifier la gestion de ses installations Eclipse, mais aussi –et surtout– une <strong>plateforme</strong> tout à fait générique pour adresser les multiples problématiques liées au <strong>déploiement </strong>(et pas nécessairement dans un contexte pur Eclipse&#8230;)</div>
<div style="text-align: left; "></div>
<div style="text-align: left; ">Enfin, j&#8217;ai énuméré une (petite) partie des évolutions en cours de développement pour la prochaine version d&#8217;Eclipse (Galileo) : définition d&#8217;une véritable <strong>API</strong> p2, amélioration de l&#8217;<strong>utilisabilité</strong>, création d&#8217;outils pour gérer les entrepôts p2, etc.</div>
<div style="text-align: left; ">
<hr /></div>
<div style="text-align: left; "><em><strong>NDR : il est possible que votre aggrégateur de flux RSS n&#8217;affiche pas correctement l&#8217;animation Flash contenant les slides de la présentation, auquel cas je vous invite à consulter ce post directement sur le blog !</strong></em></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.benjamin-cabe.com/2008/10/21/presentation-p2-eclipse-now-you-can/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Mirroring p2</title>
		<link>http://blog.benjamin-cabe.com/2008/07/09/mirroring-p2</link>
		<comments>http://blog.benjamin-cabe.com/2008/07/09/mirroring-p2#comments</comments>
		<pubDate>Wed, 09 Jul 2008 20:41:42 +0000</pubDate>
		<dc:creator>Benjamin Cabé</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[ganymede]]></category>
		<category><![CDATA[mirroring]]></category>
		<category><![CDATA[p2]]></category>

		<guid isPermaLink="false">http://blog.benjamin-cabe.com/?p=193</guid>
		<description><![CDATA[Une des fonctionnalités apportées par p2 est de pouvoir facilement créer des miroirs d&#8217;entrepôts de métadonnées et d&#8217;artefacts. J&#8217;essaierai de préciser dans les jours à venir quelques notions clés de p2 comme celles-ci ; mais en attendant, vous pouvez d&#8217;ores et déjà —coucou David !— réaliser un miroir de l&#8217;entrepôt Ganymede, et le partager avec vos [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.flickr.com/photos/camil_t/82021585/"><img style="float:left; margin-right:15px; " title="miroir" src="http://blog.benjamin-cabe.com/wp-content/uploads/2008/07/82021585_22046a7621_m.jpg" alt="Miroir" width="160" height="240" /></a>Une des fonctionnalités apportées par p2 est de pouvoir facilement créer des <strong>miroirs</strong> d&#8217;entrepôts de métadonnées et d&#8217;artefacts.</p>
<p>J&#8217;essaierai de préciser dans les jours à venir quelques notions clés de p2 comme celles-ci ; mais en attendant, vous pouvez d&#8217;ores et déjà —<em>coucou David !</em>— réaliser un miroir de l&#8217;entrepôt Ganymede, et le partager avec vos collègues !<br />
D&#8217;ailleurs, cela me fait penser qu&#8217;il faudrait que je vérifie si celui que j&#8217;ai fait à Anyware est bien d&#8217;équerre&#8230; <img src='http://blog.benjamin-cabe.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p>Le miroir de l&#8217;entrepôt d&#8217;artéfacts (i.e. les binaires des plug-ins et des features) se réalise de la façon suivante :</p>
<p>[sourcecode language='java']./eclipse -nosplash<br />
-application org.eclipse.equinox.p2.artifact.repository.mirrorApplication<br />
-source http://download.eclipse.org/releases/ganymede<br />
-destination file:/home/benjamin/miroirArtefactsGanymede[/sourcecode]</p>
<p>Même principe pour celui de métadonnées (basiquement, ce sont les descriptions des dépendances entre chaque élément de l&#8217;entrepôt)</p>
<p>[sourcecode language='java']./eclipse -nosplash<br />
-application org.eclipse.equinox.p2.metadata.repository.mirrorApplication<br />
-source http://download.eclipse.org/releases/ganymede<br />
-destination file:/home/benjamin/miroirMetadonneesGanymede[/sourcecode]</p>
<p><span style="text-decoration: underline;"><em>Nota :</em></span> Il n&#8217;est à l&#8217;heure actuelle pas possible de descendre dans le même dossier local les deux entrepôts, mais vous pouvez tout à faire la manip&#8217; manuellement. Il suffit de recopier le fichier <span style="font-family: courier new,courier;">content.xml</span> de l&#8217;entrepôt de métadonnées à côté du fichier <span style="font-family: courier new,courier;">artifacts.xml</span> de celui d&#8217;artéfacts, et le tour sera joué !</p>
<p><em><span style="text-decoration: underline;">Nota2 :</span></em> <strong>Attention</strong>, le mirroring des artéfacts est <span style="text-decoration: underline;"><strong>très</strong></span> long (plusieurs heures). En effet, on demande bien à ne répliquer qu&#8217;un et un seul miroir, et on ne peut donc pas bénéficier du téléchargement simultanés de plusieurs artéfacts depuis plusieurs miroirs (parfois très rapides) comme cela peut se faire dans l&#8217;utilisation habituelle de p2&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benjamin-cabe.com/2008/07/09/mirroring-p2/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Update site Ganymede</title>
		<link>http://blog.benjamin-cabe.com/2008/04/22/update-site-ganymede</link>
		<comments>http://blog.benjamin-cabe.com/2008/04/22/update-site-ganymede#comments</comments>
		<pubDate>Tue, 22 Apr 2008 08:36:12 +0000</pubDate>
		<dc:creator>Benjamin Cabé</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[ganymede]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[p2]]></category>
		<category><![CDATA[update site]]></category>

		<guid isPermaLink="false">http://blog.benjamin-cabe.com/?p=158</guid>
		<description><![CDATA[J&#8217;ai été très mauvaise langue avec certains de mes collègues en leur conseillant de rester à la version 3.4 M5 d&#8217;Eclipse, p2 fonctionnant très mal sur la M6. Et bien, je retire tout ce que j&#8217;ai dit —pour l&#8217;instant En effet, depuis quelques jours, tous les packages M6 de Ganymede sont disponibles, et on peut [...]]]></description>
			<content:encoded><![CDATA[<p>J&#8217;ai été très mauvaise langue avec certains de mes collègues en leur conseillant de rester à la version <strong>3.4 M5</strong> d&#8217;Eclipse, <strong>p2 </strong>fonctionnant très mal sur la M6.</p>
<p>Et bien, je retire tout ce que j&#8217;ai dit —pour l&#8217;instant <img src='http://blog.benjamin-cabe.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>En effet, depuis quelques jours, tous les <a title="Phoenix" href="http://phoenix.eclipse.org/packages/" target="_blank">packages M6 de Ganymede</a> sont disponibles, et on peut donc mettre à jour son environnement grâce à l&#8217;<strong>update-site</strong> suivant :</p>
<blockquote>
<p style="text-align: center;font-size:1.2em;color:black;"><strong>http://download.eclipse.org/releases/ganymede/</strong></p>
</blockquote>
<p style="text-align: left;">Ceci dit, tout n&#8217;est pas encore parfait : l&#8217;update-site semble assez chargé ce matin et on se prend aléatoirement des &#8220;Connection timed out&#8221; dans les dents&#8230;</p>
<p style="text-align: left;">Affaire à suivre, donc&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benjamin-cabe.com/2008/04/22/update-site-ganymede/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse 3.4 M6 &#8211; API Freeze !</title>
		<link>http://blog.benjamin-cabe.com/2008/04/05/eclipse-34m6-api-freeze</link>
		<comments>http://blog.benjamin-cabe.com/2008/04/05/eclipse-34m6-api-freeze#comments</comments>
		<pubDate>Sat, 05 Apr 2008 17:48:38 +0000</pubDate>
		<dc:creator>Benjamin Cabé</dc:creator>
				<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[3.4]]></category>
		<category><![CDATA[equinox]]></category>
		<category><![CDATA[jdt]]></category>
		<category><![CDATA[m6]]></category>
		<category><![CDATA[p2]]></category>
		<category><![CDATA[pde]]></category>

		<guid isPermaLink="false">http://blog.benjamin-cabe.com/?p=64</guid>
		<description><![CDATA[Avec quelques jours de retard (il semblerait que l&#8217;intégration de p2 ait été assez laborieuse…) voici la cuvée M6 d&#8217;Eclipse 3.4 ! Comme pour chaque milestone, voici les nouveautés qui ont particulièrement retenu mon attention : Equinox Beaucoup de sous-projets qui étaient jusqu&#8217;alors en incubation ont été gradés et font donc maintenant partie du projet [...]]]></description>
			<content:encoded><![CDATA[<p><img style="float:right; margin-left:10px;" src="http://farm1.static.flickr.com/35/63823366_09a98f465e_m.jpg" alt="Noteworthy" />Avec quelques jours de retard (il semblerait que l&#8217;intégration de p2 ait été assez laborieuse…) voici la cuvée M6 d&#8217;Eclipse 3.4 !</p>
<p>Comme pour chaque milestone, voici les <strong>nouveautés</strong> qui ont particulièrement retenu mon attention :</p>
<h2><strong>Equinox</strong></h2>
<p>Beaucoup de sous-projets qui étaient jusqu&#8217;alors en incubation ont été gradés et font donc maintenant partie du projet Equinox &#8220;officiel&#8221;, et sont ainsi accessibles aux utilisateurs du SDK Eclipse. Parmi ces projets :</p>
<ul>
<li><strong>p2</strong> (prononcer <em>pitou</em> !). Pour faire (très) court : le mécanisme antédiluvien d&#8217;installation et de mises à jours de &#8220;features&#8221; a été totalement refondu. C&#8217;est <strong>la</strong> nouveauté de cette milestone, et je serai amené à en parler plus en détail très prochainement !</li>
<li><strong><a title="Equinox Security (wiki Eclipse)" href="http://www.eclipse.org/equinox/incubator/security/" target="_self">Equinox Security</a></strong>. L&#8217;idée est de faciliter l&#8217;intégration de mécanismes de gestion de la sécurité (authentification, autorisation, …) dans Eclipse. Le <a title="Equinox Security (DRAFT 3.4 Plan)" href="http://www.eclipse.org/equinox/incubator/security/plan.php" target="_blank">plan pour la 3.4</a> comprend les items suivants :
<ul>
<li>intégration de fournisseurs de sécurité Java</li>
<li>framework d&#8217;authentification utilisateur</li>
<li>gestion des certificats utilisateur (gestion de mots de passe, clés, …)</li>
<li>support de l&#8217;autorisation de code des bundles (à l&#8217;installation, au chargement, à l&#8217;exécution…)</li>
</ul>
</li>
</ul>
<h2><strong>PDE</strong></h2>
<ul>
<li>Le projet incubatoire <strong>API Tooling</strong> a lui aussi été promu, et est maintenant intégré à Eclipse.<br />
Le principe de ce projet est de mettre à la portée du développeur un certain nombres d&#8217;annotations Java et de processeurs associés afin de faciliter la documentation et la maintenance d&#8217;une API. On peut <a rel="lightbox" href="http://blog.benjamin-cabe.com/wp-content/uploads/2008/04/pde-api-problems.png">par exemple</a> utiliser une annotation <code>@noreference</code> lorsque l&#8217;on veut indiquer qu&#8217;une méthode (définie dans une classe abstraite, par exemple) ne doit pas être appelée par les &#8220;clients&#8221;. A l&#8217;heure actuelle, ce genre de contrainte était tant bien que mal explicité dans la javadoc de la méthode (&#8220;Clients must not call this method&#8221; &#8230;), et le moins qu&#8217;on puisse dire c&#8217;est que ce n&#8217;était pas très formel, et encore moins exploitable de manière automatique.<br />
En outre, API Tooling peut détecter tout un tas d&#8217;erreurs auxquelles tout le monde à un jour où l&#8217;autre été confronté, comme par exemple la définition d&#8217;une méthode dans une interface exportée, qui retourne un type qui lui n&#8217;est pas exporté par le bundle ; ou, mieux, détecter la rupture possible de compatibilité lors de l&#8217;évolution d&#8217;une API (ajouter une méthode à une interface rend caduques toutes les classes concrètes qui n&#8217;implémentant pas encore cette méthode&#8230;)</li>
<li><a rel="lightbox" href="http://blog.benjamin-cabe.com/wp-content/uploads/2008/04/pde-schemaid2.png">Nouvel attribut de type &#8220;id&#8221;</a> dans les schémas de points d&#8217;extension. J&#8217;en ai déjà parlé <a href="http://blog.benjamin-cabe.com/2008/02/18/pde-ui-guys-rock">ici</a>, et suis toujours aussi enthousiaste vis-à-vis de cette nouvelle feature <img src='http://blog.benjamin-cabe.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' />  .</li>
</ul>
<h2>Platform / SWT</h2>
<ul>
<li>API pour avoir des <strong><a rel="lightbox" href="http://download.eclipse.org/eclipse/downloads/drops/S-3.4M6-200803301350/images/colored-labels.png">labels &#8220;multicolores&#8221;</a> dans les arbres et les tables</strong>. Depuis l&#8217;avénèment de la 3.4, vous aviez tous remarqué que <a rel="lightbox" href="http://download.eclipse.org/eclipse/downloads/drops/S-3.4M6-200803301350/images/colored-labels.png">la vue qui affiche les résultats d&#8217;une recherche</a>, par exemple, était désormais beaucoup plus sexy, grâce à l&#8217;utilisation de différentes couleurs. Ceux qui avaient essayé d&#8217;intégrer cela dans leur propre plug-ins avaient alors pu se rendre compte qu&#8217;il n&#8217;y avait pour l&#8217;instant pas de quoi manipuler simplement ces couleurs depuis la couche JFace. C&#8217;est désormais possible ! <code>StyledCellLabelProvider</code> est la classe abstraite à étendre pour avoir le support de cette nouvelle fonctionnalité ; <code>IStyledLabelProvider</code> permettant de venir enrichir un LabelProvider qui auraient déjà une super-classe. A noter que cela ne se résume pas qu&#8217;aux couleurs d&#8217;avant et d&#8217;arrière-plan puisque l&#8217;on peut également souligner, encadrer, mettre en gras, &#8230; certains tronçons de son label !</li>
<li><strong>Partage de projet CVS</strong>. Une <a rel="lightbox" href="http://blog.benjamin-cabe.com/wp-content/uploads/2008/04/new-option-when-sharing1.png">nouveauté</a> toute bête mais trèèès pratique : on peut maintenant, lors du partage d&#8217;un projet CVS, venir simplement choisir le module dans lequel on veut que notre projet vienne se rajouter, et un sous-module du nom de notre projet Eclipse sera automatiquement créé !</li>
</ul>
<h2>JDT</h2>
<ul>
<li>Possibilité d&#8217;<a rel="lightbox" href="http://blog.benjamin-cabe.com/wp-content/uploads/2008/04/junit-time.png">afficher le temps d&#8217;exécution des tests unitaires JUnit</a> (une nouveauté rendue possible grâce à la nouvelle API <code>IStyledLabelProvider</code>).</li>
<li>Un nouveau &#8220;Quick Assist&#8221; permet de <a rel="lightbox" href="http://blog.benjamin-cabe.com/wp-content/uploads/2008/04/message-format-quick-assist.png">convertir une succession de concaténations</a> de chaînes faite avec des &#8220;+&#8221; en une utilisation, plus intelligente, de la classe <code>MessageFormat</code>.</li>
<li>La fonctionnalité &#8220;Export As Runnable Jar&#8221; peut désormais <a rel="lightbox" href="http://blog.benjamin-cabe.com/wp-content/uploads/2008/04/runnable-jar.png">créer le script de build Ant</a> qui permet d&#8217;obtenir le Jar exécutable en question.</li>
</ul>
<p>Pour les curieux, le <strong>New &amp; Noteworthy</strong> complet est <a href="http://download.eclipse.org/eclipse/downloads/drops/S-3.4M6-200803301350/eclipse-news-M6.html">ici</a> !</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.benjamin-cabe.com/2008/04/05/eclipse-34m6-api-freeze/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
