Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mylyn-dev] Idiots guide to building Mylyn from scratch (was Re: How to replace PersonProposalProvider?)


Hi George,

[TL;DR;] Setup seems to have several issues and https://github.com/eclipse-mylyn/org.eclipse.mylyn.all seems to be outdated, steps to fix your issues:
* Checkout `master` branch of repositories referenced by https://github.com/eclipse-mylyn/org.eclipse.mylyn.all
* use https://github.com/eclipse-mylyn/org.eclipse.mylyn.commons/blob/master/org.eclipse.mylyn.commons-target/mylyn-commons-e4.26.target to compile and run your workspace,
* run maven in the root of changed repository locally
* create a PR and let CI check it.

First of all please accept my apologies for not being precise enough. We are in the middle of revival process and things may not be as smooth as expected.
Now I see the problem: we need to invest more to .setup and sync it with the current state of repositories, and this effort is planned after we will complete the merge of repositories.

Regarding CI/CD my statement stands: every repository from the list below is able to build its `master` branch and deploy its p2 update site to eclipse download area:
* https://github.com/eclipse-mylyn/org.eclipse.mylyn.commons/
* https://github.com/eclipse-mylyn/org.eclipse.mylyn.tasks/
* https://github.com/eclipse-mylyn/org.eclipse.mylyn.context/
* https://github.com/eclipse-mylyn/org.eclipse.mylyn.version/
* https://github.com/eclipse-mylyn/org.eclipse.mylyn.builds/
* https://github.com/eclipse-mylyn/org.eclipse.mylyn.reviews/
* https://github.com/eclipse-mylyn/org.eclipse.mylyn/

The unfortunate exception is https://github.com/eclipse-mylyn/org.eclipse.mylyn.all that does not contain any own code to build and uses outdated references to the repositories from the list above. The plan is to archive it after the merge.

Regards,
AF

12/24/2022 12:51 PM, George Lindholm пишет:
Hi Alexander,
   I don't see how CI/CD can build, unless it's with different branches than what I'm getting with from the Mylyn installer setup.

What I see is after installer setup is done:
  1. Problems view:
    The import org.eclipse.jface.databinding.swt.WidgetProperties cannot be resolved    AbstractBuildEditorPart.java    /org.eclipse.mylyn.builds.ui/src/org/eclipse/mylyn/internal/builds/ui/editor    line 26    Java Problem

    I let Eclipse change import org.eclipse.jface.databinding.swt.WidgetProperties to org.eclipse.jface.databinding.swt.IWidgetValueProperty
  2. Reboot Eclipse after installing Darkest Theme
    Eclipse decides to update one of the plugins
    Get 'Eclipse Updater' popup claiming 'There are failed tasks. Press Back to choose different settings or Cancel to abort'
    Window shows 'Launching submoduleConfig' with stack trace:

    Executing startup tasks

    OpenJDK Runtime Environment 17.0.2+8
    Product org.eclipse.products.epp.package.committers.latest
    Workspace E:\eclipse-mylyn\mylyn-master\ws
    Project org.eclipse.mylyn.Maintainer.master
    Bundle org.eclipse.oomph.setup 1.25.0.v20220914-1119, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.core 1.26.0.v20221125-1553, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.git 1.22.0.v20221122-1737, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.launching 1.14.0.v20220421-1218, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.p2 1.19.0.v20220607-1104, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.pde 1.14.0.v20220421-1218, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.projects 1.15.0.v20220421-1218, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.targlets 1.15.0.v20220601-1043, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab
    Bundle org.eclipse.oomph.setup.workingsets 1.16.0.v20220829-1228, build=5729, branch=e3a48095495b13551e05eca4aaee5945806274ab

    Performing Launch submodulConfig

    Execute Debug Command

    ERROR: org.eclipse.debug.core code=125 Exception occurred executing command line.

    java.io.IOException: Cannot run program "E:\eclipse-mylyn\mylyn-master\git\org.eclipse.mylyn.all\org.eclipse.mylyn\org.eclipse.mylyn.releng\bin\submodulConfig.sh" (in directory "E:\eclipse-mylyn\mylyn-master\git\org.eclipse.mylyn.all"): CreateProcess error=193, %1 is not a valid Win32 application

  3. Try to build the world from: /cygdrive/e/eclipse-mylyn/mylyn-master/git/org.eclipse.mylyn.all
    $ mvn -version clean install
    Apache Maven 3.8.6 (84538c9988a25aec085021c365c560670ad80f63)
    Maven home: E:\DevelopmentTools\apache-maven
    Java version: 17.0.2, vendor: Eclipse Adoptium, runtime: C:\Java
    Default locale: en_CA, platform encoding: Cp1252
    OS name: "windows 11", version: "10.0", arch: "amd64", family: "windows"
    1. [ERROR] Child module E:\eclipse-mylyn\mylyn-master\git\org.eclipse.mylyn.all\org.eclipse.mylyn.context\org.eclipse.mylyn.team.cvs-feature of E:\eclipse-mylyn\mylyn-master\git\org.eclipse.mylyn.all\org.eclipse.mylyn.context\pom.xml does not exist @
      [ERROR] Child module E:\eclipse-mylyn\mylyn-master\git\org.eclipse.mylyn.all\org.eclipse.mylyn.context\org.eclipse.mylyn.team.cvs of E:\eclipse-mylyn\mylyn-master\git\org.eclipse.mylyn.all\org.eclipse.mylyn.context\pom.xml does not exist @


      I remove the sub-module references from org.eclipse.mylyn.context/pom.xml
    2.  Several versions of tycho plugins are configured [1.5.0, 3.0.0]
      ...
       All tycho plugins configured in one reactor must use the same version

      So I change all the tycho versions (0.21.0, 1.5.0, 3.0.0) to 3.0.1
      1. I now get complaints about: [ERROR] Unknown packaging: eclipse-update-site
        so I change the poms to: eclipse-repository
      2. [ERROR]   Software being installed: org.eclipse.mylyn.tests 3.26.0.qualifier
        [ERROR]   Missing requirement: org.eclipse.mylyn.commons.notifications.feed 1.18.0.qualifier requires 'osgi.bundle; jakarta.xml.bind 2.3.3' but it could not be found

        I remember https://bugs.eclipse.org/bugs/show_bug.cgi?id=569078 with commit https://git.eclipse.org/c/mylyn/org.eclipse.mylyn.commons.git/commit/?id=1d76f09a980fe134b31d3a23e098ad0b2ab3f63f
        So after some experimenting  I change <orbit-repository-url> in org.eclipse.mylyn-parent/pom.xml to use R20201130205003
      3. And now I'm stuck at:
        [ERROR]   Software being installed: org.eclipse.mylyn.tests 3.26.0.qualifier
        [ERROR]   Missing requirement: org.eclipse.mylyn.hudson.ui 1.18.0.qualifier requires 'org.eclipse.equinox.p2.iu; org.eclipse.ecf.provider.discovery 0.0.0' but it could not be found

George

On 2022-12-23 23:22, Alexander Fedorov wrote:
George,

> Build from root gives: Context missing two cvs  projects.

What `root` we are talking about? We have CI/CD working for all the components, but may be I've missed the very-very root one.

Regards,
AF

12/24/2022 2:02 AM, George Lindholm пишет:
Wim, I can't find anyway to build locally.

Build from root gives: Context missing two cvs  projects.
OK, I delete the module reference in the parent pom.

Now fails with: "Several versions of tycho plugins are configured [1.5.0, 3.0.0]:"

I give up on that approach and try to build tasks locally: "No repository found at https://download.eclipse.org/eclipse/updates/4.26-I-builds/I20221123-1800"

Good news is that I can run unit tests, but this is a very different environment that I'm used to.

George

On 2022-12-23 14:23, Wim Jongman wrote:
George, the source is automatically build inside eclipse. Enough to run tests. For a full build you create a pull request or build locally.


On Fri, 23 Dec 2022 at 23:13, George Lindholm <javadev@xxxxxxxxxxxx> wrote:
But on the other hand, all I got was a bunch of java projects, no maven projects, no obvious signs on how to build anything.
No parent pom to import modules with.
How does this work? Confused???

  George


On 2022-12-23 14:04, George Lindholm wrote:
Hmm, there was no sign of any code being checked out.

I nuked my installation and started over again, and this time I got the code. Go figure

George

On 2022-12-23 13:33, Wim Jongman wrote:
All sources should already be checked out when you have ran the mylyn installer from here: https://github.com/eclipse-mylyn/.github/blob/main/CONTRIBUTING.md

Your $42 can go here: https://www.eclipse.org/sponsor/

Cheers, Wim


On Fri, 23 Dec 2022 at 21:48, George Lindholm <javadev@xxxxxxxxxxxx> wrote:
So here is $42 question, what's the correct way to check out the code to work on it?
Is there a how to start working on mylyn document somewhere?

mylyn.all@master with submodules doesn't work, missing modules of modules

The modules seem to have different tags/branches so which if I check each one out individually, which version do I choose?

Thanks
   George

On 2022-12-23 10:56, George Lindholm wrote:
Hi Wim,
   not really. I've picked up some of while working on my connector.

If I'm able to build Mylyn from the new repository I can use my connector to test it.

George

On 2022-12-23 03:52, Wim Jongman wrote:
Do you have Eclipse plugin development experience?

In very short: Make changes to the  PersonProposalProvider logic. Then create a run configuration to launch a new Eclipse from Eclipse and test your changes.

Best regards, Wim

On Thu, 22 Dec 2022 at 19:58, George Lindholm <javadev@xxxxxxxxxxxx> wrote:
Thanks, worked fine this time.

What do I need to know about this installation? 
How is it customized for Mylyn?

   George

On 2022-12-22 02:50, Wim Jongman wrote:
George, this was fixed. Please try again.


On Wed, 21 Dec 2022 at 19:17, George Lindholm <javadev@xxxxxxxxxxxx> wrote:
I was trying to set up a mylyn development environment so I could work on PersonProposalProvider

George


On 2022-12-21 06:39, Frank Becker (Eclipse) wrote:
How is the error from the png related to the PersonProposalProvider?

Can we create an issue and discuss there?

Regards 
Frank

Am 20.12.2022 um 20:51 schrieb Wim Jongman <wim.jongman@xxxxxxxxx>:

Yes, I get the same issue in Nebula. Ed, does this ring a bell?

Cheers,

Wim

On Tue, 20 Dec 2022 at 20:43, George Lindholm <javadev@xxxxxxxxxxxx> wrote:
I tried the first launch option got this error:
<hvUwDwQrKJEHzR3o.png>

  George
On 2022-12-19 13:11, George Lindholm wrote:
Hi,
  the first one is an easy fix. I'll do that

The point about the 'id' requires a new design since the interface between PersonProposalProvider and the connector is
through a Map<String, String>, when probably should be a List<IRepositoryPerson>

   George
On 2022-12-19 09:33, Alexander Fedorov wrote:
Hi,

If you already know the exact code to fix why not to make the next step?
Would you mind to create an issue so we can discuss the proposed changes in details?
If it could be followed by PR then it would be fantastic.

Here is the how to contribute guide https://github.com/eclipse-mylyn/.github/blob/main/CONTRIBUTING.md

Regards,
AF

12/19/2022 8:21 PM, George Lindholm пишет:
On 2022-12-19 04:16, Wim Jongman wrote:
Do you mean in an existing connector or in a connector that you are going to make yourself.

In general, but at the moment for my jira connector.

There are some problems with PersonProposalProvider that I would like to address.

The one that is affecting me the most at the moment is 'matchesSubstring()' which is doing  'startsWith()' instead of 'contains()'

Other problems that I'm able to work around, but is ugly, is the assumption that the 'id' is has human attributes associated with it.
This is fine when the id is an account which, most/some of the time, can be directly associated with a person, but with
Jira Cloud the id is a random string of characters, and offering them as an select option is meaningless.
'getPrettyName()' also suffers from this assumption.

Thanks
   George

Cheers, Wim

On Fri, 9 Dec 2022 at 08:57, George Lindholm <gnl@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
Hi,
   is there any way to use my own version of the PersonProposalProvider
in a connector?
The current one has some issue I would like to work around

Thanks
    George
_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev
_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev

_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


_______________________________________________
mylyn-dev mailing list
mylyn-dev@xxxxxxxxxxx
To unsubscribe from this list, visit https://www.eclipse.org/mailman/listinfo/mylyn-dev


Back to the top