Move update_self out of __main__ for clarity
This commit is contained in:
		
							parent
							
								
									7a9054ec79
								
							
						
					
					
						commit
						5fb3df4aff
					
				
					 1 changed files with 28 additions and 23 deletions
				
			
		
							
								
								
									
										51
									
								
								youtube-dl
									
										
									
									
									
								
							
							
						
						
									
										51
									
								
								youtube-dl
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -2698,34 +2698,39 @@ class FFmpegExtractAudioPP(PostProcessor):
 | 
			
		|||
		information['filepath'] = new_path
 | 
			
		||||
		return information
 | 
			
		||||
 | 
			
		||||
### MAIN PROGRAM ###
 | 
			
		||||
 | 
			
		||||
def updateSelf(downloader, filename):
 | 
			
		||||
	''' Update the program file with the latest version from the repository '''
 | 
			
		||||
	# Note: downloader only used for options
 | 
			
		||||
	if not os.access(filename, os.W_OK):
 | 
			
		||||
		sys.exit('ERROR: no write permissions on %s' % filename)
 | 
			
		||||
 | 
			
		||||
	downloader.to_screen('Updating to latest stable version...')
 | 
			
		||||
 | 
			
		||||
	try:
 | 
			
		||||
		latest_url = 'http://github.com/rg3/youtube-dl/raw/master/LATEST_VERSION'
 | 
			
		||||
		latest_version = urllib.urlopen(latest_url).read().strip()
 | 
			
		||||
		prog_url = 'http://github.com/rg3/youtube-dl/raw/%s/youtube-dl' % latest_version
 | 
			
		||||
		newcontent = urllib.urlopen(prog_url).read()
 | 
			
		||||
	except (IOError, OSError), err:
 | 
			
		||||
		sys.exit('ERROR: unable to download latest version')
 | 
			
		||||
 | 
			
		||||
	try:
 | 
			
		||||
		stream = open(filename, 'w')
 | 
			
		||||
		stream.write(newcontent)
 | 
			
		||||
		stream.close()
 | 
			
		||||
	except (IOError, OSError), err:
 | 
			
		||||
		sys.exit('ERROR: unable to overwrite current version')
 | 
			
		||||
 | 
			
		||||
	downloader.to_screen('Updated to version %s' % latest_version)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
if __name__ == '__main__':
 | 
			
		||||
	try:
 | 
			
		||||
		# Modules needed only when running the main program
 | 
			
		||||
		import getpass
 | 
			
		||||
		import optparse
 | 
			
		||||
 | 
			
		||||
		# Function to update the program file with the latest version from the repository.
 | 
			
		||||
		def update_self(downloader, filename):
 | 
			
		||||
			# Note: downloader only used for options
 | 
			
		||||
			if not os.access(filename, os.W_OK):
 | 
			
		||||
				sys.exit('ERROR: no write permissions on %s' % filename)
 | 
			
		||||
 | 
			
		||||
			downloader.to_screen('Updating to latest stable version...')
 | 
			
		||||
			try:
 | 
			
		||||
				latest_url = 'http://github.com/rg3/youtube-dl/raw/master/LATEST_VERSION'
 | 
			
		||||
				latest_version = urllib.urlopen(latest_url).read().strip()
 | 
			
		||||
				prog_url = 'http://github.com/rg3/youtube-dl/raw/%s/youtube-dl' % latest_version
 | 
			
		||||
				newcontent = urllib.urlopen(prog_url).read()
 | 
			
		||||
			except (IOError, OSError), err:
 | 
			
		||||
				sys.exit('ERROR: unable to download latest version')
 | 
			
		||||
			try:
 | 
			
		||||
				stream = open(filename, 'w')
 | 
			
		||||
				stream.write(newcontent)
 | 
			
		||||
				stream.close()
 | 
			
		||||
			except (IOError, OSError), err:
 | 
			
		||||
				sys.exit('ERROR: unable to overwrite current version')
 | 
			
		||||
			downloader.to_screen('Updated to version %s' % latest_version)
 | 
			
		||||
 | 
			
		||||
		# Parse command line
 | 
			
		||||
		parser = optparse.OptionParser(
 | 
			
		||||
| 
						 | 
				
			
			@ -2981,7 +2986,7 @@ if __name__ == '__main__':
 | 
			
		|||
 | 
			
		||||
		# Update version
 | 
			
		||||
		if opts.update_self:
 | 
			
		||||
			update_self(fd, sys.argv[0])
 | 
			
		||||
			updateSelf(fd, sys.argv[0])
 | 
			
		||||
 | 
			
		||||
		# Maybe do nothing
 | 
			
		||||
		if len(all_urls) < 1:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue