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 2015/12/15 01:14:04 UTC

[1/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple

Repository: flex-sdk
Updated Branches:
  refs/heads/develop 10a910ea2 -> 881ea2c36


FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/65f93e5c
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/65f93e5c
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/65f93e5c

Branch: refs/heads/develop
Commit: 65f93e5cea8d2a9f73905d88f6bcbee3eeb8af0f
Parents: 7445d3e
Author: Justin Mclean <jm...@apache.org>
Authored: Wed Nov 18 17:18:48 2015 +1100
Committer: Justin Mclean <jm...@apache.org>
Committed: Wed Nov 18 17:25:07 2015 +1100

----------------------------------------------------------------------
 RELEASE_NOTES | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 51 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/65f93e5c/RELEASE_NOTES
----------------------------------------------------------------------
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index e4002cd..8c898e0 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -1,10 +1,59 @@
 Apache Flex 4.15.0
 ==================
 
+New Features
+------------
+- Sorting on complex DataGrid fields 
+
+AIR and Flash Player Support
+----------------------------
+- Support Flash Player 18.0, 19.0 and 20.0
+- Support for AIR 18.0, 19.0 and 20.0
+
 Bug Fixes
 ---------
-FLEX-34753  Returning strongly typed object in Promise fails
- 
+
+FLEX-32249	AdvancedDataGrid.makeListData() incorrectly references 
+			HierarchicalCollectionViewCursor class instead of 
+			IHierarchicalCollectionViewCursor interface
+FLEX-34028	Cannot Ctrl-Click A Datagrid Row to deselect it when dragEnabled 
+			is set to true
+FLEX-34741	Spark DataGrid Drag and Drop non functioning
+FLEX-34744	TextFlowElement parent nulled when addChild method used via 
+			parent reference
+FLEX-34751	Regression in fdb tool: VM is resumed if breakpoint can't be set
+FLEX-34753	Returning strongly typed object in Promise fails
+FLEX-34775	Application hangs (in infinite loop) when opening a node inside  
+			a HierarchicalCollectionView whose parent is closed and then  
+			trying to navigate the collection
+FLEX-34807	TLF - EditManager - TextFlowEdit -insertTextScrap
+FLEX-34812	Error "Could not find or load main class Flash" when running 
+			`ant frameworks-rsls`
+FLEX-34838	getItemIndex returns -1 for item whose property was edited with 
+			GridItemEditor in a sorted DataGrid
+FLEX-34850	Applying sort with complex dataField on DataGrid results in 
+			unintuitive item ordering
+FLEX-34857	Adding an id to a fx:Vector when using -keep compiler argument 
+			results in a compiler error
+FLEX-34858	Adding a subclass of a Vector's type to the Vector in MXML 
+			results in an internal build error
+FLEX-34862	RTE on ListBase when dataProvider is changed
+FLEX-34876	Paste Problem with multiple paragraphs
+FLEX-34878	error property of NumberFormatter returns null and not it's 
+			default value
+FLEX-34879	FLEX-34853 Deprecate state setters and reverse() for mx and 
+			spark SortField and Sort classes
+FLEX-34883	FLEX-34852 Sort correctly by complex fields with all data types
+FLEX-34884	FLEX-34852 Make sure that finding objects works correctly
+FLEX-34891	TLF: pasted text doesn't get the format of the original text
+FLEX-34927	Allow the setting of an arbitrary property on an object via 
+			ObjectUtil
+FLEX-34929	Error #1009 when copy/paste a text with style effect in a 
+			RichEditableText/RichTextEditor
+FLEX-34941	Allow custom validators to use the triggerEvent
+FLEX-34944	GridItemRenderer overrides error tooltip
+FLEX-34945	Validator should be able to validate nested properties
+
 Known Issues
 ------------
 


[5/8] git commit: [flex-sdk] [refs/heads/develop] - try blazeds 4.7.2

Posted by ah...@apache.org.
try blazeds 4.7.2


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/8e696c75
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/8e696c75
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/8e696c75

Branch: refs/heads/develop
Commit: 8e696c75305baf6a4ca2dad616b40a0e91e8349b
Parents: b55a9b0
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 20 15:46:25 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 20 15:46:25 2015 -0800

----------------------------------------------------------------------
 modules/downloads.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/8e696c75/modules/downloads.xml
----------------------------------------------------------------------
diff --git a/modules/downloads.xml b/modules/downloads.xml
index 04099e6..068b960 100644
--- a/modules/downloads.xml
+++ b/modules/downloads.xml
@@ -47,7 +47,7 @@
     <property name="flexToolApi.name" value="flex-tool-api"/>
     <property name="flexToolApi.version" value="1.0.0"/>
     <property name="blazeds.name" value="flex-messaging-common"/>
-    <property name="blazeds.version" value="4.7.1"/>
+    <property name="blazeds.version" value="4.7.2"/>
 
 	<!--
 	   Notes:


Re: [1/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple

Posted by Justin Mclean <ju...@me.com>.
Hi,

> I'd say FLEX-34879, FLEX-34927, FLEX-34941, FLEX-34945 and FLEX-34852
> are features rather than bugs. I'm happy to move them up if it's
> agreed

Fine by me.

> Also, FLEX-34883 and FLEX-34884 are sub-tasks of FLEX-34852 -
> do we always include sub-tasks? If so, there are a couple more to add,
> and if not, I can remove them.

Go ahead and add them.

Thanks,
Justin

Re: [1/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple

Posted by Mihai Chira <mi...@gmail.com>.
I'd say FLEX-34879, FLEX-34927, FLEX-34941, FLEX-34945 and FLEX-34852
are features rather than bugs. I'm happy to move them up if it's
agreed. Also, FLEX-34883 and FLEX-34884 are sub-tasks of FLEX-34852 -
do we always include sub-tasks? If so, there are a couple more to add,
and if not, I can remove them.

On 15 December 2015 at 02:14,  <ah...@apache.org> wrote:
> Repository: flex-sdk
> Updated Branches:
>   refs/heads/develop 10a910ea2 -> 881ea2c36
>
>
> FLEX-34958 Initial bugs fixed in 4.15 - may be missing a couple
>
>
> Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
> Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/65f93e5c
> Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/65f93e5c
> Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/65f93e5c
>
> Branch: refs/heads/develop
> Commit: 65f93e5cea8d2a9f73905d88f6bcbee3eeb8af0f
> Parents: 7445d3e
> Author: Justin Mclean <jm...@apache.org>
> Authored: Wed Nov 18 17:18:48 2015 +1100
> Committer: Justin Mclean <jm...@apache.org>
> Committed: Wed Nov 18 17:25:07 2015 +1100
>
> ----------------------------------------------------------------------
>  RELEASE_NOTES | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++--
>  1 file changed, 51 insertions(+), 2 deletions(-)
> ----------------------------------------------------------------------
>
>
> http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/65f93e5c/RELEASE_NOTES
> ----------------------------------------------------------------------
> diff --git a/RELEASE_NOTES b/RELEASE_NOTES
> index e4002cd..8c898e0 100644
> --- a/RELEASE_NOTES
> +++ b/RELEASE_NOTES
> @@ -1,10 +1,59 @@
>  Apache Flex 4.15.0
>  ==================
>
> +New Features
> +------------
> +- Sorting on complex DataGrid fields
> +
> +AIR and Flash Player Support
> +----------------------------
> +- Support Flash Player 18.0, 19.0 and 20.0
> +- Support for AIR 18.0, 19.0 and 20.0
> +
>  Bug Fixes
>  ---------
> -FLEX-34753  Returning strongly typed object in Promise fails
> -
> +
> +FLEX-32249     AdvancedDataGrid.makeListData() incorrectly references
> +                       HierarchicalCollectionViewCursor class instead of
> +                       IHierarchicalCollectionViewCursor interface
> +FLEX-34028     Cannot Ctrl-Click A Datagrid Row to deselect it when dragEnabled
> +                       is set to true
> +FLEX-34741     Spark DataGrid Drag and Drop non functioning
> +FLEX-34744     TextFlowElement parent nulled when addChild method used via
> +                       parent reference
> +FLEX-34751     Regression in fdb tool: VM is resumed if breakpoint can't be set
> +FLEX-34753     Returning strongly typed object in Promise fails
> +FLEX-34775     Application hangs (in infinite loop) when opening a node inside
> +                       a HierarchicalCollectionView whose parent is closed and then
> +                       trying to navigate the collection
> +FLEX-34807     TLF - EditManager - TextFlowEdit -insertTextScrap
> +FLEX-34812     Error "Could not find or load main class Flash" when running
> +                       `ant frameworks-rsls`
> +FLEX-34838     getItemIndex returns -1 for item whose property was edited with
> +                       GridItemEditor in a sorted DataGrid
> +FLEX-34850     Applying sort with complex dataField on DataGrid results in
> +                       unintuitive item ordering
> +FLEX-34857     Adding an id to a fx:Vector when using -keep compiler argument
> +                       results in a compiler error
> +FLEX-34858     Adding a subclass of a Vector's type to the Vector in MXML
> +                       results in an internal build error
> +FLEX-34862     RTE on ListBase when dataProvider is changed
> +FLEX-34876     Paste Problem with multiple paragraphs
> +FLEX-34878     error property of NumberFormatter returns null and not it's
> +                       default value
> +FLEX-34879     FLEX-34853 Deprecate state setters and reverse() for mx and
> +                       spark SortField and Sort classes
> +FLEX-34883     FLEX-34852 Sort correctly by complex fields with all data types
> +FLEX-34884     FLEX-34852 Make sure that finding objects works correctly
> +FLEX-34891     TLF: pasted text doesn't get the format of the original text
> +FLEX-34927     Allow the setting of an arbitrary property on an object via
> +                       ObjectUtil
> +FLEX-34929     Error #1009 when copy/paste a text with style effect in a
> +                       RichEditableText/RichTextEditor
> +FLEX-34941     Allow custom validators to use the triggerEvent
> +FLEX-34944     GridItemRenderer overrides error tooltip
> +FLEX-34945     Validator should be able to validate nested properties
> +
>  Known Issues
>  ------------
>
>

[4/8] git commit: [flex-sdk] [refs/heads/develop] - update bug list and contributor from merge with develop branch

Posted by ah...@apache.org.
update bug list and contributor from merge with develop branch


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/b55a9b02
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/b55a9b02
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/b55a9b02

Branch: refs/heads/develop
Commit: b55a9b02d0c7a5cf37b10b2243234329793a0d06
Parents: d074052
Author: Justin Mclean <jm...@apache.org>
Authored: Thu Nov 19 17:00:39 2015 +1100
Committer: Justin Mclean <jm...@apache.org>
Committed: Thu Nov 19 17:00:39 2015 +1100

----------------------------------------------------------------------
 CONTRIBUTORS  |  8 ++++----
 RELEASE_NOTES | 10 +++++++++-
 2 files changed, 13 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/b55a9b02/CONTRIBUTORS
----------------------------------------------------------------------
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 0e81a84..885d751 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -3,10 +3,10 @@ support to the Apache Flex SDK.
 
 Apache Flex SDK 4.15.0
 ----------------------
-Ad Pijnenburg, Aleksey, Alex Harui, Andrey Gorbatov, Chris Martin, Christofer Dutz,
-Dany Dhondt, Darrell Loverin, Erik de Bruin, Frédéric Thomas, Harbs,  Josh Tynjala,
-Justin Mclean, Mark Kessler, Mihai Chira, OmPrakash Muppirala, Piotr Zarzycki,
-Tom Chiverton
+Ad Pijnenburg, Aleksey, Alex Harui, Andrey Gorbatov, Andy Dufilie, Andrei Tchijov,
+Chris Martin, Christofer Dutz, Dany Dhondt, Darrell Loverin, Erik de Bruin,
+Frédéric Thomas, Harbs,  Josh Tynjala, Justin Mclean, Mark Kessler, Mihai Chira,
+OmPrakash Muppirala, Piotr Zarzycki, Robbyn Gerhardt, Tom Chiverton, Tom Goemaes
 
 Apache Flex SDK 4.14.1
 ----------------------

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/b55a9b02/RELEASE_NOTES
----------------------------------------------------------------------
diff --git a/RELEASE_NOTES b/RELEASE_NOTES
index 8c898e0..cbd6418 100644
--- a/RELEASE_NOTES
+++ b/RELEASE_NOTES
@@ -12,12 +12,14 @@ AIR and Flash Player Support
 
 Bug Fixes
 ---------
-
 FLEX-32249	AdvancedDataGrid.makeListData() incorrectly references 
 			HierarchicalCollectionViewCursor class instead of 
 			IHierarchicalCollectionViewCursor interface
+FLEX-33537	Spark TextArea writing in prompt text format
 FLEX-34028	Cannot Ctrl-Click A Datagrid Row to deselect it when dragEnabled 
 			is set to true
+FLEX-34728	HaloDefaults.findStyleDeclaration doesn't go through styleManager 
+			chains correctly
 FLEX-34741	Spark DataGrid Drag and Drop non functioning
 FLEX-34744	TextFlowElement parent nulled when addChild method used via 
 			parent reference
@@ -50,9 +52,15 @@ FLEX-34927	Allow the setting of an arbitrary property on an object via
 			ObjectUtil
 FLEX-34929	Error #1009 when copy/paste a text with style effect in a 
 			RichEditableText/RichTextEditor
+FLEX-34934	Spark Window - Closed Window
 FLEX-34941	Allow custom validators to use the triggerEvent
 FLEX-34944	GridItemRenderer overrides error tooltip
 FLEX-34945	Validator should be able to validate nested properties
+PR#8		Mxmlc accepts not only *.swc but also *.ane files
+PR#12		Fix MenuBar.styleChanged() crash bug
+
+
+
 
 Known Issues
 ------------


[3/8] git commit: [flex-sdk] [refs/heads/develop] - Merge commit 'b29975cc08515531f9e51f6681baf23f94f3ef50' into release4.15.0

Posted by ah...@apache.org.
Merge commit 'b29975cc08515531f9e51f6681baf23f94f3ef50' into release4.15.0


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/d0740522
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/d0740522
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/d0740522

Branch: refs/heads/develop
Commit: d0740522b964008172b6dabc3f12d782078130eb
Parents: 4e44479 b29975c
Author: Justin Mclean <jm...@apache.org>
Authored: Thu Nov 19 16:36:36 2015 +1100
Committer: Justin Mclean <jm...@apache.org>
Committed: Thu Nov 19 16:36:36 2015 +1100

----------------------------------------------------------------------
 .../airspark/src/spark/components/Window.as     |  8 +++---
 .../src/spark/components/WindowedApplication.as |  8 +++---
 .../charts/src/mx/charts/styles/HaloDefaults.as |  4 +--
 .../projects/mx/src/mx/controls/MenuBar.as      |  6 ++---
 .../supportClasses/SkinnableTextBase.as         | 27 ++++++++++++--------
 5 files changed, 29 insertions(+), 24 deletions(-)
----------------------------------------------------------------------



[7/8] git commit: [flex-sdk] [refs/heads/develop] - Revert "Fix for https://issues.apache.org/jira/browse/FLEX-34909 (Embedded fonts not working on charts)"

Posted by ah...@apache.org.
Revert "Fix for https://issues.apache.org/jira/browse/FLEX-34909 (Embedded fonts not working on charts)"

This reverts commit 636859085bbd6794ce6b3950727e20c5aa2a665d.


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/5c7e0f80
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/5c7e0f80
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/5c7e0f80

Branch: refs/heads/develop
Commit: 5c7e0f80cfa8408c263c0a9cf025a8c816da0dd5
Parents: b36f9d6
Author: Alex Harui <ah...@apache.org>
Authored: Sat Dec 12 23:53:36 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Sat Dec 12 23:53:36 2015 -0800

----------------------------------------------------------------------
 frameworks/projects/charts/charts.css                    |  2 +-
 .../projects/charts/src/mx/charts/series/BarSeries.as    | 11 +++++++++--
 .../projects/charts/src/mx/charts/series/ColumnSeries.as | 11 +++++++++--
 3 files changed, 19 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/5c7e0f80/frameworks/projects/charts/charts.css
----------------------------------------------------------------------
diff --git a/frameworks/projects/charts/charts.css b/frameworks/projects/charts/charts.css
index 94cb064..02b374f 100644
--- a/frameworks/projects/charts/charts.css
+++ b/frameworks/projects/charts/charts.css
@@ -211,7 +211,7 @@ PieChart
 
 AxisRenderer
 {
-	labelClass: ClassReference("mx.controls.Label");
+	labelClass: ClassReference("spark.components.Label");
 	canDropLabels : ClassReference(null);
 	canStagger : true;
 	labelGap : 3;

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/5c7e0f80/frameworks/projects/charts/src/mx/charts/series/BarSeries.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/charts/src/mx/charts/series/BarSeries.as b/frameworks/projects/charts/src/mx/charts/series/BarSeries.as
index 7fb224a..864e37e 100644
--- a/frameworks/projects/charts/src/mx/charts/series/BarSeries.as
+++ b/frameworks/projects/charts/src/mx/charts/series/BarSeries.as
@@ -280,8 +280,15 @@ public class BarSeries extends Series implements IStackable2, IBar
         var labelClass:Class = getStyle("labelClass");
         if(labelClass == null)
         {
-			labelClass = Class(ApplicationDomain.currentDomain.
-				getDefinition("mx.controls::Label"));
+            try{
+                labelClass = Class(ApplicationDomain.currentDomain.
+                    getDefinition("spark.components::Label"));
+            }
+            catch(e:Error)
+            {
+                labelClass = Class(ApplicationDomain.currentDomain.
+                    getDefinition("mx.controls::Label"));
+            }
         }
         return labelClass;
     }

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/5c7e0f80/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as
----------------------------------------------------------------------
diff --git a/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as b/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as
index 05e5eee..bf81896 100644
--- a/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as
+++ b/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as
@@ -280,8 +280,15 @@ public class ColumnSeries extends Series implements IColumn,IStackable2
         
         if(labelClass == null)
         {
-			labelClass = Class(ApplicationDomain.currentDomain.
-				getDefinition("mx.controls::Label"));
+            try{
+                labelClass = Class(ApplicationDomain.currentDomain.
+                    getDefinition("spark.components::Label"));
+            }
+            catch(e:Error)
+            {
+                labelClass = Class(ApplicationDomain.currentDomain.
+                    getDefinition("mx.controls::Label"));
+            }
         }
         return labelClass;
     }


[2/8] git commit: [flex-sdk] [refs/heads/develop] - FLEX-34962 Add initial list of 4.15 contributors

Posted by ah...@apache.org.
FLEX-34962 Add initial list of 4.15 contributors


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/4e444791
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/4e444791
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/4e444791

Branch: refs/heads/develop
Commit: 4e44479131645cb0aca864a9167cc30dd8f7ec4e
Parents: 65f93e5
Author: Justin Mclean <jm...@apache.org>
Authored: Wed Nov 18 17:19:59 2015 +1100
Committer: Justin Mclean <jm...@apache.org>
Committed: Wed Nov 18 17:25:09 2015 +1100

----------------------------------------------------------------------
 CONTRIBUTORS | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/4e444791/CONTRIBUTORS
----------------------------------------------------------------------
diff --git a/CONTRIBUTORS b/CONTRIBUTORS
index 23e2982..0e81a84 100644
--- a/CONTRIBUTORS
+++ b/CONTRIBUTORS
@@ -3,7 +3,10 @@ support to the Apache Flex SDK.
 
 Apache Flex SDK 4.15.0
 ----------------------
-Aleksey, Andrey Gorbatov, Erik de Bruin
+Ad Pijnenburg, Aleksey, Alex Harui, Andrey Gorbatov, Chris Martin, Christofer Dutz,
+Dany Dhondt, Darrell Loverin, Erik de Bruin, Frédéric Thomas, Harbs,  Josh Tynjala,
+Justin Mclean, Mark Kessler, Mihai Chira, OmPrakash Muppirala, Piotr Zarzycki,
+Tom Chiverton
 
 Apache Flex SDK 4.14.1
 ----------------------


[6/8] git commit: [flex-sdk] [refs/heads/develop] - update approval script with binary package checks

Posted by ah...@apache.org.
update approval script with binary package checks


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/b36f9d6f
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/b36f9d6f
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/b36f9d6f

Branch: refs/heads/develop
Commit: b36f9d6f2cd9e74c85ce7a0a5bff7ff7aecaa562
Parents: 8e696c7
Author: Alex Harui <ah...@apache.org>
Authored: Fri Nov 20 17:46:51 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Fri Nov 20 17:46:51 2015 -0800

----------------------------------------------------------------------
 ApproveSDK.xml | 1041 +++++++++++++++++++++++++++++++++++++++++++++------
 1 file changed, 926 insertions(+), 115 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/b36f9d6f/ApproveSDK.xml
----------------------------------------------------------------------
diff --git a/ApproveSDK.xml b/ApproveSDK.xml
index 1048fba..77aba4a 100644
--- a/ApproveSDK.xml
+++ b/ApproveSDK.xml
@@ -52,12 +52,13 @@
     </condition>
 	<property name="package.suffix" value="tar.gz" />
 	
-	<property name="rat.report" value="${basedir}/rat-report.txt"/>
+    <property name="src.rat.report" value="${basedir}/rat-report-src.txt"/>
+    <property name="bin.rat.report" value="${basedir}/rat-report-bin.txt"/>
 	<property name="apache.rat.jar" value="apache-rat-0.8.jar" />
 	<property name="apache.rat.tasks.jar" value="apache-rat-tasks-0.8.jar" />
 	<property name="apache.rat.url" value="http://people.apache.org/~aharui/rat" />
 	   
-    <property file="${basedir}/approvefalcon.properties"/>
+    <property file="${basedir}/approvesdk.properties"/>
     
 	<property name="mac.text.display" value="cat" />
 	<property name="win.text.display" value="type" />
@@ -108,13 +109,24 @@
     <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_release-candidate/lastSuccessfulBuild/artifact/out">
-        <isset property="nightly" />
+    <condition property="package.url.path"
+        value="http://apacheflexbuild.cloudapp.net:8080/job/flex-sdk_release-candidate/lastSuccessfulBuild/artifact/out">
+        <not>
+            <isset property="rc" />
+        </not>
     </condition>
-    
+    <condition property="bin.package.url.path"
+        value="${package.url.path}">
+        <not>
+            <isset property="rc" />
+        </not>
+    </condition>
+
 	<property name="package.url.path" value="https://dist.apache.org/repos/dist/dev/flex/sdk/${release.version}/rc${rc}" />
-	<property name="package.url.name" value="apache-flex-sdk-${release.version}-src" />
+    <property name="src.package.url.path" value="${package.url.path}" />
+    <property name="bin.package.url.path" value="${package.url.path}/binaries" />
+    <property name="src.package.url.name" value="apache-flex-sdk-${release.version}-src" />
+    <property name="bin.package.url.name" value="apache-flex-sdk-${release.version}-bin" />
 	
     <condition property="zip.package">
         <equals arg1="zip" arg2="${package.suffix}" />
@@ -171,10 +183,10 @@
         <echo>Testing nightly build of release ${release.version}</echo>
     </target>
     
-    <target name="main" depends="install-rat,echo-mode,download,check-sigs,uncompress,rat-check,check-notices,build,approve" description="Perform required release approval steps">
+    <target name="main" depends="write-out-jars-list,install-rat,download,check-sigs,uncompress,rat-check,examine-jars,external-jar-folder-dump,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 name="main-no-download" depends="write-out-jars-list,install-rat,check-sigs,uncompress,rat-check,examine-jars,external-jar-folder-dump,check-notices,build,approve" description="Perform required release approval steps">
     </target>
 	
     <target name="test" >
@@ -182,6 +194,16 @@
 		<replaceregexp file="${rat.report}.bin.txt" match="..AL.*" replace="" byline="true"/>
     </target>
 	
+    <target name="write-out-jars-list" >
+        <delete file="jars.txt" />
+        <!-- this is a comma-delimited, no spaces, no-line-breaks list used to decide which jars
+         to skip in the rat-check of the binaries and which jars to examine before approval -->
+        <property name="jars-list" value="ant/lib/flexTasks.jar,lib/asc.jar,lib/asdoc.jar,lib/batik-all-flex.jar,lib/compc.jar,lib/copylocale.jar,lib/digest.jar,lib/fcsh.jar,lib/fdb.jar,lib/flex-compiler-oem.jar,lib/flex-messaging-common.jar,lib/flex-tool-api.jar,lib/fxgutils.jar,lib/mxmlc.jar,lib/mxmlc_da.jar,lib/mxmlc_de.jar,lib/mxmlc_es.jar,lib/mxmlc_fi.jar,lib/mxmlc_fr.jar,lib/mxmlc_it.jar,lib/mxmlc_ja.jar,lib/mxmlc_ko.jar,lib/mxmlc_nb.jar,lib/mxmlc_nl.jar,lib/mxmlc_pt.jar,lib/mxmlc_ru.jar,lib/mxmlc_sv.jar,lib/mxmlc_zh_CN.jar,lib/mxmlc_zh_TW.jar,lib/optimizer.jar,lib/swcdepends.jar,lib/swfdump.jar,lib/swfutils.jar,lib/velocity-dep-1.4-flex.jar"/>
+        <echo file="${basedir}/jars.txt" message="${jars-list}"/>
+        <echo file="${basedir}/jarexcludes.txt" message="${jars-list}"/>
+        <replaceregexp file="${basedir}/jarexcludes.txt" match="," flags="g" replace="${line.separator}" />
+    </target>
+    
 	<target name="display-text" >
 		<antcall target="display-text-mac" />
 		<antcall target="display-text-win" />
@@ -195,60 +217,89 @@
 	</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}.md5"
-            dest="${basedir}/${package.url.name}.${package.suffix}.md5" />
-        <antcall target="downloadasc" />
+        <get src="${src.package.url.path}/${src.package.url.name}.${package.suffix}"
+        dest="${basedir}/${src.package.url.name}.${package.suffix}" />
+        <get src="${src.package.url.path}/${src.package.url.name}.${package.suffix}.md5"
+        dest="${basedir}/${src.package.url.name}.${package.suffix}.md5" />
+        <get src="${bin.package.url.path}/${bin.package.url.name}.${package.suffix}"
+        dest="${basedir}/${bin.package.url.name}.${package.suffix}" />
+        <get src="${bin.package.url.path}/${bin.package.url.name}.${package.suffix}.md5"
+        dest="${basedir}/${bin.package.url.name}.${package.suffix}.md5" />
+        <antcall target="asc_get" />
     </target>
-    <target name="downloadasc" if="rc" >
-        <get src="${package.url.path}/${package.url.name}.${package.suffix}.asc"
-            dest="${basedir}/${package.url.name}.${package.suffix}.asc" />
+    
+    <target name="asc_get" if="rc" >
+        <get src="${src.package.url.path}/${src.package.url.name}.${package.suffix}.asc"
+        dest="${basedir}/${src.package.url.name}.${package.suffix}.asc" />
+        <get src="${bin.package.url.path}/${bin.package.url.name}.${package.suffix}.asc"
+        dest="${basedir}/${bin.package.url.name}.${package.suffix}.asc" />
     </target>
     
     <target name="check-sigs" description="check md5 and gpg sigs">
-		<replace file="${basedir}/${package.url.name}.${package.suffix}.md5"
-			token=" " />
-		<checksum file="${basedir}/${package.url.name}.${package.suffix}" algorithm="md5" verifyproperty="md5.ok" />
-        <condition property="MD5Invalid">
-			<not>
-				<equals arg1="${md5.ok}" arg2="true" />
-			</not>
+        <replace file="${basedir}/${src.package.url.name}.${package.suffix}.md5"
+        token=" " />
+        <checksum file="${basedir}/${src.package.url.name}.${package.suffix}" algorithm="md5" verifyproperty="src.md5.ok" />
+        <condition property="SourceMD5Invalid">
+            <not>
+                <equals arg1="${src.md5.ok}" arg2="true" />
+            </not>
+        </condition>
+        <fail message="Source Package MD5 checksum did not match" if="SourceMD5Invalid" />
+        <replace file="${basedir}/${bin.package.url.name}.${package.suffix}.md5"
+        token=" " />
+        <checksum file="${basedir}/${bin.package.url.name}.${package.suffix}" algorithm="md5" verifyproperty="bin.md5.ok" />
+        <condition property="BinaryMD5Invalid">
+            <not>
+                <equals arg1="${bin.md5.ok}" arg2="true" />
+            </not>
         </condition>
-        <fail message="MD5 checksum did not match" if="MD5Invalid" />
-        <antcall target="checkasc" />
+        <fail message="Binary Package MD5 checksum did not match" if="BinaryMD5Invalid" />
+        <echo>rc is ${rc}</echo>
+        <antcall target="gpg_check" />
     </target>
-    <target name="checkasc" 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 name="gpg_check" if="rc">
+        <exec executable="gpg" failonerror="true">
+            <arg value="--verify" />
+            <arg value="${basedir}/${src.package.url.name}.${package.suffix}.asc" />
+            <arg value="${basedir}/${src.package.url.name}.${package.suffix}" />
+        </exec>
+        <exec executable="gpg" failonerror="true">
+            <arg value="--verify" />
+            <arg value="${basedir}/${bin.package.url.name}.${package.suffix}.asc" />
+            <arg value="${basedir}/${bin.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>
-	
+        <delete dir="${basedir}/${src.package.url.name}" failonerror="false" />
+        <delete dir="${basedir}/${bin.package.url.name}" failonerror="false" />
+    </target>
+
     <target name="untar-file" unless="zip.package" description="Untars zipFile">
-        <untar src="${basedir}/${package.url.name}.${package.suffix}"
-                dest="${basedir}" compression="gzip"/>
+        <untar src="${basedir}/${src.package.url.name}.${package.suffix}"
+        dest="${basedir}" compression="gzip"/>
+        <untar src="${basedir}/${bin.package.url.name}.${package.suffix}"
+        dest="${basedir}" compression="gzip"/>
     </target>
 
     <target name="unzip-file" if="zip.package" description="Unzips zipFile">
-        <unzip src="${basedir}/${package.url.name}.${package.suffix}"
-                dest="${basedir}/${package.url.name}"/>
+        <unzip src="${basedir}/${src.package.url.name}.${package.suffix}"
+        dest="${basedir}/${src.package.url.name}"/>
+        <unzip src="${basedir}/${bin.package.url.name}.${package.suffix}"
+        dest="${basedir}/${bin.package.url.name}"/>
     </target>
 
     <target name="rat-check" >
 
-        <echo message="Checking files at ${basedir}/${package.url.name}, report is ${rat.report}"/>
+        <echo message="Checking files at ${basedir}/${src.package.url.name}, report is ${src.rat.report}"/>
 
         <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
-            reportFile="${rat.report}">
-            <fileset dir="${basedir}/${package.url.name}">
+            reportFile="${src.rat.report}">
+            <fileset dir="${basedir}/${src.package.url.name}">
                 <!--          Start of binary files           -->
                 <!-- exclude Flash Professional file used for integration with Flash Professional -->
                 <exclude name="frameworks/projects/flash-integration/FLA/ContentHolder.fla"/>
@@ -289,90 +340,835 @@
             </fileset>
         </rat:report>
 		<antcall target="display-text" >
-            <param name="file" value="${rat.report}" />
+            <param name="file" value="${src.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"/>
+        addproperty="rat.src.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" />
+		<copy file="${src.rat.report}" tofile="${src.rat.report}.bin.txt" />
+        <replaceregexp file="${src.rat.report}.bin.txt" match="..AL.*" replace="__AL" byline="true"/>
+        <replaceregexp file="${src.rat.report}.bin.txt" flags="gs" match="__AL." replace="" byline="false"/>
+        <antcall target="display-text" >
+            <param name="file" value="${src.rat.report}.bin.txt" />
         </antcall>
         <input
-			message="Check that there are no unexpected binaries.  Is it ok?"
-            validargs="y,n"
+        message="Check that there are no unexpected binaries.  Is it ok?"
+        validargs="y,n"
+        defaultvalue="n"
+        addproperty="rat.src.binaries.ok"/>
+        
+        <echo message="Checking files at ${basedir}/${bin.package.url.name}, report is ${bin.rat.report}"/>
+        
+        <antcall target="binary-rat" />
+        <antcall target="display-text" >
+            <param name="file" value="${bin.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.bin.license.ok"/>
+        <echo>filtering out AL files to make it easier to see binary files</echo>
+        <copy file="${bin.rat.report}" tofile="${bin.rat.report}.bin.txt" />
+        <replaceregexp file="${bin.rat.report}.bin.txt" match="..AL.*" replace="__AL" byline="true"/>
+        <replaceregexp file="${bin.rat.report}.bin.txt" flags="gs" match="__AL." replace="" byline="false"/>
+        <antcall target="display-text" >
+            <param name="file" value="${bin.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"/>
+        addproperty="rat.bin.binaries.ok"/>
+    </target>
+
+    <target name="binary-rat" >
+        <echo>${jars-list}</echo>
+        <rat:report xmlns:rat="antlib:org.apache.rat.anttasks"
+            reportFile="${bin.rat.report}">
+            <fileset dir="${basedir}/${bin.package.url.name}">
+                <!--          Start of binary files           -->
+                <!-- exclude Flash Professional file used for integration with Flash Professional -->
+                <exclude name="frameworks/projects/flash-integration/FLA/ContentHolder.fla"/>
+                <!-- exclude font embedded in asdoc example -->
+                <exclude name="frameworks/projects/framework/asdoc/en_US/mx/effects/examples/assets/OpenSans-Regular.ttf"/>
+                <!-- exclude media (png, gif, jpg, mp3, flv) -->
+                <exclude name="**/*.png"/>
+                <exclude name="**/*.gif"/>
+                <exclude name="**/*.jpg"/>
+                <exclude name="**/*.mp3"/>
+                <exclude name="**/*.flv"/>
+                <!-- exclude batik icon -->
+                <exclude name="modules/thirdparty/batik/sources/*.icns"/>
+                <!--          End of binary files           -->
+                <!-- exclude batik manifests -->
+                <exclude name="modules/thirdparty/batik/sources/*.mf"/>
+                <!-- exclude text files -->
+                <exclude name="CONTRIBUTING"/>
+                <exclude name="CONTRIBUTORS"/>
+                <exclude name="LICENSE.bin"/>
+                <exclude name="NOTICE.bin"/>
+                <exclude name="NOTICE.asc"/>
+                <exclude name="NOTICE.base"/>
+                <exclude name="modules/thirdparty/batik/lib/**/LICENSE*.txt"/>
+                <exclude name="modules/thirdparty/batik/lib/**/README*.txt"/>
+                <exclude name="frameworks/projects/flatspark/src/flatspark/assets/fonts/**/OFL.txt"/>
+                <!-- exclude w3c sources -->
+                <exclude name="modules/thirdparty/batik/resources/org/apache/flex/forks/batik/dom/svg/resources/*.mod"/>
+                <exclude name="modules/thirdparty/batik/resources/org/apache/flex/forks/batik/dom/svg/resources/*.dtd"/>
+                <exclude name="modules/thirdparty/batik/sources/org/w3c/css/sac/LexicalUnit.java"/>
+                <exclude name="modules/thirdparty/batik/sources/org/w3c/flex/forks/css/sac/*.java"/>
+                <exclude name="modules/thirdparty/batik/sources/org/w3c/flex/forks/css/sac/helpers/ParserFactory.java"/>
+                <!-- exclude config files -->
+                <exclude name="modules/thirdparty/batik/svn-revision"/>
+                <exclude name="modules/thirdparty/xerces-patch/src/java/META-INF/services/javax.xml.parsers.SAXParserFactory"/>
+                <exclude name="modules/thirdparty/xerces-patch/src/java/META-INF/services/org.apache.xerces.xni.parser.XMLParserConfiguration"/>
+                <exclude name="modules/thirdparty/xerces-patch/src/java/org/apache/xerces/jaxp/javax.xml.parsers.SAXParserFactory"/>
+                <exclude name="frameworks/libs/advancedgrids.swc"/>
+                <exclude name="frameworks/libs/air/airframework.swc"/>
+                <exclude name="frameworks/libs/air/airspark.swc"/>
+                <exclude name="frameworks/libs/apache.swc"/>
+                <exclude name="frameworks/libs/authoringsupport.swc"/>
+                <exclude name="frameworks/libs/automation/automation.swc"/>
+                <exclude name="frameworks/libs/automation/automation_agent.swc"/>
+                <exclude name="frameworks/libs/automation/automation_air.swc"/>
+                <exclude name="frameworks/libs/automation/automation_airspark.swc"/>
+                <exclude name="frameworks/libs/automation/automation_dmv.swc"/>
+                <exclude name="frameworks/libs/automation/automation_flashflexkit.swc"/>
+                <exclude name="frameworks/libs/automation/automation_spark.swc"/>
+                <exclude name="frameworks/libs/automation/tool.swc"/>
+                <exclude name="frameworks/libs/automation/tool_air.swc"/>
+                <exclude name="frameworks/libs/charts.swc"/>
+                <exclude name="frameworks/libs/core.swc"/>
+                <exclude name="frameworks/libs/experimental.swc"/>
+                <exclude name="frameworks/libs/experimental_mobile.swc"/>
+                <exclude name="frameworks/libs/flash-integration.swc"/>
+                <exclude name="frameworks/libs/flatspark.swc"/>
+                <exclude name="frameworks/libs/framework.swc"/>
+                <exclude name="frameworks/libs/mobile/mobilecomponents.swc"/>
+                <exclude name="frameworks/libs/mx/mx.swc"/>
+                <exclude name="frameworks/libs/rpc.swc"/>
+                <exclude name="frameworks/libs/spark.swc"/>
+                <exclude name="frameworks/libs/spark_dmv.swc"/>
+                <exclude name="frameworks/libs/sparkskins.swc"/>
+                <exclude name="frameworks/libs/textLayout.swc"/>
+                <exclude name="frameworks/locale/da_DK/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/apache_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/automation_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/charts_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/framework_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/mx_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/spark_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/da_DK/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/apache_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/automation_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/charts_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/framework_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/mx_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/spark_rb.swc"/>
+                <exclude name="frameworks/locale/de_CH/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/apache_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/automation_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/charts_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/flash-integration_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/framework_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/mx_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/playerglobal_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/spark_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/de_DE/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/apache_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/automation_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/charts_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/framework_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/mx_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/spark_rb.swc"/>
+                <exclude name="frameworks/locale/el_GR/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/apache_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/automation_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/charts_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/framework_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/mx_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/spark_rb.swc"/>
+                <exclude name="frameworks/locale/en_AU/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/apache_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/automation_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/charts_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/framework_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/mx_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/spark_rb.swc"/>
+                <exclude name="frameworks/locale/en_CA/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/apache_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/automation_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/charts_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/framework_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/mx_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/spark_rb.swc"/>
+                <exclude name="frameworks/locale/en_GB/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/apache_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/automation_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/charts_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/flash-integration_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/framework_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/mx_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/playerglobal_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/spark_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/en_US/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/apache_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/automation_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/charts_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/framework_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/mx_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/spark_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/es_ES/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/apache_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/automation_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/charts_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/framework_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/mx_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/spark_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/fi_FI/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/apache_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/automation_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/charts_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/framework_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/mx_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/fr_CH/spark_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/apache_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/automation_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/charts_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/flash-integration_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/framework_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/mx_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/playerglobal_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/spark_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/fr_FR/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/apache_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/automation_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/charts_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/framework_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/mx_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/spark_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/it_IT/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/apache_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/automation_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/charts_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/flash-integration_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/framework_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/mx_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/playerglobal_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/spark_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/ja_JP/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/apache_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/automation_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/charts_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/framework_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/mx_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/spark_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/ko_KR/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/apache_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/automation_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/charts_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/framework_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/mx_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/spark_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/nb_NO/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/apache_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/automation_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/charts_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/framework_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/mx_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/spark_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/nl_NL/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/apache_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/automation_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/charts_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/framework_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/mx_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/spark_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/pt_BR/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/apache_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/automation_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/charts_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/framework_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/mx_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/spark_rb.swc"/>
+                <exclude name="frameworks/locale/pt_PT/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/apache_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/automation_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/charts_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/flash-integration_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/framework_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/mx_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/playerglobal_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/spark_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/ru_RU/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/apache_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/automation_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/charts_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/framework_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/mx_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/spark_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/sv_SE/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/apache_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/automation_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/charts_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/flash-integration_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/framework_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/mx_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/playerglobal_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/spark_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/zh_CN/tool_air_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/advancedgrids_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/airframework_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/airspark_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/apache_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/automation_agent_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/automation_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/charts_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/experimental_mobile_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/experimental_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/framework_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/mobilecomponents_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/mx_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/rpc_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/spark_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/textLayout_rb.swc"/>
+                <exclude name="frameworks/locale/zh_TW/tool_air_rb.swc"/>
+                <exclude name="frameworks/projects/flash-integration/libs/flash-integration.swc"/>
+                <exclude name="frameworks/themes/Halo/halo.swc"/>
+                <exclude name="frameworks/themes/Mobile/mobile.swc"/>
+                <exclude name="frameworks/themes/Wireframe/wireframe.swc"/>
+                <exclude name="samples/themes/arcade/arcade.swc"/>
+                <exclude name="samples/themes/cobalt/cobalt.swc"/>
+                <exclude name="samples/themes/graphite/graphite.swc"/>
+                <exclude name="frameworks/localFonts.ser"/>
+                <exclude name="frameworks/macFonts.ser"/>
+                <exclude name="frameworks/projects/advancedgrids/bundles.properties"/>
+                <exclude name="frameworks/projects/airframework/bundles.properties"/>
+                <exclude name="frameworks/projects/airspark/bundles.properties"/>
+                <exclude name="frameworks/projects/apache/bundles.properties"/>
+                <exclude name="frameworks/projects/authoringsupport/bundles.properties"/>
+                <exclude name="frameworks/projects/automation/bundles.properties"/>
+                <exclude name="frameworks/projects/automation_agent/bundles.properties"/>
+                <exclude name="frameworks/projects/automation_air/bundles.properties"/>
+                <exclude name="frameworks/projects/automation_airspark/bundles.properties"/>
+                <exclude name="frameworks/projects/charts/bundles.properties"/>
+                <exclude name="frameworks/projects/core/bundles.properties"/>
+                <exclude name="frameworks/projects/experimental/bundles.properties"/>
+                <exclude name="frameworks/projects/experimental_mobile/bundles.properties"/>
+                <exclude name="frameworks/projects/flash-integration/bundles.properties"/>
+                <exclude name="frameworks/projects/flatspark/bundles.properties"/>
+                <exclude name="frameworks/projects/framework/bundles.properties"/>
+                <exclude name="frameworks/projects/halo/bundles.properties"/>
+                <exclude name="frameworks/projects/mobilecomponents/bundles.properties"/>
+                <exclude name="frameworks/projects/mobiletheme/bundles.properties"/>
+                <exclude name="frameworks/projects/mx/bundles.properties"/>
+                <exclude name="frameworks/projects/rpc/bundles.properties"/>
+                <exclude name="frameworks/projects/spark/bundles.properties"/>
+                <exclude name="frameworks/projects/spark_dmv/bundles.properties"/>
+                <exclude name="frameworks/projects/sparkskins/bundles.properties"/>
+                <exclude name="frameworks/projects/tool/bundles.properties"/>
+                <exclude name="frameworks/projects/tool_air/bundles.properties"/>
+                <exclude name="frameworks/projects/wireframe/bundles.properties"/>
+                <exclude name="frameworks/winFonts.ser"/>
+                <!-- external jars.  If you add an external jar, also add it to the external-jar-folder-dump target -->
+                <exclude name="lib/external/commons-collections.jar"/>
+                <exclude name="lib/external/commons-discovery.jar"/>
+                <exclude name="lib/external/commons-logging.jar"/>
+                <exclude name="lib/external/javacc.jar"/>
+                <exclude name="lib/external/saxon9.jar"/>
+                <exclude name="lib/external/xalan.jar"/>
+                <exclude name="lib/external/xercesImpl.jar"/>
+                <exclude name="lib/external/xercesPatch.jar"/>
+                <exclude name="lib/external/xml-apis-ext.jar"/>
+                <exclude name="lib/external/xml-apis.jar"/>
+                <!-- end list of external jars.  Next is their collateral files -->
+                <exclude name="lib/external/README.xml-apis-ext.txt"/>
+                <exclude name="lib/external/commons-collections-LICENSE.txt"/>
+                <exclude name="lib/external/commons-discovery-LICENSE"/>
+                <exclude name="lib/external/commons-logging-NOTICE.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/APACHE-ANT.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/APACHE-RESOLVER.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/APACHE-XERCES.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/FRIJTERS.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/GPL+CLASSPATH.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/JAMESCLARK.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/LEGAL.txt"/>
+                <exclude name="lib/external/saxon9-NOTICES/THAI.txt"/>
+                <exclude name="lib/external/xalan-LICENSES/BCEL.README.txt"/>
+                <exclude name="lib/external/xalan-LICENSES/java_cup.README.txt"/>
+                <exclude name="lib/external/xalan-LICENSES/regexp.README.txt"/>
+                <exclude name="lib/external/xalan-LICENSES/runtime.README.txt"/>
+                <exclude name="lib/external/xalan-NOTICE"/>
+                <exclude name="lib/external/xerces-LICENSE/LICENSE-SAX.html"/>
+                <exclude name="lib/external/xerces-NOTICES/NOTICE.resolver.txt"/>
+                <exclude name="lib/external/xerces-NOTICES/NOTICE.serializer.txt"/>
+                <exclude name="lib/external/xml-apis-LICENSES/LICENSE.sax.txt"/>
+                <exclude name="lib/external/xml-apis-LICENSES/README.dom.txt"/>
+                <exclude name="lib/external/xml-apis-LICENSES/README.sax.txt"/>
+                <exclude name="lib/external/xml-apis-ext-LICENSES/LICENSE.sac.html"/>
+                <exclude name="lib/external/xml-apis-ext-LICENSES/README.dom.txt"/>
+                <!-- this list is generated from a list at the top of this file -->
+                <excludesfile name="${basedir}/jarexcludes.txt" />
+            </fileset>
+        </rat:report>
+    </target>
+    
+    <target name="external-jar-folder-dump" >
+        <echo>list of folders in external jars.  This may impact LICENSE and NOTICE</echo>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/commons-collections.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/commons-discovery.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/commons-logging.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/javacc.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/saxon9.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/xalan.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/xercesImpl.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/xercesPatch.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/xml-apis-ext.jar" />
+        </antcall>
+        <antcall target="show-jar-folders" >
+            <param name="thisFile" value="lib/external/xml-apis.jar" />
+        </antcall>
+        <echo>end of list of folders in external jars.  This may impact LICENSE and NOTICE</echo>
+    </target>
+
+    <!-- someday figure out how to use
+     find . -name "*.jar" -exec tar ft {} \; | sort -u > paths.txt -->
+
+    <!-- how to do tar and sort on Windows? -->
+    <target name="examine-jars" if="isMac">
+        <!-- comma delimited list, no spaces, not one file per line -->
+        <copy file="jars.txt" tofile="loop.txt" />
+        <ant antfile="ApproveSDK.xml" target="loopOnce" inheritAll="false" />
+    </target>
+    <target name="loopOnce" >
+        <!-- make a copy of the list so we can munge it to
+         get the first item in the list -->
+        <delete file="loop1.txt" />
+        <copy file="loop.txt" tofile="loop1.txt" />
+        <loadfile srcFile="loop.txt" property="checkiflast" />
+        <condition property="islast" value="true">
+            <not>
+                <contains string="${checkiflast}" substring="," />
+            </not>
+        </condition>
+        <antcall target="notlast" />
+        <antcall target="lastone" />
+    </target>
+    <target name="notlast" unless="islast">
+        <loadfile srcFile="loop1.txt" property="echoFile" />
+        <replaceregexp file="loop1.txt" match="^(.*),(.*)" replace="\2" />
+        <loadfile srcFile="loop1.txt" property="thisFile" />
+        <antcall target="jar-check" />
+        <replaceregexp file="loop.txt" match="^(.*),(.*)" replace="\1" />
+        <ant antfile="ApproveSDK.xml" target="loopOnce" inheritAll="false"/>
+    </target>
+    <target name="lastone" if="islast">
+        <loadfile srcFile="loop1.txt" property="thisFile" />
+        <antcall target="jar-check" />
+        <delete file="loop.txt" />
+        <delete file="loop1.txt" />
+    </target>
+
+    <target name="show-jar-folders">
+        <delete dir="${basedir}/jar" failonerror="false" />
+        <mkdir dir="${basedir}/jar" />
+        <unjar src="${basedir}/${bin.package.url.name}/${thisFile}" dest="${basedir}/jar" />
+        <exec executable="tar" output="${basedir}/jarclasses.txt">
+            <arg value="tf" />
+            <arg value="${basedir}/${bin.package.url.name}/${thisFile}" />
+        </exec>
+        <replaceregexp file="${basedir}/jarclasses.txt" match="(.*)/(.*)" replace="\1" flags="m" byline="true"/>
+        <exec executable="sort" output="${basedir}/jarpaths.txt">
+            <arg value="-u" />
+            <arg value="${basedir}/jarclasses.txt" />
+        </exec>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/jarpaths.txt" />
+        </antcall>
+    </target>
+    
+    <target name="jar-check" >
+        <antcall target="show-jar-folders" />
+        <input
+        message="Above is the list of folders in this ${thisFile}.&#xA;Folder names can sometimes indicate presence of third-party content that needs to be in LICENSE and/or NOTICE files.&#xA;Press the Enter key to see the LICENSE for this jar."/>
+        <fail message="LICENSE not in ${basedir}/${bin.package.url.name}/${thisFile}">
+            <condition>
+                <not>
+                    <available file="${basedir}/jar/META-INF/LICENSE" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="NOTICE not in ${basedir}/${bin.package.url.name}/${thisFile}">
+            <condition>
+                <not>
+                    <available file="${basedir}/jar/META-INF/NOTICE" />
+                </not>
+            </condition>
+        </fail>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/jar/META-INF/LICENSE" />
+        </antcall>
+        <input
+        message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="jar.license.ok"/>
+        <fail message="LICENSE for ${basedir}/${bin.package.url.name}/${thisFile} not correct">
+            <condition>
+                <not>
+                    <equals arg1="${jar.license.ok}" arg2="y" />
+                </not>
+            </condition>
+        </fail>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/jar/META-INF/NOTICE" />
+        </antcall>
+        <input
+        message="Check the NOTICE for required notices from third-parties. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="jar.notice.ok"/>
+        <fail message="NOTICE for ${basedir}/${bin.package.url.name}/${thisFile} not correct">
+            <condition>
+                <not>
+                    <equals arg1="${jar.notice.ok}" arg2="y" />
+                </not>
+            </condition>
+        </fail>
+        
     </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 message="README not in source package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${src.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 message="RELEASE_NOTES not in source package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${src.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 message="NOTICE not in source package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${src.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 message="LICENSE not in source package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${src.package.url.name}/LICENSE" />
+                </not>
+            </condition>
         </fail>
-		<antcall target="display-text" >
-            <param name="file" value="${basedir}/${package.url.name}/README" />
+        <fail message="README not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/README" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="RELEASE_NOTES not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/RELEASE_NOTES" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="NOTICE not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/NOTICE" />
+                </not>
+            </condition>
+        </fail>
+        <fail message="LICENSE not in binary package">
+            <condition>
+                <not>
+                    <available file="${basedir}/${bin.package.url.name}/LICENSE" />
+                </not>
+            </condition>
+        </fail>
+        <checksum file="${basedir}/${src.package.url.name}/RELEASE_NOTES" property="src.rnmd5" />
+        <checksum file="${basedir}/${bin.package.url.name}/RELEASE_NOTES" property="bin.rnmd5" />
+        <fail message="RELEASE_NOTES in binary package does not match source package">
+            <condition>
+                <not>
+                    <equals arg1="${src.rnmd5}" arg2="${bin.rnmd5}" />
+                </not>
+            </condition>
+        </fail>
+        <checksum file="${basedir}/${src.package.url.name}/README" property="src.rmd5" />
+        <checksum file="${basedir}/${bin.package.url.name}/README" property="bin.rmd5" />
+        <fail message="README in binary package does not match source package">
+            <condition>
+                <not>
+                    <equals arg1="${src.rmd5}" arg2="${bin.rmd5}" />
+                </not>
+            </condition>
+        </fail>
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/README" />
         </antcall>
-		<input
-			message="Check the README for version numbers, spelling, grammar, accuracy.  Is it ok?"
-            validargs="y,n"
+        <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 target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/RELEASE_NOTES" />
         </antcall>
-		<input
-			message="Check the RELEASE_NOTES for copyright years, spelling, grammar, accuracy. Is it ok?"
-            validargs="y,n"
+        <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 target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/NOTICE" />
         </antcall>
-		<input
-			message="Check the NOTICE for required notices from third-parties. Is it ok?"
-            validargs="y,n"
+        <input
+        message="Check the source package 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" />
+        addproperty="src.notice.ok"/>
+        
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/${src.package.url.name}/LICENSE" />
         </antcall>
-		<input
-			message="Check the LICENSE for the Apache License and third-party licenses. Is it ok?"
-            validargs="y,n"
+        <input
+        message="Check the source package LICENSE for the Apache License and third-party licenses. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="src.license.ok"/>
+        
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/${bin.package.url.name}/NOTICE" />
+        </antcall>
+        <input
+        message="Check the binary package NOTICE for required notices from third-parties. Is it ok?"
+        validargs="y,n"
         defaultvalue="y"
-        addproperty="license.ok"/>
+        addproperty="bin.notice.ok"/>
+        
+        <antcall target="display-text" >
+            <param name="file" value="${basedir}/${bin.package.url.name}/LICENSE" />
+        </antcall>
+        <input
+        message="Check the binary package LICENSE for the Apache License and third-party licenses. Is it ok?"
+        validargs="y,n"
+        defaultvalue="y"
+        addproperty="bin.license.ok"/>
     </target>
 
     <target name="build" depends="copy.downloads">
@@ -380,16 +1176,16 @@
 			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" />
-        <chmod file="${basedir}/${package.url.name}/bin/compc" perm="ugo+rx"/>
-        <chmod file="${basedir}/${package.url.name}/bin/mxmlc" perm="ugo+rx"/>
+        <chmod file="${basedir}/${src.package.url.name}/bin/compc" perm="ugo+rx"/>
+        <chmod file="${basedir}/${src.package.url.name}/bin/mxmlc" perm="ugo+rx"/>
         <property name="build.noprompt" value="true" />
-        <ant dir="${basedir}/${package.url.name}" target="main" />
-        <ant dir="${basedir}/${package.url.name}" target="checkintests" />
+        <ant dir="${basedir}/${src.package.url.name}" target="main" />
+        <ant dir="${basedir}/${src.package.url.name}" target="checkintests" />
     </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" >
+        <copy todir="${basedir}/${src.package.url.name}/in" >
 			<fileset dir="${download.cache.dir}" />
 		</copy>
     </target>
@@ -397,28 +1193,43 @@
 	<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" />
+                <equals arg1="${rat.src.license.ok}" arg2="y" />
+                <equals arg1="${rat.src.binaries.ok}" arg2="y" />
+                <equals arg1="${rat.bin.license.ok}" arg2="y" />
+                <equals arg1="${rat.bin.binaries.ok}" arg2="y" />
+                <equals arg1="${readme.ok}" arg2="y" />
+                <equals arg1="${releasenotes.ok}" arg2="y" />
+                <equals arg1="${src.notice.ok}" arg2="y" />
+                <equals arg1="${bin.notice.ok}" arg2="y" />
+                <equals arg1="${readmejx.ok}" arg2="y" />
+                <equals arg1="${releasenotesjx.ok}" arg2="y" />
+                <equals arg1="${src.license.ok}" arg2="y" />
+                <equals arg1="${bin.license.ok}" arg2="y" />
 			</and>
 		</condition>
 		<property name="vote" value="-1" />
 		<echo>
 ${vote}
-Package ${package.url.path}/${package.url.name}.${package.suffix}
+Package ${src.package.url.path}/${src.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}
+NOTICE is ok: ${src.notice.ok}
+LICENSE is ok: ${src.license.ok}
+No unapproved licenses or archives: ${rat.src.license.ok}
+No unapproved binaries: ${rat.src.binaries.ok}
+
+Package ${bin.package.url.path}/${bin.package.url.name}.${package.suffix}
+Binary kit signatures match: y
+NOTICE is ok: ${bin.notice.ok}
+LICENSE is ok: ${bin.license.ok}
+No unapproved licenses or files in jars: y
+No unapproved licenses or archives in binary package: ${rat.bin.license.ok}
+No unapproved binaries in binary package: ${rat.bin.binaries.ok}
+
 		</echo>
 		<fail>
 			<condition>


[8/8] git commit: [flex-sdk] [refs/heads/develop] - Merge branch 'release4.15.0' into develop

Posted by ah...@apache.org.
Merge branch 'release4.15.0' into develop


Project: http://git-wip-us.apache.org/repos/asf/flex-sdk/repo
Commit: http://git-wip-us.apache.org/repos/asf/flex-sdk/commit/881ea2c3
Tree: http://git-wip-us.apache.org/repos/asf/flex-sdk/tree/881ea2c3
Diff: http://git-wip-us.apache.org/repos/asf/flex-sdk/diff/881ea2c3

Branch: refs/heads/develop
Commit: 881ea2c363e8ef5b9415051708348828861ef63a
Parents: 10a910e 5c7e0f8
Author: Alex Harui <ah...@apache.org>
Authored: Mon Dec 14 15:56:23 2015 -0800
Committer: Alex Harui <ah...@apache.org>
Committed: Mon Dec 14 15:56:23 2015 -0800

----------------------------------------------------------------------
 ApproveSDK.xml                                  | 1041 ++++++++++++++++--
 CONTRIBUTORS                                    |    5 +-
 RELEASE_NOTES                                   |   61 +-
 frameworks/projects/charts/charts.css           |    2 +-
 .../charts/src/mx/charts/series/BarSeries.as    |   11 +-
 .../charts/src/mx/charts/series/ColumnSeries.as |   11 +-
 modules/downloads.xml                           |    2 +-
 7 files changed, 1009 insertions(+), 124 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/881ea2c3/frameworks/projects/charts/src/mx/charts/series/BarSeries.as
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/flex-sdk/blob/881ea2c3/frameworks/projects/charts/src/mx/charts/series/ColumnSeries.as
----------------------------------------------------------------------