<commit_before><?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 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.apache.flex.flexjs.externs</groupId>
        <artifactId>flexjs-externs</artifactId>
        <version>0.7.0-SNAPSHOT</version>
    </parent>

    <artifactId>flexjs-externs-js</artifactId>
    <version>0.7.0-SNAPSHOT</version>
    <packaging>swc</packaging>

    <name>Apache Flex - FlexJS: Externs: JS</name>

    <build>
        <sourceDirectory>src/main/flex</sourceDirectory>
        <plugins>
            <!-- Download JavaScript form GitHub -->
            <plugin>
                <groupId>com.googlecode.maven-download-plugin</groupId>
                <artifactId>download-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <id>get-createjs</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>wget</goal>
                        </goals>
                        <configuration>
                            <url>https://closureidl.googlecode.com/files/svg.js</url>
                            <outputFileName>svg.js</outputFileName>
                            <outputDirectory>${project.build.directory}/downloads</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.flex.flexjs.compiler</groupId>
                <artifactId>compiler-build-tools</artifactId>
                <version>0.7.0-SNAPSHOT</version>
                <executions>
                    <execution>
                        <id>unpack-closure-externs</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>unpack-resources</goal>
                        </goals>
                        <configuration>
                            <resource>externs.zip</resource>
                        </configuration>
                    </execution>
                </executions>
                <!--
                    Dependency to the closure compiler externs artifact so
                    the "unpack-resources" goal can find the externs.zip
                -->
                <dependencies>
                    <dependency>
                        <groupId>com.google.javascript</groupId>
                        <artifactId>closure-compiler-externs</artifactId>
                        <version>v20151015</version>
                    </dependency>
                </dependencies>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.5.0</version>
                <configuration>
                    <executable>${git.executable}</executable>
                    <workingDirectory>${basedir}/../..</workingDirectory>
                    <arguments>
                        <argument>apply</argument>
                        <argument>--ignore-whitespace</argument>
                        <argument>--whitespace=nowarn</argument>
                    </arguments>
                </configuration>
                <executions>
                    <execution>
                        <id>patch-js</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <arguments combine.children="append">
                                <argument>${basedir}/src/main/patch/js.patch</argument>
                            </arguments>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.flex.flexjs.compiler</groupId>
                <artifactId>flexjs-maven-plugin</artifactId>
                <version>0.7.0-SNAPSHOT</version>
                <extensions>true</extensions>
                <configuration>
                    <includeSources>true</includeSources>
                    <externcInput>
                        <fileSet>
                            <directory>${project.basedir}/src/main/javascript</directory>
                            <includes>
                                <include>**/*.js</include>
                            </includes>
                        </fileSet>
                        <fileSet>
                            <directory>${project.basedir}/target/downloads</directory>
                            <includes>
                                <include>*.js</include>
                                <include>browser/w3c_*.js</include>
                                <include>browser/window.js</include>
                                <include>browser/ie_dom.js</include>
                                <include>browser/gecko_*.js</include>
                                <include>browser/webkit_*.js</include>
                                <include>browser/iphone.js</include>
                                <include>browser/chrome.js</include>
                                <include>browser/flash.js</include>
                                <include>browser/page_visibility.js</include>
                                <include>browser/fileapi.js</include>
                                <include>browser/html5.js</include>
                                <include>browser/webgl.js</include>
                                <include>browser/webstorage.js</include>
                            </includes>
                            <excludes>
                                <exclude>es6_collections.js</exclude>
                                <exclude>browser/w3c_serviceworker.js</exclude>
                                <exclude>browser/w3c_touch_event.js</exclude>
                                <exclude>browser/w3c_webcrypto.js</exclude>
                                <exclude>browser/gecko_css.js</exclude>
                                <exclude>browser/webkit_notifications.js</exclude>
                            </excludes>
                        </fileSet>
                    </externcInput>
                    <externcConfig>
                        <class-excludes>
                            <class-exclude>
                                <className>controlRange</className>
                            </class-exclude>
                        </class-excludes>
                        <field-excludes>
                            <field-exclude>
                                <className>Window</className>
                                <field>focus</field>
                            </field-exclude>
                        </field-excludes>
                        <excludes>
                            <exclude>
                                <className>Array</className>
                                <name>toSource</name>
                            </exclude>
                            <exclude>
                                <className>Date</className>
                                <name>valueOf</name>
                            </exclude>
                            <exclude>
                                <className>String</className>
                                <name>valueOf</name>
                            </exclude>
                            <!-- SVG -->
                            <exclude>
                                <className>SVGStylable</className>
                                <name>className</name>
                            </exclude>
                            <exclude>
                                <className>SVGStylable</className>
                                <name>style</name>
                            </exclude>
                            <exclude>
                                <className>SVGLocatable</className>
                                <name>farthestViewportElement</name>
                            </exclude>
                            <exclude>
                                <className>SVGLocatable</className>
                                <name>nearestViewportElement</name>
                            </exclude>
                        </excludes>
                    </externcConfig>
                    <skipSwc>true</skipSwc>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.apache.flex.flexjs.compiler</groupId>
                        <artifactId>compiler-jx</artifactId>
                        <version>0.7.0-SNAPSHOT</version>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <groupId>org.apache.flex.flexjs.compiler</groupId>
                <artifactId>compiler-build-tools</artifactId>
                <version>0.7.0-SNAPSHOT</version>
                <executions>
                    <execution>
                        <id>pre-process-actionscript-sources</id>
                        <phase>process-sources</phase>
                        <goals>
                            <goal>pre-process-sources</goal>
                        </goals>
                        <configuration>
                            <operations>
                                <replace-regexp-operation><match>base\:Number\)</match><replace>base:Number = 10)</replace></replace-regexp-operation>
                            </operations>
                            <downloadesSourceDirectory>target/generated-sources/externc</downloadesSourceDirectory>
                            <includes><commit_msg>- Adjusting the output of the maven build to match that of the ANT build<commit_after><?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 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.apache.flex.flexjs.externs</groupId>
        <artifactId>flexjs-externs</artifactId>
        <version>0.7.0-SNAPSHOT</version>
    </parent>

    <artifactId>flexjs-externs-js</artifactId>
    <version>0.7.0-SNAPSHOT</version>
    <packaging>swc</packaging>

    <name>Apache Flex - FlexJS: Externs: JS</name>

    <build>
        <sourceDirectory>src/main/flex</sourceDirectory>
        <plugins>
            <!-- Download JavaScript form GitHub -->
            <plugin>
                <groupId>com.googlecode.maven-download-plugin</groupId>
                <artifactId>download-maven-plugin</artifactId>
                <version>1.2.1</version>
                <executions>
                    <execution>
                        <id>get-createjs</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>wget</goal>
                        </goals>
                        <configuration>
                            <url>https://closureidl.googlecode.com/files/svg.js</url>
                            <outputFileName>svg.js</outputFileName>
                            <outputDirectory>${project.build.directory}/downloads</outputDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.flex.flexjs.compiler</groupId>
                <artifactId>compiler-build-tools</artifactId>
                <version>0.7.0-SNAPSHOT</version>
                <executions>
                    <execution>
                        <id>unpack-closure-externs</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>unpack-resources</goal>
                        </goals>
                        <configuration>
                            <resource>externs.zip</resource>
                        </configuration>
                    </execution>
                </executions>
                <!--
                    Dependency to the closure compiler externs artifact so
                    the "unpack-resources" goal can find the externs.zip
                -->
                <dependencies>
                    <dependency>
                        <groupId>com.google.javascript</groupId>
                        <artifactId>closure-compiler-externs</artifactId>
                        <version>v20151015</version>
                    </dependency>
                </dependencies>
            </plugin>

            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>exec-maven-plugin</artifactId>
                <version>1.5.0</version>
                <configuration>
                    <executable>${git.executable}</executable>
                    <workingDirectory>${basedir}/../..</workingDirectory>
                    <arguments>
                        <argument>apply</argument>
                        <argument>--ignore-whitespace</argument>
                        <argument>--whitespace=nowarn</argument>
                    </arguments>
                </configuration>
                <executions>
                    <execution>
                        <id>patch-js</id>
                        <phase>validate</phase>
                        <goals>
                            <goal>exec</goal>
                        </goals>
                        <configuration>
                            <arguments combine.children="append">
                                <argument>${basedir}/src/main/patch/js.patch</argument>
                            </arguments>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.flex.flexjs.compiler</groupId>
                <artifactId>flexjs-maven-plugin</artifactId>
                <version>0.7.0-SNAPSHOT</version>
                <extensions>true</extensions>
                <configuration>
                    <includeSources>true</includeSources>
                    <externcInput>
                        <fileSet>
                            <directory>${project.basedir}/src/main/javascript</directory>
                            <includes>
                                <include>**/*.js</include>
                            </includes>
                        </fileSet>
                        <fileSet>
                            <directory>${project.basedir}/target/downloads</directory>
                            <includes>
                                <include>*.js</include>
                                <include>browser/w3c_*.js</include>
                                <include>browser/window.js</include>
                                <include>browser/ie_dom.js</include>
                                <include>browser/gecko_*.js</include>
                                <include>browser/webkit_*.js</include>
                                <include>browser/iphone.js</include>
                                <include>browser/chrome.js</include>
                                <include>browser/flash.js</include>
                                <include>browser/page_visibility.js</include>
                                <include>browser/fileapi.js</include>
                                <include>browser/html5.js</include>
                                <include>browser/webgl.js</include>
                                <include>browser/webstorage.js</include>
                            </includes>
                            <excludes>
                                <exclude>es6_collections.js</exclude>
                                <exclude>browser/w3c_serviceworker.js</exclude>
                                <exclude>browser/w3c_touch_event.js</exclude>
                                <exclude>browser/w3c_webcrypto.js</exclude>
                                <exclude>browser/gecko_css.js</exclude>
                                <exclude>browser/webkit_notifications.js</exclude>
                            </excludes>
                        </fileSet>
                    </externcInput>
                    <externcConfig>
                        <class-excludes>
                            <class-exclude>
                                <className>controlRange</className>
                            </class-exclude>
                        </class-excludes>
                        <field-excludes>
                            <field-exclude>
                                <className>Window</className>
                                <field>focus</field>
                            </field-exclude>
                        </field-excludes>
                        <excludes>
                            <exclude>
                                <className>Array</className>
                                <name>toSource</name>
                            </exclude>
                            <exclude>
                                <className>Date</className>
                                <name>valueOf</name>
                            </exclude>
                            <exclude>
                                <className>String</className>
                                <name>valueOf</name>
                            </exclude>
                            <!-- SVG -->
                            <exclude>
                                <className>SVGStylable</className>
                                <name>className</name>
                            </exclude>
                            <exclude>
                                <className>SVGStylable</className>
                                <name>style</name>
                            </exclude>
                            <exclude>
                                <className>SVGLocatable</className>
                                <name>farthestViewportElement</name>
                            </exclude>
                            <exclude>
                                <className>SVGLocatable</className>
                                <name>nearestViewportElement</name>
                            </exclude>
                        </excludes>
                    </externcConfig>
                    <includeFiles>
                        <includeFile>
                            <name>externs/svg.js</name>
                            <path>downloads/svg.js</path>
                        </includeFile>
                    </includeFiles>
                    <skipSwc>true</skipSwc>
                </configuration>
                <dependencies>
                    <dependency>
                        <groupId>org.apache.flex.flexjs.compiler</groupId>
                        <artifactId>compiler-jx</artifactId>
                        <version>0.7.0-SNAPSHOT</version>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <groupId>org.apache.flex.flexjs.compiler</groupId>
                <artifactId>compiler-build-tools</artifactId>
                <version>0.7.0-SNAPSHOT</version>
                <executions>
                    <execution>
                        <id>pre-process-actionscript-sources</id>
                        <phase>process-sources</phase>
                        <goals>
                            <goal>pre-process-sources</goal>
                        </goals>
                        <configuration>
                            <operations>
                                <replace-regexp-operation><match>base\:Number\)</match><replace>base:Number = 10)</replace></replace-regexp-operation>
                            </operations>
                            <downloadesSourceDirectory>target/generated-sources/externc</downloadesSourceDirectory>
                            <includes>
{'fraction_non_alphanumeric': 0.0988701846726258, 'fraction_numerical': 0.005807886020236853, 'mean_word_length': 1.0069204152249136, 'pattern_counts': {'":': 0, '<': 617, '<?xml version=': 2, '>': 617, 'https://': 2, 'lorem ipsum': 0, 'www.': 4, 'xml': 6}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 15, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2051266', 'n_tokens_mistral': 5367, 'n_tokens_neox': 4771, 'n_words': 703}