Fetching contributors…
Cannot retrieve contributors at this time
282 lines (196 sloc) 14.3 KB

GradleFx changelog




New Features




  • Providing a helpful error message when flexHome hasn’t been specified (either directly or via the auto-install). #187
  • Package tasks now have outputs declared, which means they will now use the Gradle up-to-date check. This avoids unnecessary package runs. #179
  • ‘tmp’ directory is now excluded from the publishFx task. #181
  • Flex-based swcAir projects now use air-config.xml instead of flex-config.xml. #183
  • Intellij support: swcAir projects now have a correct extension in the ‘output-file’ argument of a project file. #188
Breaking changes
  • GradleFx’s publish task has been renamed to publishFx to avoid conflict with the maven-publish plugin. #91


New Features
  • Mobile Android projects can now specify the “arch” option for ADT, which defines the architecture on which they’ll run. #170
  • ADT arguments are now also logged to the console on INFO level. #172
  • swcAir project types now correctly define their artifacts with the ‘swc’ extension instead of ‘swcAir’. #166
  • build directory is now correctly applied when specifying a custom one for library projects. #164


New Features
  • Upgrade of GradleFx to Gradle 2.0. This is now also the new minimum required version when using GradleFx in your project.
  • It’s now possible to reference ANE libraries as dependencies. #140 & #153
  • Support for the new packaging compiler provided in new versions of the AIR SDK.
    This can be enabled with the new “airMobile { nonLegacyCompiler = ‘true’ }” convention property. #149
  • New project type called ‘swcAir’ that allows you to easily build library projects that use AIR SDK libraries. This automatically uses the air-config.xml provided in the SDK. #160
  • Full support for the newest AIR SDKs that use the ASC 2.0 compiler without having to use the Flex SDK anymore (only for pure Actionscript projects that don’t use Flex). #160
  • Major refactoring of the GradleFx core to make it ready for a new year of contributions. #162
  • The -extdir compiler option is now added automatically if there are native extension dependencies. This deprecates the ‘extDir’ convention property. #154
  • IDEA project generation: Only set air iOS SDK if it has a value #152
  • External dependencies are added to the generated IDEA project files. #153
  • Support adding files to an IDEA project from flexConvention.air.fileOptions. #157
  • IDEA project generation: Set output directory to the project’s build directory. #159
Breaking changes
  • Allow specifying the location of the main swf file inside the packaged mobile application with the new “air { mainSwfDir = ‘someDir’ }” property. This change also changed the default location of the swf file inside the package, which is from now on the root of the package instead of the ‘build’ directory. Because of this change you’ll probably need to update your project’s air descriptor file to reflect this new path. #155


New Features
  • issue 143: Add support for pure ActionScript test runner
  • issue 144: ‘sampler’ convention property has been added to enable the telemetry-based ActionScript sampler in iOS applications
  • issue 145: Adding support for Gradle 2.1


  • issue 129: GradleFx doesn’t rebuild dependent modules
  • issue 130: The jvmArguments property is overwritten
  • issue 137: Reset configPath when flexHome changes so the value can be rebuilt using the correct path
  • issue 138: Using useDebugRSLSwfs=true with an Apache Flex SDK can cause the build to fail
New Features
  • issue 131: Support for Gradle 1.12
  • issue 139: SDK auto-install: support new installer.xml instead of build.xml for newer Apache Flex versions


  • issue 117: The launchAdl task only works on windows
  • issue 118: Specifying too many files via the air.includeFileTrees option can make the AIR packager fail. The new air.fileOptions property should now allow you to specify directories.
  • issue 120: imports in FlexUnitRunner.mxml are wrong if test file as a package that starts with “as”
  • issue 123: Test phase fails if multiple test files have the same class name
  • issue 126: When using a directory path for the build dir, GradleFx only used the last directory name.
New Features
  • issue 127: You can now ignore test failures with the flexUnit.ignoreFailures property
  • issue 125: GradleFx now supports the standalone AIR SDK, which has the mxmlc-cli and compc-cli compilers bundled in it.


  • issue 115: Unable to automatically run unit tests on SWC project that have external dependencies


This release includes a complete rework of the FlexUnit integration. This allows more customization options and fixes several issues such as not being able to provide custom compiler options to the tests.
To make your build compatible with this rework you’ll have to add the flexunit-uilistener-x.×.swc as a test dependency to your project. This library is included in the FlexUnit distribution.
For more information about the new FlexUnit integration check out

  • issue 77: It’s not possible to keep metadata when running FlexUnit tests
  • issue 53: Running AIR module unit tests fails


  • issue 111: Turning on html wrapper generation for swf-based projects when generating Flash Builder project files to make it consistent with the IDE behaviour.
  • issue 108: SDK files are now granted execution permission on installation to avoid permission issues during compilation/packaging.


New Features
  • issue 102: Added mobile support for iOS and Android
  • issue 92: Fixed the Container.add() deprecated warning for Gradle 1.6
  • issue 101: The Scaffold plugin now uses the air.applicationDescriptor property to generate the name of the descriptor file


  • issue 76: NPE instead of clear error message when not defining the type property
  • issue 75: FrameworkLinkage: clean up playerglobal.swc linking
  • issue 72: FlexUnit: test task doesn’t copy test-resources


  • issue 70: Locales aren’t taken into account when executing FlexUnit tests
New features
  • You can now provide your own source file for the html wrapper. See the new htmlWrapper.source and htmlWrapper.tokenReplacements convention properties
  • Added htmlWrapper documentation


  • issue 68: Do not show compiler options by default
  • flashbuilderClean task now also removes the .externalToolBuilders file
  • issue 69: Compile task should only recompile on source changes


  • issue 57: Proper error message for issue with FlexUnitApplication.mxml
  • issue 58: removed the Air packager timeout which caused problems with bigger projects.
  • flashbuilderClean now removes .FlexUnitSettings which is created when running test through FB
Bug fixes
  • issue 66: Backslashes thrown out during Flash Builder actionscriptProperties file generation


New features
  • Added Flex/AIR auto-installation feature. This allows you to define the Flex/AIR SDK as a dependency which GradleFx will then download and install. (see documentation)
  • Added option useDebugRSLSwfs that can be set to true or false to allow the use for framework unsigned SWF files or using signed SWZ files.
  • issue 36: Create the compile task immediately. This should remove the need to use afterEvaluate when extending GradleFx tasks.
  • showing compiler options in the logging
Bug fixes
  • issue 64: Project type swc still uses RSL linking for the flex SDK
  • issue 62: The build task should depend on compile
  • issue 55: AIR descriptor file not found on linux
Breaking changes
  • renamed the compile task to compileFlex (you can still use ‘gradle compile’ in command-line, just not in your script)
  • renamed htmlWrapper.width and htmlWrapper.height properties to percentWidth and percentHeight
  • renamed and htmlWrapper.version-detection to expressInstall and versionDetection
  • issue 59: complex properties now use curly brackers instead of square brackets (e.g. air {} instead of air [])


New features
  • asdoc generation feature (+ ‘fatSwc’ convention property for fat swc generation)
  • added ‘frameworkLinkage’ property: defines how the Flex SDK will be linked. defaults to external for swc-based Flex projects, rsl for swf-based projects and none for pure actionscript projects
  • added the ‘templates’ plugin with a subplugin ‘scaffold’: generates project directory structure and main file. See documentation for more info:
  • added the ‘ide’ plugin with a subplugin ‘flashbuilder’: allows you to generate the Adobe Flash Builder project files based on your build configuration. See documentation for more info:
  • Gradle 1.0 RC3 compatibility
  • Major rework of the FlexUnit integration (greatly simplified the required setup). See documentation for more information:
  • ‘mainClass’ package notation is now also allowed (org.gradlefx.MainApp or org/gradlefx/MainApp.mxml)
  • Improved the error/warning/info messages
Bug fixes
  • Fixed issue 37: resources aren’t added correctly to the swc
  • various other bug fixes


ATTENTION: Gradle 1.0 milestone 8 is required from now on.

  • issue 30: Added a localization convention property
  • issue 28: Fixed incompatibility between compc and mxmlc compiler arguments when unit testing a library
  • issue 24: Added an ‘air.includeFileTrees’ property which can be used to include file into an AIR package
  • issue 23: Added ‘theme’ dependency scope which makes it easier to add themes
  • issue 22: Fixed compatibility with Gradle 1.0 milestone 8
  • issue 18: Added support for adding folders as file-based dependencies
  • issue 19: Tokens are now allowed in srcDirs parameters (e.g. ‘src/resources/{locale}’


  • fixed the copyresources task


  • added support for AIR projects
  • the copyresources task is now only available in non-swc type projects
  • resources in the directories specified with the resourceDirs property are now included in the swc file
  • put everything in place to make GradleFx compatible with the Maven plugin (there’s still an outstanding bug in the Gradle bugtracker, see
  • fixed some FlexUnit support related issues


ATTENTION: Gradle 1.0 milestone 5 is required from now on.

  • upgraded GradleFx to support Gradle 1.0 milestone 5
  • used the new signing task in Gradle to fully automate the build process of the GradleFx project
  • fixed some path issues with UNIX based operating systems
  • added a convention property called ‘jvmArguments’ which can be used to specify jvm arguments that will be used when running the compc and mxmlc compilers


  • fixed an issue with external dependencies overwriting internal/merged dependencies causing corrupt swf files.


  • Added FlexUnit support for executing tests as part of the build. This is optional and any existing builds should continue to work
  • Compiler warnings will now be visible on stdout


  • Fixed a critical issue where the mainClass could never be found
  • Changed the convention for the output property from “${}.${project.type}” to
  • The output directory for the htmlWrapper task is now created when it doesn’t exist yet


  • Fixed an issue where overriding the ‘output’ property didn’t work


  • Added HTML wrapper generation


  • Initial version