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

readme: add list of licenses - not Apache 2.0 #9502

Merged
merged 9 commits into from
Feb 15, 2019

Conversation

0xc0170
Copy link
Contributor

@0xc0170 0xc0170 commented Jan 25, 2019

Description

Add paragraph to readme with all folders containing non Apache 2.0. I would like all teams to verify this and approve.

I am still identifying targets licenses, we might extend that list to be more accurate.

Pull request type

[X] Fix
[ ] Refactor
[ ] Target update
[ ] Functionality change
[ ] Docs update
[ ] Test update
[ ] Breaking change

Reviewers

@SeppoTakalo @AnttiKauppila @donatieng @dannybenor @SenRamakri

Name all folders containing different liceses. Any new file not Apache 2.0 should
be captured here.
@0xc0170
Copy link
Contributor Author

0xc0170 commented Jan 25, 2019

As soon as this is approved, will add docs team to review and make sure this is also mentioned in our docs (license page). This list will need to be kept up to date.

@0xc0170
Copy link
Contributor Author

0xc0170 commented Jan 25, 2019

@SeppoTakalo @AnttiKauppila @donatieng @dannybenor @SenRamakri

Added you as reviewers based on the code areas - please look at them, if we have it correctly specified.

Copy link
Contributor

@SeppoTakalo SeppoTakalo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the idea of having this list if good, it clarifies things, but the list itself is inaccurate.

Provided some feedback of what should be changed.

README.md Outdated
- features/FEATURE_BLE/targets - BSD-style/PBL/MIT
- features/lorawan - Revised BSD
- features/lwipstack - BSD-3-Clause/MIT
- features/nanostack/sal-stack-nanostack - BSD-3-Clause
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is only partially true..
Most of the Nanostack itself is Apache 2.0, but there are Thread related code which is BSD.
https://github.com/ARMmbed/mbed-os/tree/master/features/nanostack/sal-stack-nanostack/source/6LoWPAN/Thread

Copy link
Contributor

@JanneKiiskila JanneKiiskila Jan 25, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would recommend doing a proper table with links to the sources/licence file in the three. Makes it easier to find those, since for the BSD related stuff - the end product needs to show the license SOMEWHERE in the UI/manuals.

Having a link to POINT to a direct LICENSE -file also ensures we do our due diligence and include the license in the source code itself, like we need to.

Copy link
Contributor Author

@0xc0170 0xc0170 Jan 25, 2019

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I stated this lists contains folders with non-apache files (thus nanostack folder marked as it contains BSD-3-Clause, does not mean there are no files with Apache 2.0). Each of these folders should have then list of non Apache files in its folder.

I like the idea having the tree link

features/nanostack/sal-stack-nanostack - BSD-3-Clause

This would have url link so we can go to nanostack folder and there would be:

  • license file (in this case BSD-3-Clause)
  • Readme with license information (what files are non-apache)

In cases like nanostack this is simple, when we consider targets like we have in BLE or under targets/ the list will be very large (multiple licenses involved).

Open for suggestions

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated. The latest push contains links to folders. Each of them should contain Readme (will be added later by separate PRs). I'll add this requirement to our documentation first and will request each module to add it later.

Readme.md in the root should just point to features/nanostack (license overview).
features/nanostack/Readme.md will contain list of files/modules inside with licenses (detailed view).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Our license page actually contains this, we just need to fix the current ones and check the new ones as a requirement

https://os.mbed.com/docs/mbed-os/v5.11/contributing/license.html (Using a different license).

README.md Outdated
- features/storage/blockdevice - MIT
- features/storage/filesystem/littlefs - BSD-3-Clause
- features/storage/filesystem/fat - MIT/BSD-style
- features/netsocket/emac-drivers - BSD-3-Clause
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This depends on the driver itself.
There drivers are supplied mostly by our partners, so it is not our choice what license they use.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We just need to document the licenses - provide a list of files that are not. This is going that direction and we start documenting every change to this (if not Apache files being added, they need to be documented and questioned why not apache 2.0/pbl as our license guide suggests).

@ciarmcom
Copy link
Member

@0xc0170, thank you for your changes.
@AnttiKauppila @SeppoTakalo @SenRamakri @dannybenor @donatieng @ARMmbed/mbed-os-maintainers please review.

@cmonr
Copy link
Contributor

cmonr commented Feb 12, 2019

@0xc0170 Any updates?

Copy link

@AnttiKauppila AnttiKauppila left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WAN team content is fine

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 12, 2019

@cmonr Yes, I've completed the scan and its results, will update this.

Fix licenses based on latest Fossology scan. Using -style licenses for specific type licenses
Add paths to the readme.
@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 12, 2019

I've updated the Readme - used 5.11.3 release scan results. Added paths to each folder as @JanneKiiskila suggested. It now contains components. Each of these will need own readme to specify licenses in detail. This will be the second step. Good exercise will be to capture targets folders.

Ready for review

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 12, 2019

Created #9683 to have licenses fixed in each of the items in the list here. Will be tracked separately.

Copy link
Contributor

@cmonr cmonr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Find a different way to indicate/list/link files with different licenses.

README.md should be short and easy to digest. This PR asis would double the size of the file while only providing very specific information that most users would not care about.

README.md Outdated
@@ -33,6 +33,26 @@ The software is provided under [Apache-2.0 license](LICENSE). Contributions to t

This project contains code from other projects. The original license text is included in those source files. They must comply with our [license guide](https://os.mbed.com/docs/latest/reference/license.html)

Folders containing files not under Apache 2.0 as listed above (each folder should contain own README file with license specified for its files). The original license text is included in those source files.

- [cmsis](./cmsis) - MIT, BSD-3-Clause
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really don't like how much this changes what is suppose to be a simple README.

@cmonr cmonr requested a review from a team February 12, 2019 20:55
@cmonr
Copy link
Contributor

cmonr commented Feb 12, 2019

Added @ARMmbed/mbed-docs for review (bad bot, leaving them out...)

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 13, 2019

README.md should be short and easy to digest. This PR asis would double the size of the file while only providing very specific information that most users would not care about.

I can create LICENSE file with this list, and just link it here.

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 13, 2019

Pushed an update, following our license guide. LICENSE provides overview of licenses, LICENSE-apache-2.0.txt the main license text. And our readme just references both.

README.md Outdated
@@ -29,10 +29,12 @@ The [release notes](https://os.mbed.com/releases) detail the current release. Yo

## License and contributions

The software is provided under [Apache-2.0 license](LICENSE). Contributions to this project are accepted under the same license. Please see [contributing.md](CONTRIBUTING.md) for more info.
The software is provided under [Apache-2.0 license](LICENSE-apache-2.0.txt). Contributions to this project are accepted under the same license. Please see [contributing.md](CONTRIBUTING.md) for more info.

This project contains code from other projects. The original license text is included in those source files. They must comply with our [license guide](https://os.mbed.com/docs/latest/reference/license.html)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This project contains code from other projects. The original license text is included in those source files. They must comply with our [license guide](https://os.mbed.com/docs/latest/reference/license.html)
This project contains code from other projects. The original license text is included in those source files. They must comply with our [license guide](https://os.mbed.com/docs/latest/reference/license.html).

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

Copy link
Contributor

@cmonr cmonr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 14, 2019

Needs more reviews ! I would like to have this on master, so any new non apache code is documented.

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 15, 2019

@AnotherButler Can you pls review? If we can get this in prior the weekend, we are going to push for cleanup licenses the following weeks

LICENSE Outdated
Unless specifically indicated otherwise in a file, files are licensed under the Apache 2.0 license,
as can be found in: LICENSE-apache-2.0.txt

Folders containing files under different permissive license than Apache 2.0 are listed below. Eeach folder should contain own README file with license specified for its files. The original license text is included in those source files.
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Eeach -> typo, @AnotherButler Can you fix ? I've just noticed this, I expect additional styling commit :)

Amanda Butler added 2 commits February 15, 2019 13:58
Fix typo as requested in comments.
Include articles for clarity.
@cmonr
Copy link
Contributor

cmonr commented Feb 15, 2019

CI started

@mbed-ci
Copy link

mbed-ci commented Feb 15, 2019

Test run: SUCCESS

Summary: 12 of 12 test jobs passed
Build number : 1
Build artifacts

@cmonr cmonr merged commit 287dde4 into ARMmbed:master Feb 15, 2019
@0xc0170 0xc0170 deleted the dev_readme_licenses branch February 18, 2019 09:59
@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 18, 2019

I've noticed one thing reviewing it now on master. We might want to rename LICENSE to LICENSE.md as Github does not show it as markdown - the view is "raw", see https://github.com/ARMmbed/mbed-os/blob/master/LICENSE

@AnotherButler Should we update our docs to specify license decription files being .md files rather?

@0xc0170
Copy link
Contributor Author

0xc0170 commented Feb 18, 2019

I'll send separate PR addressing this.

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

Successfully merging this pull request may close these issues.

None yet

8 participants