Compare commits

..

No commits in common. "rawhide" and "f31" have entirely different histories.

10 changed files with 386 additions and 363 deletions

13
.gitignore vendored
View file

@ -1,5 +1,8 @@
/python-django-compressor-*.tar.gz /django_compressor-1.2.tar.gz
/django-compressor-*.tar.gz /django_compressor-1.3.tar.gz
/django_compressor-4.4.tar.gz /django_compressor-1.4.tar.gz
/django_compressor-4.5.1.tar.gz /django_compressor-1.5.tar.gz
/django_compressor-4.6.0.tar.gz /django_compressor-1.6.tar.gz
/django_compressor-2.0.tar.gz
/python-django-compressor-2.1.tar.gz
/python-django-compressor-2.2.tar.gz

View file

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

124
changelog
View file

@ -1,124 +0,0 @@
* 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

@ -0,0 +1,37 @@
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

@ -0,0 +1,162 @@
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

@ -0,0 +1,48 @@
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

View file

@ -1,16 +0,0 @@
# 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,6 +1,16 @@
%global srcname django-compressor
%global pypi_name django_compressor %global pypi_name django_compressor
%global _desc\ Name: python-django-compressor
Version: 2.2
Release: 6%{?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: https://github.com/django-compressor/django-compressor/archive/%{version}.tar.gz#/%{name}-%{version}.tar.gz
BuildArch: noarch
%global _description\
Django Compressor combines and compresses linked and inline Javascript\ Django Compressor combines and compresses linked and inline Javascript\
or CSS in a Django templates into cacheable static files by using the\ or CSS in a Django templates into cacheable static files by using the\
``compress`` template tag. HTML in between\ ``compress`` template tag. HTML in between\
@ -8,58 +18,136 @@ or CSS in a Django templates into cacheable static files by using the\
parsed and searched for CSS or JS. These styles and scripts are subsequently\ parsed and searched for CSS or JS. These styles and scripts are subsequently\
processed with optional, configurable compilers and filters. processed with optional, configurable compilers and filters.
# setuptools < 77.0.3 %description %_description
%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 %package -n python3-django-compressor
Version: 4.6.0 Summary: Compresses linked and inline JavaScript or CSS into single cached files
Release: %autorelease Requires: python3-versiontools
Summary: Compresses linked and inline JavaScript or CSS into single cached files Requires: python3-django-appconf
Requires: python3-django
Requires: python3-rjsmin
Requires: python3-rcssmin
License: MIT BuildRequires: python3-devel
URL: https://github.com/django-compressor/django-compressor BuildRequires: python3-setuptools
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. # Added in f28 cycle.
Obsoletes: python2-%{srcname} < 2.1-6 Obsoletes: python2-django-compressor < 2.1-6
Obsoletes: python-%{srcname} < 2.1-6 Obsoletes: python-django-compressor < 2.1-6
%description -n python3-django-compressor
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.
%description -n python3-%{srcname} %_desc
%prep %prep
%autosetup -p1 -n %{pypi_name}-%{version} %autosetup -n django-compressor-%{version}
%if %{with old_setuptools}
rm pyproject.toml
cp -p %{SOURCE1} setup.py
%endif
%generate_buildrequires
%pyproject_buildrequires
%build %build
%pyproject_wheel %py3_build
%install %install
%pyproject_install %py3_install
%pyproject_save_files compressor
%files -n python3-%{srcname} -f %{pyproject_files}
%files -n python3-django-compressor
%doc README.rst %doc README.rst
%license LICENSE
%{python3_sitelib}/compressor
%{python3_sitelib}/%{pypi_name}-%{version}-py%{python3_version}.egg-info
%changelog %changelog
%autochangelog * 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.

172
setup.py
View file

@ -1,172 +0,0 @@
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 @@
SHA512 (django_compressor-4.6.0.tar.gz) = 5bb5fc01b3beb022623b6409f710640eb51196349c0268c1d85239ce2c6a8889761c3efb16e9cc4e7b1d6bdd7f3a16ea8abf4ba9083a03500bcd10344457e0a2 SHA512 (python-django-compressor-2.2.tar.gz) = 323e74a56be95f7999595d625e5dac53977590e668113a5376f2e3ad86e7a1bc0827400551d3576233177d25302381e2e075651de0cfaebf94d29255a07b8a03