Commit Graph

52 Commits (c2c78f7f025328d6cc73f93e87b04328f7a2b6dc)

Author SHA1 Message Date
maruel@chromium.org 5f3eee3bab gclient: remove wildcard import from git_scm
Part of a larger refactoring to abstract SCM-specific bits.

presubmit_support, revert, gcl: modify to import gclient_scm and gclient_utils

Part of a larger refactoring to abstract SCM-specific bits.

revert, gcl: modify to import gclient_scm and gclient_utils

Part of a larger refactoring to abstract SCM-specific bits.

gclient: pull out SCM bits

Pulled out SCMWrapper into gcliet_scm.py as part of a larger refactoring to
abstract SCM-specific bits. Plan is to evenutally add git support.

Pulling out SCMWrapper also required pulling out utility functions into
a gclient_utility.py.

Patch contributed by msb@

TEST=none
BUG=none


git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@26423 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
chase@chromium.org 0e433add67 Add 'time' to list of actual members.
This fixes the presubmit unit test.

BUG=none
TEST=presubmit tests pass
Review URL: http://codereview.chromium.org/173245

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@24059 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
thestig@chromium.org da8cddddfe Add a presubmit check for accidental checkins of files under a SVN modified directory.
Review URL: http://codereview.chromium.org/155489

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@23271 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org e49187c280 Fix CheckSvnProperty canned check.
It was totally broken until I actually tried it. Fix the test accordingly.

TEST=unit test
BUG=none
Review URL: http://codereview.chromium.org/149096

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@19433 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org ce8e46b3b2 Ask for feedback one time out of 5, only when there is presubmit check notification.
TEST=unit test
BUG=none
Review URL: http://codereview.chromium.org/147162

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@19429 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org c0b2297c8a Change RunPythonUnitTests() to run the unit tests in a separate process.
The unit tests could modify global state in hard-to-revert ways and would make the PRESUBMIT.py check flaky.
Having the test running out of process alleviate any potential issue at the cost of speed (more noticeable on Windows).

TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/147035

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@19248 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 46e832a00b Add svn:mime-type canned checks.
TEST=new unit tests
BUG=none

Review URL: http://codereview.chromium.org/131056

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18739 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
nirnimesh@chromium.org 8b0c4ac8a9 Fix a failure in testDirectoryHandling on posix.
Review URL: http://codereview.chromium.org/125252

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18619 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org c70a220f72 Add partial presubmit support to git checkout.
Also fix argument processing.

It doesn't works at the moment but doesn't throw an exception either. :)

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/125095

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18611 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 4ff922af46 Remove gcl.ChangeInfo dependency in presubmit_support.py.
TEST=none
BUG=none

Review URL: http://codereview.chromium.org/126068

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18309 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 8d5c9a5a52 Fix gcl breakage.
Small refactor of ChangeInfo to not hardcode the use of GetRepositoryRoot().

TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/125051

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18272 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 17f59f2dd9 A step closer to make presubmit SCM independent.
Stop presubmit_support.py from calling gcl.GetRepositoryRoot(). Instead, save the repository root in ChangeInfo and name it GetLocalRoot() to make it less confusing.
Add GetFileList() and GetFileNames() to ChangeInfo to make it less confusing and more "interface-like".

TEST=updated unit tests with a lot of pain
BUG=none

Review URL: http://codereview.chromium.org/119442

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18266 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 2c3024ac53 Refactor the unit tests to remove a lot of duplicate code.
Remove old unused git-cl test files.

TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/122040

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18177 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 07bbc21467 Actually make use of the may_prompt flag.
This is annoying when using gcl presubmit.

TEST=unit test
BUG=none
Review URL: http://codereview.chromium.org/122010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18141 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org df1595ac20 Fix the ALL_CAPS black list regexp.
Add some regexp unit test.

TEST=unit test
BUG=none

Review URL: http://codereview.chromium.org/118530

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18139 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 92022ec600 Melting pot of changes.
Fix GclChangeInfo.__getattr__ to only accept uppercase tags.
Rename illnamed GclChangeInfo.Change() to GclChangeInfo.Name().
Fix random comments.

TEST=unit test
BUG=none

Review URL: http://codereview.chromium.org/122016

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18138 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org f5888bb793 Add CheckChangeHasNoStrayWhitespace().
TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/118527

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18081 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 0874d47499 Update CheckChangeSvnEolStyle() to be upload-friendly.
TEST=unit test
BUG=none

Review URL: http://codereview.chromium.org/118525

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18079 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org bc50eb4a88 Add CheckChangeHasDescription.
TEST=unit test
BUG=none

Review URL: http://codereview.chromium.org/119427

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18077 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org e9b71c9b3a Add CheckChangeHasOnlyOneEol and CheckChangeHasNoCrAndHasOnlyOneEol.
TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/118505

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18075 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org c809ec2749 Suppress RunPythonUnitTests output while running.
The output is only shown when it's failing. It makes the presubmit check much cleaner.
Also rename TestDescription and TestContent that were ill named.

TEST=none
BUG=none
Review URL: http://codereview.chromium.org/118415

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18055 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org b0dfd35742 Make the presubmit output much more compact.
Disable prompting when using gcl presubmit xxx.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/118498

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18054 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org b7d469083f Add CheckChangeSvnEolStyle presubmit canned check.
TEST=unit tests
BUG=none

Review URL: http://codereview.chromium.org/119421

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@18053 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 3410d917f3 Add InputApi.AffectedSourceFile() and custom filtering support.
TEST=none
BUG=none

Review URL: http://codereview.chromium.org/119365

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17975 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 44a17adf95 Add InputApi.ReadFile() and presubmit_canned_checks.CheckChangeHasNoCR().
ReadFile limits to reading files inside the repository.
CheckChangeHasNoCR reads the text files looking for \r and fails if found.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/118370

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17857 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org de0ba297d9 Fix presubmit_support.py run standalone and RunPythonUnitTests
TEST=none
BUG=none
TBR=joi

Review URL: http://codereview.chromium.org/119285

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17839 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 8949138ee9 Use more sensible behavior in presubmit checks.
It's less annoying to type Y than to have to rerun the scripts with --no_presubmit for certain checks.

TEST=none
BUG=none
TBR=joi

Review URL: http://codereview.chromium.org/119284

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17838 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org d7dccf5614 Add InputApi.is_committing to be able to return a failure or notification, depending on the check.
Add input_api.traceback, useful for dumping information.

BUG=none
TEST=none

Review URL: http://codereview.chromium.org/119252

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17837 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 32ba260f1e Added patchset persistence in gcl, this is necessary to implement a presubmit queue.
Now enforces ChangeInfo.issue (and .patchset) to be a int.
Renamed LoadChangelistInfo() to ChangeInfo.Load().
Removed ChangeInfo.__init__() default parameters.

TEST=none
BUG=none

Review URL: http://codereview.chromium.org/118355

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17836 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 1487d53b6c Improve the presubmit_canned_checks testing by using a real mock and testing for more cases.
Remove a superfluous check in CheckLongLines().

Add unittest to InputApi.

Review URL: http://codereview.chromium.org/114082

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17805 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 4661e0c77b The broken PRESUBMIT.py was fixed so reintegrating revision 17554 (which was good in the first place).
BUG=none
TEST=none
TBR=joi
Review URL: http://codereview.chromium.org/119130

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17578 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 0018e7313d Seems like revision 17554 busted the presubmit scripts, reverting.
TEST=None
BUG=None
TBR=joi
Review URL: http://codereview.chromium.org/119122

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17561 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 8b40a9b81b Fix ListRelevantPresubmitFiles().
It was affected by the current directory!

Review URL: http://codereview.chromium.org/119101

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17554 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org ca14c12a62 Rewrite the presubmit test to be much more hermetic.
Review URL: http://codereview.chromium.org/115964

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17314 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 77c4f0f135 Remove SVN-specific function InputApi.FilterTextFiles().
Review URL: http://codereview.chromium.org/115923

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17202 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 15bdffa063 Make AffectedFile member variables private.
Cache SvnAffectedFile.IsTextFile() return value.

Improve the unit test by not/less relying on the local file system.

Review URL: http://codereview.chromium.org/113964

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17180 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 786886257e warnings.catch_warnings() is only available on python 2.5
Review URL: http://codereview.chromium.org/115881

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17114 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 1e08c00d60 Add AffectedFile.IsTextFile() and deprecate AffectedTextFiles().
Make DepotToLocalPath() and LocalToDepotPath() not static. It is necessary for a subsequent change since I need to factor out it's SCM assumption.

Review URL: http://codereview.chromium.org/113933

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17091 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 6ebe68a73d Make the member variable 'protected' in the python sense.
Review URL: http://codereview.chromium.org/113899

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@17039 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org e1a524ff00 Remove SPECIAL_KEYS and GclChange.Changelist() to simplify the code.
Review URL: http://codereview.chromium.org/113883

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16983 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org f3eee5692c Add a unit test for input_api.change.tags.
Review URL: http://codereview.chromium.org/113859

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16959 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 9711bbafde Add InputApi.version so the presubmit script can mark a minimum supported version for instance.
BUG=None
R=joi

Review URL: http://codereview.chromium.org/115719

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16819 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org dbbeedc691 Factor out SVN-specific methods out of AffectedFile.
TEST=New unit tests.
BUG=None

Review URL: http://codereview.chromium.org/113783

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16785 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 0ff1fab804 Add repository root presubmit support.
Review URL: http://codereview.chromium.org/115616

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16738 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 7b305e8c18 Add new presubmit check RunPythonUnitTests.
Review URL: http://codereview.chromium.org/115516

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16390 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 3d23524cb0 Add more presubmit support. Add PRESUBMIT.py to depot_tools.
Changed InputApi.PresubmitLocalPath() to contain the absolute path without the script name.
Review URL: http://codereview.chromium.org/113354

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@16157 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 1033accb23 Rename presubmit.py to presubmit_support.py to reduce confusion and be able to add a PRESUBMIT.py check into depot_tools.
Review URL: http://codereview.chromium.org/113337

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@15954 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
kuchhal@chromium.org 00c41e457b Add presubmit checks to look for BUG= and TEST= tags in change list description (Part 1 of 2).
BUG=11287
TEST=gcl commit should fail unless BUG= & TEST= exist in change list description or --no_presubmit is used.

Review URL: http://codereview.chromium.org/113294

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@15905 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org 46a9410947 Deprecate gcl.GetSVNFileInfo() for gclient.CaptureSVNInfo().
Review URL: http://codereview.chromium.org/113290

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@15891 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago
maruel@chromium.org c1675e27e6 Add an optional flag to gcl.ReadFile() so that presubmit can support CRLF PRESUBMIT.py scripts.
Also add a version number to gcl.py.
Review URL: http://codereview.chromium.org/99072

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@14644 0039d316-1c4b-4281-b951-d872f2087c98
16 years ago