def handle(self, **options): ignore_patterns = options['ignore_patterns'] if options['use_default_ignore_patterns']: ignore_patterns += ['CVS', '.*', '*~'] options['ignore_patterns'] = ignore_patterns self.ignore_patterns = ignore_patterns if ((options['add'] and options['clean']) or (not options['add'] and not options['clean'])): raise CommandError('Please specify either "--add" or "--clean"') if not settings.COMPRESS_MTIME_DELAY: raise CommandError( 'mtime caching is currently disabled. Please ' 'set the COMPRESS_MTIME_DELAY setting to a number of seconds.') files_to_add = set() keys_to_delete = set() for root, dirs, files in os.walk(settings.COMPRESS_ROOT, followlinks=options['follow_links']): for dir_ in dirs: if self.is_ignored(dir_): dirs.remove(dir_) for filename in files: common = "".join(root.split(settings.COMPRESS_ROOT)) if common.startswith(os.sep): common = common[len(os.sep):] if self.is_ignored(os.path.join(common, filename)): continue filename = os.path.join(root, filename) keys_to_delete.add(get_mtime_cachekey(filename)) if options['add']: files_to_add.add(filename) if keys_to_delete: cache.delete_many(list(keys_to_delete)) self.stdout.write("Deleted mtimes of %d files from the cache." % len(keys_to_delete)) if files_to_add: for filename in files_to_add: get_mtime(filename) self.stdout.write("Added mtimes of %d files to cache." % len(files_to_add))
def handle(self, **options): ignore_patterns = options["ignore_patterns"] if options["use_default_ignore_patterns"]: ignore_patterns += ["CVS", ".*", "*~"] options["ignore_patterns"] = ignore_patterns self.ignore_patterns = ignore_patterns if (options["add"] and options["clean"]) or (not options["add"] and not options["clean"]): raise CommandError('Please specify either "--add" or "--clean"') if not settings.COMPRESS_MTIME_DELAY: raise CommandError( "mtime caching is currently disabled. Please " "set the COMPRESS_MTIME_DELAY setting to a number of seconds.") files_to_add = set() keys_to_delete = set() for root, dirs, files in os.walk(settings.COMPRESS_ROOT, followlinks=options["follow_links"]): for dir_ in dirs: if self.is_ignored(dir_): dirs.remove(dir_) for filename in files: common = "".join(root.split(settings.COMPRESS_ROOT)) if common.startswith(os.sep): common = common[len(os.sep):] if self.is_ignored(os.path.join(common, filename)): continue filename = os.path.join(root, filename) keys_to_delete.add(get_mtime_cachekey(filename)) if options["add"]: files_to_add.add(filename) if keys_to_delete: cache.delete_many(list(keys_to_delete)) self.stdout.write("Deleted mtimes of %d files from the cache." % len(keys_to_delete)) if files_to_add: for filename in files_to_add: get_mtime(filename) self.stdout.write("Added mtimes of %d files to cache." % len(files_to_add))
def handle_noargs(self, **options): ignore_patterns = options['ignore_patterns'] if options['use_default_ignore_patterns']: ignore_patterns += ['CVS', '.*', '*~'] options['ignore_patterns'] = ignore_patterns self.ignore_patterns = ignore_patterns if (options['add'] and options['clean']) or (not options['add'] and not options['clean']): raise CommandError('Please specify either "--add" or "--clean"') if not settings.COMPRESS_MTIME_DELAY: raise CommandError( 'mtime caching is currently disabled. Please ' 'set the COMPRESS_MTIME_DELAY setting to a number of seconds.') files_to_add = set() keys_to_delete = set() for root, dirs, files in walk(settings.COMPRESS_ROOT, followlinks=options['follow_links']): for dir_ in dirs: if self.is_ignored(dir_): dirs.remove(dir_) for filename in files: common = "".join(root.split(settings.COMPRESS_ROOT)) if common.startswith(os.sep): common = common[len(os.sep):] if self.is_ignored(os.path.join(common, filename)): continue filename = os.path.join(root, filename) keys_to_delete.add(get_mtime_cachekey(filename)) if options['add']: files_to_add.add(filename) if keys_to_delete: cache.delete_many(list(keys_to_delete)) print "Deleted mtimes of %d files from the cache." % len( keys_to_delete) if files_to_add: for filename in files_to_add: get_mtime(filename) print "Added mtimes of %d files to cache." % len(files_to_add)