| OLD | NEW |
| 1 # Copyright (c) 2009, 2010, 2011 Google Inc. All rights reserved. | 1 # Copyright (c) 2009, 2010, 2011 Google Inc. All rights reserved. |
| 2 # Copyright (c) 2009 Apple Inc. All rights reserved. | 2 # Copyright (c) 2009 Apple Inc. All rights reserved. |
| 3 # | 3 # |
| 4 # Redistribution and use in source and binary forms, with or without | 4 # Redistribution and use in source and binary forms, with or without |
| 5 # modification, are permitted provided that the following conditions are | 5 # modification, are permitted provided that the following conditions are |
| 6 # met: | 6 # met: |
| 7 # | 7 # |
| 8 # * Redistributions of source code must retain the above copyright | 8 # * Redistributions of source code must retain the above copyright |
| 9 # notice, this list of conditions and the following disclaimer. | 9 # notice, this list of conditions and the following disclaimer. |
| 10 # * Redistributions in binary form must reproduce the above | 10 # * Redistributions in binary form must reproduce the above |
| (...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 173 def _deleted_files(self): | 173 def _deleted_files(self): |
| 174 return self._run_status_and_extract_filenames(self.status_command(), sel
f._status_regexp("D")) | 174 return self._run_status_and_extract_filenames(self.status_command(), sel
f._status_regexp("D")) |
| 175 | 175 |
| 176 @staticmethod | 176 @staticmethod |
| 177 def supports_local_commits(): | 177 def supports_local_commits(): |
| 178 return False | 178 return False |
| 179 | 179 |
| 180 def display_name(self): | 180 def display_name(self): |
| 181 return "svn" | 181 return "svn" |
| 182 | 182 |
| 183 def svn_revision(self, path): | |
| 184 return self.value_from_svn_info(path, 'Revision') | |
| 185 | |
| 186 def timestamp_of_revision(self, path, revision): | 183 def timestamp_of_revision(self, path, revision): |
| 187 # We use --xml to get timestamps like 2013-02-08T08:18:04.964409Z | 184 # We use --xml to get timestamps like 2013-02-08T08:18:04.964409Z |
| 188 repository_root = self.value_from_svn_info(self.checkout_root, 'Reposito
ry Root') | 185 repository_root = self.value_from_svn_info(self.checkout_root, 'Reposito
ry Root') |
| 189 info_output = Executive().run_command([self.executable_name, 'log', '-r'
, revision, '--xml', repository_root], cwd=path).rstrip() | 186 info_output = Executive().run_command([self.executable_name, 'log', '-r'
, revision, '--xml', repository_root], cwd=path).rstrip() |
| 190 match = re.search(r"^<date>(?P<value>.+)</date>\r?$", info_output, re.MU
LTILINE) | 187 match = re.search(r"^<date>(?P<value>.+)</date>\r?$", info_output, re.MU
LTILINE) |
| 191 return match.group('value') | 188 return match.group('value') |
| 192 | 189 |
| 193 def create_patch(self, git_commit=None, changed_files=None): | 190 def create_patch(self, git_commit=None, changed_files=None): |
| 194 """Returns a byte array (str()) representing the patch file. | 191 """Returns a byte array (str()) representing the patch file. |
| 195 Patch files are effectively binary since they may contain | 192 Patch files are effectively binary since they may contain |
| 196 files of multiple different encodings.""" | 193 files of multiple different encodings.""" |
| 197 if changed_files == []: | 194 if changed_files == []: |
| 198 return "" | 195 return "" |
| 199 elif changed_files == None: | 196 elif changed_files == None: |
| 200 changed_files = [] | 197 changed_files = [] |
| 201 return self._run([self._filesystem.join(self.checkout_root, 'Tools', 'Sc
ripts', 'svn-create-patch')] + changed_files, | 198 return self._run([self._filesystem.join(self.checkout_root, 'Tools', 'Sc
ripts', 'svn-create-patch')] + changed_files, |
| 202 cwd=self.checkout_root, return_stderr=False, | 199 cwd=self.checkout_root, return_stderr=False, |
| 203 decode_output=False) | 200 decode_output=False) |
| 204 | 201 |
| 205 def blame(self, path): | 202 def blame(self, path): |
| 206 return self._run_svn(['blame', path]) | 203 return self._run_svn(['blame', path]) |
| OLD | NEW |