3
if os.sep + 'dosage' in os.path.abspath(sys.argv[0]):
4
sys.path.insert(0, os.path.normpath(os.path.join(os.path.abspath(sys.argv[0]), os.pardir, os.pardir)))
7
from sets import Set as set
10
Iterates through all the available comic modules, that implement a 'fetchSubmodules'
11
classmethod and a 'submodules' sequence, to determine what comics have been added or removed.
14
def reprset(modulename, s):
17
return ',\n'.join([' ' + repr(module) for module in s])
22
for moduleName in dosage.modules.items(dosage.modules.__path__[0]):
23
module = dosage.modules.get(moduleName)
24
parentModuleName = moduleName.split('/')[0]
25
if parentModuleName not in done and hasattr(module, 'fetchSubmodules') and hasattr(module, 'submodules'):
26
done.append(parentModuleName)
27
existing = set(module.submodules)
28
new = set(module.fetchSubmodules())
29
print 'Added to %r:' % (parentModuleName,)
30
print reprset(parentModuleName, new - existing)
31
print 'Removed from %r:' % (parentModuleName,)
32
print reprset(parentModuleName, existing - new)
34
if __name__ == '__main__':