mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	Fixed #23298 -- Made makemessages actually ignore specified dirs on Windows.
This was detected by two failures in the i18n.test_extraction of our test suite. Refs #20422, refs #22336
This commit is contained in:
		| @@ -364,8 +364,17 @@ class Command(BaseCommand): | |||||||
|                 fnmatch.fnmatchcase(path, pattern)) |                 fnmatch.fnmatchcase(path, pattern)) | ||||||
|             return any(ignore(pattern) for pattern in ignore_patterns) |             return any(ignore(pattern) for pattern in ignore_patterns) | ||||||
|  |  | ||||||
|         dir_suffix = '%s*' % os.sep |         ignore_patterns = [os.path.normcase(p) for p in self.ignore_patterns] | ||||||
|         norm_patterns = [p[:-len(dir_suffix)] if p.endswith(dir_suffix) else p for p in self.ignore_patterns] |         dir_suffixes = {'%s*' % path_sep for path_sep in {'/', os.sep}} | ||||||
|  |         norm_patterns = [] | ||||||
|  |         for p in ignore_patterns: | ||||||
|  |             for dir_suffix in dir_suffixes: | ||||||
|  |                 if p.endswith(dir_suffix): | ||||||
|  |                     norm_patterns.append(p[:-len(dir_suffix)]) | ||||||
|  |                     break | ||||||
|  |             else: | ||||||
|  |                 norm_patterns.append(p) | ||||||
|  |  | ||||||
|         all_files = [] |         all_files = [] | ||||||
|         for dirpath, dirnames, filenames in os.walk(root, topdown=True, followlinks=self.symlinks): |         for dirpath, dirnames, filenames in os.walk(root, topdown=True, followlinks=self.symlinks): | ||||||
|             for dirname in dirnames[:]: |             for dirname in dirnames[:]: | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user