Merge pull request #687 from scop/rcssmin106

Upgrade rcssmin to 1.0.6
This commit is contained in:
Mathieu Pillard
2015-11-03 13:36:24 +01:00

38
compressor/filters/cssmin/rcssmin.py Normal file → Executable file
View File

@@ -12,7 +12,7 @@ itself is based on `the rule list by Isaac Schlueter`_\\.
:Copyright: :Copyright:
Copyright 2011 - 2014 Copyright 2011 - 2015
Andr\xe9 Malo or his licensors, as applicable Andr\xe9 Malo or his licensors, as applicable
:License: :License:
@@ -40,10 +40,10 @@ Here's a feature list:
- Strings are kept, except that escaped newlines are stripped - Strings are kept, except that escaped newlines are stripped
- Space/Comments before the very end or before various characters are - Space/Comments before the very end or before various characters are
stripped: ``:{});=>+],!`` (The colon (``:``) is a special case, a single stripped: ``:{});=>],!`` (The colon (``:``) is a special case, a single
space is kept if it's outside a ruleset.) space is kept if it's outside a ruleset.)
- Space/Comments at the very beginning or after various characters are - Space/Comments at the very beginning or after various characters are
stripped: ``{}(=:>+[,!`` stripped: ``{}(=:>[,!``
- Optional space after unicode escapes is kept, resp. replaced by a simple - Optional space after unicode escapes is kept, resp. replaced by a simple
space space
- whitespaces inside ``url()`` definitions are stripped - whitespaces inside ``url()`` definitions are stripped
@@ -78,7 +78,7 @@ if __doc__:
__author__ = r"Andr\xe9 Malo".encode('ascii').decode('unicode_escape') __author__ = r"Andr\xe9 Malo".encode('ascii').decode('unicode_escape')
__docformat__ = "restructuredtext en" __docformat__ = "restructuredtext en"
__license__ = "Apache License, Version 2.0" __license__ = "Apache License, Version 2.0"
__version__ = '1.0.5' __version__ = '1.0.6'
__all__ = ['cssmin'] __all__ = ['cssmin']
import re as _re import re as _re
@@ -176,19 +176,19 @@ def _make_cssmin(python_only=False):
main_sub = _re.compile(( main_sub = _re.compile((
# noqa pylint: disable = C0330 # noqa pylint: disable = C0330
r'([^\\"\047u>@\r\n\f\040\t/;:{}]+)' r'([^\\"\047u>@\r\n\f\040\t/;:{}+]+)' # 1
r'|(?<=[{}(=:>+[,!])(%(space)s+)' r'|(?<=[{}(=:>[,!])(%(space)s+)' # 2
r'|^(%(space)s+)' r'|^(%(space)s+)' # 3
r'|(%(space)s+)(?=(([:{});=>+\],!])|$)?)' r'|(%(space)s+)(?=(([:{});=>\],!])|$)?)' # 4, 5, 6
r'|;(%(space)s*(?:;%(space)s*)*)(?=(\})?)' r'|;(%(space)s*(?:;%(space)s*)*)(?=(\})?)' # 7, 8
r'|(\{)' r'|(\{)' # 9
r'|(\})' r'|(\})' # 10
r'|(%(strings)s)' r'|(%(strings)s)' # 11
r'|(?<!%(nmchar)s)url\(%(spacechar)s*(' r'|(?<!%(nmchar)s)url\(%(spacechar)s*(' # 12
r'%(uri_nl_strings)s' r'%(uri_nl_strings)s'
r'|%(uri)s' r'|%(uri)s'
r')%(spacechar)s*\)' r')%(spacechar)s*\)'
r'|(@(?:' r'|(@(?:' # 13
r'[mM][eE][dD][iI][aA]' r'[mM][eE][dD][iI][aA]'
r'|[sS][uU][pP][pP][oO][rR][tT][sS]' r'|[sS][uU][pP][pP][oO][rR][tT][sS]'
r'|[dD][oO][cC][uU][mM][eE][nN][tT]' r'|[dD][oO][cC][uU][mM][eE][nN][tT]'
@@ -197,12 +197,12 @@ def _make_cssmin(python_only=False):
r')-)?' r')-)?'
r'[kK][eE][yY][fF][rR][aA][mM][eE][sS]' r'[kK][eE][yY][fF][rR][aA][mM][eE][sS]'
r'))(?!%(nmchar)s)' r'))(?!%(nmchar)s)'
r'|(%(ie7hack)s)(%(space)s*)' r'|(%(ie7hack)s)(%(space)s*)' # 14, 15
r'|(:[fF][iI][rR][sS][tT]-[lL]' r'|(:[fF][iI][rR][sS][tT]-[lL]' # 16
r'(?:[iI][nN][eE]|[eE][tT][tT][eE][rR]))' r'(?:[iI][nN][eE]|[eE][tT][tT][eE][rR]))'
r'(%(space)s*)(?=[{,])' r'(%(space)s*)(?=[{,])' # 17
r'|(%(nl_strings)s)' r'|(%(nl_strings)s)' # 18
r'|(%(escape)s[^\\"\047u>@\r\n\f\040\t/;:{}]*)' r'|(%(escape)s[^\\"\047u>@\r\n\f\040\t/;:{}+]*)' # 19
) % locals()).sub ) % locals()).sub
# print main_sub.__self__.pattern # print main_sub.__self__.pattern