diff --git a/django-compressor-fix-attributeerror-in-offline.patch b/django-compressor-fix-attributeerror-in-offline.patch deleted file mode 100644 index 75a1dc7..0000000 --- a/django-compressor-fix-attributeerror-in-offline.patch +++ /dev/null @@ -1,37 +0,0 @@ -From ac70fbfb7f8349e5c1150f40bf1d21ba635d0cb8 Mon Sep 17 00:00:00 2001 -From: Chirag Jadwani -Date: Fri, 29 Aug 2014 13:15:35 +0530 -Subject: [PATCH] Fix AttributeError in offline compression - ---- - compressor/offline/django.py | 2 ++ - .../test_block_super_base_compressed/test_compressor_offline.html | 5 +++++ - 2 files changed, 7 insertions(+) - -diff --git a/compressor/offline/django.py b/compressor/offline/django.py -index 3986562..b326093 100644 ---- a/compressor/offline/django.py -+++ b/compressor/offline/django.py -@@ -54,6 +54,8 @@ def remove_block_nodes(nodelist, block_stack, block_context): - if not block_stack: - continue - node = block_context.get_block(block_stack[-1].name) -+ if not node: -+ continue - if isinstance(node, BlockNode): - expanded_block = expand_blocknode(node, block_stack, block_context) - new_nodelist.extend(expanded_block) -diff --git a/compressor/tests/test_templates/test_block_super_base_compressed/test_compressor_offline.html b/compressor/tests/test_templates/test_block_super_base_compressed/test_compressor_offline.html -index 01382ec..10097c1 100644 ---- a/compressor/tests/test_templates/test_block_super_base_compressed/test_compressor_offline.html -+++ b/compressor/tests/test_templates/test_block_super_base_compressed/test_compressor_offline.html -@@ -5,4 +5,9 @@ - -+ {% block orphan %} -+ {{ block.super }} -+ An 'orphan' block that refers to a non-existent super block. -+ Contents of this block are ignored. -+ {% endblock %} - {% endspaceless %}{% endblock %} diff --git a/django-compressor-make-compress-run-through.patch b/django-compressor-make-compress-run-through.patch deleted file mode 100644 index 4252405..0000000 --- a/django-compressor-make-compress-run-through.patch +++ /dev/null @@ -1,162 +0,0 @@ -From 72b33ddbcdc41eb5af42b86329d81d96894a9d10 Mon Sep 17 00:00:00 2001 -From: Carlton Gibson -Date: Tue, 10 Mar 2015 20:04:07 +0100 -Subject: [PATCH] Make `compress` command (at least) run through on 1.8 - -FAILED (failures=15, errors=15, skipped=1) - -AssertionError: 2 != 12 -OfflineGenerationError: ... key "XYZ" missing ... ---- - compressor/management/commands/compress.py | 41 +++++++++++++++++------------- - compressor/offline/django.py | 27 ++++++++++++++------ - 2 files changed, 43 insertions(+), 25 deletions(-) - -diff --git a/compressor/management/commands/compress.py b/compressor/management/commands/compress.py -index 6be215e..0bc436a 100644 ---- a/compressor/management/commands/compress.py -+++ b/compressor/management/commands/compress.py -@@ -5,6 +5,7 @@ - from fnmatch import fnmatch - from optparse import make_option - -+import django - from django.core.management.base import NoArgsCommand, CommandError - import django.template - from django.template import Context -@@ -53,24 +54,30 @@ class Command(NoArgsCommand): - requires_model_validation = False - - def get_loaders(self): -- from django.template.loader import template_source_loaders -- if template_source_loaders is None: -- try: -- from django.template.loader import ( -- find_template as finder_func) -- except ImportError: -- from django.template.loader import ( -- find_template_source as finder_func) # noqa -- try: -- # Force django to calculate template_source_loaders from -- # TEMPLATE_LOADERS settings, by asking to find a dummy template -- source, name = finder_func('test') -- except django.template.TemplateDoesNotExist: -- pass -- # Reload template_source_loaders now that it has been calculated ; -- # it should contain the list of valid, instanciated template loaders -- # to use. -+ if django.VERSION < (1, 8): - from django.template.loader import template_source_loaders -+ if template_source_loaders is None: -+ try: -+ from django.template.loader import ( -+ find_template as finder_func) -+ except ImportError: -+ from django.template.loader import ( -+ find_template_source as finder_func) # noqa -+ try: -+ # Force django to calculate template_source_loaders from -+ # TEMPLATE_LOADERS settings, by asking to find a dummy template -+ source, name = finder_func('test') -+ except django.template.TemplateDoesNotExist: -+ pass -+ # Reload template_source_loaders now that it has been calculated ; -+ # it should contain the list of valid, instanciated template loaders -+ # to use. -+ from django.template.loader import template_source_loaders -+ else: -+ from django.template import engines -+ template_source_loaders = [] -+ for e in engines.all(): -+ template_source_loaders.extend(e.engine.get_template_loaders(e.engine.loaders)) - loaders = [] - # If template loader is CachedTemplateLoader, return the loaders - # that it wraps around. So if we have -diff --git a/compressor/offline/django.py b/compressor/offline/django.py -index b326093..107c6e4 100644 ---- a/compressor/offline/django.py -+++ b/compressor/offline/django.py -@@ -1,6 +1,7 @@ - from __future__ import absolute_import - from copy import copy - -+import django - from django import template - from django.conf import settings - from django.template import Context -@@ -14,7 +15,7 @@ - from compressor.templatetags.compress import CompressorNode - - --def handle_extendsnode(extendsnode, block_context=None): -+def handle_extendsnode(extendsnode, block_context=None, original=None): - """Create a copy of Node tree of a derived template replacing - all blocks tags with the nodes of appropriate blocks. - Also handles {{ block.super }} tags. -@@ -26,6 +27,9 @@ def handle_extendsnode(extendsnode, block_context=None): - block_context.add_blocks(blocks) - - context = Context(settings.COMPRESS_OFFLINE_CONTEXT) -+ if original is not None: -+ context.template = original -+ - compiled_parent = extendsnode.get_parent(context) - parent_nodelist = compiled_parent.nodelist - # If the parent template has an ExtendsNode it is not the root. -@@ -33,7 +37,7 @@ def handle_extendsnode(extendsnode, block_context=None): - # The ExtendsNode has to be the first non-text node. - if not isinstance(node, TextNode): - if isinstance(node, ExtendsNode): -- return handle_extendsnode(node, block_context) -+ return handle_extendsnode(node, block_context, original) - break - # Add blocks of the root template to block context. - blocks = dict((n.name, n) for n in -@@ -95,7 +99,10 @@ def __init__(self, charset): - - def parse(self, template_name): - try: -- return get_template(template_name) -+ if django.VERSION < (1, 8): -+ return get_template(template_name) -+ else: -+ return get_template(template_name).template - except template.TemplateSyntaxError as e: - raise TemplateSyntaxError(str(e)) - except template.TemplateDoesNotExist as e: -@@ -111,15 +118,17 @@ def process_node(self, template, context, node): - pass - - def render_nodelist(self, template, context, node): -+ if django.VERSION >= (1, 8): -+ context.template = template - return node.nodelist.render(context) - - def render_node(self, template, context, node): - return node.render(context, forced=True) - -- def get_nodelist(self, node): -+ def get_nodelist(self, node, original=None): - if isinstance(node, ExtendsNode): - try: -- return handle_extendsnode(node) -+ return handle_extendsnode(node, block_context=None, original=original) - except template.TemplateSyntaxError as e: - raise TemplateSyntaxError(str(e)) - except template.TemplateDoesNotExist as e: -@@ -134,10 +143,12 @@ def get_nodelist(self, node): - nodelist = getattr(node, 'nodelist', []) - return nodelist - -- def walk_nodes(self, node): -- for node in self.get_nodelist(node): -+ def walk_nodes(self, node, original=None): -+ if django.VERSION >= (1, 8) and original is None: -+ original = node -+ for node in self.get_nodelist(node, original): - if isinstance(node, CompressorNode) and node.is_offline_compression_enabled(forced=True): - yield node - else: -- for node in self.walk_nodes(node): -+ for node in self.walk_nodes(node, original): - yield node diff --git a/django-compressor-use-get_template.patch b/django-compressor-use-get_template.patch deleted file mode 100644 index b890d49..0000000 --- a/django-compressor-use-get_template.patch +++ /dev/null @@ -1,48 +0,0 @@ -From c8495264b503a595fbc89e6c8a83a402eff445c6 Mon Sep 17 00:00:00 2001 -From: Mathieu Pillard -Date: Sun, 25 May 2014 14:09:33 +0200 -Subject: [PATCH] Use get_template() when dealing with django templates - ---- - compressor/offline/django.py | 16 +++++++--------- - 1 file changed, 7 insertions(+), 9 deletions(-) - -diff --git a/compressor/offline/django.py b/compressor/offline/django.py -index 6541471..3986562 100644 ---- a/compressor/offline/django.py -+++ b/compressor/offline/django.py -@@ -1,13 +1,12 @@ - from __future__ import absolute_import --import io - from copy import copy - - from django import template - from django.conf import settings --from django.template import Template - from django.template import Context - from django.template.base import Node, VariableNode, TextNode, NodeList - from django.template.defaulttags import IfNode -+from django.template.loader import get_template - from django.template.loader_tags import ExtendsNode, BlockNode, BlockContext - - -@@ -93,13 +92,12 @@ def __init__(self, charset): - self.charset = charset - - def parse(self, template_name): -- with io.open(template_name, mode='rb') as file: -- try: -- return Template(file.read().decode(self.charset)) -- except template.TemplateSyntaxError as e: -- raise TemplateSyntaxError(str(e)) -- except template.TemplateDoesNotExist as e: -- raise TemplateDoesNotExist(str(e)) -+ try: -+ return get_template(template_name) -+ except template.TemplateSyntaxError as e: -+ raise TemplateSyntaxError(str(e)) -+ except template.TemplateDoesNotExist as e: -+ raise TemplateDoesNotExist(str(e)) - - def process_template(self, template, context): - return True diff --git a/python-django-compressor.spec b/python-django-compressor.spec index 22e8813..a36c1d0 100644 --- a/python-django-compressor.spec +++ b/python-django-compressor.spec @@ -8,7 +8,7 @@ parsed and searched for CSS or JS. These styles and scripts are subsequently\ processed with optional, configurable compilers and filters. Name: python-django-compressor -Version: 4.1 +Version: 4.4 Release: %autorelease Summary: Compresses linked and inline JavaScript or CSS into single cached files diff --git a/rdep-version.patch b/rdep-version.patch index 16a9fe2..73e620c 100644 --- a/rdep-version.patch +++ b/rdep-version.patch @@ -1,12 +1,12 @@ ---- a/setup.py 2022-08-17 14:46:30.186903576 +0300 -+++ b/setup.py 2022-08-17 14:46:42.507861281 +0300 -@@ -149,7 +149,7 @@ +--- a/setup.py ++++ b/setup.py +@@ -164,7 +164,7 @@ setup( zip_safe=False, install_requires=[ - 'django-appconf >= 1.0.3', -- 'rcssmin == 1.1.0', -- 'rjsmin == 1.2.0', -+ 'rcssmin >= 1.1.0', -+ 'rjsmin >= 1.2.0', + "django-appconf >= 1.0.3", +- "rcssmin == 1.1.1", +- "rjsmin == 1.2.1", ++ "rcssmin >= 1.1.1", ++ "rjsmin >= 1.2.1", ], ) diff --git a/sources b/sources index f9d77cb..3139d48 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (django-compressor-4.1.tar.gz) = eb1e4fc5d9ada8fb32a1059c87b447735cf0e1c40853b2313b5f7f5d1c9cf3c66d96ebf40a721175db5fe721c44b077bc026270d59e90890e1807125a38a33a1 +SHA512 (django-compressor-4.4.tar.gz) = 4fb0fcb1f11d73a724d4d3161b4964f9b4a5bf6ec674d198756ad262d9983528a605aadde6bb10ef2054e477ac08fbc0397242e8969f47d3710bec6f21215086