You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@royale.apache.org by Yishay Weiss <yi...@hotmail.com> on 2022/02/23 18:03:47 UTC
Swc Compiler Version and Binary Reproducibility
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)<https://www.tutorialspoint.com/java/lang/package_getimplementationversion.htm>
Re: Swc Compiler Version and Binary Reproducibility
Posted by Piotr Zarzycki <pi...@gmail.com>.
Hi Yishay,
I have added something but it was usually very minor things. Nothing I
believe which should be mentioned - general small improvements.
Thanks,
Piotr
pon., 28 lut 2022 o 12:45 Yishay Weiss <yi...@hotmail.com> napisał(a):
> Does anybody else want to add their changes? From memory, Harbs has made
> release optimizations and sanitizations, Alex has added support for modules
> in release, and Greg and Piotr have made various improvements in compiler
> and emulation.
>
> Thanks.
>
> From: Josh Tynjala<ma...@bowlerhat.dev>
> Sent: Thursday, February 24, 2022 7:06 PM
> To: Yishay Weiss<ma...@hotmail.com>
> Cc: dev@royale.apache.org<ma...@royale.apache.org>
> Subject: Re: Swc Compiler Version and Binary Reproducibility
>
> Sounds good. I've updated the release notes with summaries of my changes
> in 0.9.9.
>
> --
> Josh Tynjala
> Bowler Hat LLC<https://bowlerhat.dev>
>
>
> On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yishayjobs@hotmail.com
> <ma...@hotmail.com>> wrote:
> 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<ma...@hotmail.com>
> Sent: Thursday, February 24, 2022 8:14 AM
> To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale
> Development<ma...@royale.apache.org>
> Subject: RE: Swc Compiler Version and Binary Reproducibility
>
> Ok, I’ll check that. Thanks for the explanation.
>
> From: Josh Tynjala<ma...@bowlerhat.dev>
> Sent: Wednesday, February 23, 2022 8:26 PM
> To: Apache Royale Development<ma...@royale.apache.org>
> Cc: yishayjobs@hotmail.com<ma...@hotmail.com><mailto:
> yishayjobs@hotmail.com<ma...@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 <yishayjobs@hotmail.com
> <ma...@hotmail.com><mailto:yishayjobs@hotmail.com<mailto:
> yishayjobs@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><http://tutorialspoint.com>)<
> https://www.tutorialspoint.com/java/lang/package_getimplementationversion.htm
> >
>
>
>
--
Piotr Zarzycki
RE: Swc Compiler Version and Binary Reproducibility
Posted by Maria Jose Esteve <mj...@iest.com>.
Done. I hope I got it right 😝
Hiedra
-----Mensaje original-----
De: Yishay Weiss <yi...@hotmail.com>>
Enviado el: lunes, 28 de febrero de 2022 20:43
Para: dev@royale.apache.org<ma...@royale.apache.org>; Josh Tynjala <jo...@bowlerhat.dev>>
Asunto: RE: Swc Compiler Version and Binary Reproducibility
Looks like it’s in ReleaseModules branch.
Maria, thanks for the list. Can you update <royale-asjs>/RELEASE_NOTES.md with those changes?
From: Alex Harui<ma...@adobe.com.INVALID>
Sent: Monday, February 28, 2022 7:29 PM
To: dev@royale.apache.org<ma...@royale.apache.org>>; Josh Tynjala<ma...@bowlerhat.dev>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Did the modules stuff go in develop or in a branch?
On 2/28/22, 3:46 AM, "Yishay Weiss" <yi...@hotmail.com>> wrote:
Does anybody else want to add their changes? From memory, Harbs has made release optimizations and sanitizations, Alex has added support for modules in release, and Greg and Piotr have made various improvements in compiler and emulation.
Thanks.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Thursday, February 24, 2022 7:06 PM
To: Yishay Weiss<ma...@hotmail.com>
Cc: dev@royale.apache.org<ma...@royale.apache.org>>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Sounds good. I've updated the release notes with summaries of my changes in 0.9.9.
--
Josh Tynjala
Bowler Hat LLC<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbowlerhat.dev%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YSZGoU4tthUMzfnikCqsaMEqW%2B8gbjZBT%2BVNSc9rlB8%3D&reserved=0>
On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yi...@hotmail.com>>> wrote:
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbowlerhat.dev%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YSZGoU4tthUMzfnikCqsaMEqW%2B8gbjZBT%2BVNSc9rlB8%3D&reserved=0>
On Wed, Feb 23, 2022 at 10:04 AM Yishay Weiss <yi...@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<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftutorialspoint.com%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=QyrxqPTdJ7XyVJ9XjUNj5XZgavXjhky7EEpU86lqtto%3D&reserved=0><https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftutorialspoint.com%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=QyrxqPTdJ7XyVJ9XjUNj5XZgavXjhky7EEpU86lqtto%3D&reserved=0>)<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.tutorialspoint.com%2Fjava%2Flang%2Fpackage_getimplementationversion.htm&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=pm9dUWczQOdfkmUXnMAhrIaj8UBXfl2Ic1hxNP45Q6Q%3D&reserved=0>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Yishay Weiss <yi...@hotmail.com>.
Looks like it’s in ReleaseModules branch.
Maria, thanks for the list. Can you update <royale-asjs>/RELEASE_NOTES.md with those changes?
From: Alex Harui<ma...@adobe.com.INVALID>
Sent: Monday, February 28, 2022 7:29 PM
To: dev@royale.apache.org<ma...@royale.apache.org>; Josh Tynjala<ma...@bowlerhat.dev>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Did the modules stuff go in develop or in a branch?
On 2/28/22, 3:46 AM, "Yishay Weiss" <yi...@hotmail.com> wrote:
Does anybody else want to add their changes? From memory, Harbs has made release optimizations and sanitizations, Alex has added support for modules in release, and Greg and Piotr have made various improvements in compiler and emulation.
Thanks.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Thursday, February 24, 2022 7:06 PM
To: Yishay Weiss<ma...@hotmail.com>
Cc: dev@royale.apache.org<ma...@royale.apache.org>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Sounds good. I've updated the release notes with summaries of my changes in 0.9.9.
--
Josh Tynjala
Bowler Hat LLC<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbowlerhat.dev%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YSZGoU4tthUMzfnikCqsaMEqW%2B8gbjZBT%2BVNSc9rlB8%3D&reserved=0>
On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yi...@hotmail.com>> wrote:
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbowlerhat.dev%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YSZGoU4tthUMzfnikCqsaMEqW%2B8gbjZBT%2BVNSc9rlB8%3D&reserved=0>
On Wed, Feb 23, 2022 at 10:04 AM Yishay Weiss <yi...@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<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftutorialspoint.com%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=QyrxqPTdJ7XyVJ9XjUNj5XZgavXjhky7EEpU86lqtto%3D&reserved=0><https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftutorialspoint.com%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=QyrxqPTdJ7XyVJ9XjUNj5XZgavXjhky7EEpU86lqtto%3D&reserved=0>)<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.tutorialspoint.com%2Fjava%2Flang%2Fpackage_getimplementationversion.htm&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=pm9dUWczQOdfkmUXnMAhrIaj8UBXfl2Ic1hxNP45Q6Q%3D&reserved=0>
Re: Swc Compiler Version and Binary Reproducibility
Posted by Alex Harui <ah...@adobe.com.INVALID>.
Did the modules stuff go in develop or in a branch?
On 2/28/22, 3:46 AM, "Yishay Weiss" <yi...@hotmail.com> wrote:
Does anybody else want to add their changes? From memory, Harbs has made release optimizations and sanitizations, Alex has added support for modules in release, and Greg and Piotr have made various improvements in compiler and emulation.
Thanks.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Thursday, February 24, 2022 7:06 PM
To: Yishay Weiss<ma...@hotmail.com>
Cc: dev@royale.apache.org<ma...@royale.apache.org>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Sounds good. I've updated the release notes with summaries of my changes in 0.9.9.
--
Josh Tynjala
Bowler Hat LLC<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbowlerhat.dev%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YSZGoU4tthUMzfnikCqsaMEqW%2B8gbjZBT%2BVNSc9rlB8%3D&reserved=0>
On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yi...@hotmail.com>> wrote:
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbowlerhat.dev%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=YSZGoU4tthUMzfnikCqsaMEqW%2B8gbjZBT%2BVNSc9rlB8%3D&reserved=0>
On Wed, Feb 23, 2022 at 10:04 AM Yishay Weiss <yi...@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<https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftutorialspoint.com%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=QyrxqPTdJ7XyVJ9XjUNj5XZgavXjhky7EEpU86lqtto%3D&reserved=0><https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Ftutorialspoint.com%2F&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=QyrxqPTdJ7XyVJ9XjUNj5XZgavXjhky7EEpU86lqtto%3D&reserved=0>)<https://nam04.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.tutorialspoint.com%2Fjava%2Flang%2Fpackage_getimplementationversion.htm&data=04%7C01%7Caharui%40adobe.com%7C3dddec79abb44f8121b008d9faafca25%7Cfa7b1b5a7b34438794aed2c178decee1%7C0%7C0%7C637816455934671374%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=pm9dUWczQOdfkmUXnMAhrIaj8UBXfl2Ic1hxNP45Q6Q%3D&reserved=0>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Maria Jose Esteve <mj...@iest.com>.
Hi, Yishay.
I think the only significant thing I added was:
- Added Jewel TriStateCheckBox and some associated beads: TriStateCheckBoxTooltipState, TriStateCheckBoxState.
- Added Jewel TriStateCheckBox example in TDJ
- Added emphasized and secondary sass settings for Jewel checkbox / switch / TriStateCheckBox
- ComboBoxReadOnly
And icon constants have been added to MaterialIconType and FontAwesome5IconType.
Thx.
Hiedra
-----Mensaje original-----
De: Yishay Weiss <yi...@hotmail.com>
Enviado el: lunes, 28 de febrero de 2022 12:45
Para: Josh Tynjala <jo...@bowlerhat.dev>
CC: dev@royale.apache.org
Asunto: RE: Swc Compiler Version and Binary Reproducibility
Does anybody else want to add their changes? From memory, Harbs has made release optimizations and sanitizations, Alex has added support for modules in release, and Greg and Piotr have made various improvements in compiler and emulation.
Thanks.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Thursday, February 24, 2022 7:06 PM
To: Yishay Weiss<ma...@hotmail.com>
Cc: dev@royale.apache.org<ma...@royale.apache.org>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Sounds good. I've updated the release notes with summaries of my changes in 0.9.9.
--
Josh Tynjala
Bowler Hat LLC<https://bowlerhat.dev>
On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yi...@hotmail.com>> wrote:
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I'll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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 <yi...@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><http://tutorialspoint.com>)<https://www.tutorialspoint.com/java/lang/package_getimplementationversion.htm>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Yishay Weiss <yi...@hotmail.com>.
Does anybody else want to add their changes? From memory, Harbs has made release optimizations and sanitizations, Alex has added support for modules in release, and Greg and Piotr have made various improvements in compiler and emulation.
Thanks.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Thursday, February 24, 2022 7:06 PM
To: Yishay Weiss<ma...@hotmail.com>
Cc: dev@royale.apache.org<ma...@royale.apache.org>
Subject: Re: Swc Compiler Version and Binary Reproducibility
Sounds good. I've updated the release notes with summaries of my changes in 0.9.9.
--
Josh Tynjala
Bowler Hat LLC<https://bowlerhat.dev>
On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yi...@hotmail.com>> wrote:
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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 <yi...@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><http://tutorialspoint.com>)<https://www.tutorialspoint.com/java/lang/package_getimplementationversion.htm>
Re: Swc Compiler Version and Binary Reproducibility
Posted by Josh Tynjala <jo...@bowlerhat.dev>.
Sounds good. I've updated the release notes with summaries of my changes in
0.9.9.
--
Josh Tynjala
Bowler Hat LLC <https://bowlerhat.dev>
On Thu, Feb 24, 2022 at 1:09 AM Yishay Weiss <yi...@hotmail.com> wrote:
> 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 <yi...@hotmail.com>
> *Sent: *Thursday, February 24, 2022 8:14 AM
> *To: *Josh Tynjala <jo...@bowlerhat.dev>; Apache Royale Development
> <de...@royale.apache.org>
> *Subject: *RE: Swc Compiler Version and Binary Reproducibility
>
>
>
> Ok, I’ll check that. Thanks for the explanation.
>
> From: Josh Tynjala<mailto:joshtynjala@bowlerhat.dev
> <jo...@bowlerhat.dev>>
> Sent: Wednesday, February 23, 2022 8:26 PM
> To: Apache Royale Development<mailto:dev@royale.apache.org
> <de...@royale.apache.org>>
> Cc: yishayjobs@hotmail.com<ma...@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 <yishayjobs@hotmail.com
> <ma...@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
> >
>
>
>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Yishay Weiss <yi...@hotmail.com>.
I had the following in my settings.xml, not sure why it was there to begin with. Sorry for the noise.
<profiles>
<profile>
<id>royale-release</id>
<properties>
<royale.compiler.version>0.9.8</royale.compiler.version>
</properties>
</profile>
</profiles>
From: Yishay Weiss<ma...@hotmail.com>
Sent: Thursday, March 3, 2022 5:39 PM
To: dev@royale.apache.org<ma...@royale.apache.org>; Josh Tynjala<ma...@bowlerhat.dev>
Subject: RE: Swc Compiler Version and Binary Reproducibility
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 11:09 AM
To: dev@royale.apache.org<ma...@royale.apache.org>; Josh Tynjala<ma...@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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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 <yi...@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>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Yishay Weiss <yi...@hotmail.com>.
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 11:09 AM
To: dev@royale.apache.org<ma...@royale.apache.org>; Josh Tynjala<ma...@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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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 <yi...@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>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Yishay Weiss <yi...@hotmail.com>.
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<ma...@hotmail.com>
Sent: Thursday, February 24, 2022 8:14 AM
To: Josh Tynjala<ma...@bowlerhat.dev>; Apache Royale Development<ma...@royale.apache.org>
Subject: RE: Swc Compiler Version and Binary Reproducibility
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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 <yi...@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>
RE: Swc Compiler Version and Binary Reproducibility
Posted by Yishay Weiss <yi...@hotmail.com>.
Ok, I’ll check that. Thanks for the explanation.
From: Josh Tynjala<ma...@bowlerhat.dev>
Sent: Wednesday, February 23, 2022 8:26 PM
To: Apache Royale Development<ma...@royale.apache.org>
Cc: yishayjobs@hotmail.com<ma...@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 <yi...@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>
Re: Swc Compiler Version and Binary Reproducibility
Posted by Josh Tynjala <jo...@bowlerhat.dev>.
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 <yi...@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)<
> https://www.tutorialspoint.com/java/lang/package_getimplementationversion.htm
> >
>
>