Commit graph

239 commits

Author SHA1 Message Date
jansson
80ff00cd2b Improve USB device reset logic
BUG=webrtc:7203
NOTRY=True

Review-Url: https://codereview.webrtc.org/2789533002
Cr-Commit-Position: refs/heads/master@{#17656}
2017-04-11 14:40:26 +00:00
mbonadei
38415b2d8e Reland of Adding PRESUBMIT check on google::protobuf (patchset #1 id:1 of https://codereview.webrtc.org/2791583002/ )
Reason for revert:
This should be landed after https://codereview.webrtc.org/2791963003.

Original issue's description:
> Revert of Adding PRESUBMIT check on google::protobuf (patchset #2 id:20001 of https://codereview.webrtc.org/2753823003/ )
>
> Reason for revert:
> We have to revert https://codereview.webrtc.org/2747863003 and this CL depends on it.
>
> Original issue's description:
> > Adding PRESUBMIT check on google::protobuf
> >
> > The goal is to avoid direct usage of google::protobuf.
> >
> > It should only be used with a 'using' directive in the header file:
> > //webrtc/base/protobuf_utils.h.
> >
> > BUG=webrtc:7340
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2753823003
> > Cr-Commit-Position: refs/heads/master@{#17467}
> > Committed: dd27055cb7
>
> TBR=kjellander@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7340
>
> Review-Url: https://codereview.webrtc.org/2791583002
> Cr-Commit-Position: refs/heads/master@{#17481}
> Committed: 515dff40b7

TBR=kjellander@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7340

Review-Url: https://codereview.webrtc.org/2792103002
Cr-Commit-Position: refs/heads/master@{#17588}
2017-04-07 12:38:01 +00:00
oprypin
abd101b91f Support multiple connected Android devices in low bandwidth audio test
Previously it was assumed that exactly one device is connected.
Now adb will get an argument with the device ID taken from the runner
script's stdout.

BUG=webrtc:7229
TBR=kjellander@webrtc.org
NOTRY=true

Review-Url: https://codereview.webrtc.org/2783343003
Cr-Commit-Position: refs/heads/master@{#17580}
2017-04-07 06:21:30 +00:00
kjellander
c88b5d56ad Reland of PyLint fixes for tools-webrtc and webrtc/tools (patchset #1 id:1 of https://codereview.webrtc.org/2737233003/ )
Reason for revert:
Fixing errors for reland. I have tested that this does not make Chromium video quality tests fail.

Original issue's description:
> Revert of PyLint fixes for tools-webrtc and webrtc/tools (patchset #3 id:40001 of https://codereview.webrtc.org/2736233003/ )
>
> Reason for revert:
> Fails video quality tests in Chrome:  http://build.chromium.org/p/chromium.webrtc.fyi/builders/Win10%20Tester/builds/6568
> I should have looked more closer at those :(
>
> Original issue's description:
> > PyLint fixes for tools-webrtc and webrtc/tools
> >
> > Fix a lot of errors before bringing in the new config in
> > https://codereview.webrtc.org/2737963003/
> >
> > BUG=webrtc:7303
> > NOTRY=True
> >
> > Review-Url: https://codereview.webrtc.org/2736233003
> > Cr-Commit-Position: refs/heads/master@{#17137}
> > Committed: f5318e1f39
>
> TBR=oprypin@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7303
>
> Review-Url: https://codereview.webrtc.org/2737233003
> Cr-Commit-Position: refs/heads/master@{#17142}
> Committed: 94f4d9effc

NOTRY=true
BUG=webrtc:7312

Review-Url: https://codereview.webrtc.org/2741733003
Cr-Commit-Position: refs/heads/master@{#17541}
2017-04-05 13:42:43 +00:00
ilnik
d60d06a9f9 Reland of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #1 id:1 of https://codereview.webrtc.org/2794033002/ )
Reason for revert:
Reland with temporary deprecated API to not break chromium and google3.

Original issue's description:
> Revert of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #8 id:140001 of https://codereview.webrtc.org/2780943003/ )
>
> Reason for revert:
> Suspect of breaking Chrome FYI bots.
>
> See
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/23065
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder
>
> Example logs:
> ../../content/renderer/media/gpu/rtc_video_encoder_unittest.cc:18:46: fatal error: third_party/webrtc/video_encoder.h: No such file or directory
>  #include "third_party/webrtc/video_encoder.h"
>                                               ^
>
> Original issue's description:
> > Move video_encoder.h and video_decoder.h to /api and create GN targets for them
> >
> > BUG=webrtc:5881
> > # Because PRESUBMIT ignores LINT blacklist for moved files and these
> > # headers have some not easy to resolve issues.
> > NOPRESUBMIT=True
> >
> > Review-Url: https://codereview.webrtc.org/2780943003
> > Cr-Commit-Position: refs/heads/master@{#17511}
> > Committed: c42f540570
>
> TBR=solenberg@webrtc.org,sprang@webrtc.org,ilnik@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5881
>
> Review-Url: https://codereview.webrtc.org/2794033002
> Cr-Commit-Position: refs/heads/master@{#17514}
> Committed: 716d7ac5c1

TBR=solenberg@webrtc.org,sprang@webrtc.org,guidou@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5881

Review-Url: https://codereview.webrtc.org/2795163002
Cr-Commit-Position: refs/heads/master@{#17537}
2017-04-05 10:02:20 +00:00
guidou
716d7ac5c1 Revert of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #8 id:140001 of https://codereview.webrtc.org/2780943003/ )
Reason for revert:
Suspect of breaking Chrome FYI bots.

See
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/23065
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder

Example logs:
../../content/renderer/media/gpu/rtc_video_encoder_unittest.cc:18:46: fatal error: third_party/webrtc/video_encoder.h: No such file or directory
 #include "third_party/webrtc/video_encoder.h"
                                              ^

Original issue's description:
> Move video_encoder.h and video_decoder.h to /api and create GN targets for them
>
> BUG=webrtc:5881
> # Because PRESUBMIT ignores LINT blacklist for moved files and these
> # headers have some not easy to resolve issues.
> NOPRESUBMIT=True
>
> Review-Url: https://codereview.webrtc.org/2780943003
> Cr-Commit-Position: refs/heads/master@{#17511}
> Committed: c42f540570

TBR=solenberg@webrtc.org,sprang@webrtc.org,ilnik@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5881

Review-Url: https://codereview.webrtc.org/2794033002
Cr-Commit-Position: refs/heads/master@{#17514}
2017-04-03 16:15:52 +00:00
ilnik
c42f540570 Move video_encoder.h and video_decoder.h to /api and create GN targets for them
BUG=webrtc:5881
# Because PRESUBMIT ignores LINT blacklist for moved files and these
# headers have some not easy to resolve issues.
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2780943003
Cr-Commit-Position: refs/heads/master@{#17511}
2017-04-03 15:37:32 +00:00
mbonadei
515dff40b7 Revert of Adding PRESUBMIT check on google::protobuf (patchset #2 id:20001 of https://codereview.webrtc.org/2753823003/ )
Reason for revert:
We have to revert https://codereview.webrtc.org/2747863003 and this CL depends on it.

Original issue's description:
> Adding PRESUBMIT check on google::protobuf
>
> The goal is to avoid direct usage of google::protobuf.
>
> It should only be used with a 'using' directive in the header file:
> //webrtc/base/protobuf_utils.h.
>
> BUG=webrtc:7340
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2753823003
> Cr-Commit-Position: refs/heads/master@{#17467}
> Committed: dd27055cb7

TBR=kjellander@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7340

Review-Url: https://codereview.webrtc.org/2791583002
Cr-Commit-Position: refs/heads/master@{#17481}
2017-03-31 09:36:28 +00:00
mbonadei
dd27055cb7 Adding PRESUBMIT check on google::protobuf
The goal is to avoid direct usage of google::protobuf.

It should only be used with a 'using' directive in the header file:
//webrtc/base/protobuf_utils.h.

BUG=webrtc:7340
NOTRY=True

Review-Url: https://codereview.webrtc.org/2753823003
Cr-Commit-Position: refs/heads/master@{#17467}
2017-03-30 08:30:14 +00:00
kjellander
a7066a35ba PRESUBMIT: Improve error message about checkdeps.
This will make it easier for new project members to know what's
causing the error.

BUG=None
NOTRY=True

Review-Url: https://codereview.webrtc.org/2770883004
Cr-Commit-Position: refs/heads/master@{#17358}
2017-03-23 10:47:05 +00:00
oprypin
2aa463f721 Use a blacklist instead of whitelist for cpplint
BUG=webrtc:5149
NOTRY=True

Review-Url: https://codereview.webrtc.org/2766633002
Cr-Commit-Position: refs/heads/master@{#17355}
2017-03-23 10:17:02 +00:00
oprypin
8e58d65ddf Make lint errors fatal in presubmit and fix files in whitelisted paths
BUG=webrtc:5149

Review-Url: https://codereview.webrtc.org/2762963002
Cr-Commit-Position: refs/heads/master@{#17323}
2017-03-21 14:52:41 +00:00
oprypin
67fdb80837 Reland of Enable cpplint and fix cpplint errors in webrtc/*audio (patchset #1 id:1 of https://codereview.webrtc.org/2739143002/ )
Reason for revert:
Can reland it if backwards compatible API is kept.

Original issue's description:
> Revert of Enable cpplint and fix cpplint errors in webrtc/*audio (patchset #4 id:180001 of https://codereview.webrtc.org/2683033004/ )
>
> Reason for revert:
> The API change in audio/utility/audio_frame_operations.h caused breakage. Need to keep backward-compatible API.
>
> Original issue's description:
> > Enable cpplint and fix cpplint errors in webrtc/*audio
> >
> > Change usage accordingly throughout the codebase
> >
> > BUG=webrtc:5268
> >
> > TESTED=Fixed issues reported by:
> > find webrtc/*audio -type f -name *.cc -o -name *.h | xargs cpplint.py
> >
> > Review-Url: https://codereview.webrtc.org/2683033004
> > Cr-Commit-Position: refs/heads/master@{#17133}
> > Committed: aebe55ca6c
>
> TBR=henrika@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5268
>
> Review-Url: https://codereview.webrtc.org/2739143002
> Cr-Commit-Position: refs/heads/master@{#17138}
> Committed: e47c1d3ca1

TBR=henrika@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
BUG=webrtc:5268

Review-Url: https://codereview.webrtc.org/2739073003
Cr-Commit-Position: refs/heads/master@{#17144}
2017-03-09 14:25:06 +00:00
kjellander
94f4d9effc Revert of PyLint fixes for tools-webrtc and webrtc/tools (patchset #3 id:40001 of https://codereview.webrtc.org/2736233003/ )
Reason for revert:
Fails video quality tests in Chrome:  http://build.chromium.org/p/chromium.webrtc.fyi/builders/Win10%20Tester/builds/6568
I should have looked more closer at those :(

Original issue's description:
> PyLint fixes for tools-webrtc and webrtc/tools
>
> Fix a lot of errors before bringing in the new config in
> https://codereview.webrtc.org/2737963003/
>
> BUG=webrtc:7303
> NOTRY=True
>
> Review-Url: https://codereview.webrtc.org/2736233003
> Cr-Commit-Position: refs/heads/master@{#17137}
> Committed: f5318e1f39

TBR=oprypin@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7303

Review-Url: https://codereview.webrtc.org/2737233003
Cr-Commit-Position: refs/heads/master@{#17142}
2017-03-09 14:09:33 +00:00
oprypin
e47c1d3ca1 Revert of Enable cpplint and fix cpplint errors in webrtc/*audio (patchset #4 id:180001 of https://codereview.webrtc.org/2683033004/ )
Reason for revert:
The API change in audio/utility/audio_frame_operations.h caused breakage. Need to keep backward-compatible API.

Original issue's description:
> Enable cpplint and fix cpplint errors in webrtc/*audio
>
> Change usage accordingly throughout the codebase
>
> BUG=webrtc:5268
>
> TESTED=Fixed issues reported by:
> find webrtc/*audio -type f -name *.cc -o -name *.h | xargs cpplint.py
>
> Review-Url: https://codereview.webrtc.org/2683033004
> Cr-Commit-Position: refs/heads/master@{#17133}
> Committed: aebe55ca6c

TBR=henrika@webrtc.org,henrik.lundin@webrtc.org,kwiberg@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5268

Review-Url: https://codereview.webrtc.org/2739143002
Cr-Commit-Position: refs/heads/master@{#17138}
2017-03-09 10:43:31 +00:00
kjellander
f5318e1f39 PyLint fixes for tools-webrtc and webrtc/tools
Fix a lot of errors before bringing in the new config in
https://codereview.webrtc.org/2737963003/

BUG=webrtc:7303
NOTRY=True

Review-Url: https://codereview.webrtc.org/2736233003
Cr-Commit-Position: refs/heads/master@{#17137}
2017-03-09 10:26:46 +00:00
oprypin
aebe55ca6c Enable cpplint and fix cpplint errors in webrtc/*audio
Change usage accordingly throughout the codebase

BUG=webrtc:5268

TESTED=Fixed issues reported by:
find webrtc/*audio -type f -name *.cc -o -name *.h | xargs cpplint.py

Review-Url: https://codereview.webrtc.org/2683033004
Cr-Commit-Position: refs/heads/master@{#17133}
2017-03-09 09:05:33 +00:00
kjellander
6aeef74b6e Remove uses of #pragma once and add PRESUBMIT check.
They violate the C++ coding style guide:
https://chromium.googlesource.com/chromium/src/+/master/styleguide/c++/c++.md#File-headers

BUG=webrtc:7191
NOTRY=True

Review-Url: https://codereview.webrtc.org/2707843002
Cr-Commit-Position: refs/heads/master@{#16712}
2017-02-20 09:13:18 +00:00
oprypin
375b9ac4cc Improve warning about deprecation in PRESUBMIT
BUG=None
NOTRY=True

Review-Url: https://codereview.webrtc.org/2691933003
Cr-Commit-Position: refs/heads/master@{#16575}
2017-02-13 12:13:23 +00:00
oprypin
803dc29bb6 Enable cpplint and fix cpplint errors in webrtc/api
Adding 'explicit' to these constructors has a low risk of causing
compatibility problems:
explicit RTCConfiguration(RTCConfigurationType type)
explicit IdBase(StatsType type)

BUG=webrtc:5267
TESTED=Fixed issues reported by:
find webrtc/api -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

Review-Url: https://codereview.webrtc.org/2663063003
Cr-Commit-Position: refs/heads/master@{#16392}
2017-02-01 09:55:59 +00:00
ehmaldonado
4fb97462a8 Add presubmit check to prevent package boundary violations.
BUG=webrtc:6954
NOTRY=True

Review-Url: https://codereview.webrtc.org/2629723004
Cr-Commit-Position: refs/heads/master@{#16357}
2017-01-30 13:27:22 +00:00
Henrik Kjellander
0779e8fa45 Add copy of src/ios/build/bots/scripts to unbreak iOS Simulator bots.
BUG=webrtc:6934
TBR=ehmaldonado@webrtc.org

Review-Url: https://codereview.webrtc.org/2595173003 .
Cr-Commit-Position: refs/heads/master@{#15756}
2016-12-22 11:01:17 +00:00
kjellander@webrtc.org
177567c518 DEPS: Sync Git subtree mirrors instead of symlinking into chromium/src
This changes the way we pull in dependencies WebRTC shares with
Chromium. The base, build, tools and third_party directories from
Chromium are now synced as Git subtree mirrors in the DEPS file.

All symlinks to directories that were previously created by the
setup_links.py are replaced with proper DEPS entries.

One downside with this solution is that we get a lot of directories
in tools/ and third_party/ that we currently don't use. Going forward
it might be possible to improve this but as long as the BUILD.gn files
are stored in the Chromium repo rather at each dependency's repo,
this will be very cumbersome.

The DEPS file will be kept auto-rolled by the script in
https://chromium.googlesource.com/external/webrtc/+/master/tools-webrtc/autoroller/roll_deps.py
which is periodically executed by a bot.

This change brings back the Google Play Services download for Android,
which displays a license confirmation dialog to the user at the first sync.
By running it as a proper hook instead of inside sync_chromium.py, the
problems with that the interactive prompt gets hidden/stuck should be
fixed (now the behavior is identical to Chromium).

Some measurements on the size savings for a clean, newly created checkout:
Linux: 15GB -> 6.4GB (-8.6GB)
Linux (with Android): 25 GB -> 16 GB (-9GB). 8.4GB of this is Android SDK+NDK.
Mac (with iOS): 14 GB -> 5.6GB (-8.4GB)

Note that for all of the above, 1GB is occupied by the resources/ dir.

BUG=webrtc:5006, webrtc:5578
NOTRY=True
R=agable@chromium.org, henrika@webrtc.org, iannucci@chromium.org

Review-Url: https://codereview.webrtc.org/1414343008 .
Cr-Commit-Position: refs/heads/master@{#15754}
2016-12-22 09:40:28 +00:00
Henrik Kjellander
b2d5577caf Move tools/mb -> tools-webrtc/mb
In addition to moving tools/mb -> tools-webrtc/mb, also
move webrtc/build/mb_config.pyl into tools-webrtc/mb
to match the default location better.
Remove Chromium-specific check for 'mb validate' that failed
due to doing this (we never cleaned that when we forked the code).

BUG=webrtc:5006
TBR=ehmaldonado@webrtc.org
NOTRY=True
TESTED=Manually ran:
tools-webrtc/mb/mb.py gen -m client.webrtc -b 'iOS64 Release' --config-file tools-webrtc/mb/mb_config.pyl  //out/Release-iphoneos
tools-webrtc/mb/mb.py gen -m client.webrtc -b 'Mac64 Release' --config-file tools-webrtc/mb/mb_config.pyl  //out/Release-mac

Review-Url: https://codereview.webrtc.org/2585743002 .
Cr-Commit-Position: refs/heads/master@{#15664}
2016-12-18 21:14:50 +00:00
kjellander
afd5494455 Move tools/valgrind-webrtc -> tools-webrtc/valgrind
The WebRTC valgrind wrapper scripts needs to be moved in order to
unlock us from depending on a Chromium checkout.

BUG=webrtc:5006
TBR=ehmaldonado@webrtc.org
NOTRY=True

Review-Url: https://codereview.webrtc.org/2578093002
Cr-Commit-Position: refs/heads/master@{#15662}
2016-12-17 20:21:39 +00:00
Henrik Kjellander
24db179bbf Move tools/autoroller to tools-webrtc/ + rename script
The script is now capable of rolling more than the chromium_revision
so the name should reflect that.

BUG=webrtc:5006
TBR=charujain@webrtc.org

Review-Url: https://codereview.webrtc.org/2581493003 .
Cr-Commit-Position: refs/heads/master@{#15624}
2016-12-15 09:20:22 +00:00
kjellander
e5dc62aeb8 PRESUBMIT: Add authorized-authors check + AUTHORS e-mails.
This check will throw a PRESUBMIT error if the author or
organization is not present in the AUTHORS file.

E-mail wildcard entries were also added to the organizations
in the AUTHORS file.

BUG=webrtc:6852
NOTRY=True

Review-Url: https://codereview.webrtc.org/2564613002
Cr-Commit-Position: refs/heads/master@{#15591}
2016-12-14 08:16:29 +00:00
ehmaldonado
64c4a7ecfc Refactor webrtc/modules/audio_processing for GN check
This moves some GN check configurations out of .gn to individual targets.
The now checked target is:
"//webrtc/modules/audio_processing/*",

BUG=webrtc:6828
NOTRY=True
R=kjellander@webrtc.org

Review-Url: https://codereview.webrtc.org/2558813003
Cr-Commit-Position: refs/heads/master@{#15475}
2016-12-08 12:10:09 +00:00
kjellander
7439f973f7 Split targets mixing .c and .cc sources.
The Bazel build format doesn't support having separate
lists of compilation flags for C and C++; it just has a single
copts list for cc_library:
https://bazel.build/versions/master/docs/be/c-cpp.html#cc_binary.copts

This makes it hard to convert our GN targets to Bazel when there are
compiler warnings that aren't supported for C (like -Woverloaded-virtual
being added in bugs.webrtc.org/6653).

The solution for this is to move all .c files to their own targets
and remove C++-only compiler flags during conversion.

New targets:
//webrtc/common_audio:common_audio_c
//webrtc/common_audio:common_audio_neon_c
//webrtc/modules/audio_coding:g711_c
//webrtc/modules/audio_coding:g722_c
//webrtc/modules/audio_coding:ilbc_c
//webrtc/modules/audio_coding:isac_c
//webrtc/modules/audio_coding:isac_fix_c
//webrtc/modules/audio_coding:isac_test_util
//webrtc/modules/audio_coding:pcm16b_c
//webrtc/modules/audio_coding:webrtc_opusj_c
//webrtc/modules/audio_device:mac_portaudio
//webrtc/modules/audio_procssing:audio_processing_c
//webrtc/modules/audio_procssing:audio_processing_neon_c

This CL also adds a PRESUBMIT.py check that will throw an error
if targets are mixing .c and .cc files, to preven this from regressing.

BUG=webrtc:6653
NOTRY=True

Review-Url: https://codereview.webrtc.org/2550563003
Cr-Commit-Position: refs/heads/master@{#15433}
2016-12-06 06:47:52 +00:00
Henrik Kjellander
b4af3d673a Remove all references to GYP
Remove all .gyp and .gypi files.
Remove entries from OWNERS files for *.isolate, *.gyp, *.gypi
Remove unused scripts in webrtc/build.

BUG=webrtc:6323
R=henrika@webrtc.org, phoglund@webrtc.org

Review URL: https://codereview.webrtc.org/2509703002 .

Cr-Commit-Position: refs/heads/master@{#15107}
2016-11-16 19:11:38 +00:00
kjellander
56827ef527 Remove GetPreferredTryMasters from PRESUBMIT.
git cl try will then trigger CQ dry run, achieving even better
result, because PRESUBMIT will be run as well.

TBR=tandrii@chromium.org
BUG=663320
NOTRY=True

Review-Url: https://codereview.webrtc.org/2489523003
Cr-Commit-Position: refs/heads/master@{#14976}
2016-11-08 13:55:49 +00:00
kjellander
d1e26a9bc1 PRESUBMIT: Make BUG= field mandatory.
Also show a descriptive error message if BUG= field is missing.

BUG=webrtc:6326
NOTRY=True
TESTED=Verified the presubmit error using this very same CL (but with BUG= left empty).

Review-Url: https://codereview.webrtc.org/2322843003
Cr-Commit-Position: refs/heads/master@{#14291}
2016-09-19 15:11:21 +00:00
maxmorin
ec62374ccd Reland of Add arraysize to rtc_base_approved. Remove dependency of audio_device on rtc_base. (patchset #1 id:1 of https://codereview.webrtc.org/2340253003/ )
Reason for revert:
Fix: let audio_device depend on rtc_base on IOS.

Original issue's description:
> Revert of Add arraysize to rtc_base_approved. Remove dependency of audio_device on rtc_base. (patchset #1 id:1 of https://codereview.webrtc.org/2346763002/ )
>
> Reason for revert:
> Breaks iOS
>
> Original issue's description:
> > Add arraysize to rtc_base_approved. Remove dependency of audio_device on rtc_base.
> >
> > BUG=webrtc:3806
> > NOTRY=True
> >
> > Committed: https://crrev.com/100c9d02669910bce06099b3cc1eaad60fd661dd
> > Cr-Commit-Position: refs/heads/master@{#14223}
>
> TBR=kjellander@webrtc.org,henrika@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:3806
>
> Committed: https://crrev.com/89fb9201b70616a1c33e277f38bf9367112536e8
> Cr-Commit-Position: refs/heads/master@{#14224}

TBR=kjellander@webrtc.org,henrika@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOTRY=true
BUG=webrtc:3806

Review-Url: https://codereview.webrtc.org/2340233003
Cr-Commit-Position: refs/heads/master@{#14233}
2016-09-15 12:11:59 +00:00
Kári Tristan Helgason
3fa35172cd Filter objc headers in cpplint presubmit check
The previous blacklist would filter out all headers under /webrtc/sdk
and all headers in objc dirs. This adds a filter for files that end in
objc, for example `video_capture_objc.h`.

BUG=
NOTRY=true
R=kjellander@webrtc.org

Review URL: https://codereview.webrtc.org/2317023002 .

Cr-Commit-Position: refs/heads/master@{#14153}
2016-09-09 08:55:14 +00:00
ehmaldonado
5b1ba0857b Update PRESUBMIT.py to handle GN.
- Check that no target references sources with paths above the GN file location.
- Chcek that no target depends on rtc_base.

BUG=webrtc:6294
NOTRY=True

Review-Url: https://codereview.webrtc.org/2304883002
Cr-Commit-Position: refs/heads/master@{#14046}
2016-09-02 12:51:18 +00:00
nisse
3d21e23df2 Delete talk directory, and references from build_ios_libs.sh.
BUG=webrtc:4256

Review-Url: https://codereview.webrtc.org/2296613002
Cr-Commit-Position: refs/heads/master@{#14040}
2016-09-02 10:07:13 +00:00
aleloi
df9e4d9fce Added new mixer folder to CPPLINT_DIRS. Fixed one small issue.
NOTRY=True

Review-Url: https://codereview.webrtc.org/2228503003
Cr-Commit-Position: refs/heads/master@{#13677}
2016-08-08 17:26:17 +00:00
hjon
65ae2d81ca Ignore iOS SDK during presubmit.
NOTRY=True

Review-Url: https://codereview.webrtc.org/1836663002
Cr-Commit-Position: refs/heads/master@{#13618}
2016-08-03 06:55:48 +00:00
aleloi
7ebbf90077 New rtc dump analyzing tool in Python
R=henrik.lundin@webrtc.org, ivoc@webrtc.org, kwiberg@webrtc.org, peah@webrtc.org, phoglund@webrtc.org

Review-Url: https://codereview.webrtc.org/1999113002
Cr-Commit-Position: refs/heads/master@{#13218}
2016-06-20 14:39:21 +00:00
kjellander@webrtc.org
74290b9d9c New rtc dump analyzing tool in Python
CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_gn_upload
R=henrik.lundin@webrtc.org, ivoc@webrtc.org, kwiberg@webrtc.org, peah@webrtc.org, phoglund@webrtc.org

Review URL: https://codereview.webrtc.org/1999113002 .

Cr-Commit-Position: refs/heads/master@{#13154}
2016-06-15 15:19:24 +00:00
kjellander
dd70547adb PRESUBMIT: Split NATIVE_API_DIRS into two lists.
This should make it more clear what's supported and what's
only checked due to legacy code. No longer uses the word deprecated
since it may be confusing.

BUG=webrtc:5095
NOTRY=True

Review-Url: https://codereview.webrtc.org/1513483006
Cr-Commit-Position: refs/heads/master@{#13094}
2016-06-09 18:17:36 +00:00
tkchin
3cd9a30f96 Allow 100 char lines for ObjC files.
NOTRY=True

BUG=

Review-Url: https://codereview.webrtc.org/2037173002
Cr-Commit-Position: refs/heads/master@{#13076}
2016-06-08 19:40:33 +00:00
kjellander
e5a87a5974 Disable whitespace/operators lint check.
It gives false positives when using the move operator
(confuses them with logical And operators).
See http://crbug.com/464813 for more details.

NOTRY=True

Review URL: https://codereview.webrtc.org/1917223003

Cr-Commit-Position: refs/heads/master@{#12525}
2016-04-27 09:32:20 +00:00
tkchin
9eeb6240c9 Build dynamic iOS SDK.
- Places most ObjC code into webrtc/sdk/objc instead.
- New gyp targets to build, strip and export symbols for dylib.
- Removes old script used to generate dylib.

BUG=

Review URL: https://codereview.webrtc.org/1903663002

Cr-Commit-Position: refs/heads/master@{#12524}
2016-04-27 08:54:27 +00:00
kwiberg
eb13302e39 Presubmit: Tweak the help text for making API changes
While a three-month deprecation period is appropriate for some API
changes, it's too much for others. Change the help text to reflect
this.

Review URL: https://codereview.webrtc.org/1865293002

Cr-Commit-Position: refs/heads/master@{#12280}
2016-04-07 14:41:51 +00:00
kjellander
d620f820c9 PRESUBMIT: Update PyLint blacklist
The PyLint was unnecessary slow due to some directories
that don't belong to our repo.

TESTED=Passing 'git cl presubmit' on Windows.
NOTRY=True

Review URL: https://codereview.webrtc.org/1858633002

Cr-Commit-Position: refs/heads/master@{#12217}
2016-04-04 13:07:12 +00:00
solenberg
e0897c043b Remove webrtc/sound/ subdir.
Now that DeviceManager and DeviceInfo are gone, this code is unused.

BUG=webrtc:5579

Review URL: https://codereview.webrtc.org/1715043002

Cr-Commit-Position: refs/heads/master@{#12040}
2016-03-17 18:23:05 +00:00
Stefan Holmer
80e12072cf Move congestion controller to a separate module.
This allows other projects to more easily depend on this.

The plan is to move remote_bitrate_estimator and bitrate_controller into this module and reduce the exposed interface to only a simplified version of congestion_controller.h.

No functional changes in this CL.

R=mflodman@webrtc.org, pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1718473002 .

Cr-Commit-Position: refs/heads/master@{#11718}
2016-02-23 12:30:51 +00:00
jbauch
c4e3ead352 Blacklist "build/c++11" cpplint filter.
This CL removes "build/c++11" from the cpplint filters. The same was
changed in "depot_tools" in https://codereview.chromium.org/1573663003/

From the other CL:
-----
The checks are not reliable for Rvalue references, and only are
allowing default/deleted constructors. They are based on the google3
internal rules which do not exactly match our own c++11 rules, and
may diverge more over time.
-----

NOTRY=True

Review URL: https://codereview.webrtc.org/1710293002

Cr-Commit-Position: refs/heads/master@{#11678}
2016-02-19 08:26:02 +00:00
kjellander@webrtc.org
9b8df25c73 Move talk/session/media -> webrtc/pc
The libjingle_p2p target is renamed to rtc_pc.
The libjingle_p2p_unittest test will be renamed in a
separate follow-up CL, to make it possible to run all
trybots successfully for this CL.

BUG=webrtc:5419
R=deadbeef@webrtc.org, pthatcher@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1691463002 .

Cr-Commit-Position: refs/heads/master@{#11592}
2016-02-12 05:48:10 +00:00
kjellander
569cf942c0 PRESUBMIT: Add check for JSON parse errors + fix JSON
The PRESUBMIT code is basically a stripped-down copy of the code in
Chromium's src/PRESUBMIT.py.

BUG=chromium:498746
TESTED=I verified with 'git cl presubmit' that the existing
error was found. Then I ran it again after fixing it, with
presubmit passing.
NOTRY=True

Review URL: https://codereview.webrtc.org/1682393002

Cr-Commit-Position: refs/heads/master@{#11572}
2016-02-11 13:03:05 +00:00
jbauch
d2a22960c3 Enable cpplint for webrtc/modules/pacing and fix all uncovered cpplint errors.
This CL enableds cpplint for webrtc/modules/pacing.

BUG=webrtc:5460
NOTRY=true

TESTED=Fixed issues reported by:
find webrtc/modules/pacing -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

Review URL: https://codereview.webrtc.org/1674423002

Cr-Commit-Position: refs/heads/master@{#11531}
2016-02-09 07:18:30 +00:00
kjellander
c61635c2db PRESUBMIT: Exclude supplement.gypi from _CheckNoSourcesAboveGyp check.
The webrtc/supplement.gypi contains a source listing of the
suppressions for TSan and LSan, which are located in source files.
It makes the presubmit fail when it's updated, which is confusing.

NOTRY=True
TESTED=Edited webrtc/supplement.gypi and ran "git cl presubmit" without an error.

Review URL: https://codereview.webrtc.org/1649423002

Cr-Commit-Position: refs/heads/master@{#11457}
2016-02-02 10:30:58 +00:00
jbauch
f91e6d0438 Enable cpplint for webrtc/modules/bitrate_controller and fix all uncovered cpplint errors.
This CL enableds cpplint for webrtc/modules/bitrate_controller.

BUG=webrtc:5311
NOTRY=true

TESTED=Fixed issues reported by:
find webrtc/modules/bitrate_controller -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

Review URL: https://codereview.webrtc.org/1620003003

Cr-Commit-Position: refs/heads/master@{#11363}
2016-01-25 07:05:26 +00:00
philipel
5908c71128 Lint fix for webrtc/modules/video_coding PART 3!
Trying to submit all changes at once proved impossible since there were
too many changes in too many files. The changes to PRESUBMIT.py
will be uploaded in the last CL.
(original CL: https://codereview.webrtc.org/1528503003/)

BUG=webrtc:5309
TBR=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1540243002

Cr-Commit-Position: refs/heads/master@{#11105}
2015-12-21 16:23:29 +00:00
danilchap
377b5e622f enabled cpplint for the webrtc/modules/rtp_rtcp directory
BUG=webrtc:5277
R=kjellander@webrtc.org
NOTRY=True

Review URL: https://codereview.webrtc.org/1528863002

Cr-Commit-Position: refs/heads/master@{#11027}
2015-12-15 12:33:51 +00:00
terelius
8f09f170e6 Simple CL to fix lint errors in webrtc/modules/remote_bitrate_estimator. Added the lint check for the folder to the presubmit script.
BUG=webrtc:5310

Review URL: https://codereview.webrtc.org/1520513003

Cr-Commit-Position: refs/heads/master@{#11021}
2015-12-15 08:52:03 +00:00
jbauch
0f2e939a92 Enable cpplint for more webrtc subfolders and fix all uncovered cpplint errors.
This CL enableds cpplint for webrtc/common_video, webrtc/sound and webrtc/tools.

BUG=webrtc:5273

TESTED=Fixed issues reported by:
find webrtc/common_video webrtc/sound webrtc/tools -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

Review URL: https://codereview.webrtc.org/1511603004

Cr-Commit-Position: refs/heads/master@{#10967}
2015-12-10 11:11:48 +00:00
jbauch
70625e5bf3 Enable cpplint for webrtc/examples and fix all uncovered cpplint errors.
BUG=webrtc:5273
TESTED=Fixed issues reported by:
find webrtc/examples/ -type f -name *.cc -o -name *.h | grep -v objc | xargs cpplint.py
followed by 'git cl presubmit'.

NOTRY=True

Review URL: https://codereview.webrtc.org/1504283004

Cr-Commit-Position: refs/heads/master@{#10960}
2015-12-09 22:18:20 +00:00
mflodman
d1590b2571 Lint clean video/ and add lint presubmit check.
BUG=webrtc:5316

Review URL: https://codereview.webrtc.org/1507643004

Cr-Commit-Position: refs/heads/master@{#10953}
2015-12-09 15:08:05 +00:00
Peter Boström
7623ce4aeb Reland of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:300001 of https://codereview.webrtc.org/1507903005/ )
Reason for revert:
Bot breakage caused by TickTime::UseFakeClock has been removed.

Original issue's description:
> Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
>
> Reason for revert:
> Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.
>
> Original issue's description:
> > Merge webrtc/video_engine/ into webrtc/video/
> >
> > BUG=webrtc:1695
> > R=mflodman@webrtc.org
> >
> > Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> > Cr-Commit-Position: refs/heads/master@{#10926}
>
> TBR=mflodman@webrtc.org,pbos@webrtc.org
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:1695
>
> Committed: https://crrev.com/8237abf563bf4782ee104408b53cc8e55ce44518
> Cr-Commit-Position: refs/heads/master@{#10937}

BUG=webrtc:1695
TBR=mflodman@webrtc.org,kjellander@webrtc.org
NOPRESUBMIT=true

Review URL: https://codereview.webrtc.org/1510183002 .

Cr-Commit-Position: refs/heads/master@{#10948}
2015-12-09 11:13:40 +00:00
haysc
edd8fefa9b Add new view that renders local video using AVCaptureLayerPreview.
BUG=

Review URL: https://codereview.webrtc.org/1497393002

Cr-Commit-Position: refs/heads/master@{#10940}
2015-12-08 19:08:44 +00:00
kjellander
8237abf563 Revert of Merge webrtc/video_engine/ into webrtc/video/ (patchset #2 id:20001 of https://codereview.webrtc.org/1506773002/ )
Reason for revert:
Breaks Dr Memory Light https://build.chromium.org/p/client.webrtc/builders/Win%20DrMemory%20Light/builds/4643 and all the Android Tests bots.

Original issue's description:
> Merge webrtc/video_engine/ into webrtc/video/
>
> BUG=webrtc:1695
> R=mflodman@webrtc.org
>
> Committed: https://crrev.com/03ef053202bc5d5ab43460eebf5403232f157646
> Cr-Commit-Position: refs/heads/master@{#10926}

TBR=mflodman@webrtc.org,pbos@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:1695

Review URL: https://codereview.webrtc.org/1507903005

Cr-Commit-Position: refs/heads/master@{#10937}
2015-12-08 15:12:11 +00:00
kjellander
ffea13c42c PRESUBMIT: change native API check from warning to information.
NOTRY=True

Review URL: https://codereview.webrtc.org/1507723002

Cr-Commit-Position: refs/heads/master@{#10931}
2015-12-08 09:57:24 +00:00
mflodman
88eeac4aa7 Adding video_processing to presubmit lint check
BUG=webrtc:5259
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1507213002 .

Cr-Commit-Position: refs/heads/master@{#10928}
2015-12-08 08:21:39 +00:00
Peter Boström
03ef053202 Merge webrtc/video_engine/ into webrtc/video/
BUG=webrtc:1695
R=mflodman@webrtc.org

Review URL: https://codereview.webrtc.org/1506773002 .

Cr-Commit-Position: refs/heads/master@{#10926}
2015-12-08 08:09:07 +00:00
kjellander
fd59523587 Add webrtc/base to deprecated APIs.
webrtc/base is used in several places downstream so we need
to be careful when updating it as well. Add it as deprecated
to disencourage new projects starting to depend on it.

BUG=webrtc:5095
NOTRY=True

Review URL: https://codereview.webrtc.org/1497733002

Cr-Commit-Position: refs/heads/master@{#10892}
2015-12-04 10:44:16 +00:00
kjellander
53047c9739 Add PRESUBMIT check for native API changes.
BUG=webrtc:5095
TESTED=Modified local header file, ensured only one directory matches it's path (since 'webrtc' is in the list).
Also tested that the _VerifyNativeApiHeadersListIsValid works by adding a path that doesn't exist to the list and verified it produces an error.
NOTRY=True

Review URL: https://codereview.webrtc.org/1408783008

Cr-Commit-Position: refs/heads/master@{#10878}
2015-12-03 07:56:22 +00:00
Fredrik Solenberg
ea07373a2e Enable cpplint for webrtc/audio and webrtc/call, and fix all uncovered cpplint errors.
BUG=webrtc:5268,webrtc:5273
TESTED=Fixed issues reported by:
find webrtc/audio -type f -name *.cc -o -name *.h | xargs cpplint.py
find webrtc/call -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

R=kjellander@webrtc.org, pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1483323002 .

Cr-Commit-Position: refs/heads/master@{#10853}
2015-12-01 10:26:46 +00:00
tkchin
42f580e490 Leaving all original files in talk/app/webrtc/objc until we can officially tell clients about the new locations.
Also changes presubmit script to not run cpplint on objc dirs.

BUG=

Review URL: https://codereview.webrtc.org/1467173006

Cr-Commit-Position: refs/heads/master@{#10815}
2015-11-27 07:18:28 +00:00
kjellander@webrtc.org
0fcaf99b71 Enable cpplint for webrtc/video_engine
Enable cpplint and have it use a whitelist that also checks
in subdirectories.

Move the cpplint check so it runs before the pylint check
since that one always run and increases the time to errors
for cpplint.

Fix all cpplint errors in webrtc/video_engine.

BUG=webrtc:5149
TESTED=Fixed issues reported by:
find webrtc/video_engine -type f -name *.cc -o -name *.h | xargs cpplint.py
followed by 'git cl presubmit'.

R=pbos@chromium.org, phoglund@chromium.org
TBR=pbos@webrtc.org, phoglund@webrtc.org

Review URL: https://codereview.webrtc.org/1481723003 .

Cr-Commit-Position: refs/heads/master@{#10808}
2015-11-26 14:25:02 +00:00
kjellander
8cc126f91b PRESUBMIT: Enable header guard checks for cpplint.
This check has always been disabled since the start in
https://webrtc-codereview.appspot.com/317011 since it didn't support
our style guide back then (wanted our source code to be prefixed
with SRC_ in the header guards). I belive this was later fixed in
https://chromiumcodereview.appspot.com/15864011. At least it can now
be enabled.

BUG=5149
NOTRY=True

Review URL: https://codereview.webrtc.org/1419203005

Cr-Commit-Position: refs/heads/master@{#10482}
2015-11-02 13:20:47 +00:00
Henrik Kjellander
d6d27e7340 Update isolate.gypi to support Swarming + move .isolate files
This updates the isolate.gypi copies we have to maintain in our
code repo to Chromium's revision 310ea93.
The changes about generating .isolated.gen.json files are needed
to support running with Swarming (https://www.chromium.org/developers/testing/isolated-testing)

Since isolated testing is now using a new launch script
in tools: isolate_driver.py, that's added to our links
script.

In order to use isolate_driver.py, the .isolate files must be in the
same directory as the test_name_run target is defined, which meant
I had to move around some of the isolate files and targets below
webrtc/modules.

BUG=497757
R=maruel@chromium.org
TBR=henrik.lundin@webrtc.org, mflodman@webrtc.org, niklas.enbom@webrtc.org
TESTED=Clobbered trybots:
git cl try -c --bot=linux_compile_rel --bot=mac_compile_rel --bot=win_compile_rel --bot=android_compile_rel --bot=ios_rel -m tryserver.webrtc

Review URL: https://codereview.webrtc.org/1373513002 .

Cr-Commit-Position: refs/heads/master@{#10081}
2015-09-25 20:19:21 +00:00
Henrik Kjellander
632246792f PRESUBMIT: Exclude some files from 80-character limit check.
Exclude the following files from 80-characters line limit check:
* DEPS
* GN files (.gn and .gni)
* GYP files (.gyp and .gypi)

BUG=webrtc:4794
TESTED=Ran the presubmit check with a modified DEPS and GYP file before this change and verified it failed. Re-ran after these changes and verified it passed. I also tested editing a .cc file to be >80 chars and verified the check found it.
R=andrew@webrtc.org, sergiyb@chromium.org

Review URL: https://codereview.webrtc.org/1323943012 .

Cr-Commit-Position: refs/heads/master@{#9877}
2015-09-08 06:04:08 +00:00
tandrii
04465d286e Revert of Fix PRESUBMIT.py after disabling CQ. (patchset #1 id:1 of https://codereview.webrtc.org/1192673003/)
Reason for revert:
CQ-Rietveld combination now supports webrtc custom domain.

Original issue's description:
> Fix PRESUBMIT.py after disabling CQ.
>
> The disabling of CQ in https://codereview.webrtc.org/1177243003/
> broke PRESUBMIT.py since it's trying to read cq.cfg.
>
> BUG=501332
> TBR=phoglund@webrtc.org
>
> Committed: 141725f50f

TBR=phoglund@webrtc.org,kjellander@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=501332

Review URL: https://codereview.webrtc.org/1190283003

Cr-Commit-Position: refs/heads/master@{#9476}
2015-06-20 11:00:52 +00:00
Henrik Kjellander
141725f50f Fix PRESUBMIT.py after disabling CQ.
The disabling of CQ in https://codereview.webrtc.org/1177243003/
broke PRESUBMIT.py since it's trying to read cq.cfg.

BUG=501332
TBR=phoglund@webrtc.org

Review URL: https://codereview.webrtc.org/1192673003.

Cr-Commit-Position: refs/heads/master@{#9462}
2015-06-18 13:05:40 +00:00
kjellander
986ee082b6 Move default trybots configuration to CQ config.
This is the same set of trybots that used to be configured in PRESUBMIT.py

BUG=470518
TBR=

Review URL: https://codereview.webrtc.org/1189583003

Cr-Commit-Position: refs/heads/master@{#9448}
2015-06-16 11:32:16 +00:00
Henrik Kjellander
14771ac6bf Fix Python lint and unit tests
One of the unit tests added in
https://webrtc-codereview.appspot.com/50079004/ is failing
on Windows since os.sep is a backslash on Windows.
The code is based on the contents of the DEPS file rather than
the filesystem, so the right thing is to use '/' instead of os.sep.

The PyLint blacklist also didn't work on Windows, causing it
to process a massive list of files during presubmit.

I also added a bunch of new entries to speed up lint execution on
all platforms.

TESTED=Ran the presubmit with this CL on Windows and Linux.
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/52029004

Cr-Commit-Position: refs/heads/master@{#9353}
2015-06-02 11:10:13 +00:00
Henrik Kjellander
8d3ad82d30 Script for auto-rolling chromium_revision in DEPS.
The previous script only looked up the LKGR and generated a
commit message. This CL renames the script and makes it update
the DEPS file, commit locally, upload CL and send tryjobs.

BUG=4688
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/50079004

Cr-Commit-Position: refs/heads/master@{#9284}
2015-05-26 17:52:10 +00:00
Henrik Kjellander
e982a70ae3 PRESUBMIT: Fix typo.
In https://webrtc-codereview.appspot.com/50069004/
the regex for Mac trybots became invalid. This fixes it.

TBR=phoglund@webrtc.org
TESTED=Ran 'git cl try --bot=mac_x64_gn'

Review URL: https://webrtc-codereview.appspot.com/53529004

Cr-Commit-Position: refs/heads/master@{#9278}
2015-05-25 14:34:00 +00:00
Henrik Kjellander
57e5fd2e60 PRESUBMIT: Improve PyLint check and add GN format check.
Add pylintrc file based on
https://code.google.com/p/chromium/codesearch#chromium/src/tools/perf/pylintrc
bit tightened up quite a bit (the one in depot_tools is far
more relaxed).

Remove a few excluded directories from pylint check and fixed/
suppressed all warnings generated.

Add GN format check + formatted all GN files using 'gn format'.
Cleanup redundant rules in tools/PRESUBMIT.py

TESTED=Ran 'git cl presubmit -vv', fixed the PyLint violations.
Ran it again with a modification in webrtc/build/webrtc.gni, formatted
all the GN files and ran it again.

R=henrika@webrtc.org, phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/50069004

Cr-Commit-Position: refs/heads/master@{#9274}
2015-05-25 10:55:50 +00:00
Henrik Kjellander
d43ba89d00 PRESUBMIT: Add new trybots for iOS Simulator
Trybots added in https://codereview.chromium.org/1096683002

BUG=chromium:478057
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/49049004

Cr-Commit-Position: refs/heads/master@{#9031}
2015-04-20 06:58:07 +00:00
Henrik Kjellander
36fc1bad38 Update renamed Android ARM64 trybot in PRESUBMIT.py.
TBR=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/44209004

Cr-Commit-Position: refs/heads/master@{#9006}
2015-04-15 13:37:38 +00:00
kjellander@webrtc.org
c98f6f368a PRESUBMIT: Exclude overrides paths from source above GYP check.
Since base.gyp contains a couple of those.

BUG=4185
TESTED=Ran git cl presubmit with a modified base.gyp without this patch - got errors about overrides. Ran another time with this patch applied - no errors.
TBR=pthatcher@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/44529004

Cr-Commit-Position: refs/heads/master@{#8586}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8586 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-04 07:08:44 +00:00
kjellander@webrtc.org
e723728992 Add p2p.gyp to rtc_base presubmit check exclusion.
It is one of the valid users of rtc_base. This change
should have been a part of https://webrtc-codereview.appspot.com/29319004

TESTED=Modified p2p.gyp locally and ran the presubmit without+with this
patch applied. Only the latter passed.

R=pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/43449004

Cr-Commit-Position: refs/heads/master@{#8511}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8511 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 11:12:47 +00:00
kjellander@webrtc.org
c0fc4dd87c Add 'mac_x64' trybot to default set.
This trybot was recently added since we've run into
some failures only happening for Mac 64 Debug.

TBR=pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/41969004

Cr-Commit-Position: refs/heads/master@{#8382}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8382 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-17 08:30:41 +00:00
kjellander@webrtc.org
a33f05e8d7 Re-land "Remove <(webrtc_root) from source file entries."
Changes differing from https://webrtc-codereview.appspot.com/37859004:
* I put the include_tests==1 stuff of audio_coding.gypi in its
  own audio_coding_tests.gypi file, including the Android and isolate
  targets which were incorrectly located in the previous CL
* I moved the bwe utilities in remote_bitrate_estimator.gypi
  into include_tests==1 since they depend on test.gyp after I
  cleaned up the duplicated inclusion of rtp_file_reader.cc

R=stefan@webrtc.org
TBR=tina.legrand@webrtc.org
TESTED=Passing gyp and compile using:
webrtc/build/gyp_webrtc -Dinclude_tests=1
webrtc/build/gyp_webrtc -Dinclude_tests=0
I also setup a Chromium checkout with my checkout mounted in
third_party/webrtc and ran build/gyp_chromium successfully.

BUG=4185

Review URL: https://webrtc-codereview.appspot.com/33159004

Cr-Commit-Position: refs/heads/master@{#8205}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8205 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 14:30:41 +00:00
kjellander@webrtc.org
1ece0cbbec Revert "Remove <(webrtc_root) from source file entries."
And the follow-up fix in r8198 that was not sufficient.
Reason: breaks Chromium bots runhooks (GYP).

I will have to try some more to make sure I don't
include test code, since include_tests==0 in Chromium.

TBR=andrew@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37039004

Cr-Commit-Position: refs/heads/master@{#8200}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8200 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 12:02:42 +00:00
kjellander@webrtc.org
2d2a1f9f05 Remove <(webrtc_root) from source file entries.
This required to move the AGC tools source files
into webrtc/tools and create a new agc_test_utils target.

Since audio_codec_speed_tests.gypi referenced sources above,
the best approach I could come up with was to add an audio_coding.gypi
file at a higher level and move the targets in there (+ the includes from
modules.gyp which is an improvement IMO).

I also added a PRESUBMIT.py check to prevent new source
entries being added with <(webrtc_root) in the path.

BUG=4185
R=andrew@webrtc.org, tina.legrand@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/37859004

Cr-Commit-Position: refs/heads/master@{#8197}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8197 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-29 10:24:44 +00:00
kjellander@webrtc.org
f68ffca050 Add PRESUBMIT check for GYP files including source files above itself.
This is needed because some tools does not support files
located above the project generated.

BUG=4185
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34069004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8166 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-27 13:13:24 +00:00
kjellander@webrtc.org
995b4c9e8a Remove win_asan trybot from PRESUBMIT.py
Removing it since it no longer exists.
See https://codereview.chromium.org/872263002/

TBR=phoglund@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/36979004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8146 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-25 19:27:03 +00:00
kjellander@webrtc.org
1592df78ef PRESUBMIT: Add GN trybots for Windows and Mac.
Add to the default set since they're now green.

BUG=4105
R=pbos@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/34689004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8029 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 15:38:29 +00:00
kjellander@webrtc.org
aefe61ae2a PRESUBMIT: Add check for checkdeps.
Several times I've run into the problem with
presubmit crashing when uploading a CL from a checkout
where gclient sync hasn't run yet.
This will print a user friendly error message instead.

BUG=
R=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/32699004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7824 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-08 13:00:30 +00:00
kjellander@webrtc.org
d91d359feb PRESUBMIT: Add iOS ARM64 trybots to default set.
BUG=chromium:436831
TBR=phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/25319004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7822 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-08 07:05:38 +00:00
kjellander@webrtc.org
3398a4ac15 PRESUBMIT: Only notify GN changes for GYP files in webrtc/*
We don't maintain a BUILD.gn file for talk/ since it's a part
of Chromium:
https://code.google.com/p/chromium/codesearch#chromium/src/third_party/libjingle/BUILD.gn
Because of this, it's confusing to get warnings about updating
a GYP file in talk/ from the PRESUBMIT check.

TESTED=Successsfully ran git cl presubmit with this change
applied on top of a CL containing changes in .gyp files.

R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/27189004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7737 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-24 10:05:37 +00:00
henrike@webrtc.org
28af64105b Presubmit was not whitelisting libjingle_tests.gyp or sound.gyp due to a missing comma leading to a concatenation of the two strings in the whitelist.
R=kjellander@webrtc.org
TBR=niklas.enbom@webrtc.org
BUG=N/A

Review URL: https://webrtc-codereview.appspot.com/25999004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7614 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 15:11:46 +00:00
kjellander@webrtc.org
3b839d008f PRESUBMIT: Add linux_msan to default trybots.
Will commit as soon it's online.

BUG=
R=pbos@webrtc.org
TBR=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/26939004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7523 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-24 21:41:24 +00:00
henrike@webrtc.org
36b0c1afae Adds PRESUBMIT.py dispensation for depending on rtc_base.
Dispensation for: a few test suites, desktop capture and libjingle.

BUG=N/A
R=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31549004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7356 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-01 14:40:58 +00:00
henrike@webrtc.org
83fe69da95 Added presubmit protecting against inclusion of rtc_base, while allowing rtc_base_approved.
BUG=N/A
R=andrew@webrtc.org, kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/29609004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7349 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 21:54:26 +00:00
kjellander@webrtc.org
8cad9432d5 Revert 7327 "Update isolate.gypi files + link to isolate_driver.py"
Breaks debug compilation (didn't run all trybots when testing this).

> Update isolate.gypi files + link to isolate_driver.py
> 
> This updates the isolate.gypi copies we're forced to
> maintain in our code repo to Chromium revision c264a05.
> 
> Since isolated testing is now using a new launch script
> in tools: isolate_driver.py, that is added to our links
> script.
> 
> BUG=395700
> TESTED=Ran one of our tests with:
> ninja -C out/Release tools_unittests_run
> tools/isolate_driver.py run --isolated out/Release/tools_unittests.isolated --isolate webrtc/tools/tools_unittests.isolate
> 
> R=henrika@webrtc.org, jam@chromium.org
> 
> Review URL: https://webrtc-codereview.appspot.com/26649004

TBR=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/31509004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7328 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 08:44:00 +00:00
kjellander@webrtc.org
02cd3067d2 Update isolate.gypi files + link to isolate_driver.py
This updates the isolate.gypi copies we're forced to
maintain in our code repo to Chromium revision c264a05.

Since isolated testing is now using a new launch script
in tools: isolate_driver.py, that is added to our links
script.

BUG=395700
TESTED=Ran one of our tests with:
ninja -C out/Release tools_unittests_run
tools/isolate_driver.py run --isolated out/Release/tools_unittests.isolated --isolate webrtc/tools/tools_unittests.isolate

R=henrika@webrtc.org, jam@chromium.org

Review URL: https://webrtc-codereview.appspot.com/26649004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7327 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 08:34:57 +00:00
kjellander@webrtc.org
eb43264f26 Remove linux_memcheck from default trybots.
Now that we have enabled leak detection (LeakSanitizer) for our
Linux ASan bots, there's no point always running the linux_memcheck trybot
since it's very slow and almost always gets a long queue of builds.

BUG=
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/28479004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7203 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 06:46:38 +00:00
kjellander@webrtc.org
94da2034b0 Remove retired android_apk[_rel] trybots from PRESUBMIT.py
BUG=webrtc:3741
TBR=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/14289004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7024 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-02 13:05:58 +00:00
kjellander@webrtc.org
3bd4156d75 Android APK tests built from a normal WebRTC checkout.
Restructure how the Android APK tests are compiled now
that we have a Chromium checkout available (since r6938).

This removes the need of several hacks that were needed when
building these targets from inside a Chromium checkout.
By creating a symlink to Chromium's base we can compile the required
targets. This also removes the need of the previously precompiled
binaries we keep in /deps/tools/android at Google code.

All the user needs to do is to add the target_os = ["android"]
entry to his .gclient as described at
https://code.google.com/p/chromium/wiki/AndroidBuildInstructions

Before committing this CL, the Android APK buildbots will need
to be updated.
This also solves http://crbug.com/402594 since the apply_svn_patch.py
usage will be similar to the other standalone bots.
It also solves http://crbug.com/399297

BUG=chromium:399297, chromium:402594
TESTED=Locally compiled all APK targets by running:
GYP_DEFINES="OS=android include_tests=1 enable_tracing=1" gclient runhooks
ninja -C out/Release

checkdeps

R=henrike@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/22149004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7014 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-01 11:06:37 +00:00
kjellander@webrtc.org
8925662318 Make WebRTC work with Chromium Git checkouts
WebRTC standalone shares a lot of dependencies and build
tools with Chromium. To make the build work, many of the
paths of a Chromium checkout is now emulated by creating
symlinks to files and directories.

All DEPS entries that previously used Var("chromium_trunk")
to reference a Chromium checkout or From("chromium_deps"..)
to reference the Chromium DEPS file are now removed and
replaced by symlink entries in setup_links.py.

The script also handles cleanup of the legacy
Subversion-based dependencies that's needed for the
transition.

Windows: One Windows-specific important change is that
gclient sync|runhooks must now be run from a shell
with Administrator privileges in order to be able to create
symlinks. This also means that Windows XP is no longer
supported.

To transition a previously created checkout:
Run "python setup_links.py --force" to cleanup the old
SVN-based dependencies that have been synced by gclient sync.
For Buildbots, the --force flag is automatically enabled for
their syncs.

BUG=2863, chromium:339647
TEST=Manual testing on Linux, Mac and Windows.
R=andrew@webrtc.org, iannucci@chromium.org, phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/18379005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6938 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-20 12:10:11 +00:00
kjellander@webrtc.org
e415864a32 GN: Add PRESUBMIT.py check for GN changes + default bots.
Add the GN trybots to the default set and also set them
to be the only bots to run if a CL contains only BUILD.gn
changes.

Update Python exclusions in general and fix a few of the lint
warnings.
The ones in python_charts needs to be disabled since those variables
are actually used when passed via vars() to the template.

BUG=None
TEST=git cl presubmit with the following cases:
A CL with two .gyp changes.
A CL with no changes in .gyp* files.

R=niklas.enbom@webrtc.org, phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/18719004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6834 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-06 09:11:18 +00:00
kjellander@webrtc.org
9359edaf78 PRESUBMIT: Add Android ARM64 and remove Linux TSan
Update the default trybots due to recent changes in the
trybots available.

TBR=tommi@webrtc.org
BUG=chromium:354539

Review URL: https://webrtc-codereview.appspot.com/21619004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6364 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-08 17:55:51 +00:00
wu@webrtc.org
10f871f29b Remove the restriction to allow having both webrtc and talk changes in the same cl.
This restriction is no longer needed as the auto sync script can handle changes to both folder in same commit correctly.

BUG=
R=andrew@webrtc.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/15479006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6225 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-22 22:35:46 +00:00
kjellander@webrtc.org
a956ec2019 Add win_drmemory_light trybot to default trybot list.
BUG=chromium:360054
TEST=None
R=henrika@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/11879004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5894 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-14 08:38:27 +00:00
kjellander@webrtc.org
c7b8b2f2a7 PRESUBMIT.py: use new way to specify default try builders
In https://codereview.chromium.org/178223016 and
https://codereview.chromium.org/197963003 the way the
PRESUBMIT.py specifies the default try builders for a
try job have changed.

When submitting a try job now, the test filter argument no
longer works unless --bot is also specified.
This CL attempts to resolve this by moving away from the
deprecated approach onto using the new format instead.

This CL also includes two new trybots: win_asan and linux_tsan2
(added in https://codereview.chromium.org/220453004).

BUG=3148
TEST=Successfully fired off a -t compile job where the
test filter worked.

R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/11119004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5839 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-03 20:19:36 +00:00
fischman@webrtc.org
10adbeff78 Exclude /out* instead of just /out from pylint checks.
This matches .gitignore's pattern, and avoids tons of presubmit errors when
building to multiple out directories (e.g. using
GYP_GENERATOR_FLAGS=output_dir=out_android)
R=andrew@webrtc.org, phoglund@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/9249005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5628 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-01 02:09:36 +00:00
henrike@webrtc.org
056176b962 Presubmit script that prohibits cls to both trunk/webrtc and trunk/talk.
BUG=N/A
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/7999006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5582 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-19 23:18:19 +00:00
kjellander@webrtc.org
12cb88cab9 Add check to verify tree is open to PRESUBMIT.py.
This will disallow commits when our tree is closed.

BUG=chromium:342743
TEST=ran git cl presubmit with an open tree (no error). Then I closed the tree at http://webrtc-status.appspot.com and ran it again, got this message:
Tree state is: closed

***************
Tree is temporarily closed (testing presubmit hook real quick)
http://webrtc-status.appspot.com/current?format=json
***************

R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/8609004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5542 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-13 11:53:43 +00:00
kjellander@webrtc.org
2a260d9fab Enable Android APK trybots by default.
As the new bots building the WebRTC native tests for Android as APKs
and executing them on a device has now proven to be reasonably stable,
it is time to enable them by default for tryjobs.

TEST=several green builds sent from a WebRTC checkout.
BUG=chromium:312827
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/7529004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5440 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-27 16:08:43 +00:00
kjellander@webrtc.org
570bc3d792 Make new baremetal trybots receive tryjobs by default.
I've done several green builds with these machines, but I suspect
some of the flakiness we still see in the build waterfall may
occur on these ones. Hopefully at least the ones for vie_auto_test
will be ironed out in Q1 as the old Video Engine API becomes deprecated.

TEST=none
BUG=chromium:332726
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/7459004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5414 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-22 19:00:01 +00:00
kjellander@webrtc.org
cf2b3acc48 Update Android trybots in the default try job list.
This updates the default set of trybots that are used
when no bot names are specified when submitting a try job.

TBR=andrew@webrtc.org
TEST=Ran git try -t compile and verified it was sent to all bots.
BUG=none

Review URL: https://webrtc-codereview.appspot.com/6289004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5329 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-20 21:20:42 +00:00
kjellander@webrtc.org
f9bdbe3619 Roll chromium_revision 232627:238260
This brings us the updated swarming_client
that has moved out from Chromium into a standalone
project.
Because of this, all .isolate files needed to be
updated as well, similar to the changes in
https://codereview.chromium.org/29993003

TEST=trybots passing
BUG=none
R=andrew@webrtc.org, perkj@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/4859004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5260 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 13:37:12 +00:00
kjellander@webrtc.org
8575980e16 Add default trybots for WebRTC try server.
Today, our tryjobs default to run on all trybots since
we don't have any default list configured in PRESUBMIT.py.
Because of this, the --testfilter argument doesn't work
unless you also specify --bot when sending the tryjob.

With this CL, it is possible to use --testfilter without
--bot.
It also gets the benefit of excluding unnecessary bots
when doing platform-specific changes.

Most of the code is copied from Chromium's src/PRESUBMIT.py:
https://code.google.com/p/chromium/codesearch#chromium/src/PRESUBMIT.py&l=1030

TEST=tested submitting a tryjob with git try -t compile.
BUG=none
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2619004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5016 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-22 16:47:40 +00:00
kjellander@webrtc.org
3365422c41 Isolate GYP target and .isolate files for tests
This is a re-land attempt of http://review.webrtc.org/1673004/
It now includes a build/isolate.gypi in WebRTC that includes the same
file as the one that would be included when WebRTC is used in a Chromium
checkout. It is needed since it is not possible to use variables in GYP's
includes sections.

Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/googletest/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_tests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_tests
* video_capture_tests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_tests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above. WebRTC trybots passing. Created a Chromium checkout with third_party/webrtc ToT and this patch applied, passing the runhooks step.
BUG=1916
R=henrike@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2056004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4590 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 07:57:00 +00:00
kjellander@webrtc.org
4298f73031 Revert 4547 "Isolate GYP target and .isolate files for tests"
As this breaks the FYI bots in 
http://build.chromium.org/p/chromium.webrtc.fyi/waterfall
due to different path to isolate.gypi (which cannot easily
be resolved due to limitations in GYP)

> Isolate GYP target and .isolate files for tests
> 
> Implemented according to the instructions at
> http://www.chromium.org/developers/testing/isolated-testing
> 
> Workflow has been like this:
> 1. create _run GYP target
> 2. create a stripped down .isolate file
> 3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
> 4. runhooks
> 5. compile
> 6. test if the test would run (i.e. find it's dependencies) without
>    actually executing it:
>    tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
> 7. If failing, run the fix_test_cases.py script like this:
>    tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated
> 
> All tests that run on the bots for WebRTC has got _run target
> and .isolate file created.
> 
> "Normal tests" that run fine on any machine:
> * audio_decoder_unittests
> * common_audio_unittests
> * common_video_unittests
> * metrics_unittests
> * modules_integrationtests
> * modules_unittests
> * neteq_unittests
> * system_wrappers_unittests
> * test_support_unittests
> * tools_unittests
> * video_engine_core_unittests
> * voice_engine_unittests
> 
> Tests that requires bare-metal and audio/video devices:
> * audio_device_integrationtests
> * video_capture_integrationtests
> 
> I also added the isolate boilerplate code for the following
> tests that are not yet pure gtest binaries (which means they
> cannot run isolated yet):
> * video_render_integrationtests
> * vie_auto_test
> * voe_auto_test
> 
> TEST=running isolate.py as described above.
> BUG=1916
> R=tommi@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1673004

TBR=kjellander@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/2040004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4548 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 11:29:58 +00:00
kjellander@webrtc.org
d7a4d235d2 Isolate GYP target and .isolate files for tests
Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_integrationtests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_integrationtests
* video_capture_integrationtests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_integrationtests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above.
BUG=1916
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1673004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4547 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 10:02:06 +00:00
fischman@webrtc.org
33584f942c Introduce a bit of sanity to talk/PRESUBMIT.py's license checking.
The comma this allows is a very common variant of the license header (3:1
preferred over the no-comma variant in talk/).

Also pacify pylint a bit, and correct a flagrantly incorrect header I happened
to come across.

BUG=2098,2133
R=henrike@webrtc.org, niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1866004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4396 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-25 16:43:30 +00:00
henrike@webrtc.org
390fcb7a20 Modified the presubmit checks such that difference license templates are checked for in webrtc and talk folder.
BUG=2091
R=andrew@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1833004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4381 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-22 22:32:50 +00:00
phoglund@webrtc.org
6d07ad9ccc Added protoc_wrapper to blacklist, fixed tools/PRESUBMIT.py which was passing in the wrong args to CheckLongLines.
BUG=
R=kjellander@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1470005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4021 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-05-14 09:42:39 +00:00
pbos@webrtc.org
f2e7bc6b6a Added maxlen=80 to CheckLongLines() call in PRESUBMIT.py
BUG=

Review URL: https://webrtc-codereview.appspot.com/1285006

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3779 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-04-08 15:46:07 +00:00
phoglund@webrtc.org
5d37139374 Fixed a ton of Python lint errors, enabled python lint checking.
BUG=

Review URL: https://webrtc-codereview.appspot.com/1166004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3627 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-07 09:59:43 +00:00
phoglund@webrtc.org
527fb4d607 Revert "Will now run pylint on all python files if there's at least one modified python file in the checkin."
This reverts commit 6bd8730dfad6e7c5a5cf9a089605fcb9f83a13e0.

TBR=ajm@webrtc.org
BUG=

Review URL: https://webrtc-codereview.appspot.com/1150004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3585 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-03-01 14:08:28 +00:00
phoglund@webrtc.org
ba23d11564 Will now run pylint on all python files if there's at least one modified python file in the checkin.
BUG=

Review URL: https://webrtc-codereview.appspot.com/1101011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3531 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-02-19 12:27:57 +00:00
phoglund@webrtc.org
899699e6f3 Enabled full lint checking for ALL WebRTC changes.
According to decision at the 14/1 -13 test sync meeting.

TESTED=Made local modification; noted the brutal amount of presubmit lint warnings.
BUG=

Review URL: https://webrtc-codereview.appspot.com/1063004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3394 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-01-21 15:57:34 +00:00
kjellander@webrtc.org
f98ffc6db3 Removing default trybot names
This is removing the default try bot names added in r3031. It doesn't seem like we need to avoid sending all jobs to these bots, even if they're much slower.

BUG=none
TEST=none

Review URL: https://webrtc-codereview.appspot.com/978004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3258 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-12-11 10:00:41 +00:00
kjellander@webrtc.org
f3ffcceaf8 Adding default trybot names to PRESUBMIT.py.
With this change, only the listed trybots will be the ones that a tryjob
is sent to. This works because there's a check in depot_tools/presubmit_support.py that looks for a function defined with the name 'GetPreferredTrySlaves'.

This makes it possible for us to add new trybots that will not receive jobs by default (only when the --bot flag is specified).

This CL is needed before we add the following try bots:
linux_memcheck
linux_tsan
linux_asan

BUG=none
TEST=submitting jobs to a local try server, with and without the --bot
flag.

Review URL: https://webrtc-codereview.appspot.com/939008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3031 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-10-31 14:52:21 +00:00
kjellander@webrtc.org
6307dbf468 Updates the PRESUBMIT.py to allow years from 2011 to the current year.
Since Chromium has moved to this policy, we should too.
Code is copied from /depot_tools/presubmit_canned_checks.py but modified for our purpose.

BUG=
TEST=Tested git cl presubmit with a modified .cc file with the 2011 header and one with the 2012.

Review URL: https://webrtc-codereview.appspot.com/770005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2691 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-08-31 07:07:11 +00:00
mflodman@webrtc.org
2a45209a6d Adde video_engine to cpplint check.
BUG=627
TEST=Manual test with style violations in src/video_engine and in other folders.

Review URL: https://webrtc-codereview.appspot.com/399014

git-svn-id: http://webrtc.googlecode.com/svn/trunk@2474 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-07-01 05:55:23 +00:00
kjellander@webrtc.org
51198f1c68 More PRESUBMIT checks.
Checks for:
- No iostream includes in headers
- No use of FRIEND_TEST for gtest
- Verifies that all C/C++ code passes cpplint.py check.
- Verifies that BUG= is present in commit message
- Verifies that TEST= is present in commit message

For more details, see Chrome's PRESUBMIT.py at
http://src.chromium.org/viewvc/chrome/trunk/src/PRESUBMIT.py?revision=113979&view=markup
and the canned checks at
http://src.chromium.org/viewvc/chrome/trunk/tools/depot_tools/presubmit_canned_checks.py?view=markup

BUG=
TEST=

Review URL: https://webrtc-codereview.appspot.com/317011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1737 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-02-21 17:53:46 +00:00
andrew@webrtc.org
53df136240 Add upload and commit checks to a common function.
Add HasDescription and HasNoStrayWhitespace checks.

BUG=none
TEST=uploaded a dummy CL with violations.

Review URL: https://webrtc-codereview.appspot.com/372004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1556 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-26 21:24:23 +00:00
andrew@webrtc.org
2442de1351 Clean up PRESUBMIT.py, and enable license check.
Fix the license header based on the example in:
http://src.chromium.org/viewvc/chrome/trunk/tools/depot_tools/presubmit_canned_checks.py?revision=107590&view=markup

BUG=None
TEST=Run presubmit checks on a dummy CL with Python and C code.

Review URL: https://webrtc-codereview.appspot.com/369002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1511 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-23 17:45:41 +00:00
mflodman@webrtc.org
9dddfaefdc Change copyright year.
Review URL: https://webrtc-codereview.appspot.com/353009

git-svn-id: http://webrtc.googlecode.com/svn/trunk@1492 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-01-20 08:17:28 +00:00
niklase@google.com
1198db9dd6 Adding owners check in presubmit script.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@62 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-09 07:07:24 +00:00
niklase@google.com
da159d6be6 git-svn-id: http://webrtc.googlecode.com/svn/trunk@11 4adac7df-926f-26a2-2b94-8c16560cd09d 2011-05-30 11:51:34 +00:00