Hi CalvinKirs, Thanks for your comment. Agree, then the v2.0 is enough and we don't need to implement the v3.0 version, and no need automatically modify LICENSE, just as a local tool to help us to generate LICENSE file.
After this PR is merged, the overall process becomes: the Github Action with skywalking-eyes still automatically performs checks. If it does not pass, we can generate LICENSE locally through the exec-maven-plugin maven plugin with one step to reduce the user threshold. And we handle these Unknown licenses and source-level dependencies manually. Regards, Benedict Jin On 2022/02/09 05:27:27 CalvinKirs wrote: > hi Benedict, > > This sounds like a very good feature, but as Zhenxu and I said on the PR[1], > there will be some detected licenses that are Unknow, but in fact they may > still be available, just need our human intervention to check. The other is > source-level dependencies. > > Then there are some dual licenses, and different license declarations, such > as AL2, some check results are Apache 2.0, while others are The Apache > Software License, Version 2.0, and some such as the check results are Go > License, but in fact It is BSD License. > > I prefer CI check, and output relevant results to remind contributors, and > then contributors add the corresponding licenses, such as which licenses we > need to add, and which licenses need to be checked by the maintainer. Instead > of automatically helping him to add. > License compliance is particularly important for an Apache project. > > In addition, we are currently using skywalking-eyes[2] to do some checks, if > these functions can be contributed to SkyWalking-eyes, it may be better so > that he can benefit more projects. sure, it's up to you. > > [1]https://github.com/apache/incubator-seatunnel/pull/1210 > [2]https://github.com/apache/skywalking-eyes > > > Best wishes! > Calvin Kirs > > > On 02/9/2022 12:15,Benedict Jin<[email protected]> wrote: > It seems that the picture cannot be displayed well, you can see the > description of this issue. FYI, > https://github.com/apache/incubator-seatunnel/issues/1209 > > > On Wed, 9 Feb 2022 at 12:10, Benedict Jin <[email protected]> wrote: > > Hi, > > Here is the SeaTunnel automatically generates LICENSE design, as follows: > > Background > > As we all know, the SeaTunnel is a high-performance Data Integration Platform > that supports efficient data transformation and transfer between > heterogeneous data sources. Therefore, it is inevitable to introduce many > third-party dependencies. Therefore, there is also a problem, which is, with > more and more third-party components, it will be a very labor-intensive > process to manually maintain LICENSE. At the same time, newbies need to learn > this LICENSE mechanism, which also increases the entry threshold for newbies. > Therefore, this document will introduce a way to automatically generate the > LICENSE file. > > Requirement > > After preliminary research, some basic requirements have been sorted out: > > It needs to be implemented in a scripting language to facilitate > understanding and maintenance; > It can be integrated with the existing Maven build process; > It should support Github Action to trigger automatically. > Plan > Version v1.0 > > The easiest way is to generate a temporary THIRD-PARTY.txt through Maven’s > license-maven-plugin plugin. Then through the Python script, the LICENSE file > is automatically parsed and created. > > > > > Version v2.0 > > Further through Maven’s exec-maven-plugin plug-in, it supports one-click > triggering by using Maven. > > > > > Version v3.0 > > Going a step further, we can integrate with Github Action. When a new PR is > created, if the dependency changes, Github Action automatically modifies the > LICENSE, and creates a commit to submit it to the new PR. In this way, when > contributing new plug-ins, users do not need to understand the LICENSE > mechanism, all of which are automatically modified, which greatly reduces the > threshold for newbies. > > Conclusion > > Currently I have created the #1210 PR, which has completed versions v1.0 and > v2.0, we need to discuss whether v3.0 needs to be implemented at this stage. > And then we can implement v3.0 in a follow-up PR if necessary. > > Any comments are welcome, thank you very much. > > > Regards, > Benedict Jin >
