Bug 488725 - Mars composite p2 repo causes 'Could not determine SWT implementation fragment bundle' error for noenv
Summary: Mars composite p2 repo causes 'Could not determine SWT implementation fragmen...
Status: NEW
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Tycho (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-02-29 17:10 EST by Cole Markham CLA
Modified: 2021-04-28 16:52 EDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Cole Markham CLA 2016-02-29 17:10:36 EST
We're building a JavaFX app (based on efxclipse) which does not use SWT at all. We build with the 'noenv' environment and it was working fine up until last week. I happened to notice that the only change seemed to be the announcement of the Mars.2 release. Sure enough, changing the p2 update site to the previous release instead of the composite fixed the build. 

This repo worked up until last week:
  Mars Composite: http://download.eclipse.org/releases/mars
Either of these repos work now, which is very odd:
  Mars.1: http://download.eclipse.org/releases/mars/201510021000
  Mars.2: http://download.eclipse.org/releases/mars/201602261000

It seems to be only the composite repo that has issues. We are using Tycho 0.21.0, but I tried 0.23.0 and 0.24.0 which both fail with a different error (related to a dependency declared in the pom and installed locally). 0.22.0 works with either of the single repos though.

Our environments:
<environments>
  <environment>
    <os>noenv</os>
    <ws>noenv</ws>
    <arch>noenv</arch>
  </environment>
<environments>

Building with a real environment (e.g., macosx/cocoa/x86_64) works with the composite repo (but includes the native launcher which we don't need).

I will try to get a reproducible test case that doesn't depend on our code. I think it should be fairly simple.
Comment 1 Thomas Schindl CLA 2016-02-29 21:27:19 EST
I think tycho is correct - the problem is that e4 has introduced an swt dep in e4.ui.workbench
Comment 2 Thomas Schindl CLA 2016-02-29 21:28:30 EST
See https://bugs.eclipse.org/bugs/show_bug.cgi?id=378811
Comment 3 David Williams CLA 2016-03-01 15:12:50 EST
I am not sure of the details, but suspect the reason it does not work against the composite, is related to filters. In my own naive mind, 'noenv' may be setting some filter, and as p2 or Tycho looks at the composite, it "rules out" certain things based on the filter, so even though it is "matches" in one it does not in the other, hence is "excluded" based on the filters. But, there are other parts of "things selected" for Mars.2 that "need" it, but not found, since filtered out. 

Yet another argument for not using composite repositories in builds! :/ 

[And, does make me wonder if there is more we can/should do to catch this kind of "contradictory filters" earlier since once one of them "contradicts" another, I doubt it can be fixed by adding yet another, fixed repository since the contradiction would still be there.]
Comment 4 Mickael Istria CLA 2021-04-08 18:03:08 EDT
Eclipse Tycho is moving away from this bugs.eclipse.org issue tracker to https://github.com/eclipse/tycho/issues/ instead. If this issue is relevant to you, your action is required.
0. Verify this issue is still happening with latest Tycho 2.4.0-SNAPSHOT
  if issue has disappeared, please change status of this issue to "CLOSED WORKFORME" with some details about your testing environment and how you did verify the issue; and you're done
  if issue is still present when latest release:
* Create a new issue at https://github.com/eclipse/tycho/issues/
  ** Use as title in GitHub the title of this Bugzilla ticket (may include the bug number or not, at your own convenience)
  ** In the GitHub description, start with a link to this bugzilla ticket
  ** Optionally add new content to the description if it can helps towards resolution
  ** Submit GitHub issue
* Update bugzilla ticket
  ** Add to "See also" property (up right column) the link to the newly created GitHub issue
  ** Add a comment "Migrated to <link-to-newly-created-GitHub-issue>"
  ** Set status as CLOSED MOVED
  ** Submit

All issues that remain open will be automatically closed next week or so. Then the Bugzilla component for Tycho will be archived and made read-only.