Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature] Generate LICENSE and NOTICE automatically #4830

Closed
3 tasks done
Pil0tXia opened this issue Apr 12, 2024 · 0 comments · Fixed by #4831
Closed
3 tasks done

[Feature] Generate LICENSE and NOTICE automatically #4830

Pil0tXia opened this issue Apr 12, 2024 · 0 comments · Fixed by #4831
Labels

Comments

@Pil0tXia
Copy link
Member

Search before asking

  • I had searched in the issues and found no similar issues.

Feature Request

As is discussed in #4720, the LICENSE and NOTICE files of the EventMesh binary distribution release need to be maintained manually, and for a long time the contents of the files were incomplete and not replenished in time when new dependencies were introduced.

Following the suggestion in #4720 (comment), I implemented generateDistLicense task that automatically generates the LICENSE file and licenses/ directory, and generateDistNotice task that automatically generates the NOTICE file.

They can be run manually, or automatically when the dist task is executed. After #4719 is merged, I'll specify the generateDistLicense task and the generateDistNotice task as dependencies of the dist task.

The licenses generated by the generateDistLicense task are named after the license name, e.g. Apache-2.0.txt. I can also modify it to be named after an artifact, e.g. log4j-core 2.22.1 Apache-2.0.txt. Please let me know if you want to do like that.

Are you willing to submit PR?

  • Yes I am willing to submit a PR!

Code of Conduct

mxsm pushed a commit that referenced this issue Apr 25, 2024
* Update com.github.jk1.dependency-license-report to cyclonedx-gradle-plugin

* Remove redundant mavenLocal()

* Store license files by license name

* Sort by version additionally

* Stick to bundled dependencies

* Auto generate NOTICE file

* Add comments

* Display "/" for 'Unicode/ICU License'

* Rename 'third-party-licenses' to 'dist-license' to suit LICENSE file's meaning

* Doing some paperwork

* failed to apply plugins block, minor adjust

* Remove logback completely

* download license if only url is given

* delete mysql's license

* exempt licenses

* minor optimize

* Add checkDeniedLicense task

* Output success
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant