diff --git a/.github/workflows/release-audit.yml b/.github/workflows/release-audit.yml new file mode 100644 index 00000000..83090944 --- /dev/null +++ b/.github/workflows/release-audit.yml @@ -0,0 +1,45 @@ +# 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. + +name: Release Auditing + +on: [push, pull_request] + +jobs: + test: + name: Audit Licenses + runs-on: ubuntu-latest + steps: + # Checkout project + - uses: actions/checkout@v4 + + # Check license headers + - uses: erisu/apache-rat-action@555ae80334a535eb6c1f8920b121563a5a985a75 + + # Setup environment with node + - uses: actions/setup-node@v4 + with: + node-version: 20 + + # Install node packages + - name: npm install packages + run: npm i + + # Check node package licenses + - uses: erisu/license-checker-action@e929758f9416f30234ac454fc9054ca4b803871d + with: + license-config: 'licence_checker.yml' diff --git a/.ratignore b/.ratignore index 3216d904..33962717 100644 --- a/.ratignore +++ b/.ratignore @@ -1,8 +1,10 @@ -*.properties -templates -gen -proguard-project.txt -spec -framework/build -ic_launcher.png -build +\.(.*) +(.*).txt +coverage +fixtures +generated +gitignore +intermediates +reports +test-results +node_modules diff --git a/framework/gradle.properties b/framework/gradle.properties index 30d2ba91..060ebf7a 100644 --- a/framework/gradle.properties +++ b/framework/gradle.properties @@ -1,3 +1,20 @@ +# 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-wide Gradle settings. # IDE (e.g. Android Studio) users: diff --git a/framework/gradle/wrapper/gradle-wrapper.properties b/framework/gradle/wrapper/gradle-wrapper.properties index 46d87b85..8e99e771 100644 --- a/framework/gradle/wrapper/gradle-wrapper.properties +++ b/framework/gradle/wrapper/gradle-wrapper.properties @@ -1,3 +1,20 @@ +# 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. + #Thu Nov 09 10:50:25 PST 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists diff --git a/framework/project.properties b/framework/project.properties index 85327550..3b54491f 100644 --- a/framework/project.properties +++ b/framework/project.properties @@ -1,3 +1,20 @@ +# 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. + # GENERATED FILE! DO NOT EDIT! # This file was originally created by the Android Tools, but is now diff --git a/licence_checker.yml b/licence_checker.yml new file mode 100644 index 00000000..50818a50 --- /dev/null +++ b/licence_checker.yml @@ -0,0 +1,60 @@ +# 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. + +# Compiled list of allowed 3RD PARTY LICENSES from: +# +# ASF CATEGORY A: WHAT CAN WE INCLUDE IN AN ASF PROJECT +# https://www.apache.org/legal/resolved.html#category-a +# +# Licenses converted into the SPDX standardized short identifier format. +# https://spdx.org/licenses/ +allowed-licenses: + - 0BSD + - AFL-3.0 + - Apache-1.1 + - Apache-2.0 + - APAFML + - BlueOak-1.0.0 + - BSD-2-Clause + - BSD-3-Clause + - BSD-3-Clause-LBNL + - BSL-1.0 + - CC-PDDC + - CC0-1.0 + - EPICS + - HPND + - ICU + - ISC + - MIT + - MIT-0 + - MS-PL + - MulanPSL-2.0 + - NCSA + - OGL-UK-3.0 + - PHP-3.01 + - PostgreSQL + - PSF-2.0 + - SMLNJ + - Unicode-DFS-2016 + - Unlicense + - UPL-1.0 + - W3C + - WTFPL + - X11 + - Xnet + - Zlib + - ZPL-2.0 diff --git a/spec/fixtures/android_studio_project/gradle/wrapper/gradle-wrapper.properties b/spec/fixtures/android_studio_project/gradle/wrapper/gradle-wrapper.properties index a0fb37c6..2d050071 100644 --- a/spec/fixtures/android_studio_project/gradle/wrapper/gradle-wrapper.properties +++ b/spec/fixtures/android_studio_project/gradle/wrapper/gradle-wrapper.properties @@ -1,3 +1,20 @@ +# 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. + #Mon Dec 28 10:00:20 PST 2015 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists diff --git a/templates/project/project.properties b/templates/project/project.properties index 6ea5ac23..8b717054 100644 --- a/templates/project/project.properties +++ b/templates/project/project.properties @@ -1,3 +1,21 @@ +# 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. + + # This file was originally created by the Android Tools, but is now # used by cordova-android to manage the state of the various third party # libraries used in your application diff --git a/templates/project/res/mipmap-hdpi-v26/ic_launcher.xml b/templates/project/res/mipmap-hdpi-v26/ic_launcher.xml index cf79c3d7..6555f936 100644 --- a/templates/project/res/mipmap-hdpi-v26/ic_launcher.xml +++ b/templates/project/res/mipmap-hdpi-v26/ic_launcher.xml @@ -1,4 +1,22 @@ + diff --git a/templates/project/res/mipmap-ldpi-v26/ic_launcher.xml b/templates/project/res/mipmap-ldpi-v26/ic_launcher.xml index cf79c3d7..6555f936 100644 --- a/templates/project/res/mipmap-ldpi-v26/ic_launcher.xml +++ b/templates/project/res/mipmap-ldpi-v26/ic_launcher.xml @@ -1,4 +1,22 @@ + diff --git a/templates/project/res/mipmap-mdpi-v26/ic_launcher.xml b/templates/project/res/mipmap-mdpi-v26/ic_launcher.xml index cf79c3d7..6555f936 100644 --- a/templates/project/res/mipmap-mdpi-v26/ic_launcher.xml +++ b/templates/project/res/mipmap-mdpi-v26/ic_launcher.xml @@ -1,4 +1,22 @@ + diff --git a/templates/project/res/mipmap-xhdpi-v26/ic_launcher.xml b/templates/project/res/mipmap-xhdpi-v26/ic_launcher.xml index cf79c3d7..6555f936 100644 --- a/templates/project/res/mipmap-xhdpi-v26/ic_launcher.xml +++ b/templates/project/res/mipmap-xhdpi-v26/ic_launcher.xml @@ -1,4 +1,22 @@ + diff --git a/templates/project/res/mipmap-xxhdpi-v26/ic_launcher.xml b/templates/project/res/mipmap-xxhdpi-v26/ic_launcher.xml index cf79c3d7..6555f936 100644 --- a/templates/project/res/mipmap-xxhdpi-v26/ic_launcher.xml +++ b/templates/project/res/mipmap-xxhdpi-v26/ic_launcher.xml @@ -1,4 +1,22 @@ + diff --git a/templates/project/res/mipmap-xxxhdpi-v26/ic_launcher.xml b/templates/project/res/mipmap-xxxhdpi-v26/ic_launcher.xml index cf79c3d7..6555f936 100644 --- a/templates/project/res/mipmap-xxxhdpi-v26/ic_launcher.xml +++ b/templates/project/res/mipmap-xxxhdpi-v26/ic_launcher.xml @@ -1,4 +1,22 @@ + diff --git a/templates/project/wrapper.gradle b/templates/project/wrapper.gradle index d7ebabd7..88e63116 100644 --- a/templates/project/wrapper.gradle +++ b/templates/project/wrapper.gradle @@ -1 +1,20 @@ +/* + * 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. + */ + //This file is intentionally just a comment diff --git a/test/androidx/gradle.properties b/test/androidx/gradle.properties index 30d2ba91..060ebf7a 100644 --- a/test/androidx/gradle.properties +++ b/test/androidx/gradle.properties @@ -1,3 +1,20 @@ +# 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-wide Gradle settings. # IDE (e.g. Android Studio) users: