You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@seatunnel.apache.org by ki...@apache.org on 2022/07/10 13:32:45 UTC

[incubator-seatunnel] 01/01: Update new-license.md

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

kirs pushed a commit to branch CalvinKirs-patch-1
in repository https://gitbox.apache.org/repos/asf/incubator-seatunnel.git

commit e3e8877f113d9b9ae1c11a3ce341b9b632364c1c
Author: Kirs <ki...@apache.org>
AuthorDate: Sun Jul 10 21:32:41 2022 +0800

    Update new-license.md
---
 docs/en/contribution/new-license.md | 46 +++++++++++++++++++++++--------------
 1 file changed, 29 insertions(+), 17 deletions(-)

diff --git a/docs/en/contribution/new-license.md b/docs/en/contribution/new-license.md
index 44c80b34a..5325f4b57 100644
--- a/docs/en/contribution/new-license.md
+++ b/docs/en/contribution/new-license.md
@@ -1,25 +1,37 @@
 # How To Add New License
 
-If you have any new Jar binary package adding in you PR, you need to follow the steps below to notice license
+### ASF 3RD PARTY LICENSE POLICY
 
-1. declared in `tools/dependencies/known-dependencies.txt`
+You have to pay attention to the following open-source software protocols which Apache projects support when you intend to add a new feature to the SeaTunnel (or other Apache projects), which functions refers to other open-source software references.
 
-2. Add the corresponding License file under `seatunnel-dist/release-docs/licenses`, if it is a standard Apache License, it does not need to be added
+[ASF 3RD PARTY LICENSE POLICY](https://apache.org/legal/resolved.html)
 
-3. Add the corresponding statement in `seatunnel-dist/release-docs/LICENSE`
+If the 3rd party software is not present at the above policy, we could't that accept your code.
 
-   ```bash
-   # At the same time, you can also use the script to assist the inspection.
-   # Because it only uses the Python native APIs and does not depend on any third-party libraries, it can run using the original Python environment.
-   # Please refer to the documentation if you do not have a Python env: https://www.python.org/downloads/
-   
-   # First, generate the seatunnel-dist/target/THIRD-PARTY.txt temporary file
-   ./mvnw license:aggregate-add-third-party -DskipTests -Dcheckstyle.skip
-   # Second, run the script to assist the inspection
-   python3 tools/dependencies/license.py seatunnel-dist/target/THIRD-PARTY.txt seatunnel-dist/release-docs/LICENSE true
-   ```
 
-4. Add the corresponding statement in `seatunnel-dist/release-docs/NOTICE`
+### How to Legally Use 3rd Party Open-source Software in the SeaTunnel
 
-If you want to learn more about strategy of License, you could read
-[License Notice](https://seatunnel.apache.org/community/submit_guide/license) in submit guide.
+Moreover, when we intend to refer a new software ( not limited to 3rd party jar, text, CSS, js, pics, icons, audios etc and modifications based on 3rd party files) to our project, we need to use them legally in addition to the permission of ASF. Refer to the following article:
+
+* [COMMUNITY-LED DEVELOPMENT "THE APACHE WAY"](https://apache.org/dev/licensing-howto.html)
+
+
+For example, we should contain the NOTICE file (every open-source project has NOTICE file, generally under root directory) of ZooKeeper in our project when we are using ZooKeeper. As the Apache explains, "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work.
+
+We are not going to dive into every 3rd party open-source license policy in here, you may look up them if interested.
+
+### SeaTunnel-License Check Rules
+
+In general, we would have our License-check scripts to our project. SeaTunnel-License-Check is provided by [SkyWalking](https://github.com/apache/skywalking) which differ a bit from other open-source projects. All in all, we are trying to make sure avoiding the license issues at the first time.
+
+We need to follow the following steps when we need to add new jars or external resources:
+
+* Add the name and the version of the jar file in the known-dependencies.txt
+* Add relevant maven repository address under 'https://github.com/apache/incubator-seatunnel/tree/dev/seatunnel-dist/release-docs/LICENSE' directory
+* Append relevant NOTICE files under 'https://github.com/apache/incubator-seatunnel/tree/dev/seatunnel-dist/release-docs/NOTICE' directory and make sure they are no different to the original repository
+* Add relevant source code protocols under 'https://github.com/apache/incubator-seatunnel/tree/dev/seatunnel-dist/release-docs/licenses' directory and the file name should be named as license+filename.txt. Eg: license-zk.txt
+
+### References
+
+* [COMMUNITY-LED DEVELOPMENT "THE APACHE WAY"](https://apache.org/dev/licensing-howto.html)
+* [ASF 3RD PARTY LICENSE POLICY](https://apache.org/legal/resolved.html)