Apache Flex 'FalconJX' Cross-Compiler 0.8.0
=================

Apache Flex 'FalconJX' Compiler 0.8.0 is the next-generation
compiler that, instead of creating a SWF or SWC, cross compiles MXML and ActionScript
to JavaScript.  It is intended for use as the cross-compiler for Apache FlexJS SDKs.  

This release includes Maven artifacts.

In addition, lots of bug fixes and small improvements are included in this release. 

New Features
=================
-FLEX-35186 Generate source maps for MXML files

Bug Fixes
---------
-FLEX-35323 NullPointerException when setting property of <fx:Object/> with binding
-FLEX-35317 Generated require() call for Node.js modules does not produce valid code if module name includes dashes
-FLEX-35316 -version compiler option does not show version
-FLEX-35300 Could not find file for class: Error
-FLEX-35239 Runtime error when setting a property to a constant value
-FLEX-35236 Binding is not working when [Bindable] is set for the class
-FLEX-35231 [FalconJX] Context Lost on Event Listeners
-FLEX-35230 [FlexJS] Add SonarQube support and setup build jobs to run sonar scans of all modules
-FLEX-35229 [FlexJS] extend the flexjs-maven-plugin to be able to generate static asdoc html
-FLEX-35228 [FlexJS] Usage of statics in JSSharedData causes problems
-FLEX-35227 [FlexJS] Data Binding Fails When Following Multiple References
-FLEX-35226 [Falcon] Compiler crashes with stack trace if MXML file is empty
-FLEX-35221 EXTERNC stops reading input files if one is missing, but continues without creating a problem
-FLEX-35218 FlexJS Errors unable to debug
-FLEX-35209 [FalconJX] asjsc prints Java exeception when using -skip-transpile=true
-FLEX-35206 Javascript isn't produced correctly when beads are not the first element of View
-FLEX-35199 Array.removeAt() is broken in javascript mode in 0.8 dev
-FLEX-35196 [FlexJS] [FalconJX] Default method parameter that is static constant does not emit fully-qualified class name
-FLEX-35195 [FalconJX] "Generated byte code contains an operand stack underflow." when creating <js:Tree> with <js:HierarchicalCollection> in MXML
-FLEX-35190 [FlexJS] DataItemRenderer breaks if extends as MXML file
-FLEX-35184 Unclosed CDATA in MXML Script tag or AS E4x leads to infinite loop in compiler
-FLEX-35183 Unclosed XML comment in MXML or E4X leads to infinite loop in compiler
-FLEX-35173 In MXML CDATA Can't have EOF characters
-FLEX-35171 CSS color RGB not set in component
-FLEX-35143 Backslash escape problem
-FLEX-35141 [FlexJS] XML literals don't add quotes when interpolated to values
-FLEX-35140 uncaught exception on missing parens
-FLEX-35133 Make FalconJX console error output match MXMLC output
-FLEX-35131 XML literal not outputting correctly
-FLEX-35116 private setter not accessible from class using this
-FLEX-35114 static constants in constructor don't compile correctly
-FLEX-35113 Error evaluating XML variable
-FLEX-35112 Escape Backslashes not Retained in String Literals, Result in Syntax Error
-FLEX-35070 "for each" not working in XMLList
-FLEX-35060 Local function doesn't use self to reference class members
-FLEX-35050 NullPointerException in compiler.jx
-FLEX-35014 new vector
-FLEX-34873 implement --keep-as3-metadata in FLEXJS_INFO

Apache Flex 'FalconJX' Cross-Compiler 0.7.0
=================

Apache Flex 'FalconJX' Compiler 0.7.0 is the fifth release of a next-generation
compiler that, instead of creating a SWF or SWC, cross compiles MXML and ActionScript
to JavaScript.  It is intended for use as the cross-compiler for Apache FlexJS SDKs.  

This release includes Maven artifacts.

The ability to use source maps to see your ActionScript source in the browser debugger is introduced in this release.  The implementation is likely to have bugs.

In addition, lots of bug fixes and small improvements are included in this release. 

Bug Fixes
---------
-FLEX-35109 falcon compiler's build.xml error
-FLEX-35107 Error setting property of class when the type is XML
-FLEX-35104 [FlexJS] Binding Problem in Flash
-FLEX-35091 Style 'box-shadow': Compiler wrongly adds commas as separators between values
-FLEX-35081 Null Pointer Exception in attempt of overriding data property in item renderer
-FLEX-35077 Missed case of XML assingment
-FLEX-35074 Wrong method used for setting XML attributes
-FLEX-35073 Multiline XML literal not compiled correctly
-FLEX-35072 "+" operator failure on XMLList
-FLEX-35071 Extra "this" causing error
-FLEX-35067 XML literals are not compiled into constructors when the variable was already initialized
-FLEX-35066 XML literals passed into functions are not compiled correctly
-FLEX-35065 Object literals don't always work

Apache Flex 'FalconJX' Cross-Compiler 0.6.0
=================

Apache Flex 'FalconJX' Compiler 0.6.0 is the fourth release of a next-generation
compiler that, instead of creating a SWF or SWC, cross compiles MXML and ActionScript
to JavaScript.  It is intended for use as the cross-compiler for Apache FlexJS SDKs.  

Highlights in this release include:
- Output data structures required for reflection.
- Initial implementation of Proxy.
- Support for functions and variables in packages.

In addition, lots of bug fixes and small improvements are included in this release. 

Bug Fixes
---------
-FLEX-35053 Compiler does not respect the implements="..." attribute in MXML
-FLEX-35033 State Transition issue in FlexJS
-FLEX-35006 bug in mxmlc/compc/etc scripts when flexjs path contains spaces
-FLEX-35005 internal class members do not get prefixed with "this." when cross-compiling
-FLEX-35004 package-level functions do not get cross-compiled
-FLEX-34995 call to Language.closure() generated incorrectly when function is static
-FLEX-34994 single-line asdoc comment /**...*/ generates invalid JS output
-FLEX-34993 implicit super() constructor call receives subclass constructor params
-FLEX-34992 Missing FLEXJS_CLASS_INFO in class internal to a file
-FLEX-34991 Problem with setter/getter in .as file with multiple classes
-FLEX-34990 "new" operator combined with function invocation cross-compiles incorrectly
-FLEX-34989 String literals cross-compile incorrectly
-FLEX-34987 Parentheses are lost around ternary operator
-FLEX-34986 const class member variables get initialized incorrectly
-FLEX-34985 "is" and "as" operators cross-compile incorrectly when using class member variables
-FLEX-34984 for-each loops cross-compile incorrectly
-FLEX-34983 Variables get annotated incorrectly when the class name contains "String"
-FLEX-34771 Cross-Compile from AS to JS fails to generate "super" call.
-FLEX-33918 Unknown type error generated for known type
-FLEX-33917 Fully qualified class missing

Apache Flex 'FalconJX' Cross-Compiler 0.5.0
=================

Apache Flex 'FalconJX' Compiler 0.5.0 is the third release of a next-generation
compiler that, instead of creating a SWF or SWC, cross compiles MXML and ActionScript
to JavaScript.  It is intended for use as the cross-compiler for Apache FlexJS SDKs.  

Highlights in this release include:
- ExternC compiler that generates ActionScript SWCs from Google Closure Library
Externs for Common Libraries.  This enables the use of ActionScript to write
JavaScript for native JavaScript applications.
- Integration with IntelliJ.  You can now use Falcon and FalconJX in IntelliJ.  See
the wiki for instructions: https://cwiki.apache.org/confluence/display/FLEX/Using+FlexJS+with+IntelliJ+IDEA

In addition, lots of bug fixes and small improvements are included in this release. 

Bug Fixes
---------
-FLEX-34915 Shorthand for Vector (new <String>[]) doesn't transpile to []
-FLEX-34913 Types passed by reference should not be stored on the prototype because they are shared by all instances
-FLEX-34912 Object class in JS.swc is not dynamic, resulting in error when setting properties
-FLEX-34897 Scope is wrong when calling member function from a variable reference
-FLEX-34875 spec for the d.as (ActionScript definition) file (a library SWC)
-FLEX-34874 d.ts parser/tokenizer for simple API generation
-FLEX-34872 A HTML.swc needs to be created for the DOM API
-FLEX-34871 A builtin.swc, non playerglobal needs to be created for non FlexJS compiler runs
-FLEX-34552 FalconJX should be aware of Date properties
-FLEX-34544 Preserve ASDoc style comments


Apache Flex 'FalconJX' Cross-Compiler 0.0.2
=================

Apache Flex 'FalconJX' Compiler 0.0.2 is the second release of a next-generation
compiler that, instead of creating a SWF or SWC, cross compiles MXML and ActionScript
to JavaScript.  It is intended for use as the cross-compiler for Apache FlexJS SDKs.  

The only major change in this release is to speed up cross-compilation by only copying a subset of the Google Closure Library files to the output folder.

Bug Fixes
---------
-FLEX-34258 Error cross-compiling on Windows
-FLEX-34225 Configurations dependent on loading order of methods

Apache Flex 'FalconJX' Cross-Compiler 0.0.1
=================

Apache Flex 'FalconJX' Compiler 0.0.1 is the initial release of a next-generation
compiler that, instead of creating a SWF or SWC, cross compiles MXML and ActionScript
to JavaScript.  It is intended for use as the cross-compiler for Apache FlexJS SDKs.  
It is an extension of the Apache Flex 'Falcon' Compiler. 

Bug Fixes
---------
-FLEX-34224 An option to specifiy the output folder is missing
-FLEX-33925 goog.require not being generated

Known Issues
_____________

Unimplemented Compiler Features

The FlexJS SDK does not support embedding of assets or fonts and the compiler may
not handle embedding correctly and may even throw errors.

Flex SDK is not supported.

The FalconJX cross-compiler only supports compilation against a FlexJS SDK, not the Apache Flex SDK.

Command-line Usage

The FalconJX cross-compiler supports multiple output types.  They are specified to mxmlc and compc scripts and batch files via the options -js-output-type.  Only -js-output-type=FLEXJS is supported.

Please report new issues to our bugbase at:

    https://issues.apache.org/jira/browse/FLEX

                                          The Apache Flex Project
                                          <http://flex.apache.org/>
