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
https://tycho.eclipseprojects.io/doc/latest/tycho-p2/tycho-p2-repository-plugin/assemble-repository-mojo.html#includeAllSources
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:
https://github.com/eclipse-pde/eclipse.pde/pull/425. 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.

Cheers,
-- 
Mickael Istria
Eclipse IDE <https://www.eclipse.org/eclipseide> developer, for Red Hat
Developers <https://developers.redhat.com/>
_______________________________________________
platform-dev mailing list
platform-dev@eclipse.org
To unsubscribe from this list, visit 
https://www.eclipse.org/mailman/listinfo/platform-dev

Reply via email to