Merge branch 'release/0.9.7' into develop
diff --git a/CONTRIBUTORS.md b/CONTRIBUTORS.md index 50a6b71..df3043c 100644 --- a/CONTRIBUTORS.md +++ b/CONTRIBUTORS.md
@@ -21,11 +21,23 @@ #### Contributors - * Christopher Dutz (https://github.com/chrisdutz) - * Justin Mclean (https://github.com/justinmclean) * Andrew Dufilie (https://github.com/adufilie) + * Alex Harui (https://github.com/aharui) + * Omprakash Muppirala (https://github.com/bigosmallm) + * Carlos Rovira (https://github.com/carlosrovira) + * Christofer Dutz (https://github.com/chrisdutz) * Cyrill Zadra (https://github.com/cyrillzadra) - * Daniel Loverin (https://github.com/dloverin) - * taorepoara (https://github.com/taorepoara) + * Darrell Loverin (https://github.com/dloverin) + * Frédéric Thomas (https://github.com/doublefx) + * Erik DeBruin (https://github.com/erikdebruin) + * Greg Dove (https://github.com/greg-dove) + * Harbs (https://github.com/harbs) + * Jimmy Casey (https://github.com/jimmycasey) + * Josh Tynjala (https://github.com/joshtynjala) + * Justin Mclean (https://github.com/justinmclean) * Nikolay Sukharev (https://github.com/mrchnk) - * Jimmy Casey (https://github.com/jimmycasey) \ No newline at end of file + * Peter Ent (https://github.com/pentapache) + * Piotr Zarzycki (https://github.com/piotrzarzycki21) + * taorepoara (https://github.com/taorepoara) + * Michael Schmalle (https://github.com/teotigraphix) + * Yishay Weiss (https://github.com/yishayw)
diff --git a/Jenkinsfile b/Jenkinsfile index 5f527ad..3e702f1 100644 --- a/Jenkinsfile +++ b/Jenkinsfile
@@ -60,13 +60,6 @@ echo 'checking out royale-framework for branch ' + env.BRANCH_NAME checkout([$class: 'GitSCM', branches: [[name: env.BRANCH_NAME]], extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'framework']], userRemoteConfigs: [[url: 'https://github.com/apache/royale-asjs.git']]]) - stage 'Build Royale Compiler Utils' - - dir('compiler') { - echo 'Building Royale Compiler Utils' - bat "mvn -U clean ${mavenGoal} ${mavenLocalRepo} -s C:\\.m2\\settings.xml -P -main,utils -Dcom.adobe.systemIdsForWhichTheTermsOfTheAdobeLicenseAgreementAreAccepted=3c9041a9,3872fc1e" - } - stage 'Build Royale Compiler' dir('compiler') {
diff --git a/LICENSE.bin b/LICENSE.bin index b3b5af1..da97302 100644 --- a/LICENSE.bin +++ b/LICENSE.bin
@@ -30,3 +30,94 @@ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +This product bundles java-websocket from github.com/TooTallNate/Java-WebSocket available under the MIT license + +Copyright (c) 2010-2020 Nathan Rajlich + + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without + restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following + conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + +This product bundles dom4j from https://dom4j.github.io available under the BSD license + +Copyright 2001-2016 (C) MetaStuff, Ltd. and DOM4J contributors. All Rights Reserved. + +Redistribution and use of this software and associated documentation +("Software"), with or without modification, are permitted provided +that the following conditions are met: + +1. Redistributions of source code must retain copyright + statements and notices. Redistributions must also contain a + copy of this document. + +2. Redistributions in binary form must reproduce the + above copyright notice, this list of conditions and the + following disclaimer in the documentation and/or other + materials provided with the distribution. + +3. The name "DOM4J" must not be used to endorse or promote + products derived from this Software without prior written + permission of MetaStuff, Ltd. For written permission, + please contact dom4j-info@metastuff.com. + +4. Products derived from this Software may not be called "DOM4J" + nor may "DOM4J" appear in their names without prior written + permission of MetaStuff, Ltd. DOM4J is a registered + trademark of MetaStuff, Ltd. + +5. Due credit should be given to the DOM4J Project - https://dom4j.github.io/ + +THIS SOFTWARE IS PROVIDED BY METASTUFF, LTD. AND CONTRIBUTORS +``AS IS'' AND ANY EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT +NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +METASTUFF, LTD. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +OF THE POSSIBILITY OF SUCH DAMAGE. + +This product bundles lsf4j from http://www.slf4j.org/ available under the MIT license + +Copyright (c) 2004-2017 QOS.ch + All rights reserved. + + Permission is hereby granted, free of charge, to any person obtaining + a copy of this software and associated documentation files (the + "Software"), to deal in the Software without restriction, including + without limitation the rights to use, copy, modify, merge, publish, + distribute, sublicense, and/or sell copies of the Software, and to + permit persons to whom the Software is furnished to do so, subject to + the following conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE + LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION + WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +
diff --git a/NOTICE b/NOTICE index 6f9f984..5854ba4 100644 --- a/NOTICE +++ b/NOTICE
@@ -1,5 +1,5 @@ Apache Royale Compiler -Copyright 2019 The Apache Software Foundation +Copyright 2020 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/).
diff --git a/NOTICE.base b/NOTICE.base index 69caa49..6ad82f6 100644 --- a/NOTICE.base +++ b/NOTICE.base
@@ -1,5 +1,5 @@ Apache Royale Compiler -Copyright 2019 The Apache Software Foundation +Copyright 2020 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/).
diff --git a/NOTICE.fdb b/NOTICE.fdb index fd988a9..95f5af4 100644 --- a/NOTICE.fdb +++ b/NOTICE.fdb
@@ -1,5 +1,5 @@ Apache Royale Debugger -Copyright 2019 The Apache Software Foundation +Copyright 2020 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/).
diff --git a/NOTICE.oem b/NOTICE.oem index e5c6bf7..f02b4e9 100644 --- a/NOTICE.oem +++ b/NOTICE.oem
@@ -1,5 +1,5 @@ Apache Royale Compiler -Copyright 2019 The Apache Software Foundation +Copyright 2020 The Apache Software Foundation This product includes software developed at The Apache Software Foundation (http://www.apache.org/).
diff --git a/README b/README index b425e5e..4e5d8da 100644 --- a/README +++ b/README
@@ -61,11 +61,6 @@ *1) The bin directories for Maven and Java should be added to your PATH. - You must first build the utils profile without the main profile - and then the main profile. So, first run: - - mvn clean install -P -main,utils - Then run mvn clean install
diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 2d97fdf..9eb9061 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md
@@ -9,6 +9,11 @@ - (JS) Compiler updates to support more e4X variations/scenarios, including 'use namespace' and 'default xml namespace' directives - (JS) Compiler updates to address custom namespace-related output, and reflection support - (JS) Compiler updates to output more compact Reflection data + - Fixed a [compiler memory leak](https://github.com/apache/royale-compiler/issues/117) that was occurring over multiple compilations + - Fixes in bindable code generation for accessors, and in bindable function generation for swf + - Fixed show-binding-warnings=false option to switch off binding warnings + - Maven: Many fixes, improvements and Updates + - Support for Maven distribution (Create SDK with Maven) - (JS) Prevent renaming of public variables in release builds so that they may be set from MXML. - (JS) Fix conflict between methods of the same name in superclass and subclass, where the superclass method is private and the subclass method is public. - (JS) Added jsx-factory compiler option to customize the factory method used in code generated from [JSX]. @@ -30,6 +35,8 @@ - (SWF/JS) Fix missing error for calling a getter as a function (similar to attempting to call a variable as a function) when it is the wrong type. - (JS) Fix missing . in generated JS when using static getter/setter in a custom namespace. + For additional information on recent issues that have been closed, see [Github Issues List](https://github.com/apache/royale-compiler/issues?q=is%3Aissue+is%3Aclosed) + Apache Royale Compiler 0.9.6 =================
diff --git a/build.properties b/build.properties index 7d0e2f6..a3d7ea8 100644 --- a/build.properties +++ b/build.properties
@@ -18,9 +18,9 @@ ################################################################################ ##used by Ant scripts -release.version=0.9.7 +release.version=0.9.8 ##used by release jobs on Jenkins -releaseversion=0.9.7 +releaseversion=0.9.8 developbranchname=develop generated.by.match=/\\*\\*. \\* Generated by Apache Royale Compiler
diff --git a/build.xml b/build.xml index ac25291..7f47fe1 100644 --- a/build.xml +++ b/build.xml
@@ -277,6 +277,7 @@ <include name="settings-template.xml"/> <include name="royale-maven-plugin/pom.xml"/> <include name="royale-maven-plugin/src/**"/> + <include name="src/main/**"/> </fileset> </copy>
diff --git a/compiler-common/pom.xml b/compiler-common/pom.xml index 773ea34..c081469 100644 --- a/compiler-common/pom.xml +++ b/compiler-common/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -70,4 +69,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/compiler-externc/pom.xml b/compiler-externc/pom.xml index b0aecb1..59212d8 100644 --- a/compiler-externc/pom.xml +++ b/compiler-externc/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -50,9 +49,9 @@ </configuration> </execution> </executions> - <!-- - Dependency to the closure compiler externs artifact so - the "unpack-resources" goal can find the externs.zip + <!-- + Dependency to the closure compiler externs artifact so + the "unpack-resources" goal can find the externs.zip --> <dependencies> <dependency> @@ -266,4 +265,4 @@ </dependencies> -</project> +<properties /></project>
diff --git a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/BaseReference.java b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/BaseReference.java index 0be229f..22af55f 100644 --- a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/BaseReference.java +++ b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/BaseReference.java
@@ -34,7 +34,7 @@ import com.google.javascript.rhino.Node; import com.google.javascript.rhino.jstype.JSType.Nullability; -public abstract class BaseReference +public abstract class BaseReference implements Comparable< BaseReference > { private String qualifiedName; @@ -329,4 +329,9 @@ public TrueConstant isTrueConstant() { return null; } + + @Override + public int compareTo(BaseReference o) { + return this.getBaseName().compareTo(o.getBaseName()); + } }
diff --git a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/ClassReference.java b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/ClassReference.java index d32cde3..f22aa83 100644 --- a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/ClassReference.java +++ b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/reference/ClassReference.java
@@ -96,6 +96,7 @@ if (!isInterface()) allMethods.addAll(staticFields.values()); allMethods.addAll(instanceFields.values()); + Collections.sort(allMethods); return allMethods; } @@ -105,6 +106,7 @@ if (!isInterface()) allMethods.addAll(staticMethods.values()); allMethods.addAll(instanceMethods.values()); + Collections.sort(allMethods); return allMethods; } @@ -494,7 +496,7 @@ if (classReference != null) result.add(classReference); } - + Collections.sort(result); return result; } @@ -508,6 +510,7 @@ if (reference != null) result.add(reference); } + Collections.sort(result); return result; } @@ -521,6 +524,7 @@ if (reference != null) result.add(reference); } + Collections.sort(result); return result; } @@ -549,6 +553,7 @@ getModel().problems.add(problem); } } + Collections.sort(result); return result; } @@ -563,7 +568,7 @@ result.addAll(superClass.getInterfaces()); superClass = superClass.getSuperClass(); } - + Collections.sort(result); return result; }
diff --git a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/utils/FunctionUtils.java b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/utils/FunctionUtils.java index 50b884b..c2456dd 100644 --- a/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/utils/FunctionUtils.java +++ b/compiler-externc/src/main/java/org/apache/royale/compiler/internal/codegen/typedefs/utils/FunctionUtils.java
@@ -97,7 +97,11 @@ { for (Node param : paramNode.children()) { - sb.append(param.getString()); + String name = param.getString(); + int c = name.indexOf("$jscomp$"); + if (c != -1) + name = name.substring(0, c); + sb.append(name); if (!outputJS) sb.append(":Object"); if (index < len - 1)
diff --git a/compiler-jx/pom.xml b/compiler-jx/pom.xml index 0e4654f..84b18b4 100644 --- a/compiler-jx/pom.xml +++ b/compiler-jx/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -240,4 +239,4 @@ </dependencies> -</project> +<properties /></project>
diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSC.java b/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSC.java index 1e52a2c..2d42011 100644 --- a/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSC.java +++ b/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSC.java
@@ -28,6 +28,8 @@ import java.io.InputStream; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.ZoneId; +import java.time.ZonedDateTime; import java.util.*; import java.util.zip.CRC32; import java.util.zip.Deflater; @@ -502,30 +504,15 @@ String metadataFormat = targetSettings.getSWFMetadataDateFormat(); try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - fileDate = sdf.parse(metadataDate).getTime(); - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IllegalArgumentException e1) { - e1.printStackTrace(); - } - // TODO: Fix this the same way that the compiler normalized the date - // strip off timezone. Zip format doesn't store timezone - // and the goal is to have the same date and time regardless - // of which timezone the build machine is using. - int c = metadataDate.lastIndexOf(' '); - if(c != -1) { - metadataDate = metadataDate.substring(0, c); - } - c = metadataFormat.lastIndexOf(' '); - if(c != -1) { - metadataFormat = metadataFormat.substring(0, c); - } - try { - SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - zipFileDate = sdf.parse(metadataDate).getTime(); + Date d = sdf.parse(metadataDate); + Calendar cal = new GregorianCalendar(); + cal.setTime(d); + sdf.setTimeZone(TimeZone.getTimeZone("UTC")); + d = sdf.parse(metadataDate); + fileDate = d.getTime(); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + zipFileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -595,8 +582,15 @@ String metadataFormat = targetSettings.getSWFMetadataDateFormat(); try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); + Date d = sdf.parse(metadataDate); + Calendar cal = new GregorianCalendar(); + cal.setTime(d); sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - fileDate = sdf.parse(metadataDate).getTime(); + d = sdf.parse(metadataDate); + fileDate = d.getTime(); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + zipFileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -617,8 +611,17 @@ } try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); + Date d = sdf.parse(metadataDate); + // zip file wants dates in local time + Calendar cal = new GregorianCalendar(); + cal.setTime(d); sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - zipFileDate = sdf.parse(metadataDate).getTime(); + d = sdf.parse(metadataDate); + // other timestamps are in UTC + fileDate = d.getTime(); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + zipFileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace();
diff --git a/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSCRoyale.java b/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSCRoyale.java index d2eed7d..a370772 100644 --- a/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSCRoyale.java +++ b/compiler-jx/src/main/java/org/apache/royale/compiler/clients/COMPJSCRoyale.java
@@ -28,6 +28,8 @@ import java.io.InputStream; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.ZoneId; +import java.time.ZonedDateTime; import java.util.*; import java.util.zip.CRC32; import java.util.zip.Deflater; @@ -220,30 +222,15 @@ String metadataFormat = targetSettings.getSWFMetadataDateFormat(); try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - fileDate = sdf.parse(metadataDate).getTime(); - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IllegalArgumentException e1) { - e1.printStackTrace(); - } - // TODO: Fix this the same way that the compiler normalized the date - // strip off timezone. Zip format doesn't store timezone - // and the goal is to have the same date and time regardless - // of which timezone the build machine is using. - int c = metadataDate.lastIndexOf(' '); - if(c != -1) { - metadataDate = metadataDate.substring(0, c); - } - c = metadataFormat.lastIndexOf(' '); - if(c != -1) { - metadataFormat = metadataFormat.substring(0, c); - } - try { - SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - zipFileDate = sdf.parse(metadataDate).getTime(); + Date d = sdf.parse(metadataDate); + Calendar cal = new GregorianCalendar(); + cal.setTime(d); + sdf.setTimeZone(TimeZone.getTimeZone("UTC")); + d = sdf.parse(metadataDate); + fileDate = d.getTime(); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + zipFileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -403,30 +390,15 @@ String metadataFormat = targetSettings.getSWFMetadataDateFormat(); try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - fileDate = sdf.parse(metadataDate).getTime(); - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IllegalArgumentException e1) { - e1.printStackTrace(); - } - // TODO: Fix this the same way that the compiler normalized the date - // strip off timezone. Zip format doesn't store timezone - // and the goal is to have the same date and time regardless - // of which timezone the build machine is using. - int c = metadataDate.lastIndexOf(' '); - if(c != -1) { - metadataDate = metadataDate.substring(0, c); - } - c = metadataFormat.lastIndexOf(' '); - if(c != -1) { - metadataFormat = metadataFormat.substring(0, c); - } - try { - SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - zipFileDate = sdf.parse(metadataDate).getTime(); + Date d = sdf.parse(metadataDate); + Calendar cal = new GregorianCalendar(); + cal.setTime(d); + sdf.setTimeZone(TimeZone.getTimeZone("UTC")); + d = sdf.parse(metadataDate); + fileDate = d.getTime(); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + zipFileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); @@ -505,30 +477,15 @@ String metadataFormat = targetSettings.getSWFMetadataDateFormat(); try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); + Date d = sdf.parse(metadataDate); + Calendar cal = new GregorianCalendar(); + cal.setTime(d); sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - fileDate = sdf.parse(metadataDate).getTime(); - } catch (ParseException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } catch (IllegalArgumentException e1) { - e1.printStackTrace(); - } - // TODO: Fix this the same way that the compiler normalized the date - // strip off timezone. Zip format doesn't store timezone - // and the goal is to have the same date and time regardless - // of which timezone the build machine is using. - int c = metadataDate.lastIndexOf(' '); - if(c != -1) { - metadataDate = metadataDate.substring(0, c); - } - c = metadataFormat.lastIndexOf(' '); - if(c != -1) { - metadataFormat = metadataFormat.substring(0, c); - } - try { - SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - zipFileDate = sdf.parse(metadataDate).getTime(); + d = sdf.parse(metadataDate); + fileDate = d.getTime(); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + zipFileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace();
diff --git a/compiler-test-utils/pom.xml b/compiler-test-utils/pom.xml index 258c08d..e54b61c 100644 --- a/compiler-test-utils/pom.xml +++ b/compiler-test-utils/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -52,4 +51,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/compiler/pom.xml b/compiler/pom.xml index 6bed104..cf1c584 100644 --- a/compiler/pom.xml +++ b/compiler/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -83,8 +82,8 @@ </execution> </executions> </plugin> - <!-- - Do all the JFlex code generation + <!-- + Do all the JFlex code generation --> <plugin> <groupId>de.jflex</groupId> @@ -130,8 +129,8 @@ </execution> </executions> </plugin> - <!-- - Do all the Antlr2 code generation + <!-- + Do all the Antlr2 code generation --> <plugin> <groupId>org.apache.maven.plugins</groupId> @@ -156,12 +155,12 @@ </dependencies> </plugin> - <!-- - The generation of the metadata-parser requires Antlr to - load ImportMetadataTokenTypes.txt. Unfortunately Altlr - looks in the current working directory. The only way to - force it to work, is to start a new process with the - working directory in the directory containing the file. + <!-- + The generation of the metadata-parser requires Antlr to + load ImportMetadataTokenTypes.txt. Unfortunately Altlr + looks in the current working directory. The only way to + force it to work, is to start a new process with the + working directory in the directory containing the file. --> <plugin> <groupId>org.codehaus.mojo</groupId> @@ -240,8 +239,8 @@ </executions> </plugin> - <!-- - Do all the JBurg code generation. + <!-- + Do all the JBurg code generation. --> <plugin> <groupId>net.sourceforge.jburg</groupId> @@ -294,8 +293,8 @@ </dependencies> </plugin> - <!-- - Do all the Antlr3 code generation. + <!-- + Do all the Antlr3 code generation. --> <plugin> <groupId>org.antlr</groupId> @@ -330,8 +329,8 @@ </executions> </plugin> - <!-- - Do all the custom processing with the royale build tools. + <!-- + Do all the custom processing with the royale build tools. --> <plugin> <groupId>org.apache.royale.compiler</groupId> @@ -491,10 +490,10 @@ </build> <profiles> - <!-- - This profile adds one test, that relies on the original FDK being - available as it compiles each project in the framework/projects - directory. It requires some environment variables being set. + <!-- + This profile adds one test, that relies on the original FDK being + available as it compiles each project in the framework/projects + directory. It requires some environment variables being set. --> <profile> <id>option-with-flex-sdk-tests</id> @@ -628,4 +627,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/compiler/src/main/java/org/apache/royale/swc/io/SWCWriter.java b/compiler/src/main/java/org/apache/royale/swc/io/SWCWriter.java index c1a1a77..5ab959d 100644 --- a/compiler/src/main/java/org/apache/royale/swc/io/SWCWriter.java +++ b/compiler/src/main/java/org/apache/royale/swc/io/SWCWriter.java
@@ -31,6 +31,11 @@ import java.security.DigestOutputStream; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.ZoneId; +import java.time.ZonedDateTime; +import java.util.Calendar; +import java.util.Date; +import java.util.GregorianCalendar; import java.util.TimeZone; import java.util.zip.CRC32; import java.util.zip.Deflater; @@ -86,32 +91,23 @@ File outputDirectory = new File(outputFile.getAbsoluteFile().getParent()); outputDirectory.mkdirs(); - /* if (metadataDate != null) { - // TODO: Perhaps parsing without modification and then serializing with a default timezone is the more solid approach. - // strip off timezone. Zip format doesn't store timezone - // and the goal is to have the same date and time regardless - // of which timezone the build machine is using. - int c = metadataDate.lastIndexOf(' '); - if(c != -1) { - metadataDate = metadataDate.substring(0, c); - } - c = metadataFormat.lastIndexOf(' '); - if(c != -1) { - metadataFormat = metadataFormat.substring(0, c); - } try { SimpleDateFormat sdf = new SimpleDateFormat(metadataFormat); - sdf.setTimeZone(TimeZone.getTimeZone("UTC")); - fileDate = sdf.parse(metadataDate).getTime(); + Date d = sdf.parse(metadataDate); + Calendar cal = new GregorianCalendar(); + cal.setTime(d); + ZonedDateTime zdt = ZonedDateTime.of(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH) + 1, cal.get(Calendar.DAY_OF_MONTH), + cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), cal.get(Calendar.SECOND), 0, ZoneId.systemDefault()); + fileDate = zdt.toInstant().toEpochMilli(); } catch (ParseException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IllegalArgumentException e1) { e1.printStackTrace(); } - }*/ + } zipOutputStream = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(filename))); zipOutputStream.setLevel(Deflater.NO_COMPRESSION); @@ -122,7 +118,7 @@ */ private final ZipOutputStream zipOutputStream; - private long fileDate = -1; + private long fileDate = System.currentTimeMillis(); @Override void writeCatalog(final ISWC swc) throws IOException
diff --git a/debugger/pom.xml b/debugger/pom.xml index 148a3da..18abe0d 100644 --- a/debugger/pom.xml +++ b/debugger/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -33,8 +32,8 @@ <build> <plugins> - <!-- -Do all the JBurg code generation. + <!-- +Do all the JBurg code generation. --> <plugin> <groupId>net.sourceforge.jburg</groupId> @@ -49,7 +48,7 @@ <configuration> <includes> <include>AS3DebuggerBURM.jbg</include> - <!--include>AS3DebuggerCompoundAssignmentRules.jbg</include> + <!--include>AS3DebuggerCompoundAssignmentRules.jbg</include> <include>AS3DebuggerRules.jbg</include--> </includes> <sourceDirectory>src/main/jburg/flash/tools/debugger/expression</sourceDirectory> @@ -124,4 +123,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/flex-compiler-oem/pom.xml b/flex-compiler-oem/pom.xml index 274a017..537796c 100644 --- a/flex-compiler-oem/pom.xml +++ b/flex-compiler-oem/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -49,4 +48,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/pom.xml b/pom.xml index aac969d..9568ccb 100644 --- a/pom.xml +++ b/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -42,7 +41,7 @@ </scm> <properties> - <java.version>1.7</java.version> + <java.version>1.8</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputencoding>UTF-8</project.reporting.outputencoding> <maven.version>3.3.1</maven.version> @@ -174,24 +173,24 @@ <exclude>**/.idea/**</exclude> <!-- Ignore VSCode/Java project files --> <exclude>**/.factorypath</exclude> - <!-- - Exclude any eventually existing content of target directories. - Some times when building with a bigger maven reactor and then - with a smaller one, RAT will complain about stuff still in the - target directories. We don't want that. + <!-- + Exclude any eventually existing content of target directories. + Some times when building with a bigger maven reactor and then + with a smaller one, RAT will complain about stuff still in the + target directories. We don't want that. --> <exclude>**/target/**</exclude> <exclude>**/release-dir/**</exclude> <!-- Stuff an Ant build might have left behind. --> <exclude>lib/**</exclude> - <!-- - In case of an ANT based release the typedefs are included as a - subdirectory. We need to exclude this directory from the compiler checks - as the typedefs build will handle all content in that directory + <!-- + In case of an ANT based release the typedefs are included as a + subdirectory. We need to exclude this directory from the compiler checks + as the typedefs build will handle all content in that directory --> <exclude>royale-typedefs/**</exclude> - <!-- This file is used to get reproducible builds. See royale-maven-plugin/pom.xml - for more info. + <!-- This file is used to get reproducible builds. See royale-maven-plugin/pom.xml + for more info. --> <exclude>**/src/main/sisu/javax.inject.Named</exclude> </excludes> @@ -231,9 +230,9 @@ <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <executions> - <!-- - Prepares the property pointing to the JaCoCo runtime agent which - is passed as VM argument when Maven the Surefire plugin is executed. + <!-- + Prepares the property pointing to the JaCoCo runtime agent which + is passed as VM argument when Maven the Surefire plugin is executed. --> <execution> <id>pre-unit-test</id> @@ -243,16 +242,16 @@ <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${project.build.directory}/coverage-reports/jacoco-ut.exec</destFile> - <!-- - Sets the name of the property containing the settings - for JaCoCo runtime agent. + <!-- + Sets the name of the property containing the settings + for JaCoCo runtime agent. --> <propertyName>surefireArgLine</propertyName> </configuration> </execution> - <!-- - Prepares the property pointing to the JaCoCo runtime agent which - is passed as VM argument when Maven the Failsafe plugin is executed. + <!-- + Prepares the property pointing to the JaCoCo runtime agent which + is passed as VM argument when Maven the Failsafe plugin is executed. --> <execution> <id>pre-integration-test</id> @@ -263,9 +262,9 @@ <configuration> <!-- Sets the path to the file which contains the execution data. --> <destFile>${project.build.directory}/coverage-reports/jacoco-it.exec</destFile> - <!-- - Sets the name of the property containing the settings - for JaCoCo runtime agent. + <!-- + Sets the name of the property containing the settings + for JaCoCo runtime agent. --> <propertyName>failsafeArgLine</propertyName> </configuration> @@ -288,12 +287,12 @@ <mavenLocalRepoDir>${settings.localRepository}</mavenLocalRepoDir> <optionWithSwfEnabled>${option.withSwf.enabled}</optionWithSwfEnabled> </systemPropertyVariables> - <!-- - Currently some tests need this to be disabled, - but actually this is a bug. For now I'll disable - them to avoid problems during the maven migration. - After this is finished, we should definitely fix - the tests so assertions can be enabled. + <!-- + Currently some tests need this to be disabled, + but actually this is a bug. For now I'll disable + them to avoid problems during the maven migration. + After this is finished, we should definitely fix + the tests so assertions can be enabled. --> <enableAssertions>false</enableAssertions> </configuration> @@ -342,9 +341,9 @@ </plugin> <!-- This plugin cleans up the jars for anything that might cause problems for reproducible builds --> - <!-- - Even if the core maven plugins currently would support doing this without, we would be required - to set the line-separator and the Antlr3 plugin crashes if this is set to something non-default + <!-- + Even if the core maven plugins currently would support doing this without, we would be required + to set the line-separator and the Antlr3 plugin crashes if this is set to something non-default --> <plugin> <groupId>io.github.zlika</groupId> @@ -365,7 +364,7 @@ <artifactId>animal-sniffer-maven-plugin</artifactId> <executions> <execution> - <id>check-jdk-1.7</id> + <id>check-jdk-1.8</id> <phase>test</phase> <goals> <goal>check</goal> @@ -373,7 +372,7 @@ <configuration> <signature> <groupId>org.codehaus.mojo.signature</groupId> - <artifactId>java17</artifactId> + <artifactId>java18</artifactId> <version>1.0</version> </signature> </configuration> @@ -643,8 +642,8 @@ </profile> <profile> - <!-- This profile is used to test against staged release artifacts. - Be sure to clear out artifacts in the local repository before + <!-- This profile is used to test against staged release artifacts. + Be sure to clear out artifacts in the local repository before and after using --> <id>staged-releases</id> <pluginRepositories> @@ -655,9 +654,9 @@ </pluginRepositories> </profile> - <!-- - This profile enables the changes required to do releases on the Royale CI server. - It should not be used otherwise. + <!-- + This profile enables the changes required to do releases on the Royale CI server. + It should not be used otherwise. --> <profile> <id>royale-release</id> @@ -672,11 +671,11 @@ <repository> <id>apache.releases.https</id> <name>Apache Release Distribution Repository</name> - <!-- - 'maven.multiModuleProjectDirectory' is a property introduced with maven 3.3.1 ... - don't worry if your IDE is complaining. - Also this will be set to the 'target/checkout' directory the output will be in - 'target/local-release-dir'. + <!-- + 'maven.multiModuleProjectDirectory' is a property introduced with maven 3.3.1 ... + don't worry if your IDE is complaining. + Also this will be set to the 'target/checkout' directory the output will be in + 'target/local-release-dir'. --> <url>file://${maven.multiModuleProjectDirectory}/../local-release-dir</url> </repository> @@ -752,8 +751,8 @@ <completionGoals>com.theoryinpractise:reproducible-maven-plugin:clear</completionGoals> </configuration> </plugin> - <!-- - Create MD5 and SHA512 checksum files for the release artifacts. + <!-- + Create MD5 and SHA512 checksum files for the release artifacts. --> <plugin> <groupId>net.nicoulaj.maven.plugins</groupId> @@ -784,11 +783,11 @@ </build> </profile> - <!-- - This profile is intended to help when having problems with Maven. - When enabled, it automatically generates an "effective.pom" in the target directory. - This version is the fully expanded version where all inherited configuration is in - place and all variables are resolved and profile configuration is included. + <!-- + This profile is intended to help when having problems with Maven. + When enabled, it automatically generates an "effective.pom" in the target directory. + This version is the fully expanded version where all inherited configuration is in + place and all variables are resolved and profile configuration is included. --> <profile> <id>debug-pom</id>
diff --git a/releasesteps.xml b/releasesteps.xml index 10ef88a..1204030 100644 --- a/releasesteps.xml +++ b/releasesteps.xml
@@ -391,6 +391,7 @@ <arg value="-Dwagon.url=https://repository.apache.org/service/local/staging/deploy/maven2" /> <arg value="-Dwagon.serverId=apache.releases.https" /> <arg value="-Dwagon.includes=**" /> + <arg value="-N"/> </exec> </target>
diff --git a/royale-ant-tasks/pom.xml b/royale-ant-tasks/pom.xml index a770163..34b018c 100644 --- a/royale-ant-tasks/pom.xml +++ b/royale-ant-tasks/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -39,4 +38,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/royale-maven-plugin/pom.xml b/royale-maven-plugin/pom.xml index e44bd90..af16f9d 100644 --- a/royale-maven-plugin/pom.xml +++ b/royale-maven-plugin/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent>
diff --git a/royaleunit-ant-tasks/pom.xml b/royaleunit-ant-tasks/pom.xml index 2907526..50967a3 100644 --- a/royaleunit-ant-tasks/pom.xml +++ b/royaleunit-ant-tasks/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -64,4 +63,4 @@ </dependency> </dependencies> -</project> +<properties /></project>
diff --git a/swfutils/pom.xml b/swfutils/pom.xml index 0df314d..98d2c56 100644 --- a/swfutils/pom.xml +++ b/swfutils/pom.xml
@@ -1,23 +1,22 @@ <?xml version="1.0" encoding="UTF-8"?> -<!-- - - Licensed to the Apache Software Foundation (ASF) under one or more - contributor license agreements. See the NOTICE file distributed with - this work for additional information regarding copyright ownership. - The ASF licenses this file to You under the Apache License, Version 2.0 - (the "License"); you may not use this file except in compliance with - the License. You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - - Unless required by applicable law or agreed to in writing, software - distributed under the License is distributed on an "AS IS" BASIS, - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - See the License for the specific language governing permissions and - limitations under the License. - ---> -<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. + +--><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> @@ -32,4 +31,4 @@ <name>Apache Royale: Compiler: SWFUtils</name> <description>The Apache Royale Compiler SWF Utility classes</description> -</project> +<properties /></project>