-
-
Notifications
You must be signed in to change notification settings - Fork 659
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
Add license check script for incompatible licenses in pip dependencies #16753
Conversation
See test results for failed build of commit a842aade39 |
WalkthroughThe recent changes focus on enhancing license compliance checks within the project. A new PowerShell and batch script have been added to automate license checks during the build process. The documentation has been updated to reflect these changes, and dependencies have been modified to ensure compatibility with the new license-checking requirements. Changes
Sequence Diagram(s)sequenceDiagram
participant Developer
participant BuildSystem as Build System
participant LicenseCheck as licenseCheck.ps1
participant BatchScript as runlicensecheck.bat
Developer->>BuildSystem: Pushes code to repository
BuildSystem->>BuildSystem: Triggers build process
BuildSystem->>LicenseCheck: Executes licenseCheck.ps1 script
LicenseCheck->>LicenseCheck: Create license output directory
LicenseCheck->>BatchScript: Calls runlicensecheck.bat
BatchScript->>LicenseCheck: Sets up environment and runs license check
LicenseCheck->>BuildSystem: Sets build variables based on check results
BuildSystem->>Developer: Provides feedback on license check success/failure
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
|
||
### License checks | ||
|
||
NVDA uses GPLv2 which is incompatible with certain licenses like Apache. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is it "v2" or "v2 or later"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
our current license is just GPLv2 with 2 modifications
https://github.com/nvaccess/nvda/blob/8fb8ffcaba3950b1e4ca7b58e165267fc5369eb9/copying.txt
rem Runs a license check for python dependencies | ||
set hereOrig=%~dp0 | ||
set here=%hereOrig% | ||
if #%hereOrig:~-1%# == #\# set here=%hereOrig:~0,-1% |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this perhaps clearer in intent?
if #%hereOrig:~-1%# == #\# set here=%hereOrig:~0,-1% | |
if #%here:~-1%# == #\# set here=%here:~0,-1% |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure, this is magic sauce at the top of each of our .bat
files. I'm afraid to change it without updating them all, and concerned this suggestion is different in handling
Link to issue number:
None
Summary of the issue:
NVDA is licensed with GPL2 which is incompatible with certain licenses like Apache.
Currently there are 2 python dependencies bundled with NVDA with incompatible licenses:
Description of user facing changes
runlicensecheck.bat
Description of development approach
Testing strategy:
Known issues with pull request:
This doesn't check other dependencies such as those in
include
ormiscDeps
Code Review Checklist:
Summary by CodeRabbit
New Features
Documentation
runlicensecheck.bat
script.Dependencies
licensecheck
package torequirements.txt
.Pillow
,wxPython
, andconfigobj
.