The encoding issues were fixed (had to set java_tool_options on CI server). After running the approval script however I noticed I did not update releasemgr/RELEASE_NOTES. Also, there is a unit test fail:
Suite: flexUnitTests.FunctionalTests Tests run: 4, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 0.492 sec ________________________________ From: Yishay Weiss <yishayj...@hotmail.com> Sent: Monday, May 1, 2023 10:28 AM To: dev@royale.apache.org <dev@royale.apache.org> Subject: Re: 0.9.10 Release Update on current status: Thanks to Josh's fixes to compiler and typedefs we have reproducible binary artifacts in maven build. The main release archives, however, still have some issues: a) Line ending inconsistency in source files. I think this is fixed by changing git global settings on CI to core.autocrlf to 'input'. b) differences in PNG, gif, ico, mp3, mp4, ttf for source files. I suspect ant zip task is compressing these, so I'll have to change build script to disable compression for those files. c) Encoding differences in txt, as, DEPENDENCIES source files. I will need to figure out where this encoding happens, I suspect it's a zip task issue too. ________________________________ From: Yishay Weiss <yishayj...@hotmail.com> Sent: Thursday, April 27, 2023 3:25 PM To: dev@royale.apache.org <dev@royale.apache.org> Subject: Re: 0.9.10 Release Thanks, that worked. ________________________________ From: Josh Tynjala <joshtynj...@bowlerhat.dev> Sent: Tuesday, April 25, 2023 9:15 PM To: dev@royale.apache.org <dev@royale.apache.org> Subject: Re: 0.9.10 Release It looks like the jquery-1.9.js externs download was being cached by download-maven-plugin, and one machine had an older version than the other. We were skipping the cache for other .js externs downloads already, so I updated them all to skip the cache. Hopefully, this will be the last difference. Give it another try! -- Josh Tynjala Bowler Hat LLC <https://bowlerhat.dev> On Thu, Apr 20, 2023 at 12:17 AM Yishay Weiss <yishayj...@hotmail.com> wrote: > I started another release candidate. Somehow, I'm getting a > reproducibility problem which did not exist before in type-defs. > > If somebody wants to confirm you can try to reproduce the problem with > the following step: > > > From the royale-typedefs repo: > 1. Run ant -f releasesteps.xml Release_Step_007 -Drelease.version=0.9.10 > -DskipTests=true > > I had to locally modify releasesteps.xml (line 122) to add CI > crendentials [1]. I still need to fix the permissions in CI. > > What I'm seeing is that locally built > royale-typedefs-jquery-0.9.10-typedefs.swc does not match archived one. > > [1] username="****" password="***" > ________________________________ > From: Josh Tynjala <joshtynj...@bowlerhat.dev> > Sent: Monday, April 17, 2023 11:52 PM > To: dev@royale.apache.org <dev@royale.apache.org> > Subject: Re: 0.9.10 Release > > Alright, my commit today seems to do the trick. All SWC files in the > js/libs, frameworks/libs, and frameworks/js/libs directories are a binary > match when I compare the Maven distribution as built on macOS vs built on > Windows. > > You need to make sure to pull the latest develop branch for both > royale-compiler and royale-asjs. > > -- > Josh Tynjala > Bowler Hat LLC <https://bowlerhat.dev> > > > On Sun, Apr 16, 2023 at 5:59 AM Yishay Weiss <yishayj...@hotmail.com> > wrote: > > > >I still need to figure out the duplicate hoisted variables in MXRoyale. > > > > I can confirm it's still happening. It does not happen on my machine with > > a simple "mvn clean install". > > ________________________________ > > From: Josh Tynjala <joshtynj...@bowlerhat.dev> > > Sent: Friday, April 7, 2023 2:01 AM > > To: dev@royale.apache.org <dev@royale.apache.org> > > Subject: Re: 0.9.10 Release > > > > My latest commits make the Jewel and JewelJS SWC files match between my > > macOS and Windows machines. I ended up having to switch to a different > > Maven Sass plugin because I realized the one we were using was no longer > > maintained, and it was misbehaving. This new plugin is based on the newer > > Sass that doesn't support CRLF output at all, so the changes I talked > about > > in my previous email ended up being a strict requirement. > > > > I still need to figure out the duplicate hoisted variables in MXRoyale. > > I'll need to dive into that on another day. > > > > -- > > Josh Tynjala > > Bowler Hat LLC <https://bowlerhat.dev> > > > > > > On Thu, Apr 6, 2023 at 9:57 AM Josh Tynjala <joshtynj...@bowlerhat.dev> > > wrote: > > > > > Some more findings: > > > > > > The difference in Jewel appears to be caused by defaults.css. The Maven > > > build at some point was updated to force Sass to output CRLF on > Windows, > > to > > > keep Git from saying that the file is modified after regenerating it. > > > Unfortunately, this breaks the ability to do a cross-platform > > reproducible > > > build because every other platform uses LF. I'm probably going to undo > > this > > > change (sorry, Greg!). However, it looks like adding a .gitattributes > > file > > > to the repo allows us to force line endings for specific files or > > > extensions, regardless of autocrlf behavior. It should provide the same > > > benefit as Greg's commit, while restoring reproducible builds. Side > > note: I > > > also found that modern Sass doesn't even provide the option to use > CRLF, > > so > > > this change is probably for the best because we may need to upgrade > Sass > > in > > > the future. > > > > > > The situation with duplicates of hoisted variables in > > > MXRoyaleBase/MXRoyale in JDK 17 might be a threading conflict (and > > probably > > > could happen with JDK 11 too, if conditions are correct). When the > issue > > > reproduces, I see that the function scope actually contains duplicate > > > definitions of every local variable, instead of just one of each. > > > Interestingly, if I add enough logging to help myself debug this issue, > > the > > > scope ends up containing one of each local variable, and it doesn't > > > duplicate the hoisted variables anymore. That makes me think multiple > > > threads may be manipulating the scope. > > > > > > -- > > > Josh Tynjala > > > Bowler Hat LLC <https://bowlerhat.dev> > > > > > > > > > On Wed, Apr 5, 2023 at 2:42 PM Josh Tynjala <joshtynj...@bowlerhat.dev > > > > > wrote: > > > > > >> Some preliminary findings: > > >> > > >> Jewel: > > >> - Some plaintext [Embed] content was not matching up between macOS and > > >> Windows. It was clearly a text encoding issue. I fixed a compiler bug > > >> where it was using the system default encoding instead of UTF-8. A > > >> workaround would be to use JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8. > > >> - The SWF files inside the Jewel SWCs still do not match between my > > >> machines. I still need to figure out why. Probably a missing compiler > > >> option in the Jewel pom.xml file. > > >> > > >> MXRoyale and MXRoyaleBase: > > >> - On Windows, I was seeing hoisted variables appear in the JS output > > >> twice. I noticed that I was using JDK 11 on macOS, and JDK 17 on > > Windows. > > >> When I switched to JDK 11 on Windows, the problem went away. It looks > > like > > >> there's a bug in the compiler that needs to be fixed to support JDK > 17. > > >> Until then, I recommend building with JDK 11 or older (8 should be > fine > > >> too). > > >> > > >> -- > > >> Josh Tynjala > > >> Bowler Hat LLC <https://bowlerhat.dev> > > >> > > >> > > >> On Wed, Apr 5, 2023 at 10:11 AM Josh Tynjala < > joshtynj...@bowlerhat.dev > > > > > >> wrote: > > >> > > >>> Alright, I built the distribution locally with Maven on two different > > >>> machines, and I can see that the following SWCs don't match: Jewel, > > >>> MXRoyale, and MXRoyaleBase > > >>> > > >>> It affects both the JS and SWF versions of the SWCs. > > >>> > > >>> I'll see what I can do. > > >>> > > >>> -- > > >>> Josh Tynjala > > >>> Bowler Hat LLC <https://bowlerhat.dev> > > >>> > > >>> > > >>> On Mon, Apr 3, 2023 at 8:04 AM Josh Tynjala < > joshtynj...@bowlerhat.dev > > > > > >>> wrote: > > >>> > > >>>> Yes, it's on by default. > > >>>> > > >>>> I guess that there must be some other reason why the builds don't > > match > > >>>> up. I just happened to notice this, in particular, was different > > between > > >>>> the Ant build and the Maven build. > > >>>> > > >>>> You may need to extract the .swc files and manually compare the > > >>>> contents to see what is different. > > >>>> > > >>>> -- > > >>>> Josh Tynjala > > >>>> Bowler Hat LLC <https://bowlerhat.dev> > > >>>> > > >>>> > > >>>> On Sun, Apr 2, 2023 at 4:01 AM Yishay Weiss <yishayj...@hotmail.com > > > > >>>> wrote: > > >>>> > > >>>>> Is that option on by default? I just tried building both on release > > >>>>> machine and locally and am still getting the mismatch. > > >>>>> > > >>>>> <exec executable="${mvn}" dir="${artifactfolder}/sources" > > >>>>> failonerror="true" > > > >>>>> <arg value="-X" /> > > >>>>> <arg value="-P" /> > > >>>>> <arg > > >>>>> > > > value="royale-release,apache-release,_reproducible-build,with-distribution,with-examples,with-manualtests,option-with-swf" > > >>>>> /> > > >>>>> <arg value="clean" /> > > >>>>> <arg value="install" /> > > >>>>> </exec> > > >>>>> > > >>>>> Is how it gets built now locally. Intuitively debug info should not > > be > > >>>>> part of the release but I need to look into it further. > > >>>>> ________________________________ > > >>>>> From: Josh Tynjala <joshtynj...@bowlerhat.dev> > > >>>>> Sent: Tuesday, March 28, 2023 6:17 PM > > >>>>> To: dev@royale.apache.org <dev@royale.apache.org> > > >>>>> Subject: Re: 0.9.10 Release > > >>>>> > > >>>>> Hey Yishay, > > >>>>> > > >>>>> I recently made a commit that adds the swf-debugfile-alias compiler > > >>>>> option > > >>>>> for SWC files built by Maven. This compiler option was being used > by > > >>>>> Ant > > >>>>> already, but it never got added to the Maven build. And I think > that > > >>>>> binaries would fail comparison without it. This may be why Release > > >>>>> Step 11 > > >>>>> was failing for you. > > >>>>> > > >>>>> Basically, swf-debugfile-alias ensures that the debugging > information > > >>>>> in > > >>>>> the SWC doesn't include the local path to the .as/.mxml source > files > > >>>>> (starting with something like C:\Users\joshtynjala\ or > > >>>>> /Users/CoolGuy19/). > > >>>>> Instead, it sets a generic path that will always match among builds > > >>>>> from > > >>>>> different machines. Considering this was missing, it sure sounds > > like a > > >>>>> reason why binary comparison would fail. > > >>>>> > > >>>>> -- > > >>>>> Josh Tynjala > > >>>>> Bowler Hat LLC <https://bowlerhat.dev> > > >>>>> > > >>>>> > > >>>>> On Wed, Feb 22, 2023 at 10:38 AM Yishay Weiss < > > yishayj...@hotmail.com> > > >>>>> wrote: > > >>>>> > > >>>>> > FYI I am put this on hold about 2 weeks ago after failing to > debug > > a > > >>>>> > binary reproducibility issue in as-js repo. > > >>>>> > > > >>>>> > @Harbs<mailto:harbs.li...@gmail.com>, can you see if the same > > issue > > >>>>> > exists for you? > > >>>>> > > > >>>>> > You can follow instructions [1] and tell me if step 2 succeeded > or > > >>>>> failed > > >>>>> > for you. > > >>>>> > > > >>>>> > Thanks. > > >>>>> > > > >>>>> > [1] > > >>>>> > > > >>>>> > > > apacheroyale.francecentral.cloudapp.azure.com:8080/job/Royale_Release_Step_011/ws/Success-5.txt > > >>>>> > < > > >>>>> > > > >>>>> > > > http://apacheroyale.francecentral.cloudapp.azure.com:8080/job/Royale_Release_Step_011/ws/Success-5.txt > > >>>>> > > > > >>>>> > ________________________________ > > >>>>> > From: Josh Tynjala <joshtynj...@bowlerhat.dev> > > >>>>> > Sent: Tuesday, January 17, 2023 10:08 PM > > >>>>> > To: dev@royale.apache.org <dev@royale.apache.org> > > >>>>> > Subject: Re: 0.9.10 Release > > >>>>> > > > >>>>> > Oops! I meant NO further changes. Sorry about that. You're good > to > > >>>>> go on my > > >>>>> > end. > > >>>>> > > > >>>>> > -- > > >>>>> > Josh Tynjala > > >>>>> > Bowler Hat LLC <https://bowlerhat.dev> > > >>>>> > > > >>>>> > > > >>>>> > On Tue, Jan 17, 2023 at 11:32 AM Yishay Weiss < > > >>>>> yishayj...@hotmail.com> > > >>>>> > wrote: > > >>>>> > > > >>>>> > > Thanks for the update, let me know when to pull the trigger. > > >>>>> > > > > >>>>> > > Get Outlook for Android<https://aka.ms/AAb9ysg> > > >>>>> > > ________________________________ > > >>>>> > > From: Josh Tynjala <joshtynj...@bowlerhat.dev> > > >>>>> > > Sent: Tuesday, January 17, 2023 7:05:29 PM > > >>>>> > > To: dev@royale.apache.org <dev@royale.apache.org> > > >>>>> > > Subject: Re: 0.9.10 Release > > >>>>> > > > > >>>>> > > I've updated the release notes with my changes. I have further > > >>>>> changes > > >>>>> > > planned before the release. > > >>>>> > > > > >>>>> > > -- > > >>>>> > > Josh Tynjala > > >>>>> > > Bowler Hat LLC <https://bowlerhat.dev> > > >>>>> > > > > >>>>> > > > > >>>>> > > On Mon, Jan 16, 2023 at 12:40 AM Yishay Weiss < > > >>>>> yishayj...@hotmail.com> > > >>>>> > > wrote: > > >>>>> > > > > >>>>> > > > Hi Guys, > > >>>>> > > > > > >>>>> > > > We’re starting a new release soon. As it’s been a while and I > > >>>>> expect > > >>>>> > some > > >>>>> > > > issues I have agreed with Harbs to do this release. 0.9.11 > > >>>>> should be > > >>>>> > > easier > > >>>>> > > > if we don’t wait too long, so the goal is for a different > > >>>>> volunteer to > > >>>>> > do > > >>>>> > > > the next one. > > >>>>> > > > > > >>>>> > > > If anybody wants to commit changes they are welcome to do so > > >>>>> now, and > > >>>>> > > > update the release notes. > > >>>>> > > > > > >>>>> > > > Please make sure the integration tests are working post > > commits. > > >>>>> > > > > > >>>>> > > > Thanks, > > >>>>> > > > Yishay > > >>>>> > > > > > >>>>> > > > > >>>>> > > > >>>>> > > >>>> > > >