Yes, this directory is such an example of this for 2 files:I don't see why this can't be done for other things.BrettOn Fri, Apr 14, 2017 at 10:59 AM, Dirk Pranke <dpr...@chromium.org> wrote:If I'm understanding you correctly, you're suggesting that we actually move each files into new third_party directories that have the correct licenses?-- DirkOn Fri, Apr 14, 2017 at 10:43 AM, Brett Wilson <bre...@chromium.org> wrote:Can we just make third_party directories for all of the files with other licenses? We went through some effort to do this for one file in //url a while ago so I'm surprised this was not also done elsewhere.BrettOn Thu, Apr 13, 2017 at 6:04 PM, Dirk Pranke <dpr...@chromium.org> wrote:To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAEoffTDKK-OM9auhj8r3Pgt-LuU06%3Da4sPXd7d0MfFKRz-DYWw%40mail.gmail.com.--On Wed, Apr 12, 2017 at 4:16 PM, Lambros Lambrou <lambros...@chromium.org> wrote:Hi all,I have been looking into restricting the abouts:credits page to only contain entries for code that is actually being shipped (for a given platform). This is tracked at http://crbug.com/178215, but our background motivation for this is http://crbug.com/697128.We have already added support to tools/licenses.py to generate a credits file based on a GN target. The (transitive) dependencies of that target are filtered for "third_party" components, and only those associated licenses are included in the Credits report.We are using this feature to generate credits for the "remoting_apk" target (Chrome Remote Desktop client for Android), and we propose to also use it for Chrome's about:credits page. It could also be used for WebView, and anything else we build and ship separately from the Chrome browser, such as Chrome Remote Desktop host.The problem is, not all third-party code is included in a third_party/ directory. We have tools/copyright_scanner/ which scans all files for third-party licenses, and maintains a whitelist there (third_party_files_whitelist.txt). Conceivably, Chrome (or whatever GN target we generate credits for) might depend on one of these whitelist files, but not on the third_party/ project that would provide the license for it.From looking at the whitelist file, it seems possible that there are files for which we don't actually have a matching third party project that we could grab the license from. Would you add a stub target to fix that, or do something else?Any thoughts?A slightly-crazy idea would be: for each whitelisted file:
- Create a "fake" GN target for it, with "third_party" within its name (for example: a/b/c:third_party__foo_cc).
- Have whatever uses that file depend on the fake GN target.
- Have the fake GN target "depend" on the actual third_party/ project that provides the licensing info.
This would fix the problem with very few (if any) changes to tools/licenses.py.Is this a reasonable approach?Is it easy to create "fake" targets and dependencies in GN for this purpose, or is there a better way?It seems like it would be better to query GN to figure out if there are paths from the whitelisted files to the target in question.I will reply further off-thread ...-- Dirk--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAHbUkqEa1XBFFZ_-tOX-MZNOdEYzc%2BWH_xGHLnNa-2bm-%3Dkn7A%40mail.gmail.com.
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAHbUkqH8w12B8YrZx%2ByhTYAGM1bE6JX%3DTB4g4v5HXNJHaJU0QA%40mail.gmail.com.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CABiQX1ULn6qZBdjd%2B7RVRb4sa1LJF0m_jLdQj4m0arqC5mO7jg%40mail.gmail.com.
Regarding putting third-party-licensed code in a top-level directory: the policy says"We put all code that isn't written by Chromium developers into src/third_party (even if you end up modifying just a few functions). We do this to make it easy to track license compliance, security patches, and supply the right credit and attributions. It also makes it a lot easier for other projects that embed our code to track what is Chromium licensed and what is covered by other licenses."
(It goes on to allow third_party subdirectories elsewhere in the tree, but recommends minimizing these.)So there may be some complications with allowing third-party code to live in a top-level directory (especially if "other projects" are relying on current policy to track "what is Chromium licensed").If we were to change the policy, we would need to update tools/licenses.py to understand that src/blink (for example) is a third-party directory.
WebKit is a bit of a special case anyway, because it doesn't seem to come under a single license AFAICT. It looks like an amalgamation of all the individual licenses of each source file.IANAL and cannot speak officially for Chrome, but I believe that "forking" a project doesn't change the license requirements, unless you completely rewrite the project.Hopefully someone here can give official guidance on whether the WebKit fork needs to be under third_party?
On Tue, May 2, 2017 at 2:16 PM, Lambros Lambrou <lambros...@chromium.org> wrote:WebKit is a bit of a special case anyway, because it doesn't seem to come under a single license AFAICT. It looks like an amalgamation of all the individual licenses of each source file.IANAL and cannot speak officially for Chrome, but I believe that "forking" a project doesn't change the license requirements, unless you completely rewrite the project.Hopefully someone here can give official guidance on whether the WebKit fork needs to be under third_party?If you believe that there might be a problem with moving it out of third_party, please mention that on the blink-dev thread I linked to.