Nathan Durnan avatar Nathan Durnan committed e3c909a

Wrap long lines and declarations - attempting to adhere to 80-character limit.

Comments (0)

Files changed (2)

 "Tests/BBI38_EmptyUpdate_Test.bat": {"timestamp": 1341604677.09},
 "Tests/TimestampMod_BBI37_Test.bat": {"timestamp": 1341343207.95},
 "TimeStampMod.png": {"timestamp": 1305052883.0},
-"TimestampMod.py": {"timestamp": 1341605454.61},
+"TimestampMod.py": {"timestamp": 1341612935.72},
 "TimeStampMod.xmind": {"timestamp": 1306451621.66},
 "TimestampMod_LastRecord": {"timestamp": 0}
 }
 '''Automatically store and retrieve file modification times.'''
 # end help text
 #==============================================================================
-# TimestampMod.py - Automatically save and restore the modification times of files
-File_Version = '0.2.6.0706'	# Version number definition
+# TimestampMod.py - Automatically save and restore file modification times 
+File_Version = '0.2.6'	# Version number definition
 # --> !!BETA RELEASE!!! <--
 # Copyright 2011-2012 Nathan Durnan <nedmech@gmail.com>
 #
 		extension.wrapcommand() methods failed to work with the version
 		of TortoiseHg used for development.  Ideally, this will be 
 		revised to a cleaner method in the future.'''
-		localrepo.localrepository.timestamp_origcommit = localrepo.localrepository.commit
+		localrepo.localrepository.timestamp_origcommit = \
+			localrepo.localrepository.commit
 		localrepo.localrepository.commit = Wrap_Commit
 #_ end of reposetup ___________________________________________________________
 
 #	 methods failed to work with the version of TortoiseHg used for development .  
 #	Ideally, this will be revised to a cleaner method in the future.
 #==============================================================================
-def Wrap_Commit(repo, text="", user=None, date=None, match=None, force=False, editor=False, extra={}):
+def Wrap_Commit(repo, \
+		text="", \
+		user=None, \
+		date=None, \
+		match=None, \
+		force=False, \
+		editor=False, \
+		extra={}):
 	repo.ui.note('TimestampMod|Wrap_Commit accessed!\n')
 	#Check for a merge-commit. 
 	#  Don't run timestamp code until merge is complete.
 			#coerce files() to a list object.
 			match._files = list(match.files())
 		#end of check for list type
-		myList_Match = match.files() #don't add timestamp file here, it will be added later.
-		timestamp_mod(repo.ui, repo, **dict({'save': True, 'restore': None, 'match': myList_Match}))
+		myList_Match = match.files() 
+		#don't add timestamp file here, it will be added later.
+		timestamp_mod( \
+			repo.ui, \
+			repo, \
+			**dict({ \
+				'save': True, \
+				'restore': None, \
+				'match': myList_Match}))
 		# Make sure record file is part of repository and commit. 
 		if not (File_TimestampRecords in repo.dirstate):
-			repo.ui.debug('Wrap_Commit: ', File_TimestampRecords, ' not in repo.dirstate  Adding...\n')
-			repo[None].add([File_TimestampRecords]) #same method used for adding '.hgtags' file in localrepo.py
+			repo.ui.debug('Wrap_Commit: ', \
+				File_TimestampRecords, \
+				' not in repo.dirstate  Adding...\n')
+			#\/ use same method used for adding '.hgtags' file in localrepo.py
+			repo[None].add([File_TimestampRecords]) 
 		#end of check for record file in repository.
 		#Update match fileset for use under TortoiseHg.
 		#  TortoiseHg doesn't seem to catch the updated file
 		#  unless it is manually added to the match fileset.
 		if (File_TimestampRecords in match.files()):
 			# Don't need to do anything if record file already in commit.
-			repo.ui.debug('Wrap_Commit: ', File_TimestampRecords, ' already in match\n')
+			repo.ui.debug('Wrap_Commit: ', \
+				File_TimestampRecords, \
+				' already in match\n')
 			pass
 		else:
 			# Add the record file to the match object.
 		repo.ui.debug('Match Files: ', str(match.files()), '\n')
 	#end of check for merge-commit.
 	repo.ui.note('TimestampMod|Wrap_Commit finished!\n')
-	return repo.timestamp_origcommit(text, user, date, match, force, editor, extra)
+	return repo.timestamp_origcommit( \
+			text, \
+			user, \
+			date, \
+			match, \
+			force, \
+			editor, \
+			extra)
 #_ end of Wrap_Commit _________________________________________________________
 
 
 	repo.ui.note('TimestampMod|Post-Status Hook accessed!\n')
 	myUnresolved = _check_Merge_unresolved(repo)
 	if myUnresolved:
-		repo.ui.note('TimestampMod|Post-Status Hook aborted - Unresolved merge detected!\n')
+		repo.ui.note('TimestampMod|Post-Status Hook aborted', \
+			' - Unresolved merge detected!\n')
 		return
 	#end check for unresolved merged
-	timestamp_mod(repo.ui, repo, **dict({'save': None, 'restore': None}))
+	timestamp_mod( \
+		repo.ui, \
+		repo, \
+		**dict({ \
+			'save': None, \
+			'restore': None}))
 
 def Hook_Update(repo, **kwargs):
 	repo.ui.note('TimestampMod|Hook_Update accessed!\n')
 	if (len(repo.parents()) > 1):
-		repo.ui.note('TimestampMod|Hook_Update aborted - Merge in progress\n')
+		repo.ui.note( \
+			'TimestampMod|Hook_Update aborted', \
+			'- Merge in progress\n')
 	else:
-		timestamp_mod(repo.ui, repo, **dict({'save': None, 'restore': True}))
+		timestamp_mod( \
+			repo.ui, \
+			repo, \
+			**dict({ \
+				'save': None, \
+				'restore': True}))
 	#end of check for merging.
 
 def Hook_Post_Merge(repo, **kwargs):
 	#repo.ui.debug('Post-Merge:kwargs = \n', str(kwargs), '\n')
 	myUnresolved = _check_Merge_unresolved(repo)
 	if myUnresolved:
-		repo.ui.note('TimestampMod|Post-Merge Hook aborted - Unresolved merge detected!\n')
+		repo.ui.note( \
+			'TimestampMod|Post-Merge Hook aborted', \
+			' - Unresolved merge detected!\n')
 		return
 	#end check for unresolved merged
 	myPreview = False #starting value
 	#end of check for 'opts' keyword.
 	if (not myPreview):
 		#only update timestamps if not just a preview.
-		timestamp_mod(repo.ui, repo, **dict({'save': None, 'restore': True}))
+		timestamp_mod( \
+			repo.ui, \
+			repo, \
+			**dict({ \
+				'save': None, \
+				'restore': True}))
 	#check for preview option.
 
 def Hook_Post_Resolve(repo, **kwargs):
 	#repo.ui.debug('Post-Resolve:kwargs = \n', str(kwargs), '\n')
 	myUnresolved = _check_Merge_unresolved(repo)
 	if myUnresolved:
-		repo.ui.note('TimestampMod|Post-Resolve Hook aborted - Unresolved merge detected!\n')
+		repo.ui.note( \
+			'TimestampMod|Post-Resolve Hook aborted', \
+			' - Unresolved merge detected!\n')
 		return
 	#end check for unresolved merged
 	myResolveAll = False #starting value
 		#end of check for 'all' option.
 	#end of check for 'opts' keyword.
 	if (myResolveAll or (File_TimestampRecords in str(kwargs['pats']))):
-		#Only re-apply timestamps if the timestamp file is the one being resolved.
-		repo.ui.status("Resolved timestamp file - Reapplying timestamps!\n")
-		timestamp_mod(repo.ui, repo, **dict({'save': None, 'restore': True}))
+		#Only re-apply timestamps if the timestamp file is being resolved.
+		repo.ui.status('Resolved timestamp file - Reapplying timestamps!\n')
+		timestamp_mod( \
+			repo.ui, \
+			repo, \
+			**dict({ \
+				'save': None, \
+				'restore': True}))
 	#end of check for timestamp file resolve.
 
 def Hook_Post_Revert(repo, **kwargs):
 	is on their list of items that need fixed:
 	https://bitbucket.org/tortoisehg/thg/issue/1347/add-support-for-pre-and-post-hooks
 	'''
-	repo.ui.note("TimestampMod|Post-Revert Hook accessed!\n")
-	#repo.ui.debug("-----\nPost-Revert:kwargs = \n", str(kwargs), "\n-----\n")
+	repo.ui.note('TimestampMod|Post-Revert Hook accessed!\n')
+	#repo.ui.debug('-----\nPost-Revert:kwargs = \n', str(kwargs), '\n-----\n')
 	bDryRun = False #starting value
 	bAll = False #starting value
 	listExclude = list()
 			#Don't bother to check for rev-spec. 
 			# Original command would've failed and not 
 			# gotten here if both date and rev were spec'd.
-			kwargs['opts']['rev'] = cmdutil.finddate(repo.ui, repo, kwargs['opts']['date'])
+			kwargs['opts']['rev'] = \
+				cmdutil.finddate( \
+					repo.ui, \
+					repo, \
+					kwargs['opts']['date'])
 		#end of check for date specified.
 	#end of check for 'opts' keyword.
 	#Establish lists of potentially reverted files from repository status.
-	modified, added, removed, deleted, unknown, ignored, clean = repo.status(node2=kwargs['opts']['rev'])
+	modified, added, removed, deleted, unknown, ignored, clean = \
+		repo.status(node2=kwargs['opts']['rev'])
 	maybeReverted = modified + added
 	#Create a temporary copy of the timestamp file from the source revision.
-	commands.cat(repo.ui, repo, 
-		File_TimestampRecords, File_TimestampRecords, 
-		**dict({'rev':kwargs['opts']['rev'], 'output':'%s.revert'}))
+	commands.cat( \
+		repo.ui, \
+		repo, \
+		File_TimestampRecords, \
+		File_TimestampRecords, \
+		**dict({ \
+			'rev':kwargs['opts']['rev'], \
+			'output':'%s.revert'}))
 	#Create dictionary entries for items that were reverted.
 	if bAll:
 		_get_RepoFileList(repo, list(), TimeStamp_dict)
 			if os.path.isfile(myFileName):
 				TimeStamp_dict[myFileName] = -1
 			elif os.path.isdir(myFileName):
-				#Check the potential list of reverted files against the directory path pattern.
+				#Check the potential list of reverted files 
+				# against the directory path pattern.
 				for sFile in sorted(maybeReverted):
 					if fnmatch.fnmatch(sFile, (myFileName + '/*')):
 						TimeStamp_dict[sFile] = -1
 		#end of loop through pattern list
 	#end of check for 'all' flag
 	# Retrieve existing timestamps from the record file.
-	myErr = _read_TimestampJSONRecords(repo, (File_TimestampRecords + '.revert'), TimeStamp_dict)
+	myErr = _read_TimestampJSONRecords( \
+				repo, 
+				(File_TimestampRecords + '.revert'), \
+				TimeStamp_dict)
 	if (not bDryRun):
 		if not myErr:
 			_restore_Timestamps(repo, TimeStamp_dict)
 	try:
 		os.unlink(repo.wjoin(File_TimestampRecords + '.revert'))
 	except:
-		repo.ui.status("Post-Revert: error deleting temporary timestamp file!\n")
+		repo.ui.status('Post-Revert: ', \
+			'error deleting temporary timestamp file!\n')
 	#end of deleting temporary timestamp file.
 #_ end of Hook Functions ______________________________________________________
 
 #==============================================================================
 def timestamp_mod(ui, repo, **kwargs):
 	'''Save or restore file modification times.'''
-	ui.note("Executing timestamp_mod function\n")
+	ui.note('Executing timestamp_mod function\n')
 	# Retrieve Repository file list contents.
 	myChangedList = list()
 	myDroppedList = list()
 	myMatchList = list()
 	if ('match' in kwargs):
-		ui.debug("-----\nmatch: ", str(kwargs['match']), "\n")
+		ui.debug('-----\nmatch: ', str(kwargs['match']), '\n')
 		myMatchList = kwargs['match']
 	else:
-		ui.debug("-----\nmatch argument not specified\n")
+		ui.debug('-----\nmatch argument not specified\n')
 	# end of check for match argument'''
 	# Build initial file lists from the repository contents.
-	myChangedList, myDroppedList = _get_RepoFileList(repo, myMatchList, TimeStamp_dict)
+	myChangedList, myDroppedList = \
+		_get_RepoFileList(repo, myMatchList, TimeStamp_dict)
 	# Retrieve existing timestamps from the record file.
-	myErr = _read_TimestampJSONRecords(repo, File_TimestampRecords, TimeStamp_dict)
+	myErr = _read_TimestampJSONRecords( \
+				repo, \
+				File_TimestampRecords, \
+				TimeStamp_dict)
 	# Check for command optional argument
 	if kwargs['save']:
 		_save_TimestampsJSON( \
 			_display_Timestamps(repo, TimeStamp_dict)
 		# end of check options (Restore/Display)
 	else:
-		repo.ui.debug('Timestamp_Mod can not continue without ', File_TimestampRecords, ' file! \n')
+		repo.ui.debug( \
+			'Timestamp_Mod can not continue without ', \
+			File_TimestampRecords, ' file! \n')
 	# end of check options
 #_ end of timestamp_mod _______________________________________________________
 
 	myFilePath = repo.wjoin(IN_FileName)
 	try:
 		myModTime = float(os.stat(myFilePath).st_mtime)
-		repo.ui.debug(time.strftime("%Y.%m.%d %H:%M:%S", time.localtime(myModTime)), " \t", IN_FileName, "\n")
+		repo.ui.debug( \
+			time.strftime( \
+			'%Y.%m.%d %H:%M:%S', \
+			time.localtime(myModTime)), \
+			' \t', IN_FileName, '\n')
 		return myModTime
 	except:
-		repo.ui.warn('*** TimestampMod: Get File Stat failed for ', IN_FileName, '!\n')
+		repo.ui.warn( \
+			'*** TimestampMod: Get File Stat failed for ', \
+			IN_FileName, '!\n')
 		repo.ui.debug('*** Exception: ', str(sys.exc_info()), '  ***\n')
 		return -1
 	# end of file stat access.
 #------------------------------------------------------------------------------
 # Summary: Set the UTC timestamp value for the specified file's modified time.
 #==============================================================================
-def _set_fileModTime(repo, IN_FileName, IN_ModTime):
+def _set_fileModTime( \
+		repo, \
+		IN_FileName, \
+		IN_ModTime):
 	'''Assign the Modification Timestamp for the specified file.'''
 	repo.ui.debug('set_mtime: ')
 	myFilePath = repo.wjoin(IN_FileName)
 	try:
 		myFileStat = os.stat(myFilePath)
-		os.utime(myFilePath, (myFileStat.st_atime, type(myFileStat.st_mtime)(IN_ModTime)))
-		repo.ui.debug(time.strftime("%Y.%m.%d %H:%M:%S", time.localtime(IN_ModTime)), " \t", IN_FileName, "\n")
+		os.utime( \
+			myFilePath, \
+			(myFileStat.st_atime, \
+			type(myFileStat.st_mtime)(IN_ModTime)))
+		repo.ui.debug( \
+			time.strftime('%Y.%m.%d %H:%M:%S', \
+			time.localtime(IN_ModTime)), \
+			' \t', IN_FileName, '\n')
 	except:
-		repo.ui.warn('*** TimestampMod: Set File Stat failed for ', IN_FileName, '! ***\n')
+		repo.ui.warn( \
+			'*** TimestampMod: Set File Stat failed for ', \
+			IN_FileName, '! ***\n')
 		repo.ui.debug('*** Exception: ', str(sys.exc_info()), '  ***\n')
 	# end of file stat access.
 #_ end of _set_fileModTime ____________________________________________________
 # NOTE: This function will CLEAR the contents of the global dictionary collection
 #	and rebuild it from scratch.
 #==============================================================================
-def _get_RepoFileList(repo, IN_ListMatch, OUT_TimeStamp_dict):
+def _get_RepoFileList( \
+		repo, \
+		IN_ListMatch, \
+		OUT_TimeStamp_dict):
 	'''Build lists of files from the repository status contents.'''
-	repo.ui.debug('______\nGenerating file list from repo...\n------\n')
+	repo.ui.debug( \
+		'______\n', \
+		'Generating file list from repo...\n', \
+		'------\n')
 	# Establish category lists from repository status.
-	modified, added, removed, deleted, unknown, ignored, clean = repo.status(ignored=True, clean=True, unknown=True)
+	modified, added, removed, deleted, unknown, ignored, clean = \
+		repo.status(ignored=True, clean=True, unknown=True)
 	# Changed files include modifications and additions.
 	# Leave the match list out of the changed list contents.
 	myChanged = modified + added
 	OUT_TimeStamp_dict.clear() # Be sure to start with a clean collection.
 	for myFile in myFiles:
 		if myFile not in myDropped:
-			#Only add non-dropped files to the list, even if they are part of the match list.
+			#Only add non-dropped files to the list, 
+			# even if they are part of the match list.
 			myFileName = str(myFile).strip()
 			OUT_TimeStamp_dict[myFileName] = -1	# initialize dictionary entry
 			repo.ui.debug('Tracking:  ', myFileName, '\n')
 #   original CSV timestamp file format that may have been recorded and commited
 #   using previous versions of this extension.  DO NOT LOSE this functionality!
 #==============================================================================
-def _read_TimestampRecords(repo, IN_TimestampFileName, INOUT_TimeStamp_dict):
+def _read_TimestampRecords( \
+		repo, \
+		IN_TimestampFileName, \
+		INOUT_TimeStamp_dict):
 	'''Read data from Timestamp Record File.'''
 	myTimeStampRecordsFile = ''
 	try:
 		myTimeStampRecordsFile = open(repo.wjoin(IN_TimestampFileName), 'r')
-		repo.ui.debug('______\nRetrieving timestamps from record file:\n------\n')
+		repo.ui.debug( \
+			'______\n', \
+			'Retrieving timestamps from record file:\n', \
+			'------\n')
 		for myLine in myTimeStampRecordsFile.readlines():
-			# Read the data from the line. (CSV format: [FileName],[ModificationTime])
+			# Read the data from the line. 
+			# (CSV format: [FileName],[ModificationTime])
 			try:
 				myFileName, myModTime = myLine.strip().split(',')
 				#Only import data for entries already in local dictionary.
 				if myFileName in INOUT_TimeStamp_dict:
 					#Make sure incoming data is properly formatted.
 					INOUT_TimeStamp_dict[str(myFileName)] = float(myModTime)
-					repo.ui.debug('UTC: ', myModTime, '\t: ', myFileName, '\n')
+					repo.ui.debug( \
+						'UTC: ', myModTime, \
+						'\t: ', myFileName, '\n')
 				# end of check file exists in dictionary.
 			except:
 				repo.ui.debug('Invalid data on line: ', myLine)
 		myTimeStampRecordsFile.close()
 		return False 	# no return flag as successful.
 	except:
-		repo.ui.warn('*** Error accessing ', IN_TimestampFileName, ' file! ***\n')
+		repo.ui.warn( \
+			'*** Error accessing ', IN_TimestampFileName, ' file! ***\n')
 		repo.ui.debug('*** Exception: ', str(sys.exc_info()), '  ***\n')
 		return True	# set return flag on error.
 	# end of accessing record file.
 # * This method will fall back to use the previous CSV file read method if it
 #   can not read the file as JSON data.
 #==============================================================================
-def _read_TimestampJSONRecords(repo, IN_TimestampFileName, INOUT_TimeStamp_dict):
+def _read_TimestampJSONRecords( \
+		repo, \
+		IN_TimestampFileName, \
+		INOUT_TimeStamp_dict):
 	'''Read data from Timestamp JSON Record File.'''
 	myTimeStampJSONFile = ''
 	myErr = False #initialize as boolean
 	# end of check for existing file
 	try:
 		myTimeStampJSONFile = open(repo.wjoin(IN_TimestampFileName), 'r')
-		repo.ui.debug('______\nRetrieving timestamps from JSON record file:\n------\n')
+		repo.ui.debug( \
+			'______\n', 
+			'Retrieving timestamps from JSON record file:\n', \
+			'------\n')
 		try:
 			myData = json.load(myTimeStampJSONFile)
 			# Check for version and object data:
 							if ('timestamp' in obj_fileData):
 								f_fileModTime = float(obj_fileData['timestamp'])
 								#myErr = False 	# no return flag as successful.
-							else: # Error - missing timestamp entry in dictionary.
-								f_fileModTime = -1 # use explicitly invalid value if none found.
+							else: # Error - missing timestamp in dictionary.
+								# use explicitly invalid value if none found.
+								f_fileModTime = -1 
 								myWarn = True
-								repo.ui.warn('WARNING: Missing timestamp definition for ', 
-									str(s_fileName), ': ', str(obj_fileData), '\n')
+								repo.ui.warn( \
+									'WARNING: ', \
+									'Missing timestamp definition for ', \
+									str(s_fileName), ': ', \
+									str(obj_fileData), '\n')
 						else: # Error - not a recognized data type.
-							f_fileModTime = -1 # use explicitly invalid value if none found.
+							# use explicitly invalid value if none found.
+							f_fileModTime = -1 
 							myWarn = True
-							repo.ui.warn('WARNING: Undefined data for ', 
-								str(s_fileName), ': ', str(type(obj_fileData)), ' = [', str(obj_fileData), ']\n')
+							repo.ui.warn( \
+								'WARNING: Undefined data for ', \
+								str(s_fileName), ': ', \
+								str(type(obj_fileData)), \
+								' = [', str(obj_fileData), ']\n')
 						# end of check for data type
 						if not myWarn:
-							INOUT_TimeStamp_dict[str(s_fileName)] = f_fileModTime
-							repo.ui.debug('UTC: ', str(f_fileModTime), '\t: ', str(s_fileName), '\n')
+							INOUT_TimeStamp_dict[str(s_fileName)] = \
+								f_fileModTime
+							repo.ui.debug( \
+								'UTC: ', str(f_fileModTime), \
+								'\t: ', str(s_fileName), '\n')
 						else:
 							myWarnCount += 1 # increment count of problem reads.
 						# end of check for per-item warning.
 				if (len(myData['FileData']) <= 0):
 					# This is not an error condition.
 					# Likely just an empty working directory.
-					repo.ui.debug(IN_TimestampFileName, 
-						' contains no file records', 
+					repo.ui.debug( \
+						IN_TimestampFileName, \
+						' contains no file records', \
 						' - Working Directory is empty?\n')
 				elif (myWarnCount >= len(myData['FileData'])):
-					repo.ui.debug('ERROR: Could not read any JSON file data from ', IN_TimestampFileName, '\n')
+					repo.ui.debug( \
+						'ERROR: Could not read file data from ', \
+						IN_TimestampFileName, '\n')
 					myErr = True	# Error - could not find JSON data
 				# end of check warning count.
 			else: # JSON file data is not present
-				repo.ui.debug(IN_TimestampFileName, ' does not have JSON file data.\n')
+				repo.ui.debug( \
+					IN_TimestampFileName, \
+					' does not have JSON file data.\n')
 				myErr = True	# Error - could not find JSON FileData records
 			# end of check for file data.
 		except: # report errors
 			repo.ui.debug('Error loading JSON file\n')
-			repo.ui.debug('*** Exception: ', str(sys.exc_info()), '  ***\n')
+			repo.ui.debug( \
+				'*** Exception: ', \
+				str(sys.exc_info()), '  ***\n')
 			myErr = True	# Error - problem loading JSON file.
 		finally: #cleanup clause
 			myTimeStampJSONFile.close()
 			if myErr: #error return detected - try older version.
 				# Try opening as a pre-v0.2.0 CSV file insted:
-				repo.ui.warn('Opening ', IN_TimestampFileName, ' as CSV file\n')
-				myErr = _read_TimestampRecords(repo, IN_TimestampFileName, INOUT_TimeStamp_dict)
+				repo.ui.warn( \
+					'Opening ', \
+					IN_TimestampFileName, \
+					' as CSV file\n')
+				myErr = _read_TimestampRecords( \
+							repo, \
+							IN_TimestampFileName, \
+							INOUT_TimeStamp_dict)
 		# end of reading record file.
 		return myErr
 	except: #report errors
-		repo.ui.warn('*** Error accessing ', IN_TimestampFileName, ' file! ***\n')
+		repo.ui.warn( \
+			'*** Error accessing ', IN_TimestampFileName, ' file! ***\n')
 		repo.ui.debug('*** Exception: ', str(sys.exc_info()), '  ***\n')
 		return True	# set return flag on error.
 	# end of accessing record file.
-#_ end of _read_TimestampJSONRecords ______________________________________________
+#_ end of _read_TimestampJSONRecords __________________________________________
 
 
 #==============================================================================
 		IN_DroppedList, \
 		INOUT_TimeStamp_dict):
 	'''Save File Modification Timestamps to JSON record file.'''
-	repo.ui.note('______\nSaving timestamps to JSON file...\n------\n')
+	repo.ui.note( \
+		'______\n', \
+		'Saving timestamps to JSON file...\n', \
+		'------\n')
 	# Remove the record file from the list.
 	#	It causes confusion and difficulty during merge.
 	if IN_TimestampFileName in INOUT_TimeStamp_dict:
 	# end of check for record file.
 	myTimeStampJSONFile = open(repo.wjoin(IN_TimestampFileName), 'w')
 	# Record version data for the file.
-	myTimeStampJSONFile.write('{\n"Version": "' + File_Version + '",\n"FileData":{\n')
+	myTimeStampJSONFile.write('{\n"Version": "' \
+		+ File_Version \
+		+ '",\n"FileData":{\n')
 	# Make sure to use a sorted dictionary for the file data:
 	for s_fileName in sorted(INOUT_TimeStamp_dict.keys(), key=str.lower):
 		f_fileModTime = INOUT_TimeStamp_dict[s_fileName]
 		if (s_fileName in IN_ChangedList) or (f_fileModTime<=0):
 			# Make sure to only save new file timestamps if they have  
 			# been included in the commit (will be in the match list).
-			if (f_fileModTime>0) and (len(IN_MatchList)>0) and (s_fileName not in IN_MatchList):
-				# Do not save new timestamp if file is not in specified match list.
+			if (f_fileModTime>0) \
+					and (len(IN_MatchList)>0) \
+					and (s_fileName not in IN_MatchList):
+				# Do not save new timestamp if file is not in match list.
 				pass
-			else: #File is in match list, or match list is empty (save all timestamps)
-				f_fileModTime = INOUT_TimeStamp_dict[s_fileName] = _get_fileModTime(repo, s_fileName)
+			else: 
+				#File is in match list, 
+				# or match list is empty (save all timestamps)
+				f_fileModTime = \
+					INOUT_TimeStamp_dict[s_fileName] = \
+					_get_fileModTime(repo, s_fileName)
 			# end of check for file in match list
 		# end of update timestamps for changed items or missing timestamps.
 		if (s_fileName in IN_DroppedList) or (f_fileModTime<=0):
-			repo.ui.debug('...removing record of dropped file, or file with missing timestamp (', s_fileName, ')\n')
+			repo.ui.debug( \
+				'...removing record of dropped file, ', \
+				'or file with missing timestamp ', \
+				'(', s_fileName, ')\n')
 			del INOUT_TimeStamp_dict[s_fileName]
 		else:	#timestamp is valid
-			myTimeStampJSONFile.write('"%s": {"timestamp": %s},\n' % (s_fileName, f_fileModTime))
+			myTimeStampJSONFile.write( \
+				'"%s": {"timestamp": %s},\n' \
+				% (s_fileName, f_fileModTime))
 		# end of check for non-existing files or timestamps.
 	# end of loop through dictionary items.
 	# Add one last record to wrap up the JSON formatting.
-	myTimeStampJSONFile.write('"' + LastPlaceholder + '": {"timestamp": 0}\n}\n}')
+	myTimeStampJSONFile.write( \
+		'"' + LastPlaceholder \
+		+ '": {"timestamp": 0}' \
+		+ '\n}\n}')
 	# Make sure to close the file!
 	myTimeStampJSONFile.close()
-#_ end of _save_TimestampsJSON ____________________________________________________
+#_ end of _save_TimestampsJSON ________________________________________________
 
 
 #==============================================================================
 		if (f_fileModTime>0):
 			# Valid timestamp detected!
 			# Display timestamp using local time adjustment.
-			repo.ui.note(time.strftime("%Y.%m.%d %H:%M:%S", time.localtime(f_fileModTime)), " \t", s_fileName, "\n")
+			repo.ui.note( \
+				time.strftime('%Y.%m.%d %H:%M:%S', \
+				time.localtime(f_fileModTime)), \
+				' \t', s_fileName, '\n')
 		else:
 			# No valid timestamp recorded, skip this file.
-			repo.ui.debug(s_fileName, ' - skipped - no timestamp recorded\n')
+			repo.ui.debug( \
+				s_fileName, \
+				' - skipped - no timestamp recorded\n')
 		# end of check for valid timestamp.
 	# end of loop through dictionary items.
 #_ end of _display_Timestamps _________________________________________________
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.