Moonshine-IDE / Moonshine-SDK-Installer

To take full advantage of Moonshine IDE you will need third party SDKs like Apache® Flex or Apache® Royale. In order to make it easier for you to setup the required SDKs, we created the Moonshine SDK Installer.
https://moonshine-ide.com/download-sdk-installer/
Other
8 stars 2 forks source link

flex-config.xml Breaks the Compilation While Using Latest Harman Flex/AIR SDK #56

Closed rat-moonshine closed 3 years ago

rat-moonshine commented 3 years ago

After updating to most latest Harman SDK we found compilation breaks during MockupVisualEditor's documentation preparation on macOS Bamboo build-system. Preparation of the documentation uses flex-config.xml when Moonshine or MockupVisualEditor compiles on air-config.xml - so we never noticed this problem previously, or this problem introduced in newer Harman distribution.

The error details discussed at here - https://github.com/prominic/Moonshine-IDE/issues/860#issuecomment-861371086.

rat-moonshine commented 3 years ago

After some discussion with @piotrzarzycki21 we agreed this could be another path/replace scenario as we previously seen for air-config.xml at https://github.com/prominic/Moonshine-SDK-Installer/issues/32#issuecomment-772711680 and taken appropriate actions.

I tried to determine where could be the playerglobal.swc location in the SDK directory and replaced following fields in the flex-config.xml file:

  1. Replace all the occurrence of {playerglobalHome}/{targetPlayerMajorVersion} with libs/player/{targetPlayerMajorVersion}
  2. Replace <target-player>27.0</target-player> with <target-player>32.0</target-player>
  3. Change <swf-version>38</swf-version> with <swf-version>44</swf-version>

(2 and 3 needs to be updated with Harman AIR SDK version updates)

I see having these changes we pass the compilation errors that mentioned in https://github.com/prominic/Moonshine-IDE/issues/860#issuecomment-861371086. We'll need these to be handled during Harman SDK download by MSDKI.

rat-moonshine commented 3 years ago

Using the said changes in flex-config.xml, installing Bamboo builds failed to launch the application with following error:

image

However, having the same changes locally compiled Moonshine installed and launch correctly during my tests. Maybe, the error with Bamboo build is not related to flex-config.xml changes at all.

piotrzarzycki21 commented 3 years ago

Using the said changes in flex-config.xml, installing Bamboo builds failed to launch the application with following error:

image

However, having the same changes locally compiled Moonshine installed and launch correctly during my tests. Maybe, the error with Bamboo build is not related to flex-config.xml changes at all.

I have installed today Moonshine newest nightly on my MacOS Catalina and I got splash screen from Harman Air and Moonshine launches without the problem. On MacOS Big Sur no changes I have above issue.

rat-moonshine commented 3 years ago

Here's the detailed tests and results on the error https://github.com/prominic/Moonshine-SDK-Installer/issues/56#issuecomment-861650180 from today and the solution that worked.

TEST 1 (local)

Using the Harman/Flex SDK distributing by MSDKI, compiling and packaging an application locally didn't triggered the said error at all, the application installs properly and launched.

TEST 2 (Bamboo)

(All the following tests performed on the Harman Flex/SDK version distributes by latest MSDKI application)

Description Results
Installed a fresh copy of the SDK and tested with unmodified flex-config.xml Thrown error during the application launch
Tested with modified flex-config.xml in the fresh downloaded SDK Thrown error during the application launch
Tested by forcefully remove any possible extended-attribute that may exists to any SDK files (although any suppose not to exists when downloaded through MSDKI) Thrown error during the application launch

TEST 3 (Bamboo)

Description Results
Created a modified MSDKI build that suppose to download an old version of Harman AIR SDK, and installed a fresh copy of the Harman/Flex SDK Thrown error during the application launch

TEST 4 (Bamboo)

  1. Manually downloaded SDK-only copy of Apache Flex at Bamboo build-system
  2. Manually downloaded Flex-SDK copy of Harman AIR at Bamboo build-system
  3. Manually overwrites/overlays the Harman AIR SDK files over the Apache Flex SDK folder
  4. Removed any extended attributes because of downloads through the browser
  5. Modified the flex-config.xml per https://github.com/prominic/Moonshine-SDK-Installer/issues/56#issuecomment-861398494 to pass the compilation process
  6. An packaged and installed application didn't thrown the said error anymore

THOUGHTS

Since the result of TEST 4 it strikes that the overlaying process of MSDKI might be wrong.

But the question remains how the SDK (installed by MSDKI) when using locally and packaged/installed, an application do not throws any error during a launch (TEST 1) and works properly.

I don't have any immediate answer because of these two contradictory situations.

Currently, the builds are working properly from Bamboo, I have fixed the Harman splash screen issue (https://github.com/prominic/Moonshine-SDK-Installer/issues/56#issuecomment-862212849).

piotrzarzycki21 commented 3 years ago

Are you doing TEST 2 on Bamboo or is it all local tests ?

rat-moonshine commented 3 years ago

All TEST-* were on the Bamboo build-system except TEST-1, packaged by Bamboo, installed on local system for launch test.

(I updated my comment for a clarity on this)

piotrzarzycki21 commented 3 years ago

All TEST-* were on the Bamboo build-system except TEST-1, packaged by Bamboo, installed on local system for launch test.

(I updated my comment for a clarity on this)

What about run ant build fully setup to produce installation package on your local machine ? I'm thinking to do that on my MacOS Big Sur to see if I'll have same problem - of course without signing installer etc.

rat-moonshine commented 3 years ago

TEST 1 is exactly about all these:

  1. Install Harman/Flex SDK using MSDKI default distribution, locally
  2. Run Ant build-script of an application to produce the package, locally
  3. Install by the produced packaged and test
rat-moonshine commented 3 years ago

Added untested modification to the installer-script to support https://github.com/prominic/Moonshine-SDK-Installer/issues/56#issuecomment-861398494. This could fail with replaceregexp command though, build needs to be tested.

rat-moonshine commented 3 years ago

More tests on maximise/restore transition and font issues:

Transitioning Issue

Harman SDK Version Application Description Issue Is
33.1.1.476 (latest) Moonshine Packaged with build-script and installed Happening
33.1.1.406 (earlier SDK being used for production) Moonshine Packaged with build-script and installed Happening
-same- Moonshine Removed all the custom maximise/restore/window-size window handlers; Packaged with build-script and installed Happening
-same- GBAuth Packaged with build-script and installed Happening in lower-amount, possibly because of less amount of UI-elements on screen
33.1.1.406 Moonshine Last released v3.1.1 Not Happening
N/A Native (development - last released) - Not Happening

Font Issue

Bamboo Build# Description Is Happening
1958 Before "Getting Started" being merged Not Happening
1960 Merged "Getting Started" branch Not Happening

I would like to continue testing more Bamboo builds to understand when the font issue being started. If this issue introduced after updating latest Harman/Flex SDK, I can still able to reproduce when using the earlier-used SDK. I also want to give a test downloading the earlier version in manually downloaded way if that make any difference in tests.

rat-moonshine commented 3 years ago

I'm closing this issue as the original requirement is met https://github.com/prominic/Moonshine-SDK-Installer/commit/031f124272a3c49c33d43163f53a8cf527adb0f9 to fix the flex-config.xml file.

The maximise/restore transitioning and broken-font issue shall be discussed separately - https://github.com/prominic/Moonshine-SDK-Installer/issues/59.

piotrzarzycki21 commented 3 years ago

This is related to our issue with problems in flex-config.xml and air-config.xml. I think you should use this one to fix stuff.