This is an automated email from the ASF dual-hosted git repository.

lausen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-mxnet.git


The following commit(s) were added to refs/heads/master by this push:
     new f25b92e  [CI] Add Simple GitHub-Action Based License Checker (#20617)
f25b92e is described below

commit f25b92ed94bd46492b903a0b2ace29be78b3f944
Author: Zhenghui Jin <[email protected]>
AuthorDate: Wed Sep 29 12:11:37 2021 -0700

    [CI] Add Simple GitHub-Action Based License Checker (#20617)
    
    Remove ASF license headers on 3rdparty files based on discussion:
    
    > It depends on what you mean by significant, usually changes made to 3rd 
party files stay under the original license. See [1] on this, note that "Do not 
add the standard Apache License header to the top of third-party source 
files.”. If the license was to change, and the headers replaced then that needs 
to be noted in NOTICE. Please make sure that the license is noted in LICENSE.
    
    
https://lists.apache.org/thread.html/r4010c53f976819c94f3450469db8b936f7c15cb046a61f0d488674d3%40%3Cgeneral.incubator.apache.org%3E
---
 .github/workflows/license_check.yml               | 25 ++++++++
 .licenserc.yaml                                   | 74 +++++++++++++++++++++++
 LICENSE                                           | 37 +++++++-----
 rat-excludes                                      |  4 ++
 src/operator/contrib/krprod.cc                    |  2 +-
 src/operator/numpy/np_einsum_op-inl.h             | 19 ------
 src/operator/numpy/np_einsum_op.cc                | 19 ------
 src/operator/numpy/np_einsum_path_op-inl.h        | 19 ------
 src/operator/subgraph/tensorrt/nnvm_to_onnx-inl.h |  5 +-
 src/operator/subgraph/tensorrt/onnx_to_tensorrt.h |  5 +-
 src/operator/subgraph/tensorrt/tensorrt-inl.h     |  5 +-
 tests/python/gpu/test_numpy_op.py                 |  1 +
 12 files changed, 137 insertions(+), 78 deletions(-)

diff --git a/.github/workflows/license_check.yml 
b/.github/workflows/license_check.yml
new file mode 100644
index 0000000..ecc1281
--- /dev/null
+++ b/.github/workflows/license_check.yml
@@ -0,0 +1,25 @@
+name: license check
+
+on: [push, pull_request]
+
+defaults:
+  run:
+    shell: bash
+
+jobs:
+  licensecheck:
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+    steps:
+      - name: Checkout repository
+        uses: actions/checkout@v2
+
+      - name: Update Submodules
+        run: |
+          git submodule update --init --recursive
+
+      - name: Check License Header
+        uses: apache/skywalking-eyes@main
+        env:
+          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.licenserc.yaml b/.licenserc.yaml
new file mode 100644
index 0000000..e4a7430
--- /dev/null
+++ b/.licenserc.yaml
@@ -0,0 +1,74 @@
+header:
+  license:
+    spdx-id: Apache-2.0
+    copyright-owner: Apache Software Foundation
+
+  paths-ignore:
+    - 'dist'
+    - 'licenses'
+    - '**/*.md'
+    - '**/*.ipynb'
+    - 'LICENSE'
+    - 'NOTICE'
+    - '3rdparty'
+    - '.gitignore'
+    - '.codecov.yml'
+    - '.gitattributes'
+    - '.github'
+    - '.gitmodules'
+    - '.licenserc.yaml'
+    - '.asf.yaml'
+    - 'CODEOWNERS'
+    - 'DISCLAIMER'
+    - 'KEYS'
+    - 'python/mxnet/_cy3/README'
+    - 'tools/dependencies/LICENSE.binary.dependencies'
+    # files not distributed in source archive (listed in 
tools/source-exclude-artifacts.txt)
+    - 'docs'
+    # files licensed under apache-2.0 license but do not include full license 
headers recognized by skywalking-eyes
+    - 'python/mxnet/cython/ndarray.pyx'
+    - 'python/mxnet/cython/symbol.pyx'
+    - 'src/operator/deformable_convolution-inl.h'
+    - 'src/operator/deformable_convolution.cc'
+    - 'src/operator/deformable_convolution.cu'
+    - 'src/operator/contrib/deformable_psroi_pooling-inl.h'
+    - 'src/operator/contrib/deformable_psroi_pooling.cc'
+    - 'src/operator/contrib/deformable_psroi_pooling.cu'
+    - 'src/operator/contrib/multi_proposal-inl.h'
+    - 'src/operator/contrib/multi_proposal.cc'
+    - 'src/operator/contrib/multi_proposal.cu'
+    - 'src/operator/contrib/psroi_pooling.cc'
+    - 'src/operator/contrib/psroi_pooling.cu'
+    - 'src/operator/nn/mkldnn/mkldnn_base-inl.h'
+    # files licensed under boost license
+    - 'cmake/Modules/FindJeMalloc.cmake'
+    # files licensed under bsd 3-clause
+    - 'cmake/upstream/FindBLAS.cmake'
+    - 'cmake/upstream/FindCUDAToolkit.cmake'
+    - 'cmake/upstream/select_compute_arch.cmake'
+    - 'src/operator/contrib/erfinv-inl.h'
+    - 'src/operator/numpy/np_einsum_op-inl.h'
+    - 'src/operator/numpy/np_einsum_op.cc'
+    - 'src/operator/numpy/np_einsum_path_op-inl.h'
+    # files licensed under caffe/mit license
+    - 'src/operator/modulated_deformable_convolution-inl.h'
+    - 'src/operator/modulated_deformable_convolution.cc'
+    - 'src/operator/modulated_deformable_convolution.cu'
+    - 'src/operator/contrib/nn/deformable_im2col.cuh'
+    - 'src/operator/contrib/nn/deformable_im2col.h'
+    - 'src/operator/contrib/nn/modulated_deformable_im2col.cuh'
+    - 'src/operator/contrib/nn/modulated_deformable_im2col.h'
+    - 'src/operator/nn/im2col.cuh'
+    - 'src/operator/nn/im2col.h'
+    - 'src/operator/nn/pool.cuh'
+    - 'src/operator/nn/pool.h'
+    # symlinks
+    - 'include/dlpack' # symlink to 3rdparty/dlpack/include/dlpack
+    - 'include/dmlc' # symlink to 3rdparty/dmlc-core/include/dmlc
+    - 'include/mshadow' # symlink to 3rdparty/mshadow/mshadow
+    - 'include/onednn' # symlinks to 3rdparty/onednn
+    # test/build data
+    - 'tests/python/mkl/data/test_mkldnn_test_mkldnn_model_model1.json'
+
+
+  comment: on-failure
diff --git a/LICENSE b/LICENSE
index d70e5ed..795130c 100644
--- a/LICENSE
+++ b/LICENSE
@@ -220,21 +220,39 @@
 
     3rdparty/ctc_include
     3rdparty/dlpack
+    include/dlpack (header symlinks to 3rdparty/dlpack/include/dlpack)
     3rdparty/dmlc-core
+    include/dmlc (header symlinks to 3rdparty/dmlc-core/include/dmlc)
     3rdparty/mshadow
+    include/mshadow (header symlinks to 3rdparty/mshadow/mshadow)
     3rdparty/tvm
     3rdparty/tvm/3rdparty/dmlc-core
     3rdparty/tvm/3rdparty/dlpack
+    include/nnvm (header symlinks to 3rdparty/tvm/nnvm/include/nnvm)
     3rdparty/ps-lite
     3rdparty/onednn
+    include/onednn (header symlinks to 3rdparty/onednn)
     3rdparty/googletest/googlemock/scripts/generator
     3rdparty/onnx-tensorrt/third_party/onnx/third_party/benchmark
+    3rdparty/onnx-tensorrt/third_party/onnx/tools/protoc-gen-mypy.py
     3rdparty/onednn/tests/benchdnn (Copy of the License available at top of 
current file)
     src/operator/special_functions-inl.h Cephes Library Functions (Copy of the 
License available at top of current file)
     3rdparty/onednn/doc/assets/mathjax (Copy of the License available at top 
of current file)
     
docs/python_docs/themes/mx-theme/mxtheme/static/material-design-icons-3.0.1 
(Copy of the License available at top of current file)
     docs/python_docs/themes/mx-theme/mxtheme/static/font/Roboto (Copy of the 
License available at top of current file)
     3rdparty/tvm/3rdparty/bfloat16/bfloat16.cc (Copy of the License available 
at top of current file)
+    src/operator/deformable_convolution-inl.h
+    src/operator/deformable_convolution.cc
+    src/operator/deformable_convolution.cu
+    src/operator/contrib/deformable_psroi_pooling-inl.h
+    src/operator/contrib/deformable_psroi_pooling.cc
+    src/operator/contrib/deformable_psroi_pooling.cu
+    src/operator/contrib/multi_proposal-inl.h
+    src/operator/contrib/multi_proposal.cc
+    src/operator/contrib/multi_proposal.cu
+    src/operator/contrib/psroi_pooling.cc
+    src/operator/contrib/psroi_pooling.cu
+    src/operator/nn/mkldnn/mkldnn_base-inl.h
 
     
=======================================================================================
     MIT license
@@ -270,8 +288,12 @@
     3rdparty/googletest/googlemock
     3rdparty/googletest/googletest
     cmake/upstream/FindCUDAToolkit.cmake
+    cmake/upstream/FindBLAS.cmake
     cmake/upstream/select_compute_arch.cmake
     src/operator/contrib/erfinv-inl.h
+    src/operator/numpy/np_einsum_op-inl.h
+    src/operator/numpy/np_einsum_path_op-inl.h
+    src/operator/numpy/np_einsum_op.cc
 
     
=======================================================================================
     2-clause BSD license
@@ -314,9 +336,6 @@
     python/mxnet/onnx/mx2onnx/_export_onnx.py
     python/mxnet/onnx/mx2onnx/_op_translations/_op_translations_opset12.py
     python/mxnet/onnx/mx2onnx/_op_translations/_op_translations_opset13.py
-    src/operator/numpy/np_einsum_op-inl.h
-    src/operator/numpy/np_einsum_path_op-inl.h
-    src/operator/numpy/np_einsum_op.cc
 
     
=======================================================================================
     Apache-2.0 license + MIT License
@@ -324,18 +343,7 @@
 
     src/serialization/cnpy.h (Copy of the AL2 License available at the top of 
this file, MIT License available at licenses/MIT)
     src/serialization/cnpy.cc (Copy of the AL2 License available at the top of 
this file, MIT License available at licenses/MIT)
-    3rdparty/onnx-tensorrt/third_party/onnx/tools/protoc-gen-mypy.py (Copy of 
the referenced AL2 License available at top of current file)
     src/operator/nn/layer_norm.cc (function LayerNormCPUKernel is adapated 
from MIT-licensed code)
-    (Source repository for below deformable conv operators - 
https://github.com/msracver/Deformable-ConvNets/tree/master/DCNv2_op)
-    src/operator/deformable_convolution-inl.h
-    src/operator/deformable_convolution.cc
-    src/operator/deformable_convolution.cu
-
-    
=======================================================================================
-    Apache-2.0 license + Boost Software License, Version 1.0
-    
=======================================================================================
-
-    cmake/Modules/FindJeMalloc.cmake
 
     
=======================================================================================
     Boost Software License, Version 1.0
@@ -343,6 +351,7 @@
 
     3rdparty/intgemm/test/3rd_party/catch.hpp  (Copy of the License available 
at licenses/BOOST1_0)
     3rdparty/onednn/src/common/primitive_hashing.hpp
+    cmake/Modules/FindJeMalloc.cmake
 
     
=======================================================================================
     LLVM Release License
diff --git a/rat-excludes b/rat-excludes
index 12f7ca6..83e2e0c 100644
--- a/rat-excludes
+++ b/rat-excludes
@@ -53,6 +53,7 @@ clipboard.js
 # Licenses
 licenses/*
 LICENSE.binary.dependencies
+.licenserc.yaml
 
 # Generated files during build
 .buildinfo
@@ -123,6 +124,9 @@ FindCUDAToolkit.cmake
 FindBLAS.cmake
 FindJeMalloc.cmake
 select_compute_arch.cmake
+np_einsum_op-inl.h
+np_einsum_op.cc
+np_einsum_path_op-inl.h
 
 # Incorporated third-party source files from Microsoft that carry Apache 2.0 
license, captured in licenses/
 deformable_psroi_pooling.cu
diff --git a/src/operator/contrib/krprod.cc b/src/operator/contrib/krprod.cc
index 7a4e8bf..f4fadaa 100644
--- a/src/operator/contrib/krprod.cc
+++ b/src/operator/contrib/krprod.cc
@@ -5,7 +5,7 @@
  * 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
-n * with the License.  You may obtain a copy of the License at
+ * with the License.  You may obtain a copy of the License at
  *
  *   http://www.apache.org/licenses/LICENSE-2.0
  *
diff --git a/src/operator/numpy/np_einsum_op-inl.h 
b/src/operator/numpy/np_einsum_op-inl.h
index 4aa8200..5525b92 100644
--- a/src/operator/numpy/np_einsum_op-inl.h
+++ b/src/operator/numpy/np_einsum_op-inl.h
@@ -1,23 +1,4 @@
 /*
- * 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.
- */
-
-/*
  * Copyright (c) 2005-2019, NumPy Developers.
  *
  * All rights reserved.
diff --git a/src/operator/numpy/np_einsum_op.cc 
b/src/operator/numpy/np_einsum_op.cc
index 486bb81..afdb49b 100644
--- a/src/operator/numpy/np_einsum_op.cc
+++ b/src/operator/numpy/np_einsum_op.cc
@@ -1,23 +1,4 @@
 /*
- * 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.
- */
-
-/*
  * Copyright (c) 2005-2019, NumPy Developers.
  * All rights reserved.
  *
diff --git a/src/operator/numpy/np_einsum_path_op-inl.h 
b/src/operator/numpy/np_einsum_path_op-inl.h
index bfdf081..7471385 100644
--- a/src/operator/numpy/np_einsum_path_op-inl.h
+++ b/src/operator/numpy/np_einsum_path_op-inl.h
@@ -1,23 +1,4 @@
 /*
- * 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.
- */
-
-/*
  * Copyright (c) 2005-2019, NumPy Developers.
  * All rights reserved.
  *
diff --git a/src/operator/subgraph/tensorrt/nnvm_to_onnx-inl.h 
b/src/operator/subgraph/tensorrt/nnvm_to_onnx-inl.h
index 727718a..80ae225 100644
--- a/src/operator/subgraph/tensorrt/nnvm_to_onnx-inl.h
+++ b/src/operator/subgraph/tensorrt/nnvm_to_onnx-inl.h
@@ -1,5 +1,3 @@
-#ifndef MXNET_OPERATOR_SUBGRAPH_TENSORRT_NNVM_TO_ONNX_INL_H_
-#define MXNET_OPERATOR_SUBGRAPH_TENSORRT_NNVM_TO_ONNX_INL_H_
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -25,6 +23,9 @@
  * \author Marek Kolodziej, Clement Fuji Tsang
  */
 
+#ifndef MXNET_OPERATOR_SUBGRAPH_TENSORRT_NNVM_TO_ONNX_INL_H_
+#define MXNET_OPERATOR_SUBGRAPH_TENSORRT_NNVM_TO_ONNX_INL_H_
+
 #if MXNET_USE_TENSORRT
 
 #include <mxnet/operator.h>
diff --git a/src/operator/subgraph/tensorrt/onnx_to_tensorrt.h 
b/src/operator/subgraph/tensorrt/onnx_to_tensorrt.h
index 3a9f316..c2b1dd2 100644
--- a/src/operator/subgraph/tensorrt/onnx_to_tensorrt.h
+++ b/src/operator/subgraph/tensorrt/onnx_to_tensorrt.h
@@ -1,5 +1,3 @@
-#ifndef MXNET_OPERATOR_SUBGRAPH_TENSORRT_ONNX_TO_TENSORRT_H_
-#define MXNET_OPERATOR_SUBGRAPH_TENSORRT_ONNX_TO_TENSORRT_H_
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -25,6 +23,9 @@
  * \author Marek Kolodziej, Clement Fuji Tsang
  */
 
+#ifndef MXNET_OPERATOR_SUBGRAPH_TENSORRT_ONNX_TO_TENSORRT_H_
+#define MXNET_OPERATOR_SUBGRAPH_TENSORRT_ONNX_TO_TENSORRT_H_
+
 #if MXNET_USE_TENSORRT
 
 #include <onnx-tensorrt/NvOnnxParser.h>
diff --git a/src/operator/subgraph/tensorrt/tensorrt-inl.h 
b/src/operator/subgraph/tensorrt/tensorrt-inl.h
index 4f0896e..564401b 100644
--- a/src/operator/subgraph/tensorrt/tensorrt-inl.h
+++ b/src/operator/subgraph/tensorrt/tensorrt-inl.h
@@ -1,5 +1,3 @@
-#ifndef MXNET_OPERATOR_SUBGRAPH_TENSORRT_TENSORRT_INL_H_
-#define MXNET_OPERATOR_SUBGRAPH_TENSORRT_TENSORRT_INL_H_
 /*
  * Licensed to the Apache Software Foundation (ASF) under one
  * or more contributor license agreements.  See the NOTICE file
@@ -25,6 +23,9 @@
  * \author Marek Kolodziej, Clement Fuji Tsang
  */
 
+#ifndef MXNET_OPERATOR_SUBGRAPH_TENSORRT_TENSORRT_INL_H_
+#define MXNET_OPERATOR_SUBGRAPH_TENSORRT_TENSORRT_INL_H_
+
 #if MXNET_USE_TENSORRT
 
 #include <onnx-tensorrt/NvOnnxParser.h>
diff --git a/tests/python/gpu/test_numpy_op.py 
b/tests/python/gpu/test_numpy_op.py
index 5b31045..a72947d 100644
--- a/tests/python/gpu/test_numpy_op.py
+++ b/tests/python/gpu/test_numpy_op.py
@@ -13,6 +13,7 @@
 # "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.
 
 import sys
 import numpy as onp

Reply via email to