-
tandrii@chromium.org authored
This adds pluggable codereview-specific implementations into Changelist class. The specific implementation is chosen at Changelist automatically, with Rietveld being default for backwards compatibility. Gerrit implementation for Gerrit is incomplete, and will be added in later CLs. However, it is sufficient to ensure current functionality of this tool is not diminished. Sadly, the base class isn't completely free from Rietveld assumptions because of presubmit_support. Apparently, PRESUBMIT scripts can make use of Rietveld instance for RPCs directly. This use doesn't make sense for Gerrit, which substitutes rietveld instance with a dummy object, which raises exception on any attribute access with a diagnostic message. This also includes refactoring of some related code which (ab)used ChangeList. Overall, this CL adds a few extra call to git config in order to determine which codereview to use, but but it shouldn't have any performance impact. These is a reland of these 4 CLs + with several fixes. patch from issue 1827523003 at patchset 20001 (http://crrev.com/1827523003#ps20001) patch from issue 1830703004 at patchset 1 (http://crrev.com/1830703004#ps1) patch from issue 1830923002 at patchset 60001 (http://crrev.com/1830923002#ps60001) patch from issue 1805193002 at patchset 380001 (http://crrev.com/1805193002#ps380001) This CL without a fix was also committed and reverted as patch from issue 1830973003 at patchset 40001 (http://crrev.com/1830973003#ps40001) R=machenbach@chromium.org,sergiyb@chromium.org,andybons@chromium.org BUG=579160,597638 Review URL: https://codereview.chromium.org/1838143002 git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@299530 0039d316-1c4b-4281-b951-d872f2087c98
aa5ced18