Aleksandar,

The Gerrit patch I have already works (the Gerrit verification build passed) because ™ works in general.  Of course that's the case because no symbol table is needed; any XML parser can just parse the hex value to determine the unicode character that's specified.  It seems to me not to be worth the effort to try to get ™ or any other named entities that don't have built-in support, to work.

Does ™ versus ™ really matter?  No one noticed the bad characters in their before so who will notice this or care?

Regards,
Ed

|
|

On 30.08.2019 07:21, Aleksandar Kurtakov wrote:


On Fri, Aug 30, 2019 at 5:12 AM Ed Merks <ed.me...@gmail.com <mailto:ed.me...@gmail.com>> wrote:

    Aleksandar,

    Yes, the initial patch set in
    https://git.eclipse.org/r/#/c/148581/ produced this build:

    
https://ci-staging.eclipse.org/platform/job/eclipse.platform.releng.aggregator-Gerrit/1079/


Thanks for the pointer. So the issue is at p2 layer more specifically ProductFile parser (not tycho) if it's an issue at all as &trade; is not valid xml entity at all [1] so the parser is correct. With that said I'm unsure how to proceed on this one as it makes sense to be able to use html entities. One idea is to define dtd file for product files where entities can be listed.

[1] https://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Predefined_entities_in_XML

    With this failure:

    Downloaded from 
tycho-snapshots:https://repo.eclipse.org/content/repositories/tycho-snapshots/org/eclipse/tycho/tycho-p2-repository-plugin/1.5.0-SNAPSHOT/tycho-p2-repository-plugin-1.5.0-20190829.120755-59.jar
  (14 kB at 497 kB/s)
    *16:33:37* [ERROR] Internal error: java.lang.RuntimeException:
    Unable to parse the product file
    
/home/jenkins/workspace/eclipse.platform.releng.aggregator-Gerrit/eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product:
    Problems parsing the product file
    
/home/jenkins/workspace/eclipse.platform.releng.aggregator-Gerrit/eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product.
    The entity "trade" was referenced, but not declared. -> [Help 1]
    *16:33:37* org.apache.maven.InternalErrorException: Internal error: 
java.lang.RuntimeException: Unable to parse the product file 
/home/jenkins/workspace/eclipse.platform.releng.aggregator-Gerrit/eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product
    *16:33:37*      at org.apache.maven.DefaultMaven.execute 
(DefaultMaven.java:120)
    *16:33:37*      at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
    *16:33:37*      at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
    *16:33:37*      at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke 
(NativeMethodAccessorImpl.java:62)
    *16:33:37*      at sun.reflect.DelegatingMethodAccessorImpl.invoke 
(DelegatingMethodAccessorImpl.java:43)
    *16:33:37*      at java.lang.reflect.Method.invoke (Method.java:498)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced 
(Launcher.java:289)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.launch 
(Launcher.java:229)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode 
(Launcher.java:415)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.main 
(Launcher.java:356)
    *16:33:37* Caused by: java.lang.RuntimeException: Unable to parse the 
product file 
/home/jenkins/workspace/eclipse.platform.releng.aggregator-Gerrit/eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.P2GeneratorImpl.getPublisherActions 
(P2GeneratorImpl.java:289)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.AbstractMetadataGenerator.generateMetadata 
(AbstractMetadataGenerator.java:57)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.DefaultDependencyMetadataGenerator.generateMetadata
 (DefaultDependencyMetadataGenerator.java:32)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.DefaultDependencyMetadataGenerator.generateMetadata
 (DefaultDependencyMetadataGenerator.java:1)
    *16:33:37*      at 
org.eclipse.tycho.p2.resolver.P2DependencyResolver.getDependencyMetadata 
(P2DependencyResolver.java:148)
    *16:33:37*      at 
org.eclipse.tycho.p2.resolver.P2DependencyResolver.setupProjects 
(P2DependencyResolver.java:131)
    *16:33:37*      at 
org.eclipse.tycho.core.resolver.DefaultTychoResolver.setupProject 
(DefaultTychoResolver.java:97)
    *16:33:37*      at 
org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead 
(TychoMavenLifecycleParticipant.java:90)
    *16:33:37*      at org.apache.maven.DefaultMaven.doExecute 
(DefaultMaven.java:264)
    *16:33:37*      at org.apache.maven.DefaultMaven.doExecute 
(DefaultMaven.java:192)
    *16:33:37*      at org.apache.maven.DefaultMaven.execute 
(DefaultMaven.java:105)
    *16:33:37*      at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
    *16:33:37*      at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
    *16:33:37*      at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke 
(NativeMethodAccessorImpl.java:62)
    *16:33:37*      at sun.reflect.DelegatingMethodAccessorImpl.invoke 
(DelegatingMethodAccessorImpl.java:43)
    *16:33:37*      at java.lang.reflect.Method.invoke (Method.java:498)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced 
(Launcher.java:289)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.launch 
(Launcher.java:229)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode 
(Launcher.java:415)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.main 
(Launcher.java:356)
    *16:33:37* Caused by: org.eclipse.core.runtime.CoreException: Problems 
parsing the product file 
/home/jenkins/workspace/eclipse.platform.releng.aggregator-Gerrit/eclipse.platform.releng.tychoeclipsebuilder/equinox.starterkit.product/EclipseRTOSGiStarterKit.product.
    *16:33:37*      at 
org.eclipse.equinox.internal.p2.publisher.eclipse.ProductFile.<init> 
(ProductFile.java:253)
    *16:33:37*      at 
org.eclipse.equinox.internal.p2.publisher.eclipse.ProductFile.<init> 
(ProductFile.java:265)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.model.ProductFile2.<init> 
(ProductFile2.java:29)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.P2GeneratorImpl.getPublisherActions 
(P2GeneratorImpl.java:287)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.AbstractMetadataGenerator.generateMetadata 
(AbstractMetadataGenerator.java:57)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.DefaultDependencyMetadataGenerator.generateMetadata
 (DefaultDependencyMetadataGenerator.java:32)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.DefaultDependencyMetadataGenerator.generateMetadata
 (DefaultDependencyMetadataGenerator.java:1)
    *16:33:37*      at 
org.eclipse.tycho.p2.resolver.P2DependencyResolver.getDependencyMetadata 
(P2DependencyResolver.java:148)
    *16:33:37*      at 
org.eclipse.tycho.p2.resolver.P2DependencyResolver.setupProjects 
(P2DependencyResolver.java:131)
    *16:33:37*      at 
org.eclipse.tycho.core.resolver.DefaultTychoResolver.setupProject 
(DefaultTychoResolver.java:97)
    *16:33:37*      at 
org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead 
(TychoMavenLifecycleParticipant.java:90)
    *16:33:37*      at org.apache.maven.DefaultMaven.doExecute 
(DefaultMaven.java:264)
    *16:33:37*      at org.apache.maven.DefaultMaven.doExecute 
(DefaultMaven.java:192)
    *16:33:37*      at org.apache.maven.DefaultMaven.execute 
(DefaultMaven.java:105)
    *16:33:37*      at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
    *16:33:37*      at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
    *16:33:37*      at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke 
(NativeMethodAccessorImpl.java:62)
    *16:33:37*      at sun.reflect.DelegatingMethodAccessorImpl.invoke 
(DelegatingMethodAccessorImpl.java:43)
    *16:33:37*      at java.lang.reflect.Method.invoke (Method.java:498)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced 
(Launcher.java:289)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.launch 
(Launcher.java:229)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode 
(Launcher.java:415)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.main 
(Launcher.java:356)
    *16:33:37* Caused by: org.xml.sax.SAXParseException: The entity "trade" was 
referenced, but not declared.
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException
 (ErrorHandlerWrapper.java:203)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError 
(ErrorHandlerWrapper.java:177)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError 
(XMLErrorReporter.java:400)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError 
(XMLErrorReporter.java:327)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError 
(XMLScanner.java:1472)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEntityReference
 (XMLDocumentFragmentScannerImpl.java:1902)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next
 (XMLDocumentFragmentScannerImpl.java:3061)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next 
(XMLDocumentScannerImpl.java:602)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.next 
(XMLNSDocumentScannerImpl.java:112)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument
 (XMLDocumentFragmentScannerImpl.java:505)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse 
(XML11Configuration.java:842)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse 
(XML11Configuration.java:771)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.parsers.XMLParser.parse (XMLParser.java:141)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse 
(AbstractSAXParser.java:1213)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse 
(SAXParserImpl.java:643)
    *16:33:37*      at 
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse 
(SAXParserImpl.java:327)
    *16:33:37*      at 
org.eclipse.equinox.internal.p2.publisher.eclipse.ProductFile.<init> 
(ProductFile.java:242)
    *16:33:37*      at 
org.eclipse.equinox.internal.p2.publisher.eclipse.ProductFile.<init> 
(ProductFile.java:265)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.model.ProductFile2.<init> 
(ProductFile2.java:29)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.P2GeneratorImpl.getPublisherActions 
(P2GeneratorImpl.java:287)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.AbstractMetadataGenerator.generateMetadata 
(AbstractMetadataGenerator.java:57)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.DefaultDependencyMetadataGenerator.generateMetadata
 (DefaultDependencyMetadataGenerator.java:32)
    *16:33:37*      at 
org.eclipse.tycho.p2.impl.publisher.DefaultDependencyMetadataGenerator.generateMetadata
 (DefaultDependencyMetadataGenerator.java:1)
    *16:33:37*      at 
org.eclipse.tycho.p2.resolver.P2DependencyResolver.getDependencyMetadata 
(P2DependencyResolver.java:148)
    *16:33:37*      at 
org.eclipse.tycho.p2.resolver.P2DependencyResolver.setupProjects 
(P2DependencyResolver.java:131)
    *16:33:37*      at 
org.eclipse.tycho.core.resolver.DefaultTychoResolver.setupProject 
(DefaultTychoResolver.java:97)
    *16:33:37*      at 
org.eclipse.tycho.core.maven.TychoMavenLifecycleParticipant.afterProjectsRead 
(TychoMavenLifecycleParticipant.java:90)
    *16:33:37*      at org.apache.maven.DefaultMaven.doExecute 
(DefaultMaven.java:264)
    *16:33:37*      at org.apache.maven.DefaultMaven.doExecute 
(DefaultMaven.java:192)
    *16:33:37*      at org.apache.maven.DefaultMaven.execute 
(DefaultMaven.java:105)
    *16:33:37*      at org.apache.maven.cli.MavenCli.execute (MavenCli.java:956)
    *16:33:37*      at org.apache.maven.cli.MavenCli.doMain (MavenCli.java:288)
    *16:33:37*      at org.apache.maven.cli.MavenCli.main (MavenCli.java:192)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke0 (Native 
Method)
    *16:33:37*      at sun.reflect.NativeMethodAccessorImpl.invoke 
(NativeMethodAccessorImpl.java:62)
    *16:33:37*      at sun.reflect.DelegatingMethodAccessorImpl.invoke 
(DelegatingMethodAccessorImpl.java:43)
    *16:33:37*      at java.lang.reflect.Method.invoke (Method.java:498)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced 
(Launcher.java:289)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.launch 
(Launcher.java:229)
    *16:33:37*      at 
org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode 
(Launcher.java:415)
    *16:33:37*      at org.codehaus.plexus.classworlds.launcher.Launcher.main 
(Launcher.java:356)

    So you can reproduce the problem by using &trade; where where I've
    now used |&#8482;
    |

    
|https://git.eclipse.org/r/#/c/148581/1..3/eclipse.platform.releng.tychoeclipsebuilder/eclipse-junit-tests/eclipse-junit-tests.product|

    |And of course could likely reproduce it with any product file
    that contains ||&trade; anywhere in the XML.
    |

    On 29.08.2019 22:23, Aleksandar Kurtakov wrote:

        The first cause is that all the Platform's products have in
        some way messed up the trademark symbol.  I've opened this
        Bugzilla and included a Gerrit commit with the fixes:

        https://bugs.eclipse.org/bugs/show_bug.cgi?id=550572

        (Too bad Tycho doesn't like &trade; but good that it's okay
        with |&#8482; |because I think using the actual unicode
        symbol is just begging for someone to corrupt it again.)

    Do you have reference/bug/reproducer about ^^? I would like to
    see Tycho handling it fine.
    _______________________________________________
    platform-dev mailing list
    platform-dev@eclipse.org <mailto:platform-dev@eclipse.org>
    To change your delivery options, retrieve your password, or
    unsubscribe from this list, visit
    https://www.eclipse.org/mailman/listinfo/platform-dev



--
Alexander Kurtakov
Red Hat Eclipse Team

_______________________________________________
platform-dev mailing list
platform-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://www.eclipse.org/mailman/listinfo/platform-dev
_______________________________________________
platform-dev mailing list
platform-dev@eclipse.org
To change your delivery options, retrieve your password, or unsubscribe from 
this list, visit
https://www.eclipse.org/mailman/listinfo/platform-dev

Reply via email to