Community
Participate
Working Groups
User story: as a Maven plugin developer, I want to be able to define new project packaging types that build Eclipse/OSGi/P2 artifacts and be able to use these projects as dependencies of Tycho projects, i.e. bundles, features, repositories, products, etc. This will implemented as new extensions interface tentatively called DependencyMetadataProvider public interface DependencyMetadataProvider { public void setupProjects(MavenSession session, MavenProject project, ReactorProject reactorProject); } DependencyMetadataProvider.setupProjects will be called as part of TargetPlatformResolver.setupProjects to give external Tycho plugins the chance to declare preliminary dependency-only p2 metadata that will be used to establish reactor build order. Full p2 metadata will be generated by the custom Tycho plugin as part of normal mojo execution and "published" to the reactor p2 metadata (details to be defined). As a proof of the new API, tycho-source-plugin will be refactored to use the new API and all references to source bundles will be removed from tycho-core, specifically from P2TargetPlatformResolver.setupProjects.
First part is done. Thirdparty code is now able to contribute additional p2 metadata to reactor project via new P2MetadataProvider component interface. http://git.eclipse.org/c/tycho/org.eclipse.tycho.git/commit/?id=dc9f2851d25a7d4650e3d2d267faa67f2f355205
move all open bugs to post 0.14.0
Tycho focuses on standard packaging types and encourage standardization. Alternative packaging types should be exposed to the mailing-list for consideration (shouldn't they be directly part of Tycho directly?) before Tycho starts publishing such APIs and deal with the extra maintenance cost they generate.