I’m still not sure what’s going on here. My local effective.pom has a 
dependency on compiler version 0.9.8, whereas the one in CI has 0.9.9.

The problem is on my local machine. I added the verbose option [1] to see how 
pom.effective was generated and saw

      <royale.compiler.version>0.9.8</royale.compiler.version>  <!-- 
org.apache.royale.typedefs:royale-typedefs-parent:0.9.9, line 48 -->

But when I look in parent pom.xml, line 48, I see

    <royale.compiler.version>0.9.9</royale.compiler.version>

I am guessing that the dependency is resolved elsewhere and that the effective 
pom verbose is misleading, but that’s just a theory.

Any ideas?



[1] Apache Maven Help Plugin – 
help:effective-pom<https://maven.apache.org/plugins/maven-help-plugin/effective-pom-mojo.html>

From: Yishay Weiss<mailto:yishayj...@hotmail.com>
Sent: Thursday, February 24, 2022 11:09 AM
To: dev@royale.apache.org<mailto:dev@royale.apache.org>; Josh 
Tynjala<mailto:joshtynj...@bowlerhat.dev>
Subject: RE: Swc Compiler Version and Binary Reproducibility

The effective pom for the CI swcs does show server version 0.9.8 which seems 
wrong. It could be I was doing something wrong on the CI.

I also had to update the years on NOTICE files and added my 0.9.9 changes to 
RELEASE_NOTES.md.

I think we need to update the rest of the RELEASE_NOTES files in the all repos, 
and when that’s done we can update the top level RELEASE_NOTES under 
royale-asjs\releasemgr\RELEASE_NOTES.

After that’s done I’ll start a new RC and will keep an eye on server versions 
for typedefs.

Thanks.

From: Yishay Weiss<mailto:yishayj...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<mailto:joshtynj...@bowlerhat.dev>; Apache Royale 
Development<mailto:dev@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility

Ok, I’ll check that. Thanks for the explanation.

From: Josh Tynjala<mailto:joshtynj...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<mailto:dev@royale.apache.org>
Cc: yishayj...@hotmail.com<mailto:yishayj...@hotmail.com>
Subject: Re: Swc Compiler Version and Binary Reproducibility

Could it be that the 8 and 9 are derived from the last part of Royale's recent 
version numbers: 0.9.8 and 0.9.9?

In your tutorialspoint link, it prints 1.6.0_25, so I can see why you think it 
might always be the Java version. However, I suspect that's specifically 
because tutorialspoint is calling getImplementationVersion() on the java.lang 
package, so the result will match whichever JDK it is from, since it is a core 
language class. I think that getImplementationVersion() is based on the version 
of the .jar file where the class/package is located. So, for Royale classes, it 
should return something like 0.9.8 or 0.9.9.

Anyway, it seems like the differing build numbers between CI and your local 
machine means that you have a different version of the compiler checked out 
locally than what the CI has.


--
Josh Tynjala
Bowler Hat LLC<https://bowlerhat.dev>


On Wed, Feb 23, 2022 at 10:04 AM Yishay Weiss 
<yishayj...@hotmail.com<mailto:yishayj...@hotmail.com>> wrote:
The typedef swcs produced on my machine are different to the ones produced on 
CI which breaks the build process. I noticed this difference in the catalog 
(though it’s not the only one)

        <compiler name="Apache Royale: Compiler: Compiler-Common" version="0.9" 
build="8"/>
        <compiler name="Apache Royale: Compiler: Compiler-Common" version="0.9" 
build="9"/>

Can somebody explain why the build# is different?

I had a look at SWCTarget.java in the compiler and it looks like it’s getting 
its information from VersionInfo which ultimately relies on Java’s 
getImplementationVersion() [1].

I checked java -version both on my machine and on the CI and they both output 
1.8.0_201, so I don’t understand why the version is different.

Any clues?

[1] Java.lang.getImplementationVersion() Method 
(tutorialspoint.com<http://tutorialspoint.com>)<https://www.tutorialspoint.com/java/lang/package_getimplementationversion.htm>


Reply via email to