You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@flex.apache.org by ah...@apache.org on 2018/06/20 21:48:54 UTC

svn commit: r27601 - in /dev/flex/installer/3.3.2/rc2: ./ binaries/

Author: aharui
Date: Wed Jun 20 21:48:54 2018
New Revision: 27601

Log:
rc2 of Apache Flex Installer 3.3.2

Added:
    dev/flex/installer/3.3.2/rc2/
    dev/flex/installer/3.3.2/rc2/ApproveInstaller.xml
    dev/flex/installer/3.3.2/rc2/READme
    dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz   (with props)
    dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.asc
    dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.sha512
    dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip   (with props)
    dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.asc
    dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.sha512
    dev/flex/installer/3.3.2/rc2/binaries/
    dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip   (with props)
    dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.asc
    dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.sha512
    dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe   (with props)
    dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.asc
    dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.sha512

Added: dev/flex/installer/3.3.2/rc2/ApproveInstaller.xml
==============================================================================
--- dev/flex/installer/3.3.2/rc2/ApproveInstaller.xml (added)
+++ dev/flex/installer/3.3.2/rc2/ApproveInstaller.xml Wed Jun 20 21:48:54 2018
@@ -0,0 +1,385 @@
+<?xml version="1.0"?>
+<!--
+
+  Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the "License"); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+
+      http://www.apache.org/licenses/LICENSE-2.0
+
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+
+-->
+
+<project name="ApproveApacheFlexInstaller" default="main" basedir=".">
+
+
+    <!-- Required for OSX 10.6 / Snow Leopard Performance. -->
+    <!-- Java 7 on Mac requires OSX 10.7.3 or higher and is 64-bit only -->
+    <!-- local.d32 is set/used in build.properties so this needs to be done first. -->
+    <condition property="local.d32" value="-d32">
+        <and>
+            <os family="windows"/>
+            <equals arg1="${sun.arch.data.model}" arg2="64"/>
+            <equals arg1="${os.arch}" arg2="x86_64"/>
+            <equals arg1="${ant.java.version}" arg2="1.6"/>
+        </and>
+    </condition>
+
+    <condition property="isMac" value="mac">
+        <os family="mac" />
+    </condition>
+    <condition property="isWindows" value="windows">
+        <os family="windows" />
+    </condition>
+    <condition property="isLinux" value="linux">
+		<and>
+			<os family="unix" />
+			<not>
+				<isset property="isMac" />
+			</not>
+		</and>
+    </condition>
+    <condition property="package.suffix" value="zip">
+        <os family="windows" />
+    </condition>
+	<property name="package.suffix" value="tar.gz" />
+	
+	<property name="rat.report" value="${basedir}/rat-report.txt"/>
+    <property name="apache.rat.jar" value="apache-rat-0.12.jar" />
+    <property name="apache.rat.tasks.jar" value="apache-rat-tasks-0.12.jar" />
+    <property name="apache.rat.url" value="http://central.maven.org/maven2/org/apache/rat/apache-rat/0.12" />
+    <property name="apache.rat.tasks.url" value="http://central.maven.org/maven2/org/apache/rat/apache-rat-tasks/0.12" />
+	
+	<property name="mac.text.display" value="cat" />
+	<property name="win.text.display" value="type" />
+	<property name="linux.text.display" value="cat" />
+    
+    <property file="${basedir}/approveinstaller.properties"/>
+    <property environment="env"/>
+
+    <property name="build.target" value="main" />
+    
+	<condition property="do.copy.downloads" >
+		<isset property="download.cache.dir" /> 
+	</condition>
+	
+    <fail message="The ANT_HOME environment variable is not set."
+        unless="env.ANT_HOME"/>
+		
+	<available file="${env.FLEX_HOME}" 
+		type="dir" 
+		property="FLEX_HOME" value="${env.FLEX_HOME}" />
+
+    <fail message="The FLEX_HOME property is not set in environment or command-line."
+        unless="FLEX_HOME"/>
+				
+	<available file="${env.AIR_HOME}" 
+		type="dir" 
+		property="AIR_HOME" value="${env.AIR_HOME}" />
+
+    <fail message="The AIR_HOME property is not set in environment or command-line."
+        unless="AIR_HOME"/>
+		
+    <available file="${env.ANT_HOME}/lib/${apache.rat.jar}"
+        type="file"
+        property="apache.rat.found"/>
+    <available file="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}"
+        type="file"
+        property="apache.rat.tasks.found"/>
+		
+    <fail message="The release version is not set.  Specify -Drelease.version=&lt;release version (e.g. 3.1, 3.2, etc)&gt;"
+    unless="release.version"/>
+
+    <condition property="package.url.path"
+        value="http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_installer_release-candidate/lastSuccessfulBuild/artifact/out">
+        <not>
+            <isset property="rc" />
+        </not>
+    </condition>
+
+	<property name="package.url.path" value="https://dist.apache.org/repos/dist/dev/flex/installer/${release.version}/rc${rc}" />
+	<property name="package.url.name" value="apache-flex-sdk-installer-${release.version}-src" />
+	
+    <condition property="zip.compressed">
+        <equals arg1="zip" arg2="${package.suffix}" />
+    </condition>
+    
+	<target name="display-text-mac" if="isMac">
+		<echo>========================= Begin ${file} ==============================</echo>
+		<exec executable="${mac.text.display}" >
+			<arg value="${file}" /> 
+		</exec>
+		<echo>========================= End ${file} ==============================</echo>
+	</target>
+	<target name="display-text-win" if="isWindows">
+		<pathconvert targetos="windows" property="winfile">
+			<path path="${file}" />
+		</pathconvert>
+		<echo>========================= Begin ${winfile} ==============================</echo>
+		<exec executable="cmd.exe" >
+			<arg value="/c" />
+			<arg value="${win.text.display}" />
+			<arg value="${winfile}" /> 
+		</exec>		
+		<echo>========================= End ${winfile} ==============================</echo>
+	</target>
+	<target name="display-text-linux" if="isLinux">
+		<echo>========================= Begin ${file} ==============================</echo>
+		<exec executable="${linux.text.display}" >
+			<arg value="${file}" /> 
+		</exec>
+		<echo>========================= End ${file} ==============================</echo>
+	</target>
+	
+	<target name="install-rat" depends="install-rat.jar,install-rat.tasks.jar" />
+	<target name="install-rat.jar" unless="apache.rat.found">
+		<get src="${apache.rat.url}/${apache.rat.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.jar}" />
+	</target>
+	<target name="install-rat.tasks.jar" unless="apache.rat.tasks.found">
+		<get src="${apache.rat.tasks.url}/${apache.rat.tasks.jar}" dest="${env.ANT_HOME}/lib/${apache.rat.tasks.jar}" />
+	</target>
+	
+    <target name="rat-taskdef" description="Rat taskdef">
+        <typedef resource="org/apache/rat/anttasks/antlib.xml"
+        uri="antlib:org.apache.rat.anttasks"
+        classpathref="anttask.classpath"/>
+    </target>
+
+    <target name="main" depends="install-rat,download,check-sigs,uncompress,rat-check,check-notices,build,approve" description="Perform required release approval steps">
+    </target>
+    
+    <target name="main-no-download" depends="install-rat,check-sigs,uncompress,rat-check,check-notices,build,approve" description="Perform required release approval steps">
+    </target>
+	
+    <target name="test" >
+		<echo>${rat.report}.bin.txt</echo>
+		<replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
+    </target>
+	
+	<target name="display-text" >
+		<antcall target="display-text-mac" />
+		<antcall target="display-text-win" />
+		<antcall target="display-text-linux" />
+	</target>
+
+	<target name="display-text-test" >
+		<antcall target="display-text" >
+			<param name="file" value="${basedir}/rat-report.txt" />
+		</antcall>
+	</target>
+	
+    <target name="download" description="download the release package">
+        <get src="${package.url.path}/${package.url.name}.${package.suffix}"
+            dest="${basedir}/${package.url.name}.${package.suffix}" />
+        <get src="${package.url.path}/${package.url.name}.${package.suffix}.sha512"
+            dest="${basedir}/${package.url.name}.${package.suffix}.sha512" />
+            <antcall target="asc_get" />
+    </target>
+    
+    <target name="asc_get" if="rc" >
+        <get src="${package.url.path}/${package.url.name}.${package.suffix}.asc"
+        dest="${basedir}/${package.url.name}.${package.suffix}.asc" />
+    </target>
+    
+    <target name="check-sigs" description="check sha and gpg sigs">
+		<fixcrlf file="${basedir}/${package.url.name}.${package.suffix}.sha512" eof="remove"
+			 />
+        <move file="${basedir}/${package.url.name}.${package.suffix}.sha512" tofile="${basedir}/${package.url.name}.${package.suffix}.SHA-512" />
+		<checksum file="${basedir}/${package.url.name}.${package.suffix}" algorithm="SHA-512" verifyproperty="sha.ok" />
+        <echo>SHA.OK ${sha.ok}</echo>
+        <condition property="MD5Invalid">
+			<not>
+				<equals arg1="${sha.ok}" arg2="true" casesensitive="false" />
+			</not>
+        </condition>
+        <fail message="SHA checksum did not match" if="MD5Invalid" />
+        <echo>rc is ${rc}</echo>
+        <antcall target="gpg_check" />
+    </target>
+    
+    <target name="gpg_check" if="rc">
+        <exec executable="gpg" failonerror="true">
+            <arg value="--verify" />
+            <arg value="${basedir}/${package.url.name}.${package.suffix}.asc" />
+            <arg value="${basedir}/${package.url.name}.${package.suffix}" />
+        </exec>
+    </target>
+
+    <target name="uncompress" depends="pre-clean, untar-file, unzip-file" />
+
+    <target name="pre-clean" description="remove old uncompressed package" >
+		<delete dir="${basedir}/${package.url.name}" failonerror="false" />
+	</target>
+	
+    <target name="untar-file" unless="zip.compressed" description="Untars zipFile">
+        <untar src="${basedir}/${package.url.name}.${package.suffix}"
+                dest="${basedir}/${package.url.name}" compression="gzip"/>
+    </target>
+
+    <target name="unzip-file" if="zip.compressed" description="Unzips zipFile">
+        <unzip src="${basedir}/${package.url.name}.${package.suffix}"
+                dest="${basedir}/${package.url.name}"/>
+    </target>
+
+    <target name="rat-check" >
+
+        <echo message="Checking files at ${basedir}/${package.url.name}, report is ${rat.report}"/>
+
+        <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
+            reportFile="${rat.report}">
+            <fileset dir="${basedir}/${package.url.name}">
+                <!-- exclude media (png, gif, jpg, mp3, flv) -->
+                <exclude name="**/*.png"/>
+                <exclude name="**/*.gif"/>
+                <exclude name="**/*.jpg"/>
+                <exclude name="**/*.mp3"/>
+                <exclude name="**/*.flv"/>
+                <exclude name="build.number"/>
+                <exclude name="CONTRIBUTING"/>
+                <exclude name="CONTRIBUTORS"/>
+            </fileset>
+        </rat:report>
+		<antcall target="display-text" >
+            <param name="file" value="${rat.report}" />
+        </antcall>
+        <input
+			message="Check that there are no unknown or unapproved licenses or archives. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="rat.license.ok"/>
+		<echo>filtering out AL files to make it easier to see binary files</echo>
+		<copy file="${rat.report}" tofile="${rat.report}.bin.txt" />
+		<replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
+		<antcall target="display-text" >
+            <param name="file" value="${rat.report}.bin.txt" />
+        </antcall>
+        <input
+			message="Check that there are no unexpected binaries.  Is it ok?"
+            validargs="y,n"
+        defaultvalue="n"
+        addproperty="rat.binaries.ok"/>
+    </target>
+
+    <target name="check-notices" description="open each notice file for review, grep for a few things" >
+        <fail message="README not in package">
+			<condition>
+	            <not>
+    	            <available file="${basedir}/${package.url.name}/README" />
+        	    </not>
+			</condition>
+        </fail>
+        <fail message="RELEASE_NOTES not in package">
+			<condition>
+				<not>
+					<available file="${basedir}/${package.url.name}/RELEASE_NOTES" />
+				</not>
+			</condition>
+        </fail>
+        <fail message="NOTICE not in package">
+			<condition>
+				<not>
+					<available file="${basedir}/${package.url.name}/NOTICE" />
+				</not>
+			</condition>
+        </fail>
+        <fail message="LICENSE not in package">
+			<condition>
+				<not>
+					<available file="${basedir}/${package.url.name}/LICENSE" />
+				</not>
+			</condition>
+        </fail>
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${package.url.name}/README" />
+        </antcall>
+		<input
+			message="Check the README for version numbers, spelling, grammar, accuracy.  Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="readme.ok"/>
+		
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${package.url.name}/RELEASE_NOTES" />
+        </antcall>
+		<input
+			message="Check the RELEASE_NOTES for copyright years, spelling, grammar, accuracy. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="releasenotes.ok"/>
+		
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${package.url.name}/NOTICE" />
+        </antcall>
+		<input
+			message="Check the NOTICE for required notices from third-parties. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="notice.ok"/>
+
+		<antcall target="display-text" >
+            <param name="file" value="${basedir}/${package.url.name}/LICENSE" />
+        </antcall>
+		<input
+			message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
+            validargs="y,n"
+        defaultvalue="y"
+        addproperty="license.ok"/>
+    </target>
+
+    <target name="build" depends="copy.downloads">
+		<input
+			message="The final step is to run the build and any tests the build script runs.  This can take several minutes.  Press y to start the build."
+            validargs="y"
+        defaultvalue="y" />
+        <ant dir="${basedir}/${package.url.name}/ant_on_air" target="main" />
+        <ant dir="${basedir}/${package.url.name}" target="build" />
+    </target>
+
+    <target name="copy.downloads" if="${do.copy.downloads}" description="instead of actually downloading all of the dependencies, you can save lots of time by just copying from some other folder in some other SDK.">
+		<echo>Copying downloads</echo>
+        <copy todir="${basedir}/${package.url.name}/in" >
+			<fileset dir="${download.cache.dir}" />
+		</copy>
+    </target>
+    	
+	<target name="approve" >
+		<condition property="vote" value="+1">
+			<and>
+				<equals arg1="${rat.license.ok}" arg2="y" />
+				<equals arg1="${rat.binaries.ok}" arg2="y" />
+				<equals arg1="${readme.ok}" arg2="y" />
+				<equals arg1="${releasenotes.ok}" arg2="y" />
+				<equals arg1="${notice.ok}" arg2="y" />
+				<equals arg1="${license.ok}" arg2="y" />
+			</and>
+		</condition>
+		<property name="vote" value="-1" />
+		<echo>
+${vote}
+Package ${package.url.path}/${package.url.name}.${package.suffix}
+Java ${ant.java.version}
+OS: ${os.name} ${os.arch} ${os.version}
+Source kit signatures match: y
+Source kit builds: y
+README is ok: ${readme.ok}
+RELEASE_NOTES is ok: ${releasenotes.ok}
+NOTICE is ok: ${notice.ok}
+LICENSE is ok: ${license.ok}
+No unapproved licenses or archives: ${rat.license.ok}
+No unapproved binaries: ${rat.binaries.ok}
+		</echo>
+		<fail>
+			<condition>
+	            <equals arg1="-1" arg2="${vote}"/>
+			</condition>
+		</fail>
+	</target>
+</project>

Added: dev/flex/installer/3.3.2/rc2/READme
==============================================================================
--- dev/flex/installer/3.3.2/rc2/READme (added)
+++ dev/flex/installer/3.3.2/rc2/READme Wed Jun 20 21:48:54 2018
@@ -0,0 +1,204 @@
+<!--
+
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+-->
+
+==========================================================================================
+Overview:
+==========================================================================================
+
+- The Apache Flex SDK Installer AIR application provides an easy installation of the 
+  Apache Flex SDK and all its dependencies.  This will make it suitable for working with 
+  IDEs such as Adobe Flash Builder, FDT, IntelliJ IDEA, FlashDevelop, etc.  
+  When installing an Apache Flex SDK, the application downloads the following
+  dependencies:
+    - The AIR sdk (Windows vs. Mac) based on the current platform
+    - Adobe Flash Player playerglobal.swc
+    - SWFObject
+    - Open Source Media Framework (OSMF)
+	 
+  Optionally, the application will download these files if the user explicitly agrees to 
+  the licensing terms:
+    - Adobe embedded font support
+
+  Other release packages may download different dependencies.
+ 
+- The Apache Flex SDK Installer 3.0 and later supports the ability to install 
+  virtually anything that can be installed via an Apache Ant script.  The list 
+  of choices to install are described in 
+  installer/src/installer/sdk-installer-config-4.0.xml and posted to
+  http://flex.apache.org/installer/sdk-installer-config-4.0.xml.  By default, the
+  installer looks there to determine the list of choices.  Once a selection is made,
+  the installer then looks in the folder of the install package for a -config.xml file
+  and if found, uses that to determine the set of licensing options that need to be
+  accepted before installing.  The installer then uncompresses the install package and
+  looks for installer.xml and runs that script via an approximation of Apache Ant that
+  has been written in ActionScript.  If the -config.xml file is not found, the Installer
+  assumes it is installing an older version of the Apache Flex SDK.
+
+- When installing an older version of the Apache Flex SDK, the installer
+  determines the file names and urls of the downloaded files from 
+  installer/src/installer/sdk-installer-config-4.0.xml. When the dependencies file 
+  names or urls change in future, update the sdk-installer-config-4.0.xml to ensure 
+  that the application works correctly.  For newer installs driven by Apache Ant
+  scripts, the file names and urls are determined by the script itself.
+    
+- The application uses http://flex.apache.org/single-mirror-url.cgi to determine
+  the preferred mirror url to use to download the binary package.  Newer installs
+  that use Apache Ant scripts use their own logic to select dependencies from mirrors.
+  
+- Once the binary package is downloaded, a MD5 hash is generated for it.  
+  This hash is compared with the hash from the Apache Flex SDK release site.  
+  If they match, we verify that the downloaded binary package is a valid Apache release and 
+  proceed to unzip the file.  
+	
+- If required, the Adobe AIR SDK will be downloaded and the relevant files are copied 
+  to the required locations.
+  
+- If required, the Adobe Flash Player playerglobal.swc file and the config files 
+  are placed in the required locations.
+  
+- Then the rest of the external dependencies and the optional files (if selected by user) 
+  are downloaded and copied into the appropriate locations.  
+
+- If you experience problems with the install, please try again, but right-click
+  and select "Verbose Logging" to add more information to the log. 
+
+- From the 2.6 version, you can select the version of Adobe Flash Player and Adobe AIR SDK
+  the installer downloads.
+
+- From the 2.5 version, by default, Apache Flex SDK Installer 2.5 downloads Adobe Flash 
+  Player 11.1 and Adobe AIR SDK 3.4. 
+  If you want to change it to any other supported combination, you save a copy of the 
+  config file found at: http://flex.apache.org/installer/sdk-installer-config-3.0.xml, 
+  modify the download urls to point to the required versions.  Then run the app from 
+  command line mode with the optional command line parameter: -config=<path to config file>
+
+- If building the app for Linux, open InstallApacheFlex-app.xml and change the Adobe AIR 
+  namespace from http://ns.adobe.com/air/application/4.0 to 
+  http://ns.adobe.com/air/application/2.6  This is because AIR 2.6 is the latest available 
+  version on Linux.  
+	
+==========================================================================================
+How to build the installer using ANT (no Flash Builder or any other IDE required):
+==========================================================================================
+
+0.  Make sure you have the right version of the Adobe AIR SDK.  Apache Flex Installer
+    3.1 uses Adobe AIR SDK 4.0.  If you want to use an older version of the AIR SDK,
+    you will have to change the namespace in the following files:
+	installer/src/InstallApacheFlex-app.xml
+	ant_on_air/tests/AntOnAIR-app.xml.
+
+1.  Unzip the source distribution.  You should see the 'installer' directory and the 
+    'common' and 'ant_on_air' directories in the root.
+
+2.  In the ant_on_air directory, run:
+        ant [-DFLEX_HOME=/path/to/apache/flex/sdk] [-DAIR_HOME=/path/to/air/sdk]
+            
+    FLEX_HOME is the absolute path to the Apache Flex SDK
+        If you omit this argument, and the system environment variable, FLEX_HOME exists,
+        it is used.  Otherwise, the FLEX_HOME_MAC or FLEX_HOME_WIN property in 
+        installer/build.properties is used.
+        
+    AIR_HOME is the absolute path to the Adobe AIR SDK
+        If you omit this argument, and the system environment variable, AIR_HOME exists,
+        it is used.  Otherwise, the AIR_HOME_MAC or AIR_HOME_WIN property in 
+        installer/build.properties is used.
+          	
+3.  In the root directory, run:
+        ant build [-DFLEX_HOME=/path/to/apache/flex/sdk] [-DAIR_HOME=/path/to/air/sdk]
+        
+4.  The installer executable file created in the installer/release directory.  If you are 
+    on Windows, you will see an .exe file; if you are on Mac OS, you will see a .dmg file.  
+	A temporary digital signing certificate - temp.p12 will be created in the installer 
+	directory as well.  The password for this file is available in the build.properties 
+	file (var: TEMP_PASS_CHANGE_THIS)
+
+==========================================================================================
+How to set up the project for working with Adobe Flash Builder 4.7:
+==========================================================================================
+
+1.  Unzip the source distribution.  You should see the 'installer' directory and the 
+    'common' and 'ant_on_air' directories in the root.
+
+2.  In the installer directory run: 
+        ant get-as3commons.swc
+        ant get-as3httpdclient.swc
+    These step downloads the required libraries and saves it in the libs directory.
+
+3.  If using Adobe Flash Builder, add a linked resource called: 
+        APACHE_FLEX_UTILITIES_ROOT 
+    and point it to the directory path where the 'installer' and 'common' directories are 
+    located.
+
+4.  In the installer project, add ${APACHE_FLEX_UTILITIES_ROOT}/common/src as a source path.
+
+5.  In the installer project, add ${APACHE_FLEX_UTILITIES_ROOT}/ant_on_air/src as a source path.
+
+6.  In the installer project, add ${APACHE_FLEX_UTILITIES_ROOT}/ant_on_air/external as a source path.
+
+7.  In the installer project, add ${APACHE_FLEX_UTILITIES_ROOT}/ant_on_air/locale/{locale} as a source path.
+
+==========================================================================================
+How to set up the project for working with JetBrains IDEA 12+
+==========================================================================================
+
+1.  Setup a new project by either unzipping the downloaded source or grabbing the source from the version control.
+
+2.  During the project setup, DO NOT search for modules or frameworks.  We will set these up later.
+
+3.  Setup a new module by going to the File -> New Module menu.
+    Module Type :  Flash
+    Target Platform : Desktop
+    Output Type : Application
+    Create Sample App :  Unchecked
+    Create HTML Wrapper : Unchecked
+
+    Create the new module, name it "installer" and chose the ${APACHE_FLEX_UTILITIES_ROOT}/installer directory
+
+4.  After the module is created, go into the installer module settings (Right-Click ->  Open Module Settings)
+
+5.  Add the following Content Roots :
+    flex-utilities\ant_on_air
+    flex-utilities\common
+
+6.  Mark the following directories as Sources :   (some may already be marked as src)
+    flex-utilities\ant_on_air\src
+    flex-utilities\ant_on_air\external
+    flex-utilities\common\src
+    flex-utilities\installer\src
+
+7.  Close the Settings dialog
+
+8.  Open the Ant Build tab within IDEA.
+    Add the flex-utilities\build.xml ANT build script.
+
+9.  Run the get-as3commons.swc and get-as3httpdclient.swc ant target.  This will download the required SWC to build the installer.
+
+10. Return to the module properties, and go to the dependencies tab.  Make sure the following are listed :
+    Flex SDK
+    flex-utilities\installer\libs
+    flex-utilities\installer\common\bin\common.swc
+    flex-utilities\installer\ant_on_air\bin\ant_on_air.swc
+    flex-utilities\ant_on_air\external\libs\as3commons-zip-1.0.0-alpha.1.swc
+
+11. Apply and close the dialog box.
+
+12. Update the flex-utilities\installer\build.properties to match your settings.  In theory you should only
+    have to update the FLEX_HOME_WIN or FLEX_HOME_MAC property to point to your SDK with AIR 4.0 overlaid.
+
+You should now be able to build and debug the installer.

Added: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz
==============================================================================
Binary file - no diff available.

Propchange: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.asc
==============================================================================
--- dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.asc (added)
+++ dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.asc Wed Jun 20 21:48:54 2018
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAABCAAGBQJbKsuhAAoJEIPgQxzanM/yNLMQAI1tZsGE2d/OxzD97KwxTlr3
+5lWvkuqpsOrirkS17PYDMayskXHRy0z4UmHcF0nNLzpWv/g62c5Bf2e2A57QOsur
+FSnNc4Xb13Z2nnfpte7WNJf92Kf68XeIshZdRe1cvneIBYKcRenaAcOxqu83e6mV
+Kc62GDXzJemqoeQox+R+kg6VYKfkOIuSgEtdRoqY/jNFk89MNx2KLqAQ8mTCOEm9
+XdIkFrjt/q2EZt7wYZTkrduPSlChcxEaYWoiG4ABMl0es9vyMhKypm3bf2giiRE6
+joVo8IruUZelqHBY09z1wHSrKMpFuMQAXYQT7TsRPPPgjCR3V2inj7R0ysgAn+bo
+IN43oBzWMp129Qa6TENDAjKomeOMMsJvLY5+xq9WQgspcmc7khwb5GNkDH8ALUmO
+BESr48NTvKeD3I6KerDHN+BSxP1FUi0zY3y7M+Q70xoDHDBejiC5NHzrjFGOhYvS
+/5lujPl0CIAV8xgPjjPGlEDqlW9wbVKRz4GeRwN7foDqDi/kAckIMb7hWdpSCQcS
+Lkl096VIPswzQhRwxLBuwMMRCOOCiCSjdXX/8o6w70EfF8m/dGj7AfbK5YrHfvCN
+OpDJa1QH9siJyM0H04Q8bNVm082EoWFJTRhN+zRkjZEUHKp+vwIPs+HlZGK5rH1J
+Kfu/wFfEzrhG8IdOan7m
+=0m71
+-----END PGP SIGNATURE-----

Added: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.sha512
==============================================================================
--- dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.sha512 (added)
+++ dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.tar.gz.sha512 Wed Jun 20 21:48:54 2018
@@ -0,0 +1 @@
+2780d63356cf45dc67540b6a41c92310b95ed799a46f73f053d3c0a89ece865373045457d50411223756cebd3883fdf388f0fe7b41c72362bf546968fbb0ff1b

Added: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip
==============================================================================
Binary file - no diff available.

Propchange: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.asc
==============================================================================
--- dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.asc (added)
+++ dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.asc Wed Jun 20 21:48:54 2018
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAABCAAGBQJbKsugAAoJEIPgQxzanM/yfYEP/jIPlNqz1cAHhgTJTTQomawb
+0a1u4Kav6pQfzBX9lJFOguSFKXXOnVUxoZGPiirA89nLF5FKNhxybr1wwPp8DVNP
+xzVr5clcTFbhmALE+KPeCb2C+DdJYIjHfP3tv2w1Svn2wiGRgjwJ1AzhdaU/qgTb
+TRYcurHjgMi/mFOZ5MjVp0uSCScbxZ6/KOng3UXxCkR0gIXCTdd68pgdAt0vUiNH
+C6iF06R8PfNatFSjWFjhygF3YJv80PljnUocbooeqRt+65u/W3C+s9RDo8AOTJ2E
+16mTrxnsk7B0ljD//zU2Py97VPsugf6e1u5MZMVkAKI1MBfr7M9mEik36qWrP/jx
+7R28VjxdBypTRyaq18mFPxQBsI19Hj43xuwL0Svxl0dKGFiQ6b6l5peIqnURfV5u
+/XL0DOeNMFVCJruBcILwbk03RLdSD8ZK+XedoQ0bqsz8XBV31wi6/3NT9S3KYYAY
+OJVRg1gqpb8zVlR562VxeHiCTVq4Ojdi1my3nVuXspDeBPtdN39yzGlc8PVWbnsr
+nyN4dd61kt1HG2ZHKR7f62RWaxmVWCUxwaWNq8MvW3122CS/hbKQdJCDY7APenCW
+9OW8daFI4GNQn1r8EV1ODWZDpdA+rozUavOuib3qUcHVrYF9cs4DGlHsN99Kw9vN
+6ZPwuVIfTUf1uQynWXqG
+=Ao/g
+-----END PGP SIGNATURE-----

Added: dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.sha512
==============================================================================
--- dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.sha512 (added)
+++ dev/flex/installer/3.3.2/rc2/apache-flex-sdk-installer-3.3.2-src.zip.sha512 Wed Jun 20 21:48:54 2018
@@ -0,0 +1 @@
+69c181861540868dfa626f0e7a033d84a73aef180dfcc62e45225284dd16dc607f25436ec1c605c695670bf6e0879500840275169825d41b26ab94799680a99e

Added: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip
==============================================================================
Binary file - no diff available.

Propchange: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.asc
==============================================================================
--- dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.asc (added)
+++ dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.asc Wed Jun 20 21:48:54 2018
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAABCAAGBQJbKsuiAAoJEIPgQxzanM/y/oIQAJWrwmXgnJbZeOxyIbDteZgo
+q/Gfm959yu9uGG4mYbfniTsooJ+sJgeicvfHpLptbmLU89Lp6mjuHbD33OtRfMnl
+OT+M3X80MJkTlc+zqy350bwUJvmjNBVO0odpVuRA09jpJoSkq6pIfEkBRpgaOGtS
+2SmbJ8nDBopHAVZpxOtDaEOL1Faq/QoZMQXzjFDjWZEC3PquWsaQFTly+0YPqEk9
+huOwrkikSRnnDlWorKVxoZhJNGBZpJamXZXjl9UGIKz4vKFvVyiwFlSGJJW9kSYV
+i+tY6kbvADpmkLhyysADD5j9RVY27ASyfpVn87u9xido/2dT6p13XdcdLUvzntQB
+Kq/KDBktQR/ZCc5/e4MX4ljfW+3bHqRU4/umzuuQgdgHOzG/UzT89gNRh5ya3LrS
+kHqtN47/dtED9GPGApFFTFiuWPiWQcdF60r/VutGXbg8gWnGZnu57ltDlgfMnuV/
+tJu1rE7UtNyjdfz9QJOyErh/fAOwVV6XrBYhRUXOoInpXEvVyAzeYtnynpf9+X9P
+omLwT+km9lpnp2Gxsull2PbwU0tY5bj+BIMehuxrcH95e1Opod02WIFvMHNZ2Z4n
+hFg93KCrCH2blQwxJlTR+nL5asPYqhWk+7lxoM1IMXvW1rc1dBFts8FzDRSMIkVJ
+WYKTMFXjKH9luMsc3BlN
+=8mpw
+-----END PGP SIGNATURE-----

Added: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.sha512
==============================================================================
--- dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.sha512 (added)
+++ dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-64bit-bin.zip.sha512 Wed Jun 20 21:48:54 2018
@@ -0,0 +1 @@
+43181b09bba8e95e8e1509e634041f00f79db71d30f479da8295ebbee7c1541d3c1fac5f1b7f22b1f6edc21e3f0463e6807be714ae2f3a0579c1d5b5aa9b7b4d

Added: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe
==============================================================================
Binary file - no diff available.

Propchange: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe
------------------------------------------------------------------------------
    svn:mime-type = application/octet-stream

Added: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.asc
==============================================================================
--- dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.asc (added)
+++ dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.asc Wed Jun 20 21:48:54 2018
@@ -0,0 +1,17 @@
+-----BEGIN PGP SIGNATURE-----
+Version: GnuPG v2
+
+iQIcBAABCAAGBQJbKsuhAAoJEIPgQxzanM/yyx4QAMMndLpta40qaQ9iSkH8YjLZ
+sAOZzxVyv3JDIW7JCQvssTDs/Dd0Gx/MCvfFMlUVqCziUzxuZnFsVvhwti5BJuk7
+90hpWuVKRGAviP7FTDt+cjGgaK7KS4BkoBS/2RotoOtzaHMCim9ClUs0lc9l8tSj
+HRu8veCH98JBe+qGZKmI0HTgLkP3Yf5cDeCCnzy4BC82QhzVzClv6J9Kfjkuqa6w
+YcnqfgX6ZvuxvZMrGJyRz3F+5Wyf9Yl15HL0WaxAfQM7kfqM93RGgrOU2imyTGoO
+vuPkaX2v9avUphzcv78ijbkuVZSMMGpzvnJoNs1Z908bW3by5KxGl2x4YxaY1zsp
+x5JwBQVFYJtBddefr9XFpY2FyZ/2KD0Q5rLw58f902j37Se/zY/7ABL5qJU2rY/5
+nsfhg6HkRRLTBHVvAQCKYqSquraW70Tr63X9gnNxSTa/LWJN4n1ECMAmkivKpG5x
+yDRllgxbKu0jPgYZlKrS+SyIieXdMEcp6Z6I/SaKVsLClL8yTUCEDDJThbaJ/4z5
+KwK0B7C5KV3f9XzoZyNxneMfvJsFYnTWtbdgI3ngSGKMk39h9wmzzh2bOvn7rrkb
+Rs3AgwmSVOkXJfo/xvSa5mUHGurEpuZOcWTZk9sDJPBYSrnwe9QGL8iNu/b845OJ
+ENOUHF5mGUxBGam/3YTo
+=luHG
+-----END PGP SIGNATURE-----

Added: dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.sha512
==============================================================================
--- dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.sha512 (added)
+++ dev/flex/installer/3.3.2/rc2/binaries/apache-flex-sdk-installer-3.3.2-bin.exe.sha512 Wed Jun 20 21:48:54 2018
@@ -0,0 +1 @@
+5743bf9b8455631bc0fc5c4202bb88e7251752bfcf7f73b94d59cbea5e4cc87d8814ec66dc7af6822fbc711ee342a79f91ac5442c32e0148236c7654adb43961