Compare commits

...
Sign in to create a new pull request.

54 commits

Author SHA1 Message Date
Michel Lind
4088983b63
Revert pyproject.toml conversion when building with older setuptools
- Drop patches

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2025-12-11 17:14:51 +00:00
Michel Lind
c47467d43f
Remove unneeded patches
Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2025-12-10 22:45:58 +00:00
Michel Lind
fcfc8dd484
Update to 4.6.0 upstream release
- Resolves: rhbz#2413786

Commit authored by Packit automation (https://packit.dev/)
2025-12-10 22:02:17 +00:00
Michel Lind
1a5548185b
Enable Packit
[skip changelog]

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2025-12-10 22:00:43 +00:00
Python Maint
a3b82fdbcf Rebuilt for Python 3.14.0rc3 bytecode 2025-09-19 13:09:36 +02:00
Python Maint
2c69538071 Rebuilt for Python 3.14.0rc2 bytecode 2025-08-15 13:36:42 +02:00
Fedora Release Engineering
e8cf3aab29 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 07:34:48 +00:00
Python Maint
20499935df Rebuilt for Python 3.14 2025-06-03 12:20:58 +02:00
Tim Landscheidt
a60ba9a21f Fix Obsoletes fields for python3-django-compressor 2025-03-23 18:18:02 +00:00
Fedora Release Engineering
d38151b86e Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-18 13:39:33 +00:00
Michel Lind
8da4cb4fea
Fix building with Python 3.14; resolves: rhbz#2322719
Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2024-12-20 16:52:55 -06:00
Michel Lind
66ec10d2b9
Update to 4.5.1 (resolves: rhbz#2292613)
Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2024-12-20 16:28:25 -06:00
karolinku
35c449bbe3 Replace git source with pypi one
There has been discovered that github source differs from pypi one
which is causing errors for 4.4 version, i.e. dicovering previous
version 4.3 with setupy.py --version.
2024-08-06 15:51:12 +02:00
Fedora Release Engineering
78da4b3718 Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-19 11:02:24 +00:00
Python Maint
c63dc811bd Rebuilt for Python 3.13 2024-06-08 01:28:29 +02:00
Fedora Release Engineering
f73b71e9e9 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-26 03:27:20 +00:00
Fedora Release Engineering
4ec455047a Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-22 00:46:41 +00:00
Michel Lind
a07f14cb1c
Update to 4.4 (rhbz#1715669)
- cleanup unused patches

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
2024-01-16 11:22:01 -06:00
Fedora Release Engineering
ef93f09bb9 Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-21 09:00:20 +00:00
Python Maint
bd6cd6ca5c Rebuilt for Python 3.12 2023-06-29 13:33:54 +02:00
Fedora Release Engineering
9a0eeafc7c Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-20 12:40:48 +00:00
aekoroglu
20403d4e61 Update to 4.1 (RHBZ #1715669 and #2105261) 2022-08-17 15:27:37 +03:00
Fedora Release Engineering
7e745f6429 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-22 17:56:21 +00:00
Python Maint
ac5e247623 Rebuilt for Python 3.11 2022-06-13 15:01:35 +02:00
karolinku
1b4183de0a Update to 2.4.1 2022-03-14 13:30:31 +01:00
Fedora Release Engineering
e5164c8438 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-21 11:41:19 +00:00
Fedora Release Engineering
52d41b6dc8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 06:05:28 +00:00
Python Maint
9e25dc5ee9 Rebuilt for Python 3.10 2021-06-04 20:29:19 +02:00
Fedora Release Engineering
ae12c34f57 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-27 10:17:44 +00:00
yatinkarel
581d7131d8 Update to 2.4 2020-09-09 10:15:58 +05:30
Fedora Release Engineering
c46668f223 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 00:39:34 +00:00
Miro Hrončok
a07793f889 Rebuilt for Python 3.9 2020-05-26 03:11:21 +02:00
Fedora Release Engineering
488b36c1f7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-30 11:43:14 +00:00
Miro Hrončok
d1d1fd1778 Rebuilt for Python 3.8.0rc1 (#1748018) 2019-10-03 14:09:29 +02:00
Miro Hrončok
226b4906aa Rebuilt for Python 3.8 2019-08-19 10:34:44 +02:00
Fedora Release Engineering
2d6cf25895 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-26 13:06:32 +00:00
Fedora Release Engineering
af20c7e5c6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-02 06:25:22 +00:00
Fedora Release Engineering
f51078b7fc - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-14 00:01:23 +00:00
Miro Hrončok
f65be08609 Rebuilt for Python 3.7 2018-06-19 10:59:24 +02:00
Fedora Release Engineering
848e2dd2da - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-09 07:25:27 +00:00
Matthias Runge
cb19742d3e update to 2.2 2018-01-31 10:51:08 +01:00
Matthias Runge
bf6c080e42 drop python2 package
see https://fedoraproject.org/wiki/Changes/Django20
2018-01-26 10:31:40 +01:00
Zbigniew Jędrzejewski-Szmek
e72f52978c Python 2 binary package renamed to python2-django-compressor 2017-08-19 09:40:10 -04:00
Fedora Release Engineering
369ca20c42 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-27 10:04:51 +00:00
Fedora Release Engineering
a30fe15f36 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-11 08:46:37 +00:00
Miro Hrončok
50da6b458b Rebuild for Python 3.6 2016-12-19 18:20:37 +01:00
Matthias Runge
998525c7f5 update to 2.1
Resolves: rhbz#1365700
2016-08-11 14:55:16 +02:00
Fedora Release Engineering
cf4def1dec - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages 2016-07-19 09:24:51 +00:00
Matthias Runge
82ec62a112 update to 2.0 2016-05-02 19:33:46 +02:00
Fedora Release Engineering
d7be77fdb4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-04 19:23:30 +00:00
Matthias Runge
56f2aa9573 update to 1.6 (rhbz#1283807) 2015-11-20 11:12:11 +01:00
Peter Robinson
ef306c9a55 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 2015-11-10 15:36:38 +00:00
Matthias Runge
4d873703a4 add python3 subpackge 2015-08-27 13:14:28 +02:00
Matthias Runge
013ddf2a33 update to 1.5 2015-08-26 09:29:41 +02:00
10 changed files with 373 additions and 345 deletions

8
.gitignore vendored
View file

@ -1,3 +1,5 @@
/django_compressor-1.2.tar.gz
/django_compressor-1.3.tar.gz
/django_compressor-1.4.tar.gz
/python-django-compressor-*.tar.gz
/django-compressor-*.tar.gz
/django_compressor-4.4.tar.gz
/django_compressor-4.5.1.tar.gz
/django_compressor-4.6.0.tar.gz

3
README.packit Normal file
View file

@ -0,0 +1,3 @@
This repository is maintained by packit.
https://packit.dev/
The file was generated using packit 1.12.0.

124
changelog Normal file
View file

@ -0,0 +1,124 @@
* Mon Jun 13 2022 Python Maint <python-maint@redhat.com> - 2.4.1-2
- Rebuilt for Python 3.11
* Mon Mar 14 2022 Karolina Kula <kkula@redhat.com> - 2.4.1-1
- Update to 2.4.1
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Fri Jun 04 2021 Python Maint <python-maint@redhat.com> - 2.4-3
- Rebuilt for Python 3.10
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Wed Sep 09 2020 Yatin Karel <ykarel@redhat.com> - 2.4-1
- Update to 2.4
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2.2-10
- Rebuilt for Python 3.9
* Thu Jan 30 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 2.2-8
- Rebuilt for Python 3.8.0rc1 (#1748018)
* Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2.2-7
- Rebuilt for Python 3.8
* Fri Jul 26 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 02 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2.2-3
- Rebuilt for Python 3.7
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Wed Jan 31 2018 Matthias Runge <mrunge@redhat.com> - 2.2-1
- update to 2.2
* Fri Jan 26 2018 Matthias Runge <mrunge@redhat.com> - 2.1-6
- Drop python2 package for https://fedoraproject.org/wiki/Changes/Django20
* Sat Aug 19 2017 Zbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl> - 2.1-5
- Python 2 binary package renamed to python2-django-compressor
See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.1-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Mon Dec 19 2016 Miro Hrončok <mhroncok@redhat.com> - 2.1-2
- Rebuild for Python 3.6
* Thu Aug 11 2016 Matthias Runge <mrunge@redhat.com> - 2.1-1
- update to 2.1 (rhbz#1365700)
- modernize spec
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-2
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
* Fri Feb 26 2016 Matthias Runge <mrunge@redhat.com> - 2.0-1
- update to 2.0 (rhbz#1296716)
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.6-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Fri Nov 20 2015 Matthias Runge <mrunge@redhat.com> - 1.6-1
- update to 1.6 (rhbz#1283807)
* Tue Nov 10 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.5-3
- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5
* Thu Aug 27 2015 Matthias Runge <mrunge@redhat.com> - 1.5-2
- add python3 subpackage
* Wed Aug 26 2015 Matthias Runge <mrunge@redhat.com> - 1.5-1
- update to 1.5
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Wed Apr 15 2015 Matthias Runge <mrunge@redhat.com> - 1.4-3
- make compress command work on django-1.8
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon May 26 2014 Matthias Runge <mrunge@redhat.com> - 1.4-1
- update to 1.4 (rhbz#1100732)
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Mar 20 2013 Matthias Runge <mrunge@redhat.com> - 1.3-1
- update to python-django-compressor-1.3 (rhbz#923735)
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Sep 24 2012 Matthias Runge <mrunge@redhat.com> - 1.2-3
- add requirement Django/python-django
* Fri Sep 14 2012 Matthias Runge <mrunge@redhat.com> - 1.2-2
- add requirement python-versiontools
* Tue Sep 11 2012 Matthias Runge <mrunge@redhat.com> - 1.2-1
- Initial package.

View file

@ -1,37 +0,0 @@
From ac70fbfb7f8349e5c1150f40bf1d21ba635d0cb8 Mon Sep 17 00:00:00 2001
From: Chirag Jadwani <cbjadwani@elance-odesk.com>
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 @@
<script type="text/javascript">
alert("this alert shouldn't be alone!");
</script>
+ {% block orphan %}
+ {{ block.super }}
+ An 'orphan' block that refers to a non-existent super block.
+ Contents of this block are ignored.
+ {% endblock %}
{% endspaceless %}{% endblock %}

View file

@ -1,162 +0,0 @@
From 72b33ddbcdc41eb5af42b86329d81d96894a9d10 Mon Sep 17 00:00:00 2001
From: Carlton Gibson <carlton.gibson@noumenal.co.uk>
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

View file

@ -1,48 +0,0 @@
From c8495264b503a595fbc89e6c8a83a402eff445c6 Mon Sep 17 00:00:00 2001
From: Mathieu Pillard <m@virgule.net>
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

16
packit.yaml Normal file
View file

@ -0,0 +1,16 @@
# See the documentation for more information:
# https://packit.dev/docs/configuration/
copy_upstream_release_description: false
jobs:
- job: pull_from_upstream
trigger: release
dist_git_branches:
- fedora-rawhide
- job: koji_build
trigger: commit
allowed_committers: ['packit']
dist_git_branches:
- fedora-rawhide

View file

@ -1,107 +1,65 @@
%global srcname django-compressor
%global pypi_name django_compressor
Name: python-django-compressor
Version: 1.4
Release: 4%{?dist}
Summary: Compresses linked and inline JavaScript or CSS into single cached files
License: MIT
URL: http://pypi.python.org/pypi/django_compressor/%{version}
Source0: http://pypi.python.org/packages/source/d/%{pypi_name}/%{pypi_name}-%{version}.tar.gz
# All patches are directly connected to Django-1.8
#
# cherry-pick from upstream
# https://github.com/django-compressor/django-compressor/commit/c8495264b503a595fbc89e6c8a83a402eff445c6.patch
Patch0001: django-compressor-use-get_template.patch
# cherry-pick from upstream
# https://github.com/django-compressor/django-compressor/commit/ac70fbfb7f8349e5c1150f40bf1d21ba635d0cb8.patch
Patch0002: django-compressor-fix-attributeerror-in-offline.patch
# cherry-pick from upstream
# https://github.com/django-compressor/django-compressor/commit/72b33ddbcdc41eb5af42b86329d81d96894a9d10.patch
Patch0003: django-compressor-make-compress-run-through.patch
BuildArch: noarch
BuildRequires: python2-devel
BuildRequires: python-setuptools
Requires: python-django-appconf >= 0.4
Requires: python-versiontools
%if 0%{?rhel}<7 || 0%{?fedora} < 18
Requires: Django
%else
Requires: python-django
%endif
%description
Django Compressor combines and compresses linked and inline Javascript
or CSS in a Django templates into cacheable static files by using the
``compress`` template tag. HTML in between
``{% compress js/css %}`` and ``{% endcompress %}`` is
parsed and searched for CSS or JS. These styles and scripts are subsequently
%global _desc\
Django Compressor combines and compresses linked and inline Javascript\
or CSS in a Django templates into cacheable static files by using the\
``compress`` template tag. HTML in between\
``{% compress js/css %}`` and ``{% endcompress %}`` is\
parsed and searched for CSS or JS. These styles and scripts are subsequently\
processed with optional, configurable compilers and filters.
# setuptools < 77.0.3
%if (%{defined fedora} && 0%{?fedora} <= 42) || (%{defined rhel} && 0%{?rhel} <= 10)
%bcond old_setuptools 1
%else
%bcond old_setuptools 0
%endif
Name: python-django-compressor
Version: 4.6.0
Release: %autorelease
Summary: Compresses linked and inline JavaScript or CSS into single cached files
License: MIT
URL: https://github.com/django-compressor/django-compressor
Source0: %{pypi_source django_compressor}
# deleted in 4e543307 - migration to pyproject.toml
Source1: setup.py
BuildArch: noarch
BuildRequires: python3-devel
%description %_desc
%package -n python3-%{srcname}
Summary: %{summary}
# Added in f28 cycle.
Obsoletes: python2-%{srcname} < 2.1-6
Obsoletes: python-%{srcname} < 2.1-6
%description -n python3-%{srcname} %_desc
%prep
%setup -q -n %{pypi_name}-%{version}
%patch0001 -p1
%patch0002 -p1
%patch0003 -p1
# Remove bundled egg-info
rm -rf %{pypi_name}.egg-info
# remove /usr/bin/env from scripts
#for i in compressor/tests/precompiler.py \
#compressor/filters/cssmin/cssmin.py \
#compressor/filters/jsmin/rjsmin.py;
#do sed -i -e "1d" $i;
#done
%autosetup -p1 -n %{pypi_name}-%{version}
%if %{with old_setuptools}
rm pyproject.toml
cp -p %{SOURCE1} setup.py
%endif
%generate_buildrequires
%pyproject_buildrequires
%build
%{__python} setup.py build
%pyproject_wheel
%install
%{__python} setup.py install --skip-build --root %{buildroot}
%pyproject_install
%pyproject_save_files compressor
%files
%doc README.rst LICENSE
%{python_sitelib}/compressor
%{python_sitelib}/%{pypi_name}-%{version}-py?.?.egg-info
%files -n python3-%{srcname} -f %{pyproject_files}
%doc README.rst
%changelog
* Thu Jun 18 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Wed Apr 15 2015 Matthias Runge <mrunge@redhat.com> - 1.4-3
- make compress command work on django-1.8
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Mon May 26 2014 Matthias Runge <mrunge@redhat.com> - 1.4-1
- update to 1.4 (rhbz#1100732)
* Sun Aug 04 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Wed Mar 20 2013 Matthias Runge <mrunge@redhat.com> - 1.3-1
- update to python-django-compressor-1.3 (rhbz#923735)
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.2-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Mon Sep 24 2012 Matthias Runge <mrunge@redhat.com> - 1.2-3
- add requirement Django/python-django
* Fri Sep 14 2012 Matthias Runge <mrunge@redhat.com> - 1.2-2
- add requirement python-versiontools
* Tue Sep 11 2012 Matthias Runge <mrunge@redhat.com> - 1.2-1
- Initial package.
%autochangelog

172
setup.py Normal file
View file

@ -0,0 +1,172 @@
import ast
import codecs
import os
import sys
from fnmatch import fnmatchcase
from pathlib import Path
from setuptools import find_packages, setup
class VersionFinder(ast.NodeVisitor):
def __init__(self):
self.version = None
def visit_Assign(self, node):
if node.targets[0].id == "__version__":
self.version = node.value.value
def read(*parts):
filename = os.path.join(os.path.dirname(__file__), *parts)
with codecs.open(filename, encoding="utf-8") as fp:
return fp.read()
def find_version(*parts):
finder = VersionFinder()
finder.visit(ast.parse(read(*parts)))
return finder.version
# Provided as an attribute, so you can append to these instead
# of replicating them:
standard_exclude = ("*.py", "*.pyc", "*$py.class", "*~", ".*", "*.bak")
standard_exclude_directories = (
".*",
"CVS",
"_darcs",
"./build",
"./dist",
"EGG-INFO",
"*.egg-info",
)
# (c) 2005 Ian Bicking and contributors; written for Paste (http://pythonpaste.org)
# Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php
# Note: you may want to copy this into your setup.py file verbatim, as
# you can't import this from another package, when you don't know if
# that package is installed yet.
def find_package_data(
where=".",
package="",
exclude=standard_exclude,
exclude_directories=standard_exclude_directories,
only_in_packages=True,
show_ignored=False,
):
"""
Return a dictionary suitable for use in ``package_data``
in a distutils ``setup.py`` file.
The dictionary looks like::
{'package': [files]}
Where ``files`` is a list of all the files in that package that
don't match anything in ``exclude``.
If ``only_in_packages`` is true, then top-level directories that
are not packages won't be included (but directories under packages
will).
Directories matching any pattern in ``exclude_directories`` will
be ignored; by default directories with leading ``.``, ``CVS``,
and ``_darcs`` will be ignored.
If ``show_ignored`` is true, then all the files that aren't
included in package data are shown on stderr (for debugging
purposes).
Note patterns use wildcards, or can be exact paths (including
leading ``./``), and all searching is case-insensitive.
"""
out = {}
stack = [(str(Path(where)), "", package, only_in_packages)]
while stack:
where, prefix, package, only_in_packages = stack.pop(0)
for name in os.listdir(where):
fn = os.path.join(where, name)
if os.path.isdir(fn):
bad_name = False
for pattern in exclude_directories:
if fnmatchcase(name, pattern) or fn.lower() == pattern.lower():
bad_name = True
if show_ignored:
print(
"Directory %s ignored by pattern %s" % (fn, pattern),
file=sys.stderr,
)
break
if bad_name:
continue
if os.path.isfile(os.path.join(fn, "__init__.py")) and not prefix:
if not package:
new_package = name
else:
new_package = package + "." + name
stack.append((fn, "", new_package, False))
else:
stack.append((fn, prefix + name + "/", package, only_in_packages))
elif package or not only_in_packages:
# is a file
bad_name = False
for pattern in exclude:
if fnmatchcase(name, pattern) or fn.lower() == pattern.lower():
bad_name = True
if show_ignored:
print(
"File %s ignored by pattern %s" % (fn, pattern),
file=sys.stderr,
)
break
if bad_name:
continue
out.setdefault(package, []).append(prefix + name)
return out
setup(
name="django_compressor",
version=find_version("compressor", "__init__.py"),
url="https://django-compressor.readthedocs.io/en/latest/",
project_urls={
"Source": "https://github.com/django-compressor/django-compressor",
},
license="MIT",
description=(
"Compresses linked and inline JavaScript or CSS into single cached files.",
),
long_description=read("README.rst"),
maintainer="Mathieu Pillard",
packages=find_packages(),
package_data=find_package_data(),
classifiers=[
"Development Status :: 5 - Production/Stable",
"Framework :: Django",
"Framework :: Django :: 4.2",
"Framework :: Django :: 5.0",
"Framework :: Django :: 5.1",
"Framework :: Django :: 5.2",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 3 :: Only",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Programming Language :: Python :: 3.13",
"Topic :: Internet :: WWW/HTTP",
],
zip_safe=False,
python_requires=">=3.10",
install_requires=[
"Django >= 4.2",
"django-appconf >= 1.0.3",
"rcssmin >= 1.2.1",
"rjsmin >= 1.2.4",
],
)

View file

@ -1 +1 @@
dc050f1a85f83f927f94bcb09e8bdd0f django_compressor-1.4.tar.gz
SHA512 (django_compressor-4.6.0.tar.gz) = 5bb5fc01b3beb022623b6409f710640eb51196349c0268c1d85239ce2c6a8889761c3efb16e9cc4e7b1d6bdd7f3a16ea8abf4ba9083a03500bcd10344457e0a2