Code Monkey home page Code Monkey logo

moonshine-ide / moonshine-sdk-installer Goto Github PK

View Code? Open in Web Editor NEW
8.0 6.0 1.0 78.02 MB

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.

Home Page: https://moonshine-ide.com/download-sdk-installer/

License: Other

Shell 0.36% CSS 0.99% ActionScript 86.14% PHP 0.01% HTML 0.44% Batchfile 0.01% NSIS 0.53% Haxe 11.51%
moonshine moonshine-ide

moonshine-sdk-installer's Introduction

Moonshine-SDK-Installer

Moonshine SDK Installer -- This was formerly known as Moonshine App Store Helper internally.

To Build Moonshine-SDK-Installer

Prerequisite

Steps to build executable application

  1. Checkout the Moonshine-SDK-Installer repository
  2. Open MoonshineSDKInstaller/build/local.properties.template from your downloaded location and copy it as local.properties.
  3. If you need to provide custom JAVA_HOME or FLEX_HOME paths, uncomment the settings in local.properties and put the paths in.
  4. Do the same if you need a custom haxelib path.
  5. Open a Terminal or Command Prompt window and navigate to MoonshineSDKInstaller/build.
  6. Run ant build to build executable application. At the end of the build process generated artifacts can be found under MoonshineSDKInstaller/build/app directory.

Steps to build signed installers

After building executable application run ant pack-and-sign. Generated artifacts can be found under MoonshineSDKInstaller/build/deploy directory. This step requires additional tools, env settings and certificates. You'll find more details in local.properties file.

moonshine-sdk-installer's People

Contributors

aszusz avatar igazine avatar joelprominic avatar joshtynjala avatar piotrzarzycki21 avatar rat-moonshine avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

Forkers

sirarthur30

moonshine-sdk-installer's Issues

[Windows] Moonshine downloading older version of SDK Installer

With release of newer version of MSDKI we noticed following problem:

  1. Delete 64-bit MSDKI folder at C:\Users\$user\AppData\Roaming\net.prominic.MoonshineSDKInstaller
  2. Run Moonshine and open 'Getting Started' tab from Help menu
  3. Click on 'Download Third-party Software' button
  4. Moonshine downloads an older MSDKI v3.2.0 and ran [Bug]

The above problem do not triggers when MSDKI exists to the Roaming location or during the update-check.

Notarisation Error

Bamboo build-with-notarisation fails with following error during checking the status:

build	08-Jun-2021 05:15:22	     [exec] Attempt #17
build	08-Jun-2021 05:15:33	     [exec] DEBUG:  2021-06-08 04:15:33.755 altool[22360:75030660] No errors getting notarization info.
build	08-Jun-2021 05:15:33	     [exec] 
build	08-Jun-2021 05:15:33	     [exec]    RequestUUID: 77--censored---5da
build	08-Jun-2021 05:15:33	     [exec]           Date: 2021-06-08 09:12:13 +0000
build	08-Jun-2021 05:15:33	     [exec]         Status: in progress
build	08-Jun-2021 05:15:33	     [exec]     LogFileURL: (null)
build	08-Jun-2021 05:15:33	     [exec] Status:  in
build	08-Jun-2021 05:15:33	     [exec] Status URL:  (null)
build	08-Jun-2021 05:15:33	     [exec]   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
build	08-Jun-2021 05:15:33	     [exec]                                  Dload  Upload   Total   Spent    Left  Speed
build	08-Jun-2021 05:15:33	     [exec] 
build	08-Jun-2021 05:15:33	     [exec]   0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (6) Could not resolve host: (null)
error	08-Jun-2021 05:15:33	
error	08-Jun-2021 05:15:33	BUILD FAILED
error	08-Jun-2021 05:15:33	/Users/mmb/bamboo-agent-home/xml-data/build-dir/MS-MSIO-NOT/AppleNotarization/build.xml:85: exec returned: 1

I can confirm the notarisation request passed successfully with Apple as I received the confirmation emails, though.

While testing the notarisation build-script locally, I'm having slightly different error:

[exec] Attempt #17
     [exec] DEBUG:  No errors getting notarization info.
     [exec] 
     [exec]        Date: 2021-06-08 09:23:01 +0000
     [exec]        Hash: 6ce--censored--12
     [exec] RequestUUID: 551--censored--fb
     [exec]      Status: in progress
     [exec] Status:  in
     [exec] Status URL:  
     [exec] curl: try 'curl --help' or 'curl --manual' for more information

BUILD FAILED

Abrupt throwing of Error#3218

While using Moonshine, time to time I noticed following errors generated to its console. However, it doesn't tell enough information from where the error fired - neither I found any proper steps to reproduce this. Some this even fired when Moonshine starts.

I'd like to keep this documented for future possible investigation.

: Moonshine IDE 2.0.0
: Source code is under Apache License, Version 2.0
: https://github.com/prominic/Moonshine-IDE
: Uses as3abc (LGPL), as3swf (MIT), fzip (ZLIB), asblocks (Apache License 2.0), NativeApplicationUpdater (LGPL)
: Running on Adobe AIR 32.0.0.89
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug
: Error #3218
:
: Click here to Report a Bug

Looking into the ActionScript error dictionary, Error#3218 means:
3218 | Error while writing data to NativeProcess.standardInput.

Since this error fires abruptly, this would became difficult to judge where or which function cause this.

Haxe Installation

With the addition of Haxe project support to Moonshine, we shall be needing installation support of Haxe, Node.js and other related programs through Moonshine SDK Installer.

Here are some initial direction from Josh:

To enable code intelligence, obviously Haxe needs to be installed. Additionally, the language server runs on Node.js. I'm not really familiar with the SDK installer part of Moonshine, so I hope that someone can set that up with these two dependencies. For now, I added fields where these two paths can be configured manually in settings.

If you want to test it out, and you've just installed Haxe for the first time, be sure to open a terminal and manually run "haxelib setup". If you don't, Moonshine will fail to install your project's library dependencies (like OpenFL) and code intelligence won't work. This issue is something that I plan to fix soon. I just discovered it after the merge. It wasn't occurring on my main computer because I was already fully set up for Haxe development there.

We'll probably require to automate the run haxelib setup command once Haxe installation finish. Targeting different compilation platforms (i.e. Windows, macOS, mobile etc.) we might require to look into all the other dependency requirement for individual purpose.

Generate a physical log file

Currently the application-proess-log can only viewable through "Install Log" section. This way not always intuitive specially at the time of application crash or needs a restart.

A physical log general may help at that time to understand the last details. The log file can be generated in application-storage directory with the content from "Install Log" and even if something else.

SDK-Installer do not responds following Feathers SDK download

OS: macOS Mojave

As this reported from @JustinProminic ,

The SDK Installer 3.5.0 never completed, threw an error on Apache Flex, and seemed to be stuck downloading feathers.

This was with the 'install everything' button.....

Log:

Installer path: /Applications/MoonshineSDKInstaller.app/Contents/Resources
Installer version 3.5.0 (mac)
Using Locale: en_US
Fetched the SDK download mirror URL from the CGI.
Unable to load https://www.apache.org/dist/flex/4.16.1/binaries/apache-flex-sdk-installer-config.xml
Downloading royale from: http://moonshine-ide.com/downloads/royale/apache-royale-0.9.6-bin-js.tar.gz
Finished untaring: /Users/user/Downloads/MoonshineSDKs/Royale_SDK/apache-royale-0.9.6-bin-js/temp/apache-royale-0.9.6-bin-js.tar.gz
Installation complete
Downloading openjava from: http://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u202-b08/OpenJDK8U-jdk_x64_mac_hotspot_8u202b08.tar.gz
Finished untaring: /Users/user/Downloads/MoonshineSDKs/Java/openjdk-1.8.0/temp/OpenJDK8U-jdk_x64_mac_hotspot_8u202b08.tar.gz
Installation complete
Downloading ant from: http://moonshine-ide.com/downloads/ant/apache-ant-1.10.1-bin.tar.gz
Finished untaring: /Users/user/Downloads/MoonshineSDKs/Ant/apache-ant-1.10.1/temp/apache-ant-1.10.1-bin.tar.gz
Installation complete
Downloading maven from: http://moonshine-ide.com/downloads/maven/apache-maven-3.6.0-bin.tar.gz
Finished untaring: /Users/user/Downloads/MoonshineSDKs/Maven/apache-maven-3.6.0/temp/apache-maven-3.6.0-bin.tar.gz
Installation complete
Downloading gradle from: https://services.gradle.org/distributions/gradle-5.4.1-bin.zip
Finished untaring: /Users/user/Downloads/MoonshineSDKs/Gradle/gradle-5.4.1-bin/temp/gradle-5.4.1-bin.zip
Installation complete
Downloading grails from: http://github.com/grails/grails-core/releases/download/v3.3.10/grails-3.3.10.zip
Finished untaring: /Users/user/Downloads/MoonshineSDKs/Grails/grails-3.3.10/temp/grails-3.3.10.zip
Installation complete
Creating Apache Flex home
Creating temporary directory
Downloading Apache Flex SDK from: http://github.com/BowlerHatLLC/feathers-sdk/releases/download/v4.0.0/feathers-sdk-4.0.0-bin.tar.gz
Verifying Apache Flex SDK MD5 Signature
The Apache Flex SDK MD5 Signature of the downloaded files matches the reference. The file is valid.
Uncompressing: /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/temp/feathers-sdk-4.0.0-bin.tar.gz
Finished uncompressing: /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/temp/feathers-sdk-4.0.0-bin.tar.gz
Downloading Adobe AIR Runtime Kit for Mac from: http://airdownload.adobe.com/air/mac/download/32.0//AdobeAIRSDK.dmg
Mounting AIR SDK DMG: AdobeAIRSDK.dmg
Copying AIR SDK from mounted volume
Unmounting AIR SDK DMG
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/frameworks/libs/air to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/frameworks/libs
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/frameworks/projects/air to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/frameworks/projects
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/include to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/lib/android to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/lib
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/lib/aot to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/lib
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/lib/nai to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/lib
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/runtimes to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/samples/badge to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/samples
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/samples/icons to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/samples
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/templates/air to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/templates
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/templates/extensions to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/templates
Copying files from /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/in/airsdk/templates/sdk to /Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin/templates
Installing Adobe Flash Player playerglobal.swc from: http://download.macromedia.com/get/flashplayer/installers/archive/playerglobal//playerglobal32_0.swc
Downloading afe.jar?format=raw from: http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib
Downloading aglj40.jar?format=raw from: http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib
Downloading flex-fontkit.jar?format=raw from: http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib
Downloading rideau.jar?format=raw from: http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib
Installing frameworks configuration files configured for use with an IDE
/Users/user/Downloads/MoonshineSDKs/Flex_SDK/feathers-sdk-4.0.0-bin is now an IDE compatible folder

We need a full download test on macOS Mojave.

Install SVN Using MacPorts

I recently updated to macOS Catalina (10.15.7) and I got this error when trying SVN from the command line:

$ svn update
svn: error: Failed to locate 'svn'.
svn: error: The subversion command line tools are no longer provided by Xcode.

In Moonshine, the Subversion menu always shows "Grant Permission" when I have selected an SVN project, and the other menu items are disabled.

I originally thought this was related to Moonshine-IDE/Moonshine-IDE#748, but that fix did not clear my error above.

After some testing and investigation, I confirmed that SVN support was removed from XCode in Catalina.

This StackOverflow question offers a couple solutions. I tried installing the latest version of CommandLIneTools, but I found it was missing in this project as well.

Instead, I used brew install svn and set the SVN path to /usr/bin/svn in Moonshine. This worked for a non-Sandbox build, but I haven't tried and AppStore build yet.

However, this may require installing brew. I also had to make additional changes to allow brew to run on Catalina

Error: The following directories are not writable by your user:
/usr/local/lib

You should change the ownership of these directories to your user.
  sudo chown -R $(whoami) /usr/local/lib

And make sure that your user has write permission.
  chmod u+w /usr/local/lib

The install output was slow and complicated, and it ended with an error for me (that did not prevent SVN from working):

Error: Could not symlink Frameworks/Python.framework/Headers
Target /usr/local/Frameworks/Python.framework/Headers
is a symlink belonging to [email protected]. You can unlink it:
  brew unlink [email protected]

To force the link and overwrite all conflicting files:
  brew link --overwrite python@2

To list all files that would be deleted:
  brew link --overwrite --dry-run python@2

We'll need to discuss the brew-based solution further.

macOS build stuck at beginning

Platform: macOS (only)
Version: 3.3.0 stable

While installing Flex SDK from MSDKI, it seems to be stuck with a running spinner and only message to the log:
Fetched the SDK download mirror URL from the CGI

We need to investigate this.

Upgrade Git SDK distribution to newer version

During the testing of git-authentication on private repositories, I noticed authentication problem using the Windows' native git-auth window. Details here - Moonshine-IDE/Moonshine-IDE#617 (comment).

Upon investigation it reveled that it needs a Git SDK version update, while @Aszusz have reported he didn't have the problem using more newer Git SDK.

Expected version update to: 2.30.0.windows.1/2
Current version: 2.20.1.windows.1/2

Review of License Links for Individual SDKs

The licenses for each SDK in Moonshine SDK Installer are configured here: https://github.com/prominic/Moonshine-SDK-Installer/blob/master/InstallerSharedCore/src/helperResources/data/moonshineHelperConfig.xml

However, many of the SDKs reference the generic Apache License 2.0, rather than a copy specific to the application: http://www.apache.org/licenses/LICENSE-2.0.html

I expected this to show custom licenses like what we did for Moonshine (I see I never filled in some of the details, though!): https://github.com/prominic/Moonshine-IDE/blob/master/LICENSE.MD

(Reviewing this today, I'm wondering if I applied the license incorrectly, though...: http://www.apache.org/dev/apply-license.html#new )

I also noticed that at least one of the license links is broken: Apache Flex > Apache AIR SDK: https://www.adobe.com/products/air/sdk-eula.html

I need to review this further to make sure that we are showing the correct licenses. When applicable, I would like this to show the same license given by the SDK/tool installer.

Bump Grails version

Latest Grails version is now 4.0.10. This is probably the one we want to use.

Add Harman Air to Installer

We should investigate what we need to do in order to add Harman Air to our installer.

Current path to install Harman Air for Flex developer is following:

  1. You need to download Air SDK for Flex Developers
  2. Unpack it and follow instructions Overlay AIR SDK on Flex SDK

Options:

  1. User has Flex + old Adobe Air on disk
    Because it would be a lot of downloading if we first download Flex + Adobe Air and next overlay with Harman Air, maybe user should be forced to point folder with Flex which he have to have on disk.

  2. User has only Flex binaries - no Adobe Air SDK
    The other options is to download pure binaries Apache Flex binaries without any dependencies and overlay it with Harman Air - I'm not sure if it would work.

MSVCR100.dll Error for SlikSVN

I noticed this error yesterday with SlikSVN installed from Moonshine SDK Installer. I saw this error when I checked an svn checkout command from the command line:

The program can't start because MSVCR100.dll is missing from your computer. Try reinstalling the program to fix this problem.

After some investigation, I found that the "MSVCR100.dll" error was caused because the Microsoft Visual C++ Redistributable Package was required: https://social.technet.microsoft.com/Forums/windows/en-US/52f0bd37-9a08-41b6-bb43-fa01ef3ebc4a/msvcr100dll-is-missing?forum=w8itprogeneral

I tried the installer from here, and that resolved the error: https://www.microsoft.com/en-us/download/details.aspx?id=14632
Direct link: https://download.microsoft.com/download/3/2/2/3224B87F-CFA0-4E70-BDA3-3DE650EFEBA5/vcredist_x64.exe

(Note that this is the 2010 version. I had a hard time figuring out which version I was supposed to use, and finding a proper download link from Microsoft.)

I think we would need to trigger the above installer from Moonshine SDK Installer if we want to keep this solution. However, if we need to do this, I think we are better off just triggering the SlikSVN installer instead (which may install other dependencies). The external installer should be launch in with similar behavior to what we use for Command Line Tools on macOS.

Show Version Number for SDKs

While discussing the OpenJDK changes (#38), we had the idea to display the configured version number for each SDK in the UI. By my understanding, we already use these version numbers to check if an update is required.

This could be added in the parenthesis with the SDK size:

SDK Name (Version, Size)

Example:

Apache Flex SDK (4.16.1, 983 MB)

Integrated SDK Installer is failing to download swfobject zip on Windows

Using SDK

Apache Flex 4.16.1 and Adobe AIR 32.0

Procedure

Compiled as captive-runtime-bundle 64-bit - steps taken from https://www.adobe.com/devnet/air/articles/combined-windows-32-bit-and-64-bit-air-sdk.html to ensure a 64-bit bundle, compiled with specific application-descriptor value and environment variable existence, produced:

image

image

Result

Having 64-bit captive runtime bundled, latest Adobe AIR SDKs download and uncompress smoothly without any error (previously with 32-bit runtime, we noticed problem during AIR SDK uncompression).

Therefore it pass downloading Playerglobal.swc, but fails to download swfobject zip file.

Observation

Following is the procedural steps that does by Apache Flex SDK Installer source, since using the same source procedures are same for the integrated SDK Installer, too:

in ActionScript:

  1. Download Apache Flex SDK archive
  2. Uncompress the archive
  3. Run installer.xml Ant build script resides in the downloaded SDK directory

Following part is completely does at Ant script side:

  1. Downloads Adobe AIR SDK archive
  2. Uncompress the archive and verify MD5
  3. Downloads playerglobal.swc
  4. Downloads swfobject.zip
  5. Downloads Adobe font archive

To be noted, swfobject zip file downloads as part of the Ant build process that is written in the Apache Flex SDK's own installer.xml. I output some log to re-verify which URL is being called precisely in this Ant/download-process (Note all the lines started with MSDKI marker):

Downloading Adobe AIR Runtime Kit for Windows from: https://airdownload.adobe.com/air/win/download/30.0//AdobeAIRSDK.zip
**MSDKI get-with-no-params https://airdownload.adobe.com/air/win/download/30.0//AdobeAIRSDK.zip?ts=201903010450**
Validating download: C:\Users\devsena\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_30.0/in/AdobeAIRSDK.zip
Finished uncompressing: C:\Users\devsena\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_30.0/in/AdobeAIRSDK.zip
Installing Adobe Flash Player playerglobal.swc from: https://fpdownload.macromedia.com/get/flashplayer/installers/archive/playerglobal//playerglobal30_0.swc
**MSDKI get-with-no-params https://fpdownload.macromedia.com/get/flashplayer/installers/archive/playerglobal//playerglobal30_0.swc?ts=201903010450**
Validating download: C:\Users\devsena\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_30.0/frameworks/libs/player/30.0/playerglobal.swc
Downloading 2.2.zip from: https://github.com/swfobject/swfobject/archive
**MSDKI get-with-no-params https://github.com/swfobject/swfobject/archive/2.2.zip?ts=201903010450
Validating download: C:\Users\devsena\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_30.0/in/swfobject_2_2.zip**
SWFObject download failed

All the above download processes are run by same Ant targets - download_using_get -> get-with-no-params:

<target name="get-with-no-params" depends="check-params" if="not-local-no-params" >
	<echo>MSDKI get-with-no-params ${srcDomain}/${srcFolder}/${srcFile}?ts=${ts}</echo>
        <get src="${srcDomain}/${srcFolder}/${srcFile}?ts=${ts}" dest="${dest}"/>
</target>

The URL to SWFObject Zip download: https://github.com/swfobject/swfobject/archive/2.2.zip?ts=201903010450, this works fine on browser.

I ran the same get code with same URL in separate Ant build script, that ran well. I'm unable to understand at this moment what is causing this download error everytime for swfobject only. This creates 0 bytes of zip file in the target directory and its next step Ant throws error (when tried to uncompress).

Since the installer.xml is as supplied by Apache Flex SDK and run as a separate process by Ant, I can't imagine any difference of code-situation between integrated SDK Installer and standalone Apache SDK Installer. We are using the latest development branch of https://github.com/apache/flex-utilities.

Split Entries for JDK 8 and 11

We want to start using JDK 11 as the default JDK for Moonshine to better support the language server. However, we have some features and pending features that use the HCL Domino API, which requires JDK 8.

To support this, we want to have two entries for Java in Moonshine SDK Installer:

Label Required For Notes
OpenJDK Java Development, Editor Enhancements, Flex/ActionScript Compilation and Debug, Feathers Compilation, Apache Ant Integration, PrimeFaces Project Preview This will be JDK 11.
OpenJDK 8 Domino Support

I was surprised that the The "Java Development" feature is new - it seemed odd that this was not added before. Here is a description:

Compile Java Applications

We will need to store the two SDKs separately in Moonshine. We can discuss the options for this in a Moonshine issue.

SDK Installer Error on September 9

A user reported this error for Mooonshine on September 14:

Hi there, the built in SDK downloader for Apache Flex is failing for me, here is the log file for the failure:

Preparing script for Apache Flex SDK
Found script file: C:\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_32.0\installer.xml
Running script by: C:\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_32.0\installer.xml
Downloading Adobe AIR Runtime Kit for Windows from: https://airdownload.adobe.com/air/win/download/32.0//AdobeAIRSDK.zip
Validating download: C:\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_32.0/in/AdobeAIRSDK.zip
Finished uncompressing: C:\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_32.0/in/AdobeAIRSDK.zip
Installing Adobe Flash Player playerglobal.swc from: https://fpdownload.macromedia.com/get/flashplayer/updaters/32//playerglobal32_0.swc
Validating download: C:\MoonshineSDKs\Flex_SDK\Flex_4.16.1_AIR_32.0/frameworks/libs/player/32.0/playerglobal.swc
Flash SDK download failed

Node.js Installation

I see they distributes the binaries as ZIP and tar.gz which is good - https://nodejs.org/en/download/.

The named download has version reference (i.e. node-v12.15.0-win-x64.zip). If they upgrade stable to newer version, we'll possibly requires to update SDK-Installer configuration/link etc. against that as well.

Provide more clear information once package is installed

Whenever I install some package trough installer on Windows I don't get clear information that installation has been complete and successful.

I usually every day update my Apache Royale nightly build. I'm opening MSDKI and click download - I minimize that to task bar and get back to it after couple of minutes. When download is complete I do expect to see in status bar of application some information - I know on mac there is quite clear - windows doesn't have it. I see only:

default_loc

Patch-fix to Royale SDK v0.9.6 installation

During #16 testing Joel noticed that on Windows project compilation with newly downloaded version of Royale SDK v0.9.6 throws many errors.

Upon investigation, it turned out the SDK requires some patch-fixes to work, after being downloaded. Joel confirmed Piotr's suggested fix worked for him.

Joel suggested a fix-approach at Moonshine-SDK-Installer side based on Piotr's above suggestion, until Apache introduce any fix from their side. The idea is to modify the discussed framework/royale-config.xml after the SDK being downloaded.

UI improvements to SDK Installer

  • Make By Software option selected default
  • There should be a space between SDK and Installer
  • The MacOS menu bar reported title for Moonshine SDK Installer is still Moonshine App Store Helper

Add information about disk usage by all SDK

The original issue as reported by @JustinProminic ,

I think all of the SDKs ate up a lot of disk space. They also took a while. We should tell people in more friendly terms how long to expect and how much disk space roughly is going to be used. Even if we had a little "go have a break for a while we download and install the SDKs to your downloads folder".

I'm not sure if we can suggest on possible time taken on downloads, we should able to show total disk space usage combining the selected downloads.

Royale 0.9.6 Fails Again on Windows with Moonshine SDK Installer 3.5.0

I was running tests today with the latest nightly build for the Moonshine 2.5.1 release. When I tried a new Royale Jewel project on Windows with the 0.9.6 build, I got this error on the console:

: C:\MoonshineSDKs\Royale_SDK\apache-royale-0.9.6-bin-js\royale-asjs\frameworks\royale-config.xml(129): col: 0 Error: unable to open 'C:\MoonshineSDKs\Royale_SDK\apache-royale-0.9.6-bin-js\royale-asjs\frameworks\libs\XML.swc'.
: C:\MoonshineSDKs\Royale_SDK\apache-royale-0.9.6-bin-js\royale-asjs\frameworks\royale-config.xml (line: 129)
: 
:       </library-path>

I saw a similar message for many other files:

frameworks\libs\Basic.swc
frameworks\libs\Binding.swc
frameworks\libs\Charts.swc
frameworks\libs\Collections.swc
frameworks\libs\Core.swc
frameworks\libs\CreateJS.swc
frameworks\libs\DragDrop.swc
frameworks\libs\Express.swc
frameworks\libs\Flat.swc
frameworks\libs\FontAwesome.swc
frameworks\libs\Formatters.swc
frameworks\libs\GoogleMaps.swc
frameworks\libs\Graphics.swc
frameworks\libs\HTML.swc
frameworks\libs\HTML5.swc
frameworks\libs\Icons.swc
frameworks\libs\Jewel.swc
frameworks\libs\Crux.swc
frameworks\libs\jQuery.swc
frameworks\libs\Language.swc
frameworks\libs\MaterialDesignLite.swc
frameworks\libs\Mobile.swc
frameworks\libs\Network.swc
frameworks\libs\Reflection.swc
frameworks\libs\RoyaleSite.swc
frameworks\libs\RoyaleUnit.swc
frameworks\libs\Storage.swc
frameworks\libs\TLF.swc
frameworks\libs\Text.swc
frameworks\libs\XML.swc

This looks like the same error from #16 and #17. I deleted my 0.9.6 SDK and downloaded it again with Moonshine SDK Installer 3.5.0, but I got the same errors again.

Automation Permission Issue for macOS Mojave

In my recent testing on macOS Mojave, I found that MoonshineSDKInstaller could not notify Moonshine of newly installed SDKs if it did not have this permission set in System Preferences:
image

The user should see this prompt when MoonshineSDKInstaller attempts to connect to Moonshine.
image

However, if the user misses or rejects this prompt, the application will not work properly until the user updates the setting in System Preferences.

I do not remember if I saw the prompt in my earlier tests. When I tried a fresh test, I found that I got a prompt as expected, but I'm concerned that there is some issue preventing this alert from showing up. I have had trouble with this for other Prominic applications, so we may investigate this further if more users report problems.

Here is the command I used to reset the permissions:

# Reset Automation for all apps
tccutil reset AppleEvents

# Reset all permissions for Moonshine SDK Installer - unfortunately, this command reported an invalid bundle ID, and I couldn't resolve the error.
tccutil reset All net.prominic.MoonshineSDKInstaller

Manually requested downloads at same time do not queue

While testing multiple JDK download requests (v11, v8) at a same time, the interface didn't shown the downloads are in queued manner and have started parallelly causing UI notification conflicts (causing by different download events) and some internal problems as well.

We need to fix that the downloads always runs in a queued manner.

Error #2032 on Flex and Feathers SDK Install

@oninoshiko tried to run the Moonshine SDK Installer on a Windows 10 VM, and he got this error for the Flex and Feathers installers.

Downloading flex-fontkit.jar?format=raw from: http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib
Downloading rideau.jar?format=raw from: http://sourceforge.net/adobe/flexsdk/code/HEAD/tree/trunk/lib
Installing frameworks configuration files configured for use with an IDE
C:\MoonshineSDKs\Flex_SDK\feathers-sdk-4.0.0-bin is now an IDE compatible folder
      [get] [IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2032" errorID=2032]

Full Log:
2020_12_04__MoonshineSDKInstallLog.txt

I tested this myself on Windows 10, but I wasn't able to reproduce the problem.

I see Error 2032 was reported before on other issues, but I didn't see a specific fix for this.
Moonshine-IDE/Moonshine-IDE#119 (comment)
Moonshine-IDE/Moonshine-IDE#449 (comment)
It seems there was a fix here, but I'm not sure what to change in the XML file: Moonshine-IDE/Moonshine-IDE#37 (comment)

Moonshine SDK Installer Fails to Install Apache Flex SDK (AIR 32) (playerglobal.swc)

I've been trying to set up my environment, though I keep getting this error log:
I've deleted the sdk and tried again... seems an issue with playerglobal.swc

Installer path: /Applications/MoonshineSDKInstaller.app/Contents/Resources
Installer version 3.5.1 (mac)
Using Locale: en_CA
Fetched the SDK download mirror URL from the CGI.
Creating Apache Flex home
Creating temporary directory
Downloading Apache Flex SDK from: https://apache.mirror.globo.tech/flex/4.16.1/binaries/apache-flex-sdk-4.16.1-bin.tar.gz
Verifying Apache Flex SDK MD5 Signature
The Apache Flex SDK MD5 Signature of the downloaded files matches the reference. The file is valid.
Uncompressing: /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/temp/apache-flex-sdk-4.16.1-bin.tar.gz
Finished uncompressing: /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/temp/apache-flex-sdk-4.16.1-bin.tar.gz
Downloading Adobe AIR Runtime Kit for Mac from: https://airdownload.adobe.com/air/mac/download/32.0//AdobeAIRSDK.dmg
Validating download: /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/AdobeAIRSDK.dmg
Should unzip: ${shouldUnzip}
Mounting dmg
IS WINDOWS: ${isWindows}, IS MAC: mac
Copying AIR SDK from mounted volume
Unmounting AIR SDK
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/frameworks/libs/air to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/frameworks/libs
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/frameworks/projects/air to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/frameworks/projects
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/include to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/lib/android to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/lib
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/lib/aot to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/lib
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/lib/nai to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/lib
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/runtimes to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/samples/badge to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/samples
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/samples/icons to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/samples
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/templates/air to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/templates
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/templates/extensions to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/templates
Copying files from /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/in/airsdk/templates/sdk to /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/templates
Installing Adobe Flash Player playerglobal.swc from: https://fpdownload.macromedia.com/get/flashplayer/updaters/32//playerglobal32_0.swc
Validating download: /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/frameworks/libs/player/32.0/playerglobal.swc
Flash SDK download failed

On another note, reopening Moonshine SDK Installer shows a check mark as if it was installed.

Running a simple basic Flex App (to be converted to Royale) throws this error in console:

: Copyright 2015 The Apache Software Foundation.
: /Users/dev/Downloads/MoonshineSDKs/Flex_SDK/Flex_4.16.1_AIR_32.0/frameworks/air-config.xml(64): Error: unable to open '{airHome}/frameworks/libs/air/airglobal.swc'
: 		</external-library-path>
: Compilation of BasicApp finished.

On another note Apache Royale 0.9.7 is not downloading at all, it shows an empty temp folder (I'm guessing it was very recently released and no download URL is being fetched)

Safely Replace Nightly Build

I'm spliting this issue from #34. See: #34 (comment)

For the safe nightly build replacement, @rat-moonshine's design works like this;

1. User already has a nightly build downloaded apache-royale-0.9.8-bin-js

2. User asks for a new nightly build

3. MSDKI verifies that the download linke is invalid

4. MSDKI deletes the existing apache-royale-0.9.8-bin-js folder

5. MSDKI starts a newer download

6. MSDKI extracts the download and does any additional installation steps

However, if there is a different error in steps 5 or 6 (for example, the download is interrupted by a network issue), the user would still be left without a working nightly build.

My suggestion is to install to a temporary directory, and then only delete the original once the new install finished succesfully:

1. User already has a nightly build downloaded apache-royale-0.9.8-bin-js

2. User asks for a new nightly build

3. MSDKI downloads the new nighlty build into a temporary directory

4. MSDKI extracts the download and does any additional installation steps
   5a. If the install was successful, delete the old installation and rename the new installation to replace it
   5b. If the install failed, delete the temporary installation and keep the old installation

In this case, the installation would only be invalid if something went wrong with the rename in step 5a.

This logic should not be necessary for the Stable installers. If the user is installing here, then either:

* The SDK was not installed before, so the user is not worse off if there is an error in the installation

* And older version of the SDK was installed, so the user can keep using that if there is an error.

Can't Open About Page on Windows

With the macOS installation, I can open the About page from the menu:

image
image

However, the menu is not available on Windows, so I don't have a way to check this. In particular, we want check the build number here.

Can't Install Royale Nightly Using Moonshine SDK Installer

Originally reported here - Moonshine-IDE/Moonshine-IDE#784.

From @Bilbosax ,

I tried to install the nightly build of 0.9.8 Royale using you built in 3rd Party Moonshine Tools and it repeatedly fails. But there is a bigger problem because it seems to have deleted my previous install before downloading the new, and thus, I cannot work at all on my project at the moment. Other than moonshine, I can't seem to find a way to download the nightly builds. The links on the Royale page don't work either. ??? Here is the error

Installer path: C:\Program Files\MoonshineSDKInstaller
Installer version 3.7.0 (windows)
Available Memory: 39956480 (64-bit)
Using Locale: en_US
Fetched the SDK download mirror URL from the CGI.
Downloading royale from: http://apacheroyaleci2.westus2.cloudapp.azure.com:8080/job/royale-asjs_jsonly/lastSuccessfulBuild/artifact/out/apache-royale-0.9.8-bin-js.zip
Unable to download royale

Add "Apache Maven Integration" Feature

While I was writing up the new feature for Gradle (#9 (comment)), I realized that we did not have a feature for Apache Maven besides "PrimeFaces Project Preview". Please add a new entry in the "By Feature" list:

Title: "Apache Maven Integration"
Text: Build projects with Apache Maven

Royale Install Fails with "currently unavailable" Error

From @rat-moonshine:

We noticed some critical problem for the released Moonshine SDK Installer, lately. This triggers during re-download of Royale Nightly saying the download is currently unavailable.

While I couldn't able to reproduce this particular error during debug-tests but installed-tests. However, I did noticed some other problem which possible to lead to this error in an installed environment. I fixed the problem.

I did different installed-environment tests following the fix and I couldn't able to reproduce the following error anymore.

IMAGE

Since Royale Nightly a crucial downloading element with Moonshine SDK Installer now, I chose to have a minor release with the above fixes as v3.8.1.

I'm keeping the Bamboo builds prepared for Joel and Adrian to give a couple of tests at their side, before having a release.

@Aszusz, can you please give some tests with Royale Nightly download using latest v3.8.1 builds from Bamboo, and see if you can produce the above error anymore (?) You probably need to have an update to Moonshine website too when we're ready (for a release).

@JoelProminic, please review the CHANGELOG when you have a chance.

Show install log as part of installer instead popup window

Original request as reported by Justin,

Should we have the install log be a console so it displays what is happening, instead of the "install log" button? If we do make it more like a console, the user can see what is happening and there is one less button for them to press. Note that we should still have a copy to clipboard button, or even a way to view the location of the install log TXT file (which we should save automatically if we are not currently doing so)

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.