Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(652)

Side by Side Diff: gcl.py

Issue 501106: Get rid of gcl.ReadFile. (Closed)
Patch Set: Created 11 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | scm.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/python 1 #!/usr/bin/python
2 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved. 2 # Copyright (c) 2006-2009 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """Wrapper script around Rietveld's upload.py that groups files into 6 """Wrapper script around Rietveld's upload.py that groups files into
7 changelists.""" 7 changelists."""
8 8
9 import getpass 9 import getpass
10 import os 10 import os
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
134 content = "" 134 content = ""
135 if url_path == repo_root: 135 if url_path == repo_root:
136 # Reached the root. Abandoning search. 136 # Reached the root. Abandoning search.
137 break 137 break
138 # Go up one level to try again. 138 # Go up one level to try again.
139 url_path = os.path.dirname(url_path) 139 url_path = os.path.dirname(url_path)
140 # Write a cached version even if there isn't a file, so we don't try to 140 # Write a cached version even if there isn't a file, so we don't try to
141 # fetch it each time. 141 # fetch it each time.
142 gclient_utils.FileWrite(cached_file, content) 142 gclient_utils.FileWrite(cached_file, content)
143 else: 143 else:
144 content = ReadFile(cached_file) 144 content = gclient_utils.FileRead(cached_file, 'r')
145 # Keep the content cached in memory. 145 # Keep the content cached in memory.
146 FILES_CACHE[filename] = content 146 FILES_CACHE[filename] = content
147 return FILES_CACHE[filename] 147 return FILES_CACHE[filename]
148 148
149 149
150 def GetCodeReviewSetting(key): 150 def GetCodeReviewSetting(key):
151 """Returns a value for the given key for this repository.""" 151 """Returns a value for the given key for this repository."""
152 # Use '__just_initialized' as a flag to determine if the settings were 152 # Use '__just_initialized' as a flag to determine if the settings were
153 # already initialized. 153 # already initialized.
154 global CODEREVIEW_SETTINGS 154 global CODEREVIEW_SETTINGS
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
198 p.wait() 198 p.wait()
199 p.stdout.close() 199 p.stdout.close()
200 return output, p.returncode 200 return output, p.returncode
201 201
202 202
203 def RunShell(command, print_output=False): 203 def RunShell(command, print_output=False):
204 """Executes a command and returns the output.""" 204 """Executes a command and returns the output."""
205 return RunShellWithReturnCode(command, print_output)[0] 205 return RunShellWithReturnCode(command, print_output)[0]
206 206
207 207
208 def ReadFile(filename, flags='r'):
209 """Returns the contents of a file."""
210 f = open(filename, flags)
211 result = f.read()
212 f.close()
213 return result
214
215
216 def FilterFlag(args, flag): 208 def FilterFlag(args, flag):
217 """Returns True if the flag is present in args list. 209 """Returns True if the flag is present in args list.
218 210
219 The flag is removed from args if present. 211 The flag is removed from args if present.
220 """ 212 """
221 if flag in args: 213 if flag in args:
222 args.remove(flag) 214 args.remove(flag)
223 return True 215 return True
224 return False 216 return False
225 217
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
409 and unchanged files will be removed. 401 and unchanged files will be removed.
410 402
411 Returns: a ChangeInfo object. 403 Returns: a ChangeInfo object.
412 """ 404 """
413 info_file = GetChangelistInfoFile(changename) 405 info_file = GetChangelistInfoFile(changename)
414 if not os.path.exists(info_file): 406 if not os.path.exists(info_file):
415 if fail_on_not_found: 407 if fail_on_not_found:
416 ErrorExit("Changelist " + changename + " not found.") 408 ErrorExit("Changelist " + changename + " not found.")
417 return ChangeInfo(changename, 0, 0, '', None, local_root, 409 return ChangeInfo(changename, 0, 0, '', None, local_root,
418 needs_upload=False) 410 needs_upload=False)
419 split_data = ReadFile(info_file).split(ChangeInfo._SEPARATOR, 2) 411 split_data = gclient_utils.FileRead(info_file, 'r').split(
412 ChangeInfo._SEPARATOR, 2)
420 if len(split_data) != 3: 413 if len(split_data) != 3:
421 ErrorExit("Changelist file %s is corrupt" % info_file) 414 ErrorExit("Changelist file %s is corrupt" % info_file)
422 items = split_data[0].split(', ') 415 items = split_data[0].split(', ')
423 issue = 0 416 issue = 0
424 patchset = 0 417 patchset = 0
425 needs_upload = False 418 needs_upload = False
426 if items[0]: 419 if items[0]:
427 issue = int(items[0]) 420 issue = int(items[0])
428 if len(items) > 1: 421 if len(items) > 1:
429 patchset = int(items[1]) 422 patchset = int(items[1])
(...skipping 575 matching lines...) Expand 10 before | Expand all | Expand 10 after
1005 separator2) 998 separator2)
1006 text += '\n'.join([f[0] + f[1] for f in unaffected_files]) + '\n' 999 text += '\n'.join([f[0] + f[1] for f in unaffected_files]) + '\n'
1007 1000
1008 handle, filename = tempfile.mkstemp(text=True) 1001 handle, filename = tempfile.mkstemp(text=True)
1009 os.write(handle, text) 1002 os.write(handle, text)
1010 os.close(handle) 1003 os.close(handle)
1011 1004
1012 if not silent: 1005 if not silent:
1013 os.system(GetEditor() + " " + filename) 1006 os.system(GetEditor() + " " + filename)
1014 1007
1015 result = ReadFile(filename) 1008 result = gclient_utils.FileRead(filename, 'r')
1016 os.remove(filename) 1009 os.remove(filename)
1017 1010
1018 if not result: 1011 if not result:
1019 return 1012 return
1020 1013
1021 split_result = result.split(separator1, 1) 1014 split_result = result.split(separator1, 1)
1022 if len(split_result) != 2: 1015 if len(split_result) != 2:
1023 ErrorExit("Don't modify the text starting with ---!\n\n" + result) 1016 ErrorExit("Don't modify the text starting with ---!\n\n" + result)
1024 1017
1025 # Update the CL description if it has changed. 1018 # Update the CL description if it has changed.
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
1256 return 0 1249 return 0
1257 args =["svn", command] 1250 args =["svn", command]
1258 root = GetRepositoryRoot() 1251 root = GetRepositoryRoot()
1259 args.extend([os.path.join(root, x) for x in change_info.GetFileNames()]) 1252 args.extend([os.path.join(root, x) for x in change_info.GetFileNames()])
1260 RunShell(args, True) 1253 RunShell(args, True)
1261 return 0 1254 return 0
1262 1255
1263 1256
1264 if __name__ == "__main__": 1257 if __name__ == "__main__":
1265 sys.exit(main()) 1258 sys.exit(main())
OLDNEW
« no previous file with comments | « no previous file | scm.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698