Bug 187154 - manage Mylyn participation in EPP
Summary: manage Mylyn participation in EPP
Status: RESOLVED FIXED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Mylyn (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 enhancement (vote)
Target Milestone: ---   Edit
Assignee: Steffen Pingel CLA
QA Contact:
URL: http://www.eclipse.org/epp/
Whiteboard:
Keywords:
Depends on: 187880
Blocks:
  Show dependency tree
 
Reported: 2007-05-15 20:22 EDT by Mik Kersten CLA
Modified: 2010-02-13 17:00 EST (History)
5 users (show)

See Also:


Attachments
mylar/context/zip (31.35 KB, application/octet-stream)
2007-06-14 21:46 EDT, Mik Kersten CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mik Kersten CLA 2007-05-15 20:22:26 EDT
The Eclipse Packaging Project (EPP) is bundling Mylar.  Let's use this bug to discuss integration and packaging issues.
Comment 1 Mik Kersten CLA 2007-06-08 14:58:10 EDT
Raising priority since we want to make sure the updates to our plug-in and feature structure support the packaging project, not just Europa.
Comment 2 Mik Kersten CLA 2007-06-11 18:09:31 EDT
Please let us know if the new packaging works for EPP: http://www.eclipse.org/mylyn/doc/dev/mylyn.psf
Comment 3 Markus Knauer CLA 2007-06-12 12:04:44 EDT
Hi Mik, below are my comments from a first and quick look into your features.
I think I should use a combination of org.eclipse.mylyn.bugzilla_feature (okay) and org.eclipse.mylyn.java_feature (not okay) in my Java packages, right?


org.eclipse.mylyn.bugzilla_feature
-> looks good

org.eclipse.mylyn.ide_feature
-> dependency to org.eclipse.pde.runtime
-> seems to be okay

org.eclipse.mylyn.java_feature
-> dependencies to JDT, but also to org.eclipse.pde.core, org.eclipse.pde.junit.runtime, org.eclipse.pde.ui
-> don't know why, but there still seems to be a dependency to PDE!

org.eclipse.mylyn.jira_feature
-> okay

org.eclipse.mylyn.pde_feature
-> some confusion by copy&paste: the project name is org.eclipse.mylyn.pde-feature, while the feature ID is set to org.eclipse.mylyn.java_feature
-> dependencies to JDT and PDE
-> apart from the above problems seems to be okay

org.eclipse.mylyn.trac_feature
-> okay

org.eclipse.mylyn_feature
-> seems to be okay
Comment 4 Markus Knauer CLA 2007-06-14 12:15:09 EDT
Hi Mik, 
what's the status of the bugs and when do you plan to release the new structure to the Europa Staging Update Site? Or do you need more input/help from EPP?
Comment 5 Mik Kersten CLA 2007-06-14 14:00:16 EDT
Markus: we should have a dev build on our site sometime today and hopefully a Europa build tomorrow.  The above input from you is exactly what I needed and now just have to figure out how best to structure the features so that both SDK users and EPP are well supported (e.g. making an SDK-specific feature that can couple to everything in the SDK).
Comment 6 Mik Kersten CLA 2007-06-14 21:46:23 EDT
 (In reply to comment #3)
> org.eclipse.mylyn.ide_feature
> -> dependency to org.eclipse.pde.runtime
> -> seems to be okay

Might be able to move this, but we require it for NewTaskFromError action, which does not currently have a better home.  Note that I split out the IDE feature into a new mylyn.context-feature (Focused UI) and an IDE feature (Mylyn Connector: IDE).  This is to support RCP apps and stripped down IDEs.  Project set has been updated. 

> org.eclipse.mylyn.java_feature
> -> dependencies to JDT, but also to org.eclipse.pde.core,
> org.eclipse.pde.junit.runtime, org.eclipse.pde.ui
> -> don't know why, but there still seems to be a dependency to PDE!

Fixed (moved Java/PDE runtime configuration to mylyn.pde).  Note that the Java feature depends on mylyn.ide.ant (eclipse.ant.ui is coupled to eclipse.jdt.ui).  Unless there is a compelling reason not to include Ant with JDT I'd like to avoid creating another feature for it.

> org.eclipse.mylyn.pde_feature
> -> some confusion by copy&paste: the project name is
> org.eclipse.mylyn.pde-feature, while the feature ID is set to
> org.eclipse.mylyn.java_feature
> -> dependencies to JDT and PDE

Fixed.  Dependencies to JDT are required and eclipse.pde.ui has them too.

Comments?  Core work appears done so bringing down priority.
Comment 7 Mik Kersten CLA 2007-06-14 21:46:32 EDT
Created attachment 71391 [details]
mylar/context/zip
Comment 8 Mik Kersten CLA 2007-06-19 16:11:45 EDT
What's the current list of Mylyn features that EPP is including?  Are you planning on including all of the task repository connectors?  I ask because I need to make sure that they are sufficiently well supported and currently JIRA might not be.  

Note that Mylyn will now show a dialog if it has been installed into an incompatible JRE (e.g. 1.4 and lower).  This was partly motivated by the EPP project in order to avoid confusion (bug 188984).
Comment 9 Markus Knauer CLA 2007-06-20 04:06:01 EDT
Hi Mik,

we are not using only the Bugzilla connector to keep the packages as small as possible. The maximum feature set in a package looks like this:

      id="org.eclipse.mylyn_feature"
      id="org.eclipse.mylyn.context_feature"
      id="org.eclipse.mylyn.bugzilla_feature"
      id="org.eclipse.mylyn.ide_feature"
      id="org.eclipse.mylyn.java_feature"

The ANT dependency still is a bit problematic. There is a dependency from ANT to the PDE feature which means that I currently have to include PDE in the JEE package (I know I should have written that last weekend when I was running into this problem).

I don't know if it is possible (too late?, too risky?) to move the last dependency from Mylyn to ANT into a separate feature. But I do know that you have done lots of restructuring in the last few weeks and you probably need some time for stabilizing things and for last minute bugfixing. A solution for the Ant dependency is more a 'nice-to-have' for me than something that is blocking EPP.

Java 1.4 and 5 - there should be a description on the download page of the packages that the minimum Java version is Java 5.
Comment 10 Mik Kersten CLA 2007-06-20 04:14:25 EDT
Hmmm... what should we do about that Ant feature?  No, it's not too late, we just need to come up with a good solution.  What if I added Ant to our PDE feature instead of our Java feature?  That's a bit weird, but perhaps no weirder given the dependency chain.
Comment 11 Markus Knauer CLA 2007-06-20 05:06:19 EDT
That sounds perfect! At least from the EPP point of view. If it is possible to add Ant to the Java feature chain it would be better for EPP.

If there is a Mylyn test update site available, I could do a test-run before you include it into the Europa Staging process.

Comment 12 Mik Kersten CLA 2007-06-20 10:51:17 EDT
I have done this and can put up a new build.  I just need to confirm that you mean "remove mylyn.ide.ant from the Java feature and add it to the PDE feature".  We are now staging live so just use the update/e3.3 site listed at: http://www.eclipse.org/mylyn/dl.php  Once you confirm the dependency change I'll spin a new build.  The only use case I can think of this not supporting is a CDT user wanting Ant without PDE.  But in that case they have to get Java anyway so they shouldn't mind the PDE install as much.

Regarding the features that you selected, that looks great to me in terms of keeping it minimal.  Note that all you're missing from our standard (non-extras) site is Trac and PDE.
Comment 13 Markus Knauer CLA 2007-06-20 11:19:48 EDT
Yes, that should allow us to add the missing Mylyn features to the Java packages without adding too much overhead in form of PDE.
Comment 14 Mik Kersten CLA 2007-06-20 12:34:04 EDT
Committed to HEAD.
Comment 15 Shelby Sanders CLA 2007-06-25 22:47:32 EDT
We're trying to create a product based on the Eclipse platform deliverable, and we would like to be able to include Mylyn.  Most of the roadblocks have been taken care of at this point.

However, the Mylyn IDE plugin still depends on the "org.eclipse.pde.runtime" plugin which is not included in Platform.

Can the final dependency could be moved to the Mylyn PDE plugin?
Comment 16 Markus Knauer CLA 2007-06-26 02:21:59 EDT
Yepp, I can verify this...

In org.eclipse.mylyn.java_feature_2.0.0.v20070621-1800/feature.xml there is still the dependency to ant:

   <requires>
      ...
      <import plugin="org.eclipse.ant.ui"/>
Comment 17 Markus Knauer CLA 2007-06-26 02:29:15 EDT
(In reply to comment #11)
> That sounds perfect! At least from the EPP point of view. If it is possible to
> add Ant to the Java feature chain it would be better for EPP.

Hmm, just reading this here again... it's time for an excuse and I don't know what I thought when writing this. Of course, your solution (Ant to PDE) was the one... my last sentence about adding Ant to the Java feature chain was rubbish. I'll have a second look into it later and will try to verify this here.
Comment 18 Mik Kersten CLA 2007-06-26 09:34:14 EDT
Shelby: I have moved the "report bug from error" feature from mylyn.ide into mylyn.bugzilla.ide so that mylyn.ide is no longer coupled to pde.runtime.  This move comes at a cost, because installs of Mylyn that do not include Bugzilla will not have access to this functionality.  Moving to the PDE feature is not an option because this would remove the functionality from anyone who did not use PDE.  The current move is a compromise and will need to be reconsidered for 2.0 if other connectors want to leverage this functionality without relying on users installing the Bugzilla connector.

Markus: this should not change anything on your end since it sounds like EPP includes pde.runtime in the configurations.  Just to make sure that I understand, all other packaging issues are now resolved for you?
Comment 19 Markus Knauer CLA 2007-06-26 10:28:16 EDT
Yes, I think all other items are resolved:

C/C++ Package - okay, does not include Mylyn

Java Package - currently contains only mylyn.bugzilla_feature, mylyn.context_feature, and the mylyn_feature - this is the only package that is problematic

JEE Package - okay [I had to include the PDE feature anyway because of other dependency issues]

RCP Package - okay [it includes everything needed by Mylyn]
Comment 20 Mik Kersten CLA 2007-06-26 10:53:58 EDT
Great  Could you please recap the problem with the Java package?  To be fully functional it should also have:
* mylyn.ide_feature
* mylyn.java_feature

In other words everything but PDE.  For an IDE tool including mylyn.contex_feature without those two is probably a bad idea because some Focused UI facilities will be added without others, potentially leading to confusion.

Note that I am about to make mylyn.java_feature and mylyn.pde_feature depenend on mylyn.ide-feature, but this should not change anything because those dependencies were already expressed at the plug-in level.
Comment 21 Eugene Kuleshov CLA 2007-06-26 11:35:04 EDT
(In reply to comment #18)
> This move comes at a cost, because installs of Mylyn that do not include Bugzilla
> will not have access to this functionality.

I think it is a significant regression.

By the way, why coupling with PDE is needed? I thought that new Eclipse error handling facility allows to hook error handlers declaratively. 
If that isn't an option, maybe we could use some reflection trick to call pde classes?
Comment 22 Markus Knauer CLA 2007-06-26 11:37:48 EDT
    I looked into the problem and found a dependency from
    org.eclipse.mylyn.ide_feature_2.0.0.v20070623-1130 (I have not yet checked
    other  versions) to 

       <requires>
          ...
          <import plugin="org.eclipse.pde.runtime"/>

    This seems to be exactly the dependency that is addressed in comment #18

Comment 23 Mik Kersten CLA 2007-06-26 11:44:01 EDT
Regarding comment#21: it is impossible to do this in a way that is backwards compatible for 3.2.  For Mylyn 2.0 we have the bugzilla.ide plug-in which is the only way to encapsulate this in a way that meets the important needs that Shelby has outlined.  For 3.0 we will likely need to make a tasks.ide plug-in that makes this common to connectors.  I decided to go ahead and remove the pde.runtime dependency because this was effectively violating the dependency chain we try to follow with Platform.

Markus: yup, that dependency is gone so please make sure that you do not have any other problems including mylyn.ide_feature and mylyn.java_feature.  I will be putting an updated build on our e3.3 update site within 80 minutes and then asking for a Europa rebuild.
Comment 24 Markus Knauer CLA 2007-06-26 11:47:53 EDT
I'll have a look as soon as I see the next update site rebuild.
Comment 25 Markus Knauer CLA 2007-06-27 03:05:58 EDT
This Java Package starts being a nightmare... there must be another dependency from the mylyn.ide_feature to pde. You can reproduce this by downloading a platform archive (contains only platform and rcp features) and adding the Mylyn features manually from the staging update site.
Then you will see that pde is still required by mylyn.ide_feature, but I haven't figured out which plugin causes this.
Comment 26 Mik Kersten CLA 2007-06-27 03:08:44 EDT
Looking into this now...
Comment 27 Mik Kersten CLA 2007-06-27 03:18:57 EDT
I just combed through the mylyn.java.ui plug-ins dependency tree (using PDE's Dependency Analysis) and did not see any PDE depencencies.  Are you sure that this is the case?  Perhaps your ended up getting an old build, try the latest one from: download.eclipse.org/tools/mylyn/update/e3.3
Comment 28 Markus Knauer CLA 2007-06-27 03:47:10 EDT
I'm always using the staging update site... I think the last build doesn't contain the latest Mylyn features. I am checking...
Comment 29 Markus Knauer CLA 2007-06-27 04:01:26 EDT
No, problem still exists...

To reproduce:
* Download latest I-Build for Europa 
  http://download.eclipse.org/eclipse/downloads/drops/I20070625-1500/index.php
  http://download.eclipse.org/eclipse/downloads/drops/I20070625-1500/download.php?dropFile=eclipse-platform-I20070625-1500-win32.zip

* 'Help' > 'Software Update' > 'Find and Install...'
  Search for new features to install
  Add the two update site:  
    download.eclipse.org/tools/mylyn/update/e3.3
    download.eclipse.org/releases/europa/staging/site.xml

* Try to add 'Mylyn Bridge: Java' and press 'Select required'

Then you should be able to verify that there is still a dependency to 'Eclipse Plug-in Development Environment'.

This is the Eclipse Update Manager, but we are using the same dependency resolution in the EPP builds.




Comment 30 Mik Kersten CLA 2007-06-27 04:22:07 EDT
I have replicated the problem.  Investigating solution now...
Comment 31 Mik Kersten CLA 2007-06-27 04:42:50 EDT
There were two dependency problems: PDE and CVS.  To address them without creating multiple new features I had to turn the PDE feature into an SDK feature.  All key configurations should now work.  The caveat is that you need to get the SDK feature to get integration for: CVS, Ant and PDE.  It is too late to split these out for 2.0. 

Please verify that build 2.0.0.v20070627-0100 works as expected.  It'll be on the same update site in about 20 min.  I'll be back online in 5 hours, at which point I will ask for a Europa re-spin if all is good.
Comment 32 Markus Knauer CLA 2007-06-27 06:53:45 EDT
Congratulations! I did a manual EPP build of the Java-only package and with the following features from your update site:

"org.eclipse.mylyn_feature"          "2.0.0.v20070627-0100">
"org.eclipse.mylyn.context_feature"  "2.0.0.v20070627-0100">
"org.eclipse.mylyn.ide_feature"      "2.0.0.v20070627-0100">
"org.eclipse.mylyn.java_feature"     "2.0.0.v20070627-0100">
"org.eclipse.mylyn.bugzilla_feature" "2.0.0.v20070627-0100">

When the content is available from the official Europa Staging Update Site I'll do a full rebuild of all 4 EPP packages, but for now I am pretty sure that all dependency issues are resolved.

Many thanks!
Comment 33 Mik Kersten CLA 2007-06-27 07:14:20 EDT
Great to hear.  Fyi, note that you can now also install the Bugzilla feature into a plain Platform runtime.  I'll post when the content is available from the staging site.
Comment 34 Mik Kersten CLA 2007-06-27 13:38:55 EDT
The staging area was just updated with Mylyn 2.0.0.v20070627-0100: http://dash.eclipse.org/~bfreeman/europa/#mylyn
Comment 35 Markus Knauer CLA 2007-06-27 14:28:37 EDT
(In reply to comment #34)
> The staging area was just updated with Mylyn 2.0.0.v20070627-0100:
> http://dash.eclipse.org/~bfreeman/europa/#mylyn

Yepp, I've seen it and my complete EPP package build is already running. I'll keep you updated.
Comment 36 Mik Kersten CLA 2007-06-27 16:09:02 EDT
Fyi, we are about to spin the final build, and Europa will likely respin around that at approximately 2pm Pacific.
Comment 37 Robert Elves CLA 2007-06-28 13:38:20 EDT
After looking at Europa builds this morning I'm seeing the following oddities:
- The cpp build doesn't include any mylyn plugins
- The java build doesn't include mylyn.team.*, mylyn.ide.ant, mylyn.pde, bugzilla.ide
- Trac doesn't appear to be present in any builds

Do we need to be including the mylar compatibility plugins in EPP since no old mylar plugins will be packaged?
Comment 38 Mik Kersten CLA 2007-07-03 14:46:35 EDT
 (In reply to comment #37)
> After looking at Europa builds this morning I'm seeing the following oddities:
> - The cpp build doesn't include any mylyn plugins

That's by design.  Hopefully this will encourage the CDT community to create a bridge.  Notably Mylyn could already be included down to the IDE feature.

> - The java build doesn't include mylyn.team.*, mylyn.ide.ant, mylyn.pde,
> bugzilla.ide

The key thing that would be good to add to the Java packaging is the mylyn.team stuff.  That depends on bug 191793.

> - Trac doesn't appear to be present in any builds

That was the choice of EPP, mentioned in one of the earlier comments.

> Do we need to be including the mylar compatibility plugins in EPP since no old
> mylar plugins will be packaged?

Good question.  Including them was probably worth it in case someone pointed their EPP-based install at an old extension directory.
Comment 39 Mik Kersten CLA 2008-05-22 22:13:29 EDT
Markus: please note that we have added a new feature to the mylyn.sc file:

			<dependency
                name="org.eclipse.mylyn.team_feature"
                versionDesignator="[3.0.0.I20080522-2300]" />
                
I'm out most of tomorrow but if you have any questions please contact Steffen.
Comment 40 Steffen Pingel CLA 2010-02-13 17:00:46 EST
Marking resolved. Let's use epp-dev and epp bugs to discuss any issues that come up.