mirror of
				https://github.com/python/cpython.git
				synced 2025-11-03 23:21:29 +00:00 
			
		
		
		
	(with one small bugfix in bgen/bgen/scantools.py) This replaces string module functions with string methods for the stuff in the Tools directory. Several uses of string.letters etc. are still remaining.
		
			
				
	
	
		
			54 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			54 lines
		
	
	
	
		
			1.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
"""Checkversions - recursively search a directory (default: sys.prefix) 
 | 
						|
for _checkversion.py files, and run each of them. This will tell you of
 | 
						|
new versions available for any packages you have installed."""
 | 
						|
 | 
						|
import os
 | 
						|
import getopt
 | 
						|
import sys
 | 
						|
import pyversioncheck
 | 
						|
 | 
						|
CHECKNAME="_checkversion.py"
 | 
						|
 | 
						|
VERBOSE=1
 | 
						|
 | 
						|
USAGE="""Usage: checkversions [-v verboselevel] [dir ...]
 | 
						|
Recursively examine a tree (default: sys.prefix) and for each package
 | 
						|
with a _checkversion.py file compare the installed version against the current
 | 
						|
version.
 | 
						|
 | 
						|
Values for verboselevel:
 | 
						|
0 - Minimal output, one line per package
 | 
						|
1 - Also print descriptions for outdated packages (default)
 | 
						|
2 - Print information on each URL checked
 | 
						|
3 - Check every URL for packages with multiple locations"""
 | 
						|
 | 
						|
def check1dir(dummy, dir, files):
 | 
						|
	if CHECKNAME in files:
 | 
						|
		fullname = os.path.join(dir, CHECKNAME)
 | 
						|
		try:
 | 
						|
			execfile(fullname)
 | 
						|
		except:
 | 
						|
			print '** Exception in', fullname
 | 
						|
			
 | 
						|
def walk1tree(tree):
 | 
						|
	os.path.walk(tree, check1dir, None)
 | 
						|
	
 | 
						|
def main():
 | 
						|
	global VERBOSE
 | 
						|
	try:
 | 
						|
		options, arguments = getopt.getopt(sys.argv[1:], 'v:')
 | 
						|
	except getopt.error:
 | 
						|
		print USAGE
 | 
						|
		sys.exit(1)
 | 
						|
	for o, a in options:
 | 
						|
		if o == '-v':
 | 
						|
			VERBOSE = int(a)
 | 
						|
	if not arguments:
 | 
						|
		arguments = [sys.prefix]
 | 
						|
	for dir in arguments:
 | 
						|
		walk1tree(dir)
 | 
						|
		
 | 
						|
if __name__ == '__main__':
 | 
						|
	main()
 | 
						|
		
 | 
						|
	
 |