blob: 1383e807906315ed0a1eea1f43bdb2ce1115a4b7 [file] [log] [blame]
Guido van Rossum3bb54481994-08-29 10:52:58 +00001# THIS IS OBSOLETE -- USE MODULE 'compileall' INSTEAD!
2
Guido van Rossum7045dd01991-08-16 13:28:28 +00003# Utility module to import all modules in the path, in the hope
4# that this will update their ".pyc" files.
5
Guido van Rossumbf1710a1992-03-31 19:06:54 +00006import os
Guido van Rossum7045dd01991-08-16 13:28:28 +00007import sys
8
Guido van Rossumd4e5a731992-01-01 19:30:14 +00009# Sabotage 'gl' and 'stdwin' to prevent windows popping up...
10for m in 'gl', 'stdwin', 'fl', 'fm':
11 sys.modules[m] = sys
12
Guido van Rossum7045dd01991-08-16 13:28:28 +000013exceptions = ['importall']
14
15for dir in sys.path:
16 print 'Listing', dir
17 try:
18 names = os.listdir(dir)
19 except os.error:
20 print 'Can\'t list', dir
21 names = []
22 names.sort()
23 for name in names:
24 head, tail = name[:-3], name[-3:]
Guido van Rossumd4e5a731992-01-01 19:30:14 +000025 if tail == '.py' and head not in exceptions:
Guido van Rossum7045dd01991-08-16 13:28:28 +000026 s = 'import ' + head
27 print s
28 try:
29 exec(s + '\n')
Guido van Rossumd4e5a731992-01-01 19:30:14 +000030 except KeyboardInterrupt:
31 del names[:]
32 print '\n[interrupt]'
33 break
Guido van Rossum7045dd01991-08-16 13:28:28 +000034 except:
Guido van Rossumd4e5a731992-01-01 19:30:14 +000035 print 'Sorry:', sys.exc_type + ':',
36 print sys.exc_value