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

Generation of copyright files #697

Open
ct2034 opened this issue Mar 6, 2023 · 11 comments
Open

Generation of copyright files #697

ct2034 opened this issue Mar 6, 2023 · 11 comments

Comments

@ct2034
Copy link

ct2034 commented Mar 6, 2023

Background

Debian packages need copyright files according to this format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/. Currently, copyright files are created by this template https://github.com/ros-infrastructure/bloom/blob/master/bloom/generators/debian/templates/ament_python/copyright.em. Which is producing copyright files that are not strictly following the format.
This is partly because not all the required information is available in current package.xmls. To add the needed information @ralph-lange created ros-infrastructure/rep#347.

ros_license_linter

The linter https://github.com/boschresearch/ros_license_linter has two intended functionalities:

  • checking if the license declaration in the package.xml is correct, by scanning the code for existing licenses and comparing that to the declared licenses.
  • assembling the information for the copyright files
    But currently, only the first functionality is implemented.
    In a second step, it makes sense to integrate the linter into ament_lint and to make it available as github action.

Why should we have the functionality in a separate package?

There is quite some overlap between the two functionalities of license checking and copyright file creation. So, integrating the functionality to generate copyright files into bloom would create a lot of code duplication when also integrating it into ament_lint.

My Question

With this issue, I would like to ask you @wjwwood, whether you generally agree with this. Because I would then start to implement the PR that would add https://github.com/boschresearch/ros_license_linter as a dependency of bloom and improve the generation of copyright files to match the required format.

Further steps

  • In a second step, it would also be desirable to have every package checked by the linter on a bloom release to verify that there are no undeclared licenses in the code. But I think that is a separate discussion.
  • I am generally open to moving the license linter into the ros-infrastructure org and to maybe renaming it to something more suitable.
@hellantos
Copy link

I think this is a very good idea! Also looking very much forward to having correct copyright files!

@wjwwood
Copy link
Contributor

wjwwood commented Mar 9, 2023

This is a question for @nuclearsandwich and @cottsay. Having a dependency on that tool might be acceptable, but they would know better.

In general, I support the idea, it's something we always wanted, but never had the resources to make it happen.

@ct2034
Copy link
Author

ct2034 commented Mar 10, 2023

Thanks for the support @wjwwood. Sorry, I assumed you were the maintainer.

@farshbafdoustar
Copy link

That really make it easy to have better overview of package copyrights . And that's vital for all of us, having commercial use of ROS in mind.
Looking forward to having it integrated in bloom by @nuclearsandwich 's team.

@ct2034
Copy link
Author

ct2034 commented Mar 16, 2023

@nuclearsandwich @cottsay friendly ping 😄

@Aposhian
Copy link

Aposhian commented Mar 21, 2023

Yes this is very important for commercial use cases and doing our due diligence to respect everyone's copyrights involved. Happy to help out if needed!

@ct2034
Copy link
Author

ct2034 commented Mar 26, 2023

Since I did not get any confirmation by the maintainers for this but I still think my proposed course of action makes sense, I will start to implement the changes next week. Maybe a concrete proposal in form of a pr is easier to judge.

@ros-discourse
Copy link

This issue has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-4-20-2023/31087/1

@ros-discourse
Copy link

This issue has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2023-05-18/31587/1

@ros-discourse
Copy link

This issue has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2023-06-15/32038/1

@ros-discourse
Copy link

This issue has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/changes-in-the-package-xml-about-licensing/32118/1

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

No branches or pull requests

6 participants