Bug 422924 - PDE feature should depend on Eclipse SDK sources
Summary: PDE feature should depend on Eclipse SDK sources
Status: REOPENED
Alias: None
Product: PDE
Classification: Eclipse Project
Component: Build (show other bugs)
Version: 4.3.1   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: pde-build-inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-12-02 04:48 EST by Mickael Istria CLA
Modified: 2018-12-03 09:12 EST (History)
4 users (show)

See Also:


Attachments
current Eclipse update site categories (92.13 KB, image/png)
2013-12-02 13:51 EST, David Williams CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mickael Istria CLA 2013-12-02 04:48:19 EST
PDE should be default install other sources from Eclipse project, and maybe even it's own sources as well.
Comment 1 Curtis Windatt CLA 2013-12-02 11:30:56 EST
You are suggesting that the PDE feature include the source bundles?

Users have had problems where they install PDE separately, but then do not have source bundles in their target.  However, some users may just need the PDE runtime and the source adds significant size.
Comment 2 Mickael Istria CLA 2013-12-02 12:15:27 EST
(In reply to Curtis Windatt from comment #1)
> You are suggesting that the PDE feature include the source bundles?

Yes

> Users have had problems where they install PDE separately, but then do not
> have source bundles in their target.  However, some users may just need the
> PDE runtime and the source adds significant size.

I believe the use-case of a PDE users who doesn't want sources is not very frequent. And when it happens, it's more a concern of the one dealing with application packaging, and it's as easy to depend directly on bundles.
Comment 3 Curtis Windatt CLA 2013-12-02 12:37:18 EST
This means that installing PDE will make your eclipse install into an SDK download.  I'm ok with the idea, but I'm concerned the change would cause problems for someone's builds.

David, any advice here?  I'm not spending much time on PDE so if this comes with risk I would suggest leaving things as is.
Comment 4 Pascal Rapicault CLA 2013-12-02 12:55:43 EST
Could you detail the problem you are trying to solve?
Comment 5 Mickael Istria CLA 2013-12-02 13:02:20 EST
It's not really a problem but more a suggestion, it's just that by default PDE comes without any source, whereas the main use-case of PDE makes that shipping sources of Eclipse SDK with it is totally relevant.
Moreover the Eclipse SDK feature is not visible by default in Kepler repository, so that makes it more complicated for a newcomer to find how to get the source.

I'm suggesting that adding a reference from PDE feature to Eclipse SDK features (containing sources) would be helpful for any plugin developer, especially new ones that won't even know that it's possible to get sources.
Comment 6 David Williams CLA 2013-12-02 13:51:14 EST
Created attachment 237926 [details]
current Eclipse update site categories

I'm confused, or misunderstanding. 

> it's just that by default
> PDE comes without any source

By default? From where? 

Are you aware we recently added new categories to our Eclipse update site? (as attached picture shows). Does that improve on the issue you are talking about? Or do you mean something else? 

Do you mean to add and "update site url" reference? We do not want to do that, and recommend others do not do that (in features) since it tends to "pollute" the "available sites" list and we believe that best be done at a product level.
Comment 7 Pascal Rapicault CLA 2013-12-02 14:47:23 EST
(In reply to Mickael Istria from comment #5)
> It's not really a problem but more a suggestion, it's just that by default
> PDE comes without any source, whereas the main use-case of PDE makes that
> shipping sources of Eclipse SDK with it is totally relevant.
> Moreover the Eclipse SDK feature is not visible by default in Kepler
> repository, so that makes it more complicated for a newcomer to find how to
> get the source.
> 
> I'm suggesting that adding a reference from PDE feature to Eclipse SDK
> features (containing sources) would be helpful for any plugin developer,
> especially new ones that won't even know that it's possible to get sources.

I think adding source to the PDE runtime feature is not the right way to solve this problem. To me PDE can be used to develop other applications than plugins (Virgo, pure OSGi app, RAP apps, etc.) or plugins that are not part of the SDK feature (egit, mylyn, etc) and as such having the source code of the SDK be installed is only of so much help.

I think that the best way to improve the situation is by making it easy for users to download the source code in their target platform from a p2 repository. For iirc, p2 metadata says which IU contains the source of a given bundle.
Comment 8 David Williams CLA 2013-12-02 23:14:25 EST
(In reply to Pascal Rapicault from comment #7)
> (In reply to Mickael Istria from comment #5)

> I think that the best way to improve the situation is by making it easy for
> users to download the source code in their target platform from a p2
> repository. For iirc, p2 metadata says which IU contains the source of a
> given bundle.

I agree. Is this something we lost moving to Tycho/Maven builds? 
What would I look for in metadata to "see" the pointers/relationships? 

But, even if we already had that in our metadata, the "thing" that takes advantage of "install source with that?" is in PDE -- in runtime target settings -- (well, that's how its currently exposed to end users), so not sure it helps anyone without PDE already installed. So ... even if we had the metadata right, there would need to be a change to p2 UI to give same option to "install source when possible" during normal installs? Right? 

And, we do, already, have 
org.eclipse.pde.feature.group (binary only) and
org.eclipse.pde.source.feature.group (binary and source ... plus docs)
so ... I am not sure there is much more we can do. 

I definitely would not want to "pollute" the "binary only" feature by including source bundles there. It is designed as it is to give users and adopters a choice ... and if we always included source bundles in "binary only" then that takes away that choice and flexibility. 

So, given all that ... I suggest either someone explain what I am not understanding ... or, we close _this_ bug as "won't fix" (which would not mean other bugs would not be appropriate, such as to improve p2's install dialog (to have an option to "include source when available"? and/or to improve Tycho builder to include the proper metadata (if it is not already, which, it may be, for all I know, at the moment). 

But ... I somehow feel I'm missing the point of the original request and still don't know what it means to say "by default PDE comes without any source". 

Thanks,
Comment 9 Lars Vogel CLA 2018-12-03 09:05:30 EST
Currently we are not actively enhancing PDE build anymore. Therefore, I close this bug as WONTFIX. 

Please reopen, if you plan to provide a fix.
Comment 10 Mickael Istria CLA 2018-12-03 09:12:24 EST
I marked PDE/Build because it's part of how PDE is built, not related to the PDE Build Ant wrappers. The ticket is still relevant IMO (and of big enough value even if we want to grow amount of SDK contributors).