New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 35 users
Status: Untriaged
Owner: ----
Cc:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug


Sign in to add a comment
Pass the Ubuntu license check script
Project Member Reported by evan@chromium.org, Nov 19 2009 Back to list
http://bazaar.launchpad.net/~chromium-team/chromium-browser/chromium-
browser.head/annotate/head%3A/debian/licensecheck.pl

This script verifies the licenses on all source files.  It finds a few 
places where we've either forgotten or not been specific enough in our 
files.
 
Comment 1 by a...@jwsdot.com, Nov 23 2009
Fabien or someone else, maybe we can attach the current complains of licensecheck so
we can address the individual issues found?
Comment 2 by f...@sofaraway.org, Nov 24 2009
Evan, my script finds more than just a few files, unfortunately.

here is the recipe to generate the results:

0/ prerequisite: licensecheck (it's in devscripts), bzr and lzma

1/ get the *freshest* source tarball (an orig.tar.gz file) from
  http://ppa.launchpad.net/chromium-daily/ppa/ubuntu/pool/main/c/chromium-browser/

Note: it's a reduced tarball, stripped from binaries and 3rd party directories not needed to build on 
ubuntu/debian.
Stripping this tarball is a never ending task as new files keep coming in, i last did it a few weeks ago so 
it could probably be improved. Stripping serves two purposes, smaller tarball to upload to the builders, less 
files to review for license compliance.

2/ extract it:

$ tar zxvf chromium-browser_4.0.256.0~svn20091123r32803.orig.tar.gz
chromium-browser-4.0.256.0~svn20091123r32803/
chromium-browser-4.0.256.0~svn20091123r32803/chromium-browser-4.0.256.0~svn20091123r32803-source.tar.lzma
$ cd chromium-browser-4.0.256.0~svn20091123r32803/
$ tar -x --lzma -f chromium-browser-4.0.256.0~svn20091123r32803-source.tar.lzma

you should have a src/ directory

3/ get the licensecheck wrapper from the chromium-browser packaging branch:

$ bzr branch lp:~chromium-team/chromium-browser/chromium-browser.head

4/ run the script

$ chromium-browser.head/debian/licensecheck.pl src > list.txt

that's it. ~4k lines :P

Expectations:
- no UNKNOWN
- no "Copyright: 200x someone. All rights reserved", it's not enough, it should say what license, or refer to 
a LICENSE file.
- only acceptable licenses in the white-list table.
  (I'm not a lawyer, i don't know anything about acceptable licenses incompatible with other acceptable 
licenses, someone will have to check that)

For 3rd party files, the README.google should probably clarify when needed, based on the corresponding 
upstreams.

The script contains a list of white-listed licenses. The list is not frozen, it's just there to shrink the 
results to something manageable. It's possible to run the script with -a to ignore the white-list and see all 
files and their identified (or not) licenses.

The script also contains some heuristics to identify a license when the system licensecheck failed to do so.
More heuristics are probably needed.

Attached the results from yesterday's tarball.
list.txt
389 KB View Download
Labels: -OS-All OS-Linux
Comment 4 by holi...@gmail.com, Dec 9 2009
> The goal isn't to make sure licencecheck -r . output looks good; it is
> to make sure that every file in the source tarball has a known DFSG-free
> copyright and license.  It's simplest if licensecheck tells us all is
> well, but in the end licensecheck is just a tool.  debian/copyright
> being complete and correct is much more important.
Comment 5 by sfcr...@gmail.com, Dec 9 2009
One bug in licensecheck is that it reports all the files that have chromium license
that is only 2009 as opposed to 2007-2009. (I hope that is clear.)

The only files that I saw in a quick spot check that were not DFSG-free was the
contrib/ICU files that are simply copyright IBM all rights reserved with no license
for distribution.
Comment 6 by f...@sofaraway.org, Dec 10 2009
@holisme, you missed my point, i'm not trying to make the licencecheck output look 
good. my wrapper uses licencecheck and looks harder at the source to identify the 
remaining files, and it has a flags to whitelist some licenses known as good, 
leaving the unidentied files and the other licenses in the output for manual 
checking.
This is just an helper script needed because of the size of this project.

The wrapper could be improved to look even harder, and the white list could be 
extended.

But in no way it replaces the debian/copyright file that still needs to be written.
Labels: Mstone-5
Status: Assigned
Comment 8 by evan@chromium.org, Dec 17 2009
BTW, I committed one patch from tfarina but there is more work to be done.  (Not sure 
why that commit didn't show up here.)  If anyone wants to send some small patches my 
way I'd be happy to review them.
Comment 9 by bugdro...@gmail.com, Dec 17 2009
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=34368 

------------------------------------------------------------------------
r34368 | evan@chromium.org | 2009-12-11 11:40:57 -0800 (Fri, 11 Dec 2009) | 8 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/auth_watcher_unittest.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/conflict_resolver.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/syncer.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/syncer.h?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/syncer_end_command.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/syncer_end_command.h?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/engine/syncer_unittest.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/util/extensions_activity_monitor_unittest.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/util/user_settings.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/util/user_settings_posix.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/util/user_settings_unittest.cc?r1=34368&r2=34367
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/browser/sync/util/user_settings_win.cc?r1=34368&r2=34367

sync: Fix license copyright text.

Checked with debian/licensecheck.pl

BUG=28291

Review URL: http://codereview.chromium.org/495001
Patch from Thiago Farina <thiago.farina@gmail.com>.
------------------------------------------------------------------------

Comment 10 by piman...@gmail.com, Dec 20 2009
Should we add the script to buildbot so that we don't regress here ?
Comment 11 by evan@chromium.org, Dec 20 2009
We don't pass yet.  :(

But that is a good idea, for once we do pass.
I want a checker that also rejects stuff in third_party/ missing a license/readme.
Comment 12 by evan@chromium.org, Dec 28 2009
Blockedon: 29765
Comment 14 by evan@chromium.org, Dec 28 2009
Blockedon: google-url:15
Comment 15 by evan@chromium.org, Dec 28 2009
Blockedon: 31249
Comment 16 by evan@chromium.org, Dec 28 2009
media/tools/qt_faststart.c mentions it's public domain, but the licensecheck script 
doesn't seem to notice that
Comment 17 by evan@chromium.org, Dec 28 2009
Blockedon: 31251
Comment 18 by evan@chromium.org, Dec 28 2009
Blockedon: googletest:241
Comment 19 by f...@sofaraway.org, Dec 31 2009
Blockedon: gyp:133
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=35301 

------------------------------------------------------------------------
r35301 | evan@chromium.org | 2009-12-28 08:41:51 -0800 (Mon, 28 Dec 2009) | 5 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/chrome_dll_resource.h?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/app/chrome_exe_resource.h?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/installer/gcapi/resource.h?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/installer/mini_installer/mini_installer_resource.h?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/installer/setup/setup_resource.h?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/installer/util/installer_util_unittests_resource.h?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/installer/util/prebuild/create_string_rc.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/dromaeo/README.chromium?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/test/data/safe_browsing/download_update.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/third_party/jstemplate/README.chromium?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/third_party/jstemplate/compile.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/tools/automated_ui_test_tools/auto_ui_test_input_generator.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/tools/extract_actions.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/tools/extract_histograms.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/tools/history-viz.py?r1=35301&r2=35300
   M http://src.chromium.org/viewvc/chrome/trunk/src/chrome/tools/profiles/thumbnail-inl.h?r1=35301&r2=35300

Add some licensing comments under chrome/.

BUG=28291

Review URL: http://codereview.chromium.org/507067
------------------------------------------------------------------------

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=35323 

------------------------------------------------------------------------
r35323 | evan@chromium.org | 2009-12-28 16:59:31 -0800 (Mon, 28 Dec 2009) | 8 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/app/test/data/resource.h?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/base/allocator/prep_libc.sh?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/build/linux/rewrite_dirs.py?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/courgette/memory_monitor.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/media/tools/player_wtl/resource.h?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/net/third_party/nss/ssl/bodge/secure_memcmp.c?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/views/examples/textfield_example.h?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_group_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_host_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_request_handler_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_response_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_storage_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_update_job_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/appcache_url_request_job_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/manifest_parser_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/appcache/mock_appcache_storage_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/database/database_tracker_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/database/database_util_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/database/databases_table_unittest.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/glue/plugins/test/resource.h?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/layout_tests/dedup-tests.py?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/test_shell/resource.h?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/test_shell/test_shell_x11.cc?r1=35323&r2=35322
   M http://src.chromium.org/viewvc/chrome/trunk/src/webkit/tools/test_shell/test_shell_x11.h?r1=35323&r2=35322

Clarify licenses on a bunch of files.

In this process, I also filed bugs on various projects we depend
on that also have unclear licenses.

BUG=28291

Review URL: http://codereview.chromium.org/521009
------------------------------------------------------------------------

Comment 22 by evan@chromium.org, Jan 6 2010
Labels: -Mstone-5 Mstone-X
Comment 23 by a...@jwsdot.com, Jan 7 2010
there are a few incompatible licenses bundled in chromium. for instance third-
party/ockmock uses advertising clause BSD-style ... that means you cannot combine that 
with GPL code. i havent checked what uses what, but since all goes in one big binary 
it feels kind of illegal the way it is now.

From what i understand all BSD 4-clause license stuff needs to go away (IANAL)
Comment 24 by a...@jwsdot.com, Jan 7 2010
s/ockmock/ocmock/
Comment 25 by evan@chromium.org, Jan 11 2010
Labels: HelpWanted
I believe we don't use any GPL code.  Am I wrong?  (We use a lot of LGPL though.)

I guess ocmock doesn't end up in the resulting binary, only the test ones, so maybe 
it's ok?  (IANAL as well)  I will ask about this.  It would be funny if we needed to 
make the unit tests print the advertising bits on startup.
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=37338 

------------------------------------------------------------------------
r37338 | maruel@chromium.org | 2010-01-27 15:12:39 -0800 (Wed, 27 Jan 2010) | 10 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/tools/depot_tools/presubmit_canned_checks.py?r1=37338&r2=37337
   M http://src.chromium.org/viewvc/chrome/trunk/tools/depot_tools/tests/presubmit_unittest.py?r1=37338&r2=37337

Add presubmit_canned_checks.CheckLicense()

It does a regexp search on the file contents to make sure it contains expected license boiler plate.

It is a generalization to implement the equivalent of ubuntu's license check script into the corresponding PRESUBMIT.py files.

TEST=unit tests
BUG=28291

Review URL: http://codereview.chromium.org/558007
------------------------------------------------------------------------

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=37361 

------------------------------------------------------------------------
r37361 | maruel@chromium.org | 2010-01-27 17:17:34 -0800 (Wed, 27 Jan 2010) | 8 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/PRESUBMIT.py?r1=37361&r2=37360

Use the newly added CheckLicense() canned check to verify license boiler plate on source files.

Don't check for the year since there was no clear concensus about systematically updating the year on every change.

TEST=none
BUG=28291

Review URL: http://codereview.chromium.org/552203
------------------------------------------------------------------------

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=37415 

------------------------------------------------------------------------
r37415 | maruel@chromium.org | 2010-01-28 10:33:22 -0800 (Thu, 28 Jan 2010) | 6 lines
Changed paths:
   M http://src.chromium.org/viewvc/chrome/trunk/src/PRESUBMIT.py?r1=37415&r2=37414

Tolerate the form 20xx-20xx for copyrights since it's used in a few headers.

TEST=none
BUG=28291

Review URL: http://codereview.chromium.org/556059
------------------------------------------------------------------------

The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=42005 

------------------------------------------------------------------------
r42005 | evan@chromium.org | 2010-03-18 14:55:24 -0700 (Thu, 18 Mar 2010) | 7 lines
Changed paths:
   A http://src.chromium.org/viewvc/chrome/trunk/src/tools/licenses.py

First pass at a script for extracting licensing info from third_party.

I intend to use this to automate managing our license metadata.

BUG= 27639 ,28291, 29342 , 29764 , 29765 ,others

Review URL: http://codereview.chromium.org/1133002
------------------------------------------------------------------------

Labels: -HelpWanted
Comment 31 by evan@chromium.org, Aug 26 2010
Regarding licensing information, I believe our current status is:

- We have presubmit checks that verify our licensing information is in order for code that we write.  I am sure they can be improved if they are missing some kinds of files.

- We have a higher-level script -- tools/licenses.py -- that generates about:credits by pasting together licensing data included in each of our third-party modules.  I think you could probably modify this to generate a debian/copyright pretty easily.  But it shows the superset of libraries we use -- some of these modules are only used for tests, which we don't ship, so I guess for correctness it'd be nice to filter it somehow.  (This is the case for e.g. OCMock, to respond to comment #23.)

- Any GPL code we might use (for tests, for example) is never used in a binary we distribute, which I guess is ok.
Blockedon: 55020 55021
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=59154

------------------------------------------------------------------------
r59154 | phajdan.jr@chromium.org | Fri Sep 10 14:32:40 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/licenses.py?r1=59154&r2=59153&pathrev=59154

Add more special cases to licenses.py for direct source code checkouts.

TEST=none
BUG=28291
Review URL: http://codereview.chromium.org/3362015
------------------------------------------------------------------------
Blockedon: 55162 55163 55165 55166 55168
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=59431

------------------------------------------------------------------------
r59431 | phajdan.jr@chromium.org | Tue Sep 14 14:44:59 PDT 2010

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/licenses.py?r1=59431&r2=59430&pathrev=59431

License check: remove the special case for protobuf2,
README.chromium is now in place.

TBR=evan

BUG=28291
TEST=tools/licenses.py scan
Review URL: http://codereview.chromium.org/3418006
------------------------------------------------------------------------
Blockedon: 57840 57843 57845
Project Member Comment 39 by bugdroid1@chromium.org, Sep 14 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=101102

------------------------------------------------------------------------
r101102 | phajdan.jr@chromium.org | Wed Sep 14 10:48:47 PDT 2011

Changed paths:
 A http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses?r1=101102&r2=101101&pathrev=101102
 A http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=101102&r2=101101&pathrev=101102
 A http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/OWNERS?r1=101102&r2=101101&pathrev=101102

Linux: add a tool to enforce licensecheck results
with a looooong suppression list for current problems.

BUG=28291

Review URL: http://codereview.chromium.org/7889026
------------------------------------------------------------------------
I started submitting our patches upstream, first is http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=641497
Project Member Comment 41 by bugdroid1@chromium.org, Sep 14 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=101187

------------------------------------------------------------------------
r101187 | phajdan.jr@chromium.org | Wed Sep 14 16:07:12 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=101187&r2=101186&pathrev=101187

Update checklicenses to pass.

BUG=28291

Review URL: http://codereview.chromium.org/7887055
------------------------------------------------------------------------
Project Member Comment 43 by bugdroid1@chromium.org, Sep 16 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=101573

------------------------------------------------------------------------
r101573 | phajdan.jr@chromium.org | Fri Sep 16 14:56:50 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=101573&r2=101572&pathrev=101573

Prepare checklicenses.py for buildbot landing.

- suppress yet another regression
- print info how to handle failures
- don't turn the bot red, but orange in case of failure
  this is temporary, but will make it significantly easier
  to land the buildbot-side change

BUG=28291

Review URL: http://codereview.chromium.org/7925024
------------------------------------------------------------------------
Project Member Comment 44 by bugdroid1@chromium.org, Sep 20 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=101964

------------------------------------------------------------------------
r101964 | phajdan.jr@chromium.org | Tue Sep 20 09:08:00 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=101964&r2=101963&pathrev=101964

Make check_licenses pass on trybots.

This also cleans up the code a little bit.

BUG=28291

Review URL: http://codereview.chromium.org/7951009
------------------------------------------------------------------------
Project Member Comment 45 by bugdroid1@chromium.org, Sep 21 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102125

------------------------------------------------------------------------
r102125 | phajdan.jr@chromium.org | Wed Sep 21 10:22:55 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/tools/build/masters/master.chromium.lkgr/lkgr_finder.py?r1=102125&r2=102124&pathrev=102125

Add check_licenses to LKGR

BUG=28291
Review URL: http://codereview.chromium.org/7978033
------------------------------------------------------------------------
Project Member Comment 46 by bugdroid1@chromium.org, Sep 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102282

------------------------------------------------------------------------
r102282 | jam@chromium.org | Thu Sep 22 08:57:18 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=102282&r2=102281&pathrev=102282

Turn off checklicenses until it's done more efficiently. Linux try runs now take an hour. This adds anywhere from 6 mintues to 10 minutes (when it times out), which is an unacceptable time.

BUG=28291
Review URL: http://codereview.chromium.org/7977043
------------------------------------------------------------------------
Project Member Comment 47 by bugdroid1@chromium.org, Sep 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102283

------------------------------------------------------------------------
r102283 | jam@chromium.org | Thu Sep 22 08:58:43 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=102283&r2=102282&pathrev=102283

Revert 102282 - committed the wrong cl - Turn off checklicenses until it's done more efficiently. Linux try runs now take an hour. This adds anywhere from 6 mintues to 10 minutes (when it times out), which is an unacceptable time.BUG=28291Review URL: http://codereview.chromium.org/7977043TBR=jam@chromium.org
------------------------------------------------------------------------
Project Member Comment 48 by bugdroid1@chromium.org, Sep 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102292

------------------------------------------------------------------------
r102292 | phajdan.jr@chromium.org | Thu Sep 22 09:47:26 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=102292&r2=102291&pathrev=102292

Make it easier to remove path-specific whitelist entries
by adding a flag to ignore path-specific suppression.

This will allow me to file bugs about current suppressions
and just say 'run checklicenses.py --ignore-suppressions some/path to repro'

BUG=28291

Review URL: http://codereview.chromium.org/7979030
------------------------------------------------------------------------
Project Member Comment 49 by bugdroid1@chromium.org, Sep 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102307

------------------------------------------------------------------------
r102307 | phajdan.jr@chromium.org | Thu Sep 22 11:00:53 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/third_party/devscripts/chromium-1.patch?r1=102307&r2=102306&pathrev=102307
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=102307&r2=102306&pathrev=102307
 M http://src.chromium.org/viewvc/chrome/trunk/src/third_party/devscripts/licensecheck.pl?r1=102307&r2=102306&pathrev=102307

Make check_licenses about 5x faster.

I've used a profiler and removed code that takes long time
bug we don't use, and optimized several regular expressions.

BUG=28291

Review URL: http://codereview.chromium.org/7988008
------------------------------------------------------------------------
Project Member Comment 50 by bugdroid1@chromium.org, Sep 22 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102363

------------------------------------------------------------------------
r102363 | phajdan.jr@chromium.org | Thu Sep 22 14:07:05 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/third_party/devscripts/chromium-1.patch?r1=102363&r2=102362&pathrev=102363
 M http://src.chromium.org/viewvc/chrome/trunk/src/third_party/devscripts/licensecheck.pl?r1=102363&r2=102362&pathrev=102363

Speed up check_licenses by another 30% by scanning less files.

This improves run time from ~3 minutes to ~2 minutes for me locally.

BUG=28291

Review URL: http://codereview.chromium.org/7974012
------------------------------------------------------------------------
Project Member Comment 51 by bugdroid1@chromium.org, Sep 23 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102585

------------------------------------------------------------------------
r102585 | phajdan.jr@chromium.org | Fri Sep 23 14:45:14 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/tools/build/masters/master.chromium/master_full_cfg.py?r1=102585&r2=102584&pathrev=102585
 M http://src.chromium.org/viewvc/chrome/trunk/tools/build/masters/master.chromium/master_linux_cfg.py?r1=102585&r2=102584&pathrev=102585
 M http://src.chromium.org/viewvc/chrome/trunk/tools/build/masters/master.tryserver.chromium/master.cfg?r1=102585&r2=102584&pathrev=102585
 M http://src.chromium.org/viewvc/chrome/trunk/tools/build/masters/master.chromium.lkgr/lkgr_finder.py?r1=102585&r2=102584&pathrev=102585

check_licenses, plan B:

- don't run check_licenses on fast builders
- only run it on already slow Linux clobber builder
- don't run it on trybots but default, but make it optional
- remove it from LKGR for now, to avoid making it stale
- check_licenses are _not_ going to be run on CQ for consistency with trybots

BUG=28291
Review URL: http://codereview.chromium.org/8029001
------------------------------------------------------------------------
Project Member Comment 52 by bugdroid1@chromium.org, Sep 26 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=102757

------------------------------------------------------------------------
r102757 | phajdan.jr@chromium.org | Mon Sep 26 11:18:05 PDT 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=102757&r2=102756&pathrev=102757

Re-enable check_licenses.

It only runs on Linux clobber bot now.

BUG=28291

Review URL: http://codereview.chromium.org/8041028
------------------------------------------------------------------------
Blockedon: 98130 98131 98132 98133 98134 98136 98137
Comment 56 by a...@chromium.org, Sep 26 2011
Paweł, whoa. This is getting a little silly.

It's not efficient to have a dozen people each modify the upstream script for their particular license, especially if a particular license will clear more than one entry off the whitelist. Plus, you're talking about writing patches for someone else's codebase, which you obviously already know how to do.

If this were intricate work, then farming out bugs would be appropriate. I don't see why farming out bugs is appropriate here when you could much more efficiently handle it yourself.
Blockedon: 98301 98302 98304 98306 98309 98310 98313 98314 98316 98318 98319
Avi, thank you for commenting here. Not every case is the same, and the total number of files is too large for me to check. Many files simply lack license headers, and in that case the maintainer of given code area knows best what to do.

I can and will help with modifying licensecheck.pl if/when it's needed. Please don't worry about that part. The hardest thing is making sure that automatically recognizable license headers are in place.

By the way, it's not that hard either. First few fixes have been submitted today, and I appreciate that.
Blockedon: 98698
Blockedon: -open-vcdiff:31 98882
Project Member Comment 64 by bugdroid1@chromium.org, Nov 9 2011
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=109272

------------------------------------------------------------------------
r109272 | phajdan.jr@chromium.org | Wed Nov 09 10:42:12 PST 2011

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/third_party/devscripts/README.chromium?r1=109272&r2=109271&pathrev=109272
 D http://src.chromium.org/viewvc/chrome/trunk/src/third_party/devscripts/chromium-1.patch?r1=109272&r2=109271&pathrev=109272

Clean up third_party/devscripts

This CL removes the .patch file that is inconvenient to update.
There is an .orig file which doesn't need to be touched when modifying the script.

BUG=28291


Review URL: http://codereview.chromium.org/8511011
------------------------------------------------------------------------
Project Member Comment 66 by bugdroid1@chromium.org, Jan 23 2012
The following revision refers to this bug:
    http://src.chromium.org/viewvc/chrome?view=rev&revision=118724

------------------------------------------------------------------------
r118724 | phajdan.jr@chromium.org | Mon Jan 23 12:28:02 PST 2012

Changed paths:
 M http://src.chromium.org/viewvc/chrome/trunk/src/DEPS?r1=118724&r2=118723&pathrev=118724
 M http://src.chromium.org/viewvc/chrome/trunk/src/tools/checklicenses/checklicenses.py?r1=118724&r2=118723&pathrev=118724

Roll pyftpdlib DEPS to fix licensecheck issues.

See http://code.google.com/p/pyftpdlib/issues/detail?id=185

BUG=28291

Review URL: http://codereview.chromium.org/9279009
------------------------------------------------------------------------
Comment 67 by evan@chromium.org, Jun 11 2012
Blockedon: -29765 -31249 -31251 -55020 -55021 -55162 -55163 -55165 -55166 -55168 -57840 -57843 -57845 -98086 -98087 -98092 -98094 -98095 -98097 -98099 -98100 -98106 -98107 -98112 -98113 -98114 -98115 -98116 -98119 -98120 -98121 -98123 -98130 -98131 -98132 -98133 -98134 -98136 -98137 -98301 -98302 -98304 -98306 -98309 -98310 -98313 -98314 -98316 -98318 -98319 -98448 -98450 -98451 -98453 -98454 -98455 -98456 -98460 -98462 -98463 -98464 -98465 -98466 -98585 -98588 -98589 -98590 -98592 -98593 -98594 -98595 -98596 -98597 -98698 -98882 chromium:29765 chromium:31249 chromium:31251 chromium:55020 chromium:55021 chromium:55162 chromium:55163 chromium:55165 chromium:55166 chromium:55168 chromium:57840 chromium:57843 chromium:57845 chromium:98086 chromium:98087 chromium:98092 chromium:98094 chromium:98095 chromium:98097 chromium:98099 chromium:98100 chromium:98106 chromium:98107 chromium:98112 chromium:98113 chromium:98114 chromium:98115 chromium:98116 chromium:98119 chromium:98120 chromium:98121 chromium:98123 chromium:98130 chromium:98131 chromium:98132 chromium:98133 chromium:98134 chromium:98136 chromium:98137 chromium:98301 chromium:98302 chromium:98304 chromium:98306 chromium:98309 chromium:98310 chromium:98313 chromium:98314 chromium:98316 chromium:98318 chromium:98319 chromium:98448 chromium:98450 chromium:98451 chromium:98453 chromium:98454 chromium:98455 chromium:98456 chromium:98460 chromium:98462 chromium:98463 chromium:98464 chromium:98465 chromium:98466 chromium:98585 chromium:98588 chromium:98589 chromium:98590 chromium:98592 chromium:98593 chromium:98594 chromium:98595 chromium:98596 chromium:98597 chromium:98698 chromium:98882
Blocking: -28287 chromium:28287
Cc: -evan@chromium.org
(Un-ccing myself from bugs.)
Blocking: chromium:28287
Blockedon: -chromium:29765 -chromium:31249 -chromium:31251 -chromium:55020 -chromium:55021 -chromium:55162 -chromium:55163 -chromium:55165 -chromium:55166 -chromium:55168 -chromium:57840 -chromium:57843 -chromium:57845 -chromium:98086 -chromium:98087 -chromium:98092 -chromium:98094 -chromium:98095 -chromium:98097 -chromium:98099 -chromium:98100 -chromium:98106 -chromium:98107 -chromium:98112 -chromium:98113 -chromium:98114 -chromium:98115 -chromium:98116 -chromium:98119 -chromium:98120 -chromium:98121 -chromium:98123 -chromium:98130 -chromium:98131 -chromium:98132 -chromium:98133 -chromium:98134 -chromium:98136 -chromium:98137 -chromium:98301 -chromium:98302 -chromium:98304 -chromium:98306 -chromium:98309 -chromium:98310 -chromium:98313 -chromium:98314 -chromium:98316 -chromium:98318 -chromium:98319 -chromium:98448 -chromium:98450 -chromium:98451 -chromium:98453 -chromium:98454 -chromium:98455 -chromium:98456 -chromium:98460 -chromium:98462 -chromium:98463 -chromium:98464 -chromium:98465 -chromium:98466 -chromium:98585 -chromium:98588 -chromium:98589 -chromium:98590 -chromium:98592 -chromium:98593 -chromium:98594 -chromium:98595 -chromium:98596 -chromium:98597 -chromium:98698 -chromium:98882 -angleproject:217 -google-breakpad:270 -google-breakpad:358 -google-breakpad:450 -google-url:15 -googletest:241 -gyp:133 -ots:2 -pyftpdlib:185 angleproject:217 chromium:29765 chromium:31249 chromium:31251 chromium:55020 chromium:55021 chromium:55162 chromium:55163 chromium:55165 chromium:55166 chromium:55168 chromium:57840 chromium:57843 chromium:57845 chromium:98086 chromium:98087 chromium:98092 chromium:98094 chromium:98095 chromium:98097 chromium:98099 chromium:98100 chromium:98106 chromium:98107 chromium:98112 chromium:98113 chromium:98114 chromium:98115 chromium:98116 chromium:98119 chromium:98120 chromium:98121 chromium:98123 chromium:98130 chromium:98131 chromium:98132 chromium:98133 chromium:98134 chromium:98136 chromium:98137 chromium:98301 chromium:98302 chromium:98304 chromium:98306 chromium:98309 chromium:98310 chromium:98313 chromium:98314 chromium:98316 chromium:98318 chromium:98319 chromium:98448 chromium:98450 chromium:98451 chromium:98453 chromium:98454 chromium:98455 chromium:98456 chromium:98460 chromium:98462 chromium:98463 chromium:98464 chromium:98465 chromium:98466 chromium:98585 chromium:98588 chromium:98589 chromium:98590 chromium:98592 chromium:98593 chromium:98594 chromium:98595 chromium:98596 chromium:98597 chromium:98698 chromium:98882 google-breakpad:270 google-breakpad:358 google-breakpad:450 google-url:15 googletest:241 gyp:133 ots:2 pyftpdlib:185
Blockedon: chromium:156113
Comment 71 by jgm@google.com, Oct 17 2012
Why is this blocked on googletest:241? googletest:241 was fixed Dec 28, 2009. And the two files w/o copyright headers indicated in that bug both now have copyright comments. Please update the googletest bug or open a new one if there is still an issue.
Comment 72 by evan@chromium.org, Oct 17 2012
It's because the last change removed and readded all the blockedon list (I think to move the closed bugs to the bottom).  It's marked as fixed on there as well.  The bug tracker UI around blocking bugs isn't very satisfactory.
Blockedon: chromium:157206
Blockedon: chromium:157375
Cc: phajdan.jr@chromium.org
Labels: -Area-Misc -Mstone-X
Owner: ----
Status: Available
Removing it from my bug queue. This is a very long-term bug. I keep re-visiting it from time to time.
Blocking: chromium:177319
Blockedon: chromium:177319
Blocking: -chromium:177319
Comment 79 by rcui@chromium.org, Mar 22 2013
Blockedon: chromium:222828 chromium:222831
Blockedon: chromium:285352
Comment 81 by mark@chromium.org, Nov 6 2013
Blockedon: chromium:315397
Blockedon: chromium:332244
Blockedon: chromium:536305
Project Member Comment 84 by sheriffbot@chromium.org, Jun 24 2016
Labels: Hotlist-OpenBugWithCL
A change has landed for this issue, but it's been open for over 6 months. Please review and close it if applicable. If this issue should remain open, remove the "Hotlist-OpenBugWithCL" label. If no action is taken, it will be archived in 30 days.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Labels: -Hotlist-OpenBugWithCL
Removing Hotlist-OpenBugWithCL label as this bug has blocked on issue.
Comment 86 by capn@chromium.org, Aug 23 2016
Blockedon: swiftshader:1
Project Member Comment 87 by sheriffbot@chromium.org, Aug 24
Labels: Hotlist-Recharge-Cold
Status: Untriaged
This issue has been Available for over a year. If it's no longer important or seems unlikely to be fixed, please consider closing it out. If it is important, please re-triage the issue.

Sorry for the inconvenience if the bug really should have been left as Available. If you change it back, also remove the "Hotlist-Recharge-Cold" label.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
Blockedon: 795297
Sign in to add a comment