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

New implementation of license compatibility #209

Merged
merged 130 commits into from
Oct 14, 2022
Merged

New implementation of license compatibility #209

merged 130 commits into from
Oct 14, 2022

Conversation

hesa
Copy link
Contributor

@hesa hesa commented Oct 3, 2022

These commits provides a new implementation of license compatibility checks for projects (with dependencies). It (hopefully) includes updated doc and tests as well.

The goals of this rewrite have been to:

  • increase (ehum) readability and maintainability
  • increase speed

For more info, see: README.md and SETTINGS.md

hesa added 4 commits October 11, 2022 00:39
* for projects (with dependencies)
* with a new report format
Alias:

* Add new alias file (JSON)

* Updates for new options and features

* Remove old options

* Use f strings instead of +

Arbiter:

* Pass alias file to LicenseCompatibility

* Replace exit call with exception

* Use list comprehensions

* Move loop to separate function

Compatibility:

* Add new compat module

Config:

* Remove old settings, add for new features

Documentation:

* Quote license string in SETTINGS

* Updates for new options and features

* Add link to Konrad's osadl_matrix and matrix.json (README)

* Add sample SPDX 2.2 files

Format:

* Add format functions for new functionality

* Fix conditional description inclusion

* Remove unused functions

* Replace printout with exception

* Replace str comparison with not

* Use f-strings

Impl:

* Switch from old to new implementation

* Make more pythonic

License:

* Add new license module

* Move all parse to license_parser

License Compatibiility:

* Raise exceptions on internal errors

* For more info, see: README.md and SETTINGS.md

* Create license objects in constructors

* Use new License class instead

Log:

* Set default log level to DEBUG

Main:

* Replace command line options for new functionality

* Improve help text for verify command

* Make class out of functions

* Remove dead code

Project:

* Add file to read project (flict, SPDX)

* Raise error if SPDX version unsupported

* Add cause when raising exception

* Remove (c) statement from empty init file

* Replace tedious loop construct with comprehensions

* Return value directly (no temp var)

Requirements:

* Correct osadl_matrix version

Return codes:

* Add invalid alias file

Reuse:

* Remove old files

Setup:

* Remove blank lines

Test:

* Add file with commands to check cli

* Update tests for new functionality

* Add (c) and license info

* Add test file with additions to matrix

* Unused files: Remove unused files

* Clean up print statements

* Use proper asserts

* Remove redirect to dev null

Utils:

* Replace getpass with os calls
@hesa
Copy link
Contributor Author

hesa commented Oct 14, 2022

Alias:

  • Add new alias file (JSON)

  • Updates for new options and features

  • Remove old options

  • Use f strings instead of +

Arbiter:

  • Pass alias file to LicenseCompatibility

  • Replace exit call with exception

  • Use list comprehensions

  • Move loop to separate function

Compatibility:

  • Add new compat module

Config:

  • Remove old settings, add for new features

Documentation:

  • Quote license string in SETTINGS

  • Updates for new options and features

  • Add link to Konrad's osadl_matrix and matrix.json (README)

Examples:

  • Add sample SPDX 2.2 files

Format:

  • Add format functions for new functionality

  • Fix conditional description inclusion

  • Remove unused functions

  • Replace printout with exception

  • Replace str comparison with not

  • Use f-strings

Impl:

  • Switch from old to new implementation

  • Make more pythonic

License:

  • Add new license module

  • Move all parse to license_parser

License Compatibiility:

  • Raise exceptions on internal errors

  • For more info, see: README.md and SETTINGS.md

  • Create license objects in constructors

  • Use new License class instead

Log:

  • Set default log level to DEBUG

Main:

  • Replace command line options for new functionality

  • Improve help text for verify command

  • Make class out of functions

  • Remove dead code

Project:

  • Add file to read project (flict, SPDX)

  • Raise error if SPDX version unsupported

  • Add cause when raising exception

  • Remove (c) statement from empty init file

  • Replace tedious loop construct with comprehensions

  • Return value directly (no temp var)

Requirements:

  • Correct osadl_matrix version

Return codes:

  • Add invalid alias file

Reuse:

  • Remove old files

Setup:

  • Remove blank lines

Test:

  • Add file with commands to check cli

  • Update tests for new functionality

  • Add (c) and license info

  • Add test file with additions to matrix

  • Unused files: Remove unused files

  • Clean up print statements

  • Use proper asserts

  • Remove redirect to dev null

Utils:

  • Replace getpass with os calls

@hesa hesa merged commit d989b60 into vinland-technology:main Oct 14, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants