Code Monkey home page Code Monkey logo

Comments (76)

rat-moonshine avatar rat-moonshine commented on June 16, 2024 1

I have fixed the symlink issues in installing SDK. SDK is now installed properly on Bamboo build system. I need to writeup a detail documentation on this soon.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

By the current MSDKI way, the application has fixed versions for each particular SDK which determines from its configuration file. This also decides which version of Flex and AIR SDK should download.

Remaining by the existing way, I can imagine a new entry of Flex SDK with Harman AIR, which shall download a Flex SDK and Harman AIR SDK and uncompress them in a way so the AIR overlays correctly on Flex SDK. I guess the build.xml in Flex SDK also downloads AIR SDK, we need to see if we can prevent it from doing that.

For any existing Flex SDK (with or without AIR), user can go following the instruction of overlaying Harman AIR and do this by themselves only. I'm not in a favor of cover many test cases with different way of doing on this regard.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Maybe we should go with simpler way. Just add entry which downloads Harman Air for Flex Developers and put message for the user - that he has to download manually Flex SDK binaries and unpack it to folder with downloaded Harman Air.

However I need to first check if Flex SDK binaries + Harman Air is enough to work.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Maybe we should go with simpler way. Just add entry which downloads Harman Air for Flex Developers and put message for the user - that he has to download manually Flex SDK binaries and unpack it to folder with downloaded Harman Air.

This could be a simpler procedure for us, however, this may not support the idea behind creating MSDKI - to install fully working SDK to the user's system.

On a separate note, we may need to ensure that we won't get into any legal trouble if we distribute Harman AIR through MSDKI (if the MSDKI nature is meant to be a distribution) if we already not did.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Maybe we should go with simpler way. Just add entry which downloads Harman Air for Flex Developers and put message for the user - that he has to download manually Flex SDK binaries and unpack it to folder with downloaded Harman Air.

This could be a simpler procedure for us, however, this may not support the idea behind creating MSDKI - to install fully working SDK to the user's system.

On a separate note, we may need to ensure that we won't get into any legal trouble if we distribute Harman AIR through MSDKI (if the MSDKI nature is meant to be a distribution) if we already not did.

Before we place link in our MSDKI I will ask them.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

We had some more discussion for this here: Moonshine-IDE/Moonshine-IDE#773

The plan is to download and extract a fresh copy of the Flex SDK.

Then Harman AIR should be downloaded and extracted into new SDK directory.

Then we will need to use an Ant script to update some references in frameworks/air-config.xml. Remove {airHome}/frameworks/ in these lines:

      <external-library-path>
          <path-element>{airHome}/frameworks/libs/air/airglobal.swc</path-element>
      </external-library-path>
...
      <library-path>
         <path-element>libs</path-element>
         <path-element>libs/mx</path-element>
         <path-element>libs/air</path-element>
         <path-element>{airHome}/frameworks/libs/air</path-element>

Note that the second reference can be removed entirely, since we already have a path-element for libs/air.

We may also need to update some other configuration files similar to what the Flex SDK Installer script is doing currently. For example update the AIR version in flex-sdk-description.xml.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I'm starts looking into this.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Updates:

  • Addition of new Flex/Harman entry
  • Initial detection for the Flex/Harman at Moonshine SDK Installer side
  • Changes in Moonshine source on initial detection at Moonshine side
  • Copyright load/show changes for the Flex/Harman

(The multi-copyright information for Flex/Harman currently loads from https://moonshine-ide.com/downloads/msdki/apache-flex-harman-sdk-installer-config.xml, when in case of Flex/Adobe loads from their remote site - http://www.apache.org/dist/flex/4.16.1/binaries/apache-flex-sdk-installer-config.xml. Having the Flex/Harman hosted remotely also fits the current design of parsing and triggering copyright URLs, in MSDKI. The other way could be having the xml bundled in the package, but this will cost additional logic in MSDKI to understand a local source).

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

I see @rat-moonshine got the license for Harman AIR from this page: https://airsdk.harman.com/download

We'll need to be careful that we are displaying this properly for users. I'm not sure if we need to show the privacy policy and other links as well.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

While working on the downloading scripts in Ant file for the Harman AIR SDK, it starts to terminates every time.

After some investigation it found that accepting the copyright information (at Haman website) generates an id-based download URL, i.e.
https://airsdk.harman.com/api/versions/33.1.1.345/sdks/AIRSDK_Flex_Windows.zip?id=63270

If one try to access the above link, s/he could see something like this:

Invalid link to the AIR SDK

The SDK can only be downloaded from the website, after acknowledging the Terms and Conditions under which it is to be used.
Please do not share direct links to the SDK files.

If you are seeing this message, please visit https://airsdk.harman.com/download and try again.

While trying to download through Ant by not generating a valid download-id, download starts failing each time. It appears the id is browser-session-based.

The possible solution could be (either any):

  1. Ask Harman for the API access to get an id (if the API strictly rely on browser-session then it might not work in desktop run)
  2. Ask Harman for providing a direct link access

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

@rat-moonshine So do we have a way of moving forward with that ?

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I didn't have a chance so far I shall plan to re-visit that shortly.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Okay. Some updates here, if this interests you. I spent some time testing with the link supplied by Andrew using the small utility Ant build script that downloads, extracts and updates the air-config file.

Tested on macOS currently, the results seems to be successful:
image

I confirm the folder populated with all the files and the air-config also being updated:
image

A test still pending on Windows. I have added the Ant build file in the repository.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I have committed first working version of Apache Flex + Harman AIR download/extract/merge process, currently testing only on macOS. There still some UI tuning requires but the download and merge process is mostly working.

However, I'm seeing strange problem while trying to run Flex Desktop sample project:

: Command: "/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin/bin/mxmlc" -load-config+=obj/NewFlexDesktopProjectConfig.xml -optimize=false +configname=air -debug=true
: SDK path: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin
: Sending to mxmlc: "/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin/bin/mxmlc" -load-config+=obj/NewFlexDesktopProjectConfig.xml -optimize=false +configname=air -debug=true
: Using AIR SDK: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin
: Using AIR SDK: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin
: Loading configuration: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin/frameworks/air-config.xml
: Loading configuration: /Users/devsena/Desktop/NewFlexDesktopProject/obj/NewFlexDesktopProjectConfig.xml
: Loading configuration: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/Flex4161AIR331/apache-flex-sdk-4.16.1-bin/frameworks/air-config.xml
: Loading configuration: /Users/devsena/Desktop/NewFlexDesktopProject/obj/NewFlexDesktopProjectConfig.xml
: Error: /Users/devsena/Desktop/NewFlexDesktopProject/src/NewFlexDesktopProject.mxml is of an unsupported type: mxml
: Error: /Users/devsena/Desktop/NewFlexDesktopProject/src/NewFlexDesktopProject.mxml is of an unsupported type: mxml

I tried to test by manually downloading Apache Flex binary and Harman AIR SDK and merge the latter over former, that also result the above error.

One can download a Flex binary from here (macOS): https://apachemirror.wuchna.com/flex/4.16.1/binaries/apache-flex-sdk-4.16.1-bin.tar.gz. Untar it somewhere.
Download the Harman AIR SDK: https://airsdk.harman.com/api/versions/33.1.1.406/sdks/AIRSDK_MacOS.zip (add requisite suffix as suggested by Andrew in his last email) and try to untar the AIR on Flex directory.

I confirm the air-config.xml file has necessary changes by itself, but I'm not familiar with this new error.

(Untar command if it's handy: tar -xvf $targetFileName)

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

During a manual download/test by @JoelProminic the merged SDK seems to worked for him. The difference he chose is to run unzip command instead of tar against AIRSDK_MacOS.zip - when the unzip command was failing for me some reason during Ant script run.

I shall re-visit these command and tests again.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

For quick reference, here are my commands. tar should work with .zip files, but maybe you had the wrong options

$ ls -1
AIRSDK_MacOS.zip
apache-flex-sdk-4.16.1-bin.tar.gz
$ tar xzvf apache-flex-sdk-4.16.1-bin.tar.gz
$ cd apache-flex-sdk-4.16.1-bin
$ unzip -o ../AIRSDK_MacOS.zip 

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

In practice, this didn't helped me either. I continue to see the error along with a new different warning, on macOS:

: Compiling NewFlexDesktopProject
: Command: "/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/bin/mxmlc" -load-config+=obj/NewFlexDesktopProjectConfig.xml -optimize=false +configname=air -debug=true
: SDK path: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin
: Sending to mxmlc: "/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/bin/mxmlc" -load-config+=obj/NewFlexDesktopProjectConfig.xml -optimize=false +configname=air -debug=true
: Using AIR SDK: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin
: WARNING: An illegal reflective access operation has occurred
: WARNING: Illegal reflective access by com.google.common.base.internal.Finalizer (file:/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/lib/guava-r08.jar) to field java.lang.Thread.inheritableThreadLocals
: WARNING: Please consider reporting this to the maintainers of com.google.common.base.internal.Finalizer
: WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
: WARNING: All illegal access operations will be denied in a future release
: Loading configuration: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/frameworks/air-config.xml
: Loading configuration: /Users/devsena/Desktop/NewFlexDesktopProject/obj/NewFlexDesktopProjectConfig.xml
: Error: /Users/devsena/Desktop/NewFlexDesktopProject/src/NewFlexDesktopProject.mxml is of an unsupported type: mxml

I even tried to remove any extended attributes if causing the warnings, but that didn't helped too.

However, building a pure ActionScript project (.as) seems to be successful (with warning):

: Compiling NewActionScriptDesktopProject
: Command: "/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/bin/mxmlc" -load-config+=obj/NewActionScriptDesktopProjectConfig.xml -optimize=false +configname=air -debug=true
: SDK path: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin
: Sending to mxmlc: "/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/bin/mxmlc" -load-config+=obj/NewActionScriptDesktopProjectConfig.xml -optimize=false +configname=air -debug=true
: Using AIR SDK: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin
: WARNING: An illegal reflective access operation has occurred
: WARNING: Illegal reflective access by com.google.common.base.internal.Finalizer (file:/Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/lib/guava-r08.jar) to field java.lang.Thread.inheritableThreadLocals
: WARNING: Please consider reporting this to the maintainers of com.google.common.base.internal.Finalizer
: WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
: WARNING: All illegal access operations will be denied in a future release
: Loading configuration: /Users/devsena/Downloads/MoonshineSDKss/Flex_SDK/apache-flex-sdk-4.16.1-bin/frameworks/air-config.xml
: Loading configuration: /Users/devsena/Desktop/NewActionScriptDesktopProject/obj/NewActionScriptDesktopProjectConfig.xml
: 914 bytes written to /Users/devsena/Desktop/NewActionScriptDesktopProject/bin-debug/NewActionScriptDesktopProject.swf in 2.613 seconds
: Build completed successfully.
: Launching application: NewActionScriptDesktopProject

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

So I confirm the earlier warnings and errors, specially the following one, caused because of the wrong referencing of AIR SDK type where we were referencing a non-Flex AIR SDK. This now rectified and both the warnings and error have disappeared in my tests:

: Error: /Users/devsena/Desktop/NewFlexDesktopProject/src/NewFlexDesktopProject.mxml is of an unsupported type: mxml

I also noticed that using the unzip task is not correctly overwriting the files in SDK folder even after using its overwrite property on macOS; So I restored the untar process which seems to be correctly affecting now. So as per usual standard process, unzip on Windows and untar on macOS being used.

I tested the downloaded SDK in both macOS and Windows, and they worked fine for me. I tuned a few UI issues but there could be one/few more, please keep me inform about them.

The branch is now building at Bamboo Branch Build plans for MSDKI.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

If this is working for you I would like to test it and merge stuff. Either you merge that now to master or provide over email for me and Adrian link to Win and Mac version for tests.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

The builds has deployment job to somewhere. Please, take information from @JoelProminic on the location of the deployment.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

The branch builds are automatically deployed to the server:
https://moonshine-ide.com/downloads/msdki/branch/macos/
https://moonshine-ide.com/downloads/msdki/branch/windows/

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I have updated the issue with following fixes:

  • Download completion information not properly showing up on macOS [Bug]
  • Updated license agreement of Harman with the texts suggested by Andrew, better font size change
  • Updating apache-flex-description.xml SDK label value during the installation (originally shows FP/AIR 27.0, shall be shown 33.1)

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

The branch builds are automatically deployed to the server:
https://moonshine-ide.com/downloads/msdki/branch/macos/
https://moonshine-ide.com/downloads/msdki/branch/windows/

On Windows and Mac build_details....json file has not being updated correctly. Can we fix that ?

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

I checked the updates for the license agreements on the Harman AIR SDKs, and this looks good. I confirmed that the text and the link match the changes requested by Andrew Frost.
image

However, if I choose "INSTALL EVERYTHING NOW!" instead of choosing individual SDKs, I find that Moonshine fails to load any of the licenses. There is a loading icon next to the "I ACCEPT ..." button, but the list does not load even if I wait a few minutes. This could be a separate issue.
image

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

I did a fresh install test for Harman AIR on Windows, and I see that the version number is still wrong in Moonshine:
image

The version is correct on macOS, though.
image

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

However, if I choose "INSTALL EVERYTHING NOW!" instead of choosing individual SDKs, I find that Moonshine fails to load any of the licenses. There is a loading icon next to the "I ACCEPT ..." button, but the list does not load even if I wait a few minutes. This could be a separate issue.

Hm.. I think we need a strategy to show licenses while doing all-install - there could be many SDKs which has their own agreements; When some description loads from the configuration XML some loads remotely.

This better to be a separate issue.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Please extract this to separate issue and merge current one to master. We can close this one unless you see some stopper.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I did a fresh install test for Harman AIR on Windows, and I see that the version number is still wrong in Moonshine:
image

The version is correct on macOS, though.
image

This should be fixed now.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Please extract this to separate issue and merge current one to master. We can close this one unless you see some stopper.

Yeah, I have created a separate issue #44 on this.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

I did a fresh install test for Harman AIR on Windows, and I see that the version number is still wrong in Moonshine:
image
The version is correct on macOS, though.
image

This should be fixed now.

I can confirm that I see after installation correct version on Mac OSX Catalina

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

@Aszusz could you please test this on Windows - simply download Windows build and try to install Harman Air

from moonshine-sdk-installer.

Aszusz avatar Aszusz commented on June 16, 2024

I downloaded and installed Harman Air with no big problems.

However I also experienced no license displayed bug when using "download and install all":
no-license

This is my select SDK screen:
flex-version

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

However I also experienced no license displayed bug when using "download and install all":

This bug is legit and we have created #44 on this. I'm planning to go a fix with upcoming release only.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

Does the Harman AIR SDK installation still use the Adobe playerglobal.swc and font libraries? I noticed this discrepancy when testing #44:
image

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

I don't think that Harman version with Flex has these parts. They were always an optionally addition to Adobe Air/Flex installation trough Apache Flex installer. Our MSDkI offer installation of these parts cause we are utilize Apache Flex installer.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

In case of regular Apache Flex SDK install, it runs the build-script that provides within Flex SDK, and downloads Adobe AIR and many misc. items like fonts, playerglobal.swc etc.

In case of Flex+Harman SDKs, we don't run the build-script that comes within the Flex SDK but downloads the Harman AIR on our own and overlay it on the Flex SDK. This process doesn't downloads any misc. items like playerglobal.swc etc.

But that is only what we suggested to do, isn't it? Download Flex SDK, download Harman AIR and unzip over Flex SDK. This basic used to work till today, we'r compiling all our applications produced by the merged-Harman-SDK generated in this way.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

Great, I just wanted to make sure we weren't missing some licenses here.

The only other problem I see is that the Harman AIR SDK does not get added automatically to the SDK list for Windows Moonshine as MSDKI runs.

  1. Remove the Harman AIR SDK if it is already installed.
  2. Start Moonshine. Confirm that the Harman AIR SDK is not listed, and close the SDK list
  3. Use MSDKI to install the Harman AIR SDK
  4. MSDKI notifies Moonshine when this is done
  5. Check the Flex SDK list. BUG: the Harman AIR SDK is missing
  6. Restart Moonshine.
  7. Check the Flex SDK list. The Harman AIR SDK is now present and bundled. The logic for Moonshine-IDE/Moonshine-IDE#817 seems fine.

Otherwise, the installation worked well on macOS and Windows, so we should be ready for a merge.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Check the Flex SDK list. BUG: the Harman AIR SDK is missing

I think I can guess why is this. I shall check.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Great, I just wanted to make sure we weren't missing some licenses here.

The only other problem I see is that the Harman AIR SDK does not get added automatically to the SDK list for Windows Moonshine as MSDKI runs.

  1. Remove the Harman AIR SDK if it is already installed.
  2. Start Moonshine. Confirm that the Harman AIR SDK is not listed, and close the SDK list
  3. Use MSDKI to install the Harman AIR SDK
  4. MSDKI notifies Moonshine when this is done
  5. Check the Flex SDK list. BUG: the Harman AIR SDK is missing
  6. Restart Moonshine.
  7. Check the Flex SDK list. The Harman AIR SDK is now present and bundled. The logic for prominic/Moonshine-IDE#817 seems fine.

Otherwise, the installation worked well on macOS and Windows, so we should be ready for a merge.

I think I fixed this. Please, give a test using Moonshine 'master' branch.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Could you merge this to master before our tomorrow's meeting ? It is really enough good to be in master.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Could you merge this to master before our tomorrow's meeting ? It is really enough good to be in master.

Yeah, I think this should be good enough to be merged. I shall do that shortly.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Okay. I have merged the MSDKI and Moonshine Harman-sdk-branch into master.

Note: I see that Moonshine branch of Harman-sdk being updated with master after a very long time. I fixed a couple of conflicts and commit. Hopefully, no surprise will be shown in master.

Known issue: The Harman-sdk version is not showing in Moonshine About section. This going to be fixed.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

After the update, I see:

  1. Remove the Harman AIR SDK if it is already installed.

  2. Start Moonshine. Confirm that the Harman AIR SDK is not listed, and close the SDK list

  3. Use MSDKI to install the Harman AIR SDK

  4. MSDKI notifies Moonshine when this is done

  5. Check the Flex SDK list. The Harman AIR SDK appears in the SDK list, but it is not flagged as bundled. This is not necessarily a problem if it is corrected on the next restart
    image

  6. Restart Moonshine.

  7. Check the Flex SDK list. BUG: the Harman AIR SDK is duplicated.

image

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I finally updated with some of the remaining bugs, hopefully.

  1. Showing Harman/Flex version in Moonshine About
  2. Showing of Harman AIR version in "Apache Flex SDK (Adobe AIR)" spot in Moonshine About - fixed
  3. "BUNDLED" marking and duplication of the SDK (during restart) reported here

These now open for a test.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

I didn't see any problems with this in my tests today on macOS and Windows

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Because of newer requirement and dependency problems, we were discussing to use the original SDK Install codes to install Harman Flex/AIR instead of overlaying the Harman SDK ourselves (#62 (comment)):

From @JoelProminic :

Investigate the Flex SDK Installer logic we use for the Adobe AIR version of the SDK, and check if we can reuse the logic here. I think this code already has a way to select a mirror. I think we have gotten mirror errors on the main Flex SDK download before, so we may want to extend this logic so that it can automatically check other mirrors on a connection or checksum error.

I'm re-opening this issue as part of the installation process.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

While working on this I saw a probable break in existing installation process:

  1. Download Feathers SDK
  2. Download Apache Flex + Adobe AIR SDK

Downloading the Apache Flex SDK after downloading Feathers SDK - possibly will create problem in the installation.

I took steps to overcome the possible problem. The fix remain part of the branch, for now.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

For reference, I confirmed that with an older build (3.9.0, Build 251), the Flex SDK install fails with:

...
/Users/-user-/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin is now an IDE compatible folder
Installation complete
Unable to load https://github.com/BowlerHatLLC/feathers-sdk/releases/download/v4.0.0/feathers-sdk-installer-config.xml
Unable to clean up temporary installation directories

I'll try with the new build.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

While working on this I saw a probable break in existing installation process:

  1. Download Feathers SDK
  2. Download Apache Flex + Adobe AIR SDK

Downloading the Apache Flex SDK after downloading Feathers SDK - possibly will create problem in the installation.

I took steps to overcome the possible problem. The fix remain part of the branch, for now.

I have tested 3.9.0 (build 254) with above steps on Mac OSX Big Sur. I got below error after installing Feathers SDK first. Once I restarted MSDKI I was able install Apache Flex + Adobe AIR SDK. Do you want me to raise separate issue ? To me it would be low priority for this release.

Unable to load https://github.com/BowlerHatLLC/feathers-sdk/releases/download/v4.0.0/feathers-sdk-installer-config.xml
Unable to clean up temporary installation directories

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Current test changes for my note:

  1. Set internal variables by providing custom Harman_AIR object
  2. Copy custom flex-installer-config-4.0.xml to installation folder
  3. Make sure to remove <get src="${xml.properties}" dest="${basedir}/sdk-installer-config-4.0.xml" />
  4. Forced to use unzip instead of hdiutil since Harman distributes zip instead of dmg
  5. Strangely it was using mountDMG on macOS irrespective of the value ${shouldUnzip}, required to amend some source to ensure unzipAIRSDK runs once SDK downloaded
  6. Fixing downloaded zip name by removing its parameter part

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I have fixed the macOS installation using original SDK Installer ways. Tested installed SDK working and running Flex projects properly.

Tomorrow I shall look into Windows installation part.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Since I have started working on GH Actions for installer I understand more how things working. I see that everything what you wanted to do is based on modification installer.xml file. I think in order to move forward with GH actions I will do something like that in my action:

  • Download Flex SDK
  • Manually (in action script) change installer.xml to mine - which has require modification for downloading and unzipping Harman Air SDK - you are making changes in code to that script - I will prepare it upfront
  • I will run installation and downloading Harman Air

The thing is that maybe if you would prepare installer.xml file upfront you could avoid for example following code -> d70157f - you are doing replace in installer.xml as I understand. It's just a thoughts.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

I'm keep getting an error on Windows, while downloading the Harman AIR using the installer.xml process-ways:

Error: Error #1000: The system is out of memory.
	at flash.net::URLStream/readBytes()
	at flash.net::URLLoader/onComplete()

I investigated this triggers at the end of air-get target and not triggers by any other target. This still strange to me why it is reporting on URLLoader/URLStream, though, since the download process runs entirely at Ant script-side rather than at Flex side.

I confirm no Flex-side method(s) get called during this download process, and no modification done to the air-get process either. Currently, the installation is failing on Windows due to the error. This works Okay on macOS.

More:

When I tried to run our custom Harman download/overlay Ant script on Windows (instead of using installer.xml to download), I received the same error.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

The thing is that maybe if you would prepare installer.xml file upfront you could avoid for example following code

Initially, I didn't realized the amount of changes will go long.

The reasons I would like to keep the modification-procedures at script side rather than a pre-existing installer.xml:

  1. To keep track of the changes we're doing and what was their needs (through comments etc.), in a full Ant script file it might get a little difficult to find all the changes and their requisites
  2. Still using the latest installer.xml that being downloaded taking in consideration the other parts are untouched, and latest

I might want to have the changes placed in a separate class-file for managing easy, but I need to fix the Windows problem first.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

The thing is that maybe if you would prepare installer.xml file upfront you could avoid for example following code

Initially, I didn't realized the amount of changes will go long.

The reasons I would like to keep the modification-procedures at script side rather than a pre-existing installer.xml:

  1. To keep track of the changes we're doing and what was their needs (through comments etc.), in a full Ant script file it might get a little difficult to find all the changes and their requisites
  2. Still using the latest installer.xml that being downloaded taking in consideration the other parts are untouched, and latest

I might want to have the changes placed in a separate class-file for managing easy, but I need to fix the Windows problem first.

I do understand that. I think I will wait till you finish. Once you do that - you would tell me what exactly changes you did and where - I wanted to apply them on my sight and use installer.xml to download Harman Air.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Additionally if this would happen - your modification for example trough Ant script - I could use that in GH Action. Now I will probably have to create separate ant script, which downloads Flex SDK, modify Installer.xml and run it.

Probably I won't be able to use Josh's GH Action for that purpose.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Now I will probably have to create separate ant script, which downloads Flex SDK, modify Installer.xml and run it.

In original SDK Installer source it also requires to download Flex binaries separately as first step, so when downloaded installer.xml file shall avail to you.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

If you will have some stable changes before todays meeting please merge them to master. We could test it.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

This is now ready for tests with nightly builds, on Windows and macOS.

Following things have covered in these changes:

  1. Using installer.xml route to download/overlay Harman AIR SDK instead of managing our own/separate Ant script
  2. Having advantage of Apache Flex SDK mirror selection based on the original SDK-installer source
  3. Downloading additional files as part of the installer.xml process

EDIT: I forgot to mention branch nightly build.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

This is working for me on macOS and Windows, so this should be fine for a merge.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Updates now merged onto master.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

I have downloaded newest nightly and I see there Build 260, but in JSON on the server build is being marked as 261, so I'm not sure what I'm using actually. I did install that couple of times.

Screenshot 2021-07-16 at 12 54 27

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Great! I have successfully installed Harman Air with new nightly. One issue left to close this one I believe.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

We were facing an (application)startup error on macOS packaged with the Harman SDK/Flex for some time:

This application requires a version of Adobe AIR which cannot be found.
image

After investigation it turned out the problem is not related with overlaying-ways of Harman SDK on Apache Flex, but unzipping-ways of Harman SDK.

There are some symlink files exists in the Adobe AIR.framework directory of Harman AIR - while unzipping the SDK(.zip) directly on Terminal, the symlink files preserves their actual nature after being expanded. While unzipping through Ant it produce different results:

Type of unzip Code After SDK expanded
unzip <unzip src="${air.tar.name}" dest="${download.dir}/airsdk" overwrite="true" /> All symlink files expanded as text file, even executables are expanded as non-executable on macOS; Recommend not to use unzip on macOS
tar <exec executable="tar" dir="${download.dir}/airsdk"><arg value="-xf" /><arg value="${air.tar.name}" /></exec> All symlink files expanded as executable, clicking on the executable does nothing

In any way, tar seems to be more to unzip on macOS.

The broken symlink files in Adobe AIR.framework continued to create startup error for the application those packaged using the SDK.

After some discussion @JoelProminic pointed this might be a known issue to Ant. We also decided to manually delete the broken symlink files and re-create them.

@JoelProminic suggested with some good ways to get a list of symlink files (to a directory) and an working way to re-create the list of symlink files in Ant:

Get a list of symlink files to test_valid directory

$ find test_valid -type l -ls | sed 's:^[^/]*/::'
runtimes/air-captive/mac/Adobe AIR.framework/Adobe AIR -> Versions/Current/Adobe AIR
runtimes/air-captive/mac/Adobe AIR.framework/Versions/1.0/Adobe AIR_64 -> Adobe AIR
runtimes/air-captive/mac/Adobe AIR.framework/Versions/Current -> 1.0
runtimes/air-captive/mac/Adobe AIR.framework/Resources -> Versions/Current/Resources
runtimes/air/mac/Adobe AIR.framework/Adobe AIR -> Versions/Current/Adobe AIR
runtimes/air/mac/Adobe AIR.framework/Versions/1.0/Adobe AIR_64 -> Adobe AIR
runtimes/air/mac/Adobe AIR.framework/Versions/Current -> 1.0
runtimes/air/mac/Adobe AIR.framework/Headers -> Versions/Current/Headers
runtimes/air/mac/Adobe AIR.framework/Resources -> Versions/Current/Resources

An working module to re-create list of symlink files in Ant

<target name="unzip">
        <delete dir="${unzip.dir}" />
        <unzip src="AIRSDK_Flex_MacOS.zip" dest="${unzip.dir}"/>

        <!-- Fix the symlinks -->
        <fixSymlink link="${unzip.dir}/runtimes/air-captive/mac/Adobe AIR.framework/Adobe AIR" resource="Versions/Current/Adobe AIR" />
        <fixSymlink link="${unzip.dir}/runtimes/air-captive/mac/Adobe AIR.framework/Resources" resource="Versions/Current/Resources" />
        <fixSymlink link="${unzip.dir}/runtimes/air-captive/mac/Adobe AIR.framework/Versions/1.0/Adobe AIR_64" resource="Adobe AIR" />
        <fixSymlink link="${unzip.dir}/runtimes/air-captive/mac/Adobe AIR.framework/Versions/Current" resource="1.0" />
        <fixSymlink link="${unzip.dir}/runtimes/air/mac/Adobe AIR.framework/Adobe AIR" resource="Versions/Current/Adobe AIR" />
        <fixSymlink link="${unzip.dir}/runtimes/air/mac/Adobe AIR.framework/Headers" resource="Versions/Current/Headers" />
        <fixSymlink link="${unzip.dir}/runtimes/air/mac/Adobe AIR.framework/Resources" resource="Versions/Current/Resources" />
        <fixSymlink link="${unzip.dir}/runtimes/air/mac/Adobe AIR.framework/Versions/1.0/Adobe AIR_64" resource="Adobe AIR" />
        <fixSymlink link="${unzip.dir}/runtimes/air/mac/Adobe AIR.framework/Versions/Current" resource="1.0" />
</target>

<macrodef name="fixSymlink" description="Fix a symlink from the unzip command">
        <attribute name="link" />
        <attribute name="resource" />
        <sequential>
            <delete file="@{link}" />
            <symlink link="@{link}" resource="@{resource}"/>
        </sequential>
</macrodef>

While the Ant solution should be pretty good for direct-Ant handling, @piotrzarzycki21 this might worthy for you in case of Git Actions Ant run. Unfortunately, this didn't worked-out using original SDK Installer source.

MSDKI, or the original SDK Installer source uses an ActionScript implementation of real Ant API. This is to facilitate Ant running in the system where Ant SDK is not installed (if I'm right). The ActionScript implementation is pretty old, and supports only very basic tags from Ant SDK, here's a complete list of the tags - https://github.com/Moonshine-IDE/Moonshine-SDK-Installer/tree/master/flex-utilities/flex-installer/ant_on_air/src/org/apache/flex/ant/tags.

The implementation thrown error while executing tags like macrodef, sequential or symlink. I could anyway alternate the process to use target instead of macrodef with some attributes, but symlink anyway is not available in the using API. We always requires to work with very limited amount of tags while using this API.

So I chose to go with shell-execution way. It does same thing - delete the existing/broken symlink file, re-create new symlinks.

This took me quite some time to properly execute the symlink creation process, though. This because of the relative path-way the symlink requires to be created that should work across the machines. Initially I faced troubles when a symlink created by the path of a system, failed to work on another system, i.e. symlink path fixed on Bamboo system does not work on my system. I think the working-directory also an important part in this relative path process.

Anyway, finally I able to create proper relative symlink files that works across the system. I have tested installing the SDK on Bamboo build system where symlinks get fixed as part of the MSDKI installation process, packaged application using the SDK that installed and run properly in different system.

The only thing is that the listings are fixed since running a find $path -type l doesn't list any symlink against the broken SDK. We need to manage the list ourselves based on a working SDK.

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

I did a quick test today, and the symlinks look good. I was able to Build & Run Moonshine-IDE with the latest Flex SDK (Harman AIR) install. @rat-moonshine mentioned there were a few more things to fix, and I would like to do a final Windows test before the release as well to make sure there were no unexpected changes.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

@rat-moonshine mentioned there were a few more things to fix

I have completed my remaining fixes as form of:
#56
Moonshine-IDE/Moonshine-IDE#869 (comment)

I'm good to close this issue hereafter.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

I have just tested downloading Harman Air and everything seems to be good! Thanks!

from moonshine-sdk-installer.

JoelProminic avatar JoelProminic commented on June 16, 2024

It looks like the file descriptor for the Windows Harman AIR Flex SDK was not updated. I see FP 28.0:
image

On macOS I saw Flash 27.0 and AIR 27.0 after the Apache AIR Flex SDK was installed, but this corrected itself once I restarted Moonshine.

I haven't seen any problems with Build & Run for Flex Desktop projects.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Added scripts to update SDK label text.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

@Aszusz if your setup is ready please download nightly and test that on Windows. Make sure that latest build has this fix.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

I have tested on Mac OSX Big Sur and I see correct value with newest build.

from moonshine-sdk-installer.

Aszusz avatar Aszusz commented on June 16, 2024

I have tested it on Windows. I see the correct value:
image

Please note I'm seeing Harman's splash screens:

  • when I start Moonshine IDE
  • when I start SDK installer

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

I have tested it on Windows. I see the correct value:
image

Please note I'm seeing Harman's splash screens:

  • when I start Moonshine IDE
  • when I start SDK installer

On Mac I don't have that splash screens.

from moonshine-sdk-installer.

piotrzarzycki21 avatar piotrzarzycki21 commented on June 16, 2024

Once we fix that splash screen issues, this one should be closed and we are ready to release.

from moonshine-sdk-installer.

rat-moonshine avatar rat-moonshine commented on June 16, 2024

Please note I'm seeing Harman's splash screens:

when I start Moonshine IDE
when I start SDK installer

This should be fixed now with latest builds. I have placed license file recently on Windows build-system.

from moonshine-sdk-installer.

Aszusz avatar Aszusz commented on June 16, 2024

I confirm the splash screen disappeared from both Moonshine IDE and Moonshine SDK Installer. Since everything is looking good now I'm closing this issue.

from moonshine-sdk-installer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.