#cargo #generate #cargo-subcommand #proc #macro #cargo-generate-license

macro cargo-generate-license_impl-license

a proc macro for use in cargo-generate-license

1 unstable release

0.1.0 Feb 26, 2023

#185 in #proc


Used in cargo-generate-license

LGPL-3.0

5KB
96 lines

cargo generate-license Test

A cargo subcommand that generates LICENSE files.

This is a fork of Azo's license-generator. I've only tweaked some minor things. The reason for this fork is because I wanted to have the command be namespaced under cargo rather than standing on its own. All credit to them for creating the original project.

Installation

Install with Cargo:

cargo install cargo-generate-license

Usage

$ cargo generate-license --author <name> [LICENSE_TYPE]

[LICENSE_TYPE]:
- AGPL
- Apache
- CC-BY
- CC-BY-NC
- CC-BY-NC-SA
- CC-BY-SA
- CC0
- GPL
- LGPL
- MIT
- MPL
- Unlicense

Options:
  --author input author name. Default: `GitName <GitEmail>`
  --project input project name that is required by some license
  --year input license year
  --output path to the output. Default: ./LICENSE

Supported Licenses

This CLI supports the following licenses:

Examples

Generate MIT LICENSE

cargo generate-license MIT --author "azu"

Output to stdout

cargo generate-license MIT --output /dev/stdout --author "azu"

Multi LICENSE

Author can be retrieved from git config.

cargo generate-license MIT Apache
# output
# LICENSE-MIT and LICENSE-APACHE

Tests

cargo test

Releases

Use cargo-release.

cargo release --no-dev-version {patch,minor,major} --execute

Contributing

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

License

MIT © azu, D. Scott Boggs, 2023

Dependencies

~1.5MB
~37K SLoC