Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cross-project-issues-dev] A future without source features?

Hi all,

I'd like to raise to general awareness a technical proposal for Platform and others, that I believe is worth progressively going mainstream as it's a noticeable simplification to multiple processes, and that is very likely to be achievable in a short timeframe.
Basically, the idea is to get rid of source features.
Indeed, source features are not so important artifacts per se, what really matters is making source bundles available at build-time (to include them in p2 repositories or products) and at dev-time (to make them available in the IDE).
But nowadays, none of those do require source features: Tycho now has a cool "includeAllSources" flag on the tycho-p2-repository-plugin that allows to (drumroll) include all sources available from the reactor or the target-platform for each bundle of the resulting p2 repository; and PDE already has capability to find locally available source bundles in the .target or the installation path and will soon have ability to resolve more source bundles from target-platform on demand: Moreover, the m2e intergration with PDE makes that source bundles also become available locally when the artifact originates from a Maven repository.
All that make that instead of managing source feature artifact, we have workflows to make source features available to the user basically with just 1 flag at build time. On Platform, this would allow to avoid lots of "touch" commits when an external version of a dependency changes; we can stop listing transitive deps in feature.xml (p2 resolves them) but still have their source bundles in p2 repo (Tycho adds them).

Of course, things are rarely perfect on 1st shot; but the more people try to make it perfect, the more it is likely to become so. To get there, anyone interested please consider trying those new capabilities and report issues. In the best case, you may be able to get rid of source features and some build customization; in the worst case you'll report issue.

Mickael Istria
Eclipse IDE developer, for Red Hat Developers

Back to the top