Thread-topic: [mylyn-dev] Idiots guide to building Mylyn from scratch (was Re: How to replace PersonProposalProvider?)
Hi George,
For now create a fork.
Cheers,
Best regards,
Wim Jongman
From: mylyn-dev <mylyn-dev-bounces@xxxxxxxxxxx> on behalf of George Lindholm <javadev@xxxxxxxxxxxx> Sent: Saturday, December 24, 2022 10:39:25 PM To: mylyn-dev@xxxxxxxxxxx <mylyn-dev@xxxxxxxxxxx> Subject: Re: [mylyn-dev] Idiots guide to building Mylyn from scratch (was Re: How to replace PersonProposalProvider?)
Hi Alexander,
no worries, at least I've highlighted some issues with the environment
Ok, I've got it figured out.
So I checked out
master@xxxxxxxxxxxxxxxxxxxxx and manually switched each submodule to master and things look better.
There is a still a problem with tycho-version.
org.eclipse.mylyn-parent:3.26.0-SNAPSHOT defines tycho-version to 1.5 so I still the get the tycho mismatch error when I try to build the world from the root pom.
Once I overrode the value everything built cleanly, I could still build individual modules though.
Can I be given permission to create new branches? Or should I fork the code into my own space?
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.
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:
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
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:
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
[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
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
I now get complaints about: [ERROR] Unknown packaging: eclipse-update-site
so I change the poms to: eclipse-repository
[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
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]:"
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
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.
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.
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.