Re: tycho-2.3.0

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2021-08-23 at 15:16 +0100, Mat Booth wrote:
> On Mon, 23 Aug 2021 at 10:31, Sérgio Basto <sergio@xxxxxxxxxx> wrote:
> > 
> > On Mon, 2021-08-23 at 09:47 +0100, Mat Booth wrote:
> > > On Mon, 23 Aug 2021 at 02:32, Sérgio Basto <sergio@xxxxxxxxxx>
> > > wrote:
> > > > 
> > > > Hi,
> > > > tycho have a circular dependency with eclipse ,
> > > > and tycho-2.3.0 was never built successfully on fedora koji .
> > > > 
> > > > I tried build tycho-2.3.0 with mock for F34 and build with
> > > > bootstrap
> > > > doesn't work [1], the build without bootstrap works .
> > > > 
> > > > On rawhide can't build tycho-2.2.0-5 with bootstrap [2] the build
> > > > error
> > > > is similar of build of tycho-2.3.0 ...
> > > > 
> > > > 
> > > > [1]
> > > > [INFO] Resolving class path of MavenProject:
> > > > org.eclipse.tycho:org.eclipse.tycho.noopsecurity:2.3.0 @
> > > > /builddir/build/BUILD/org.eclipse.tycho-tycho-2.3.0/tycho-
> > > > bundles/org.eclipse.tycho.noopsecurity/pom.xml
> > > > [ERROR] Internal error: java.lang.RuntimeException:
> > > > org.osgi.framework.BundleException: Bundle
> > > > org.eclipse.tycho.noopsecurity cannot be
> > > > resolved:org.eclipse.tycho.noopsecurity [6]
> > > > [ERROR]   Unresolved requirement: Require-Bundle:
> > > > org.eclipse.equinox.security; bundle-version="1.0.100"
> > > > [ERROR]     -> Bundle-SymbolicName: org.eclipse.equinox.security;
> > > > bundle-version="1.3.600.v20210304-1735"; singleton:="true"
> > > > [ERROR]        org.eclipse.equinox.security [4]
> > > > [ERROR]          Unresolved requirement: Import-Package:
> > > > org.eclipse.core.runtime; registry="split"
> > > > [ERROR] -> [Help 1]
> > > > org.apache.maven.InternalErrorException: Internal error:
> > > > java.lang.RuntimeException: org.osgi.framework.BundleException:
> > > > Bundle
> > > > org.eclipse.tycho.noopsecurity cannot be
> > > > resolved:org.eclipse.tycho.noopsecurity [6]
> > > > Unresolved requirement: Require-Bundle:
> > > > org.eclipse.equinox.security;
> > > > bundle-version="1.0.100"
> > > > -> Bundle-SymbolicName: org.eclipse.equinox.security; bundle-
> > > > version="1.3.600.v20210304-1735"; singleton:="true"
> > > > org.eclipse.equinox.security [4]
> > > > Unresolved requirement: Import-Package: org.eclipse.core.runtime;
> > > > registry="split"
> > > > 
> > > > 
> > > > [2]
> > > > org.eclipse.equinox.frameworkadmin.equinox biz.aQute.bndlib
> > > > tycho-
> > > > bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/ecli
> > > > ps
> > > > e/ty
> > > > cho/p2/resolver/WrappedArtifact.java:26: error: package
> > > > aQute.bnd.osgi
> > > > does not exist
> > > > import aQute.bnd.osgi.Analyzer;
> > > > ^
> > > > tycho-
> > > > bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/ecli
> > > > ps
> > > > e/ty
> > > > cho/p2/resolver/WrappedArtifact.java:27: error: package
> > > > aQute.bnd.osgi
> > > > does not exist
> > > > import aQute.bnd.osgi.Jar;
> > > > ^
> > > > tycho-
> > > > bundles/org.eclipse.tycho.p2.resolver.impl/src/main/java/org/ecli
> > > > ps
> > > > e/ty
> > > > cho/p2/resolver/WrappedArtifact.java:28: error: package
> > > > aQute.bnd.version does not exist
> > > > import aQute.bnd.version.Version;
> > > > 
> > > 
> > > tycho-2.3.0 builds fine on F34 -- no need to bootstrap.
> > 
> > we need a build with bootstrap in F35 but if even in F34 we can't ...
> > 
> > > But on F35+ eclipse is retired, you will not be able to build tycho
> > > there. Is it your intention to resurrect it?
> > 
> > yes of course , my intention is find a way to build eclipse on F35+
> > and just after resurrect it
> > 
> 
> Okay cool, beware this is a quite big job though. Maintaining eclipse
> will also benefit from a good understanding of OSGi and the ability to
> interpret p2's output in order to diagnose things like broken OSGi
> metadata and bundle resolution.
> 
Hi,

I haven't learned much about that yet , but I add learn a lot with
packaging biglybt 

https://bugzilla.redhat.com/show_bug.cgi?id=1981982
https://sergiomb.fedorapeople.org/biglybt/biglybt.spec

BTW in tycho.spec. how we replace %add_maven_depmap [1] with
"%mvn_artifact and %mvn_install" 

[1]
%add_maven_depmap org.eclipse.tycho:tycho-bundles-
external:txt:manifest:%{version} tycho/tycho-bundles-external-
manifest.txt

> For example, to start you off, I fixed the tycho bootstrap issue in
> this change:
>  
> https://src.fedoraproject.org/rpms/tycho/c/be3860f37b8eb2c52079fac0deeac94bac2b68eb
> 
> It was due to an ambiguous requirement on a package that is split
> between multiple bundles -- a "split-package." Adding an explicit
> require-bundle directive gives tycho enough information to correctly
> resolve the correct bundle.
> 
> So bootstrap mode should now work on F34.
> 
> For F35+ there are still multiple issues to resolve before you can
> begin to bootstrap tycho and eclipse there:
> 
> * tycho and eclipse BR maven-install-plugin is retired
> * eclipse itself is retired
> * aqute-bnd has missing osgi metadata since the upgrade to 5.2 (I
> believe this is causing the issue in your original mail)
> * hamcrest has missing osgi metadata since the upgrade to 2.2
> (therefore junit 4 almost certainly has a unsatisfiable osgi dep and
> probably will need rebuild after fixing hamcrest)
> * objectweb-asm has missing osgi metadata since the upgrade to 9.1
> * atinject has broken osgi metadata since the upgrade to 1.0.3
> * felix-scr has broken osgi metadata since the upgrade to 2.1.26
> * Various eclipse deps are orphaned and will be retired soon: lucene,
> icu4j, jetty, felix-scr, felix-gogo-parent, felix-gogo-runtime,
> felix-gogo-shell, felix-gogo-command, takari-polyglot, cbi-plugins,
> eclipse-license, eclipse-emf and eclipse-ecf

I opened some bug reports:
https://bugzilla.redhat.com/show_bug.cgi?id=1996621
https://bugzilla.redhat.com/show_bug.cgi?id=1996787

aqute-bnd is fixed .
atinject seems is also fixed . 



> And that's just the things that I can immediately see without actually
> trying to build it on F35. There are probably more problems that I've
> missed.
> 
> Once all that is all fixed, the general process of bootstrapping
> eclipse into a new buildroot is as follows:
> 
> 1. Build tycho -- (bootstrap)
> 2. Build cbi-plugins
> 3a. Build eclipse-license
> 3b. Build eclipse-emf -- (bootstrap)
> 3c. Build eclipse-ecf
> 4. Build eclipse -- (bootstrap)
> 5. Rebuild tycho -- (full build)
> 6. Rebuild eclipse -- (full build)
> 7. Rebuild eclipse-emf -- (full build)
> 
> I can answer questions about the process, but I don't have time any
> more to do any real maintenance.
> 
> Hope this helps.

yes it helps , as you wrote many updates on rawhide missing osgi
metadata etc , it will be a long way . I will not rush myself .


Thank you.
-- 
Sérgio M. B.
_______________________________________________
java-devel mailing list -- java-devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to java-devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/java-devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Index of Archives]     [Red Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]

  Powered by Linux