Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package python-django-tables2 for 
openSUSE:Factory checked in at 2023-04-16 16:07:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-django-tables2 (Old)
 and      /work/SRC/openSUSE:Factory/.python-django-tables2.new.19717 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-django-tables2"

Sun Apr 16 16:07:26 2023 rev:7 rq:1079723 version:2.5.3

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/python-django-tables2/python-django-tables2.changes  
    2023-02-17 16:45:28.395020848 +0100
+++ 
/work/SRC/openSUSE:Factory/.python-django-tables2.new.19717/python-django-tables2.changes
   2023-04-16 16:07:45.821055050 +0200
@@ -1,0 +2,12 @@
+Sun Apr 16 08:15:06 UTC 2023 - Dirk Müller <dmuel...@suse.com>
+
+- update to 2.5.3:
+  * Assign request to table before anything else in
+    `RequestConfig.configure()` (#888) fixes: #865
+  * Add type hints to get_context_data (#895) by @mschoettle
+  * Document hidden table attributes setting (#897) by
+    @mschoettle
+  * Fix building of the docs (#900) by @danielroseman
+  * Add template bootstrap5-responsive.html (#896) by @mschoettle
+
+-------------------------------------------------------------------

Old:
----
  django-tables2-2.5.2.tar.gz

New:
----
  django-tables2-2.5.3.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-django-tables2.spec ++++++
--- /var/tmp/diff_new_pack.0RUHiZ/_old  2023-04-16 16:07:46.341058048 +0200
+++ /var/tmp/diff_new_pack.0RUHiZ/_new  2023-04-16 16:07:46.345058071 +0200
@@ -19,7 +19,7 @@
 %define skip_python2 1
 %define skip_python36 1
 Name:           python-django-tables2
-Version:        2.5.2
+Version:        2.5.3
 Release:        0
 Summary:        Table/data-grid framework for Django
 License:        BSD-2-Clause

++++++ django-tables2-2.5.2.tar.gz -> django-tables2-2.5.3.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/.github/workflows/ci.yml 
new/django-tables2-2.5.3/.github/workflows/ci.yml
--- old/django-tables2-2.5.2/.github/workflows/ci.yml   2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/.github/workflows/ci.yml   2023-03-06 
07:18:04.000000000 +0100
@@ -49,7 +49,7 @@
         with:
           python-version: ${{ matrix.python-version }}
       - uses: actions/checkout@v3
-      - uses: actions/cache@v3.2.4
+      - uses: actions/cache@v3.2.6
         with:
           path: ~/.cache/pip
           key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
@@ -63,3 +63,20 @@
           python -m pip install coverage
           python -m pip install -r requirements/common.pip
       - run: coverage run --source=django_tables2 manage.py test
+
+  build_docs:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v3
+      - uses: actions/setup-python@v4.5.0
+        with:
+            python-version: 3.9
+            cache: 'pip'
+            cache-dependency-path: |
+              docs/requirements.txt
+              common/requirements.txt
+      - name: Install and build
+        run: |
+          cd docs
+          python -m pip install -r requirements.txt
+          make html
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/CHANGELOG.md 
new/django-tables2-2.5.3/CHANGELOG.md
--- old/django-tables2-2.5.2/CHANGELOG.md       2023-02-07 08:47:16.000000000 
+0100
+++ new/django-tables2-2.5.3/CHANGELOG.md       2023-03-06 07:18:04.000000000 
+0100
@@ -1,39 +1,46 @@
 # Change log
 
-# 2.5.2 (2023-02-07)
-- Assign `request` to table before anything else in 
`RequestConfig.configure()` 
([#888](https://github.com/jieter/django-tables2/pull/888)) fixes: 
[#865](https://github.com/jieter/django-tables2/issues/865)
+## 2.5.3 (2023-03-05)
+ - Assign request to table before anything else in `RequestConfig.configure()` 
([#888](https://github.com/jieter/django-tables2/pull/888)) fixes: 
[#865](https://github.com/jieter/django-tables2/issues/865)
+ - Add type hints to get_context_data 
([#895](https://github.com/jieter/django-tables2/pull/895)) by 
[@mschoettle](https://github.com/mschoettle)
+ - Document hidden table attributes setting 
([#897](https://github.com/jieter/django-tables2/pull/897)) by 
[@mschoettle](https://github.com/mschoettle)
+ - Fix building of the docs 
([#900](https://github.com/jieter/django-tables2/pull/900)) by 
[@danielroseman](https://github.com/danielroseman)
+ - Add template bootstrap5-responsive.html 
([#896](https://github.com/jieter/django-tables2/pull/896)) by 
[@mschoettle](https://github.com/mschoettle)
 
-# 2.5.1 (2023-01-07)
+## 2.5.2 (2023-02-07)
+ - Assign `request` to table before anything else in 
`RequestConfig.configure()` 
([#888](https://github.com/jieter/django-tables2/pull/888)) fixes: 
[#865](https://github.com/jieter/django-tables2/issues/865)
+
+## 2.5.1 (2023-01-07)
  - `TableMixinBase`: implement `get_paginate_by` 
([#811](https://github.com/jieter/django-tables2/pull/811)) by 
[@Alirezaja1384](https://github.com/Alirezaja1384)
 
-# 2.5.0 (2022-12-27)
-- Dropped support for python 3.6, added support for python 3.11
-- Add django_tables2/bootstrap4-responsive.html 
([#874](https://github.com/jieter/django-tables2/pull/874)) by 
[@botlabsDev](https://github.com/botlabsDev)
-- Pass record/value to `LinkColumn`'s attrs callables too 
([#852](https://github.com/jieter/django-tables2/pull/852)) by 
[@wsldankers](https://github.com/wsldankers)
+## 2.5.0 (2022-12-27)
+ - Dropped support for python 3.6, added support for python 3.11
+ - Add django_tables2/bootstrap4-responsive.html 
([#874](https://github.com/jieter/django-tables2/pull/874)) by 
[@botlabsDev](https://github.com/botlabsDev)
+ - Pass record/value to `LinkColumn`'s attrs callables too 
([#852](https://github.com/jieter/django-tables2/pull/852)) by 
[@wsldankers](https://github.com/wsldankers)
  - Add template `bootstrap5.html` to support bootstrap 5 
([#880](https://github.com/jieter/django-tables2/pull/880), fixes 
[#796](https://github.com/jieter/django-tables2/issues/796)
 
-# 2.4.1 (2021-10-04)
-- Add Persian (Farsi) locale 
([#806](https://github.com/jieter/django-tables2/pull/806)) by 
[@Alirezaja1384](https://github.com/jieter/django-tables2/commits?author=Alirezaja1384)
-- Improved error message if openpyxl is not installed 
([#816](https://github.com/jieter/django-tables2/pull/816))
-- Use correct mime type for xlsx (fixes: 
[#810](https://github.com/jieter/django-tables2/issues/810))
-- Add support for django 4.0, drop support for python 3.5 
([#822](https://github.com/jieter/django-tables2/issues/822))
+## 2.4.1 (2021-10-04)
+ - Add Persian (Farsi) locale 
([#806](https://github.com/jieter/django-tables2/pull/806)) by 
[@Alirezaja1384](https://github.com/jieter/django-tables2/commits?author=Alirezaja1384)
+ - Improved error message if openpyxl is not installed 
([#816](https://github.com/jieter/django-tables2/pull/816))
+ - Use correct mime type for xlsx (fixes: 
[#810](https://github.com/jieter/django-tables2/issues/810))
+ - Add support for django 4.0, drop support for python 3.5 
([#822](https://github.com/jieter/django-tables2/issues/822))
 
-# 2.4.0 (2021-05-15)
+## 2.4.0 (2021-05-15)
 - Add support for django 3.2 and python 3.9, drop support for django 3.0
 - Add Django 3.0 and 3.1 trove classifiers 
[#803](https://github.com/jieter/django-tables2/pull/803) by 
[@Asday](https://github.com/Asday)
 - Strip leading and trailing whitespace from TemplateColumn.value() 
[#794](https://github.com/jieter/django-tables2/pull/794) by 
[@jeremystretch](https://github.com/jeremystretch)
 - Providing link for django-bootstrap3 
[#793](https://github.com/jieter/django-tables2/pull/793) by 
[@TareqMonwer](https://github.com/TareqMonwer)
 - Fix for crash on windows while deleting temp file 
[#788](https://github.com/jieter/django-tables2/pull/788)
 
-# 2.3.4 (2021-01-10)
+## 2.3.4 (2021-01-10)
 - Removed deprecation warnings with django==3.1 regarding `JSONField` 
[#785](https://github.com/jieter/django-tables2/pull/785)
 
-# 2.3.3 (2020-10-29)
+## 2.3.3 (2020-10-29)
 - Use `table.default` for empty `ManyToMany` relations 
([#773](https://github.com/jieter/django-tables2/pull/773)) fixes: 
[#769](https://github.com/jieter/django-tables2/issues/769)
 - Pass record/value to `CheckboxColumn`'s `attrs` callables too 
([#774](https://github.com/jieter/django-tables2/pull/774)), fixes: 
[#762](https://github.com/jieter/django-tables2/issues/762)
 
-# 2.3.2 (2020-10-10)
-- Fix popping the extra_context of TemplateColumn 
[#767](https://github.com/jieter/django-tables2/pull/767) by 
[@bernhardmiller](https://github.com/bernhardmiller)
+## 2.3.2 (2020-10-10)
+ - Fix popping the extra_context of TemplateColumn 
[#767](https://github.com/jieter/django-tables2/pull/767) by 
[@bernhardmiller](https://github.com/bernhardmiller)
  - Fix typo for the translation of the word 'next' in greek 
[#759]](https://github.com/jieter/django-tables2/pull/759) by 
[@orfeasa](https://github.com/orfeasa)
  - Add `format_html` import to prevent `NameError` 
[#752](https://github.com/jieter/django-tables2/pull/752) by 
[@MBfromOK](https://github.com/MBfromOK)
  - Fixed Russian translation 
[#768](https://github.com/jieter/django-tables2/pull/768) by 
[@Real-Gecko](https://github.com/Real-Gecko)
@@ -129,8 +136,8 @@
 ## 2.0.0a3 (2018-05-24)
 Hello from [DjangoCon Europe](https://2018.djangocon.eu/)!
 
-- Fix table prefix being overwritten in `MultiTableView`, 
[#576](https://github.com/jieter/django-tables2/pull/576) by 
[@ETinLV](https://github.com/ETinLV), (fixes 
[#572](https://github.com/jieter/django-tables2/issues/572))
-- Fix `empty_text` cannot be translated (fixes 
[#579](https://github.com/jieter/django-tables2/issues/579))
+ - Fix table prefix being overwritten in `MultiTableView`, 
[#576](https://github.com/jieter/django-tables2/pull/576) by 
[@ETinLV](https://github.com/ETinLV), (fixes 
[#572](https://github.com/jieter/django-tables2/issues/572))
+ - Fix `empty_text` cannot be translated (fixes 
[#579](https://github.com/jieter/django-tables2/issues/579))
 
 ## 2.0.0a2 (2018-04-13)
  - Another round of template cleanup.
@@ -147,6 +154,7 @@
  - Cleaned up templates to add consistency in what is presented across all 
templates.
  - Added bootstrap4.html template
  - Fixed translation inconsistencies.
+
 ### breaking changes 2.0.0
  - Appearance of the paginators might be different from the current 1.x 
templates. Use a custom template if you need to keep the appearance the same.
  - Removed the `template` argument to the table constructor, use 
`template_name` instead.
@@ -164,8 +172,7 @@
 
 ## 1.21.2 (2018-03-26)
  - Moved table instantiation from `get_context_data` to `get_tables` 
[#554](https://github.com/jieter/django-tables2/pull/554) by 
[@sdolemelipone](https://github.com/sdolemelipone)
- - Pass request as kwarg to `template.render()`, rather than as part of 
context.
- (fixes [#552](https://github.com/jieter/django-tables2/issues/552))
+ - Pass request as kwarg to `template.render()`, rather than as part of 
context. (fixes [#552](https://github.com/jieter/django-tables2/issues/552))
 
 ## 1.21.1 (2018-03-12)
  - Do not perform extra `COUNT()` queries for non-paginated tables. Fixes 
[#551](https://github.com/jieter/django-tables2/issues/551)
@@ -202,6 +209,7 @@
 
 ## 1.16.0 (2017-11-27)
 This is the last version supporting Django 1.8, 1.9 and 1.10. Django 1.8 is 
only supported until April 2018, so consider upgrading to Django 1.11!
+
  - Added `tf` dictionary to `Column.attrs` with default values for the footer, 
so footers now have `class` attribute by default 
[#501](https://github.com/jieter/django-tables2/pull/501) by 
[@mpasternak](https://github.com/mpasternak)
 
 ## 1.15.0 (2017-11-23)
@@ -236,7 +244,7 @@
  - Fixed display of pinned rows if table has no data. 
[#477](https://github.com/bradleyayers/django-tables2/pull/477) by 
[@khirstinova](https://github.com/khirstinova)
 
 ## 1.10.0 (2017-06-30)
- - Added `ManyToManyColumn` automatically added for `ManyToManyField`s.
+- Added `ManyToManyColumn` automatically added for `ManyToManyField`s.
 
 ## 1.9.1 (2017-06-29)
  - Allow customizing the value used in `Table.as_values()` (when using a 
`render_<name>` method) using a `value_<name>` method. (fixes 
[#458](https://github.com/bradleyayers/django-tables2/issues/458))
@@ -270,6 +278,7 @@
 
 ## 1.5.0 (2017-04-18)
 _Full disclosure: as of april 1st, 2017, I am an employee of 
[Zostera](http://zostera.nl/), as such I will continue to maintain and improve 
django-tables2._
+
  - Made `TableBase.as_values()` an iterator 
([#432](https://github.com/bradleyayers/django-tables2/pull/432) by 
[@pziarsolo](https://github.com/pziarsolo))
  - Added `JSONColumn` for data in JSON format.
  - Added `__all__` in `django_tables2/__init__.py` and 
`django_tables2/columns/__init__.py`
@@ -297,8 +306,7 @@
  - Documentation for `None`-column attributes 
[#401](https://github.com/bradleyayers/django-tables2/pull/401) by 
[@dyve](https://github.com/dyve)
 
 ## 1.2.8 (2016-12-21)
- - `None`-column attributes on child class overwrite column attributes of 
parent class
- [#400](https://github.com/bradleyayers/django-tables2/pull/400) by 
[@dyve](https://github.com/dyve)
+ - `None`-column attributes on child class overwrite column attributes of 
parent class [#400](https://github.com/bradleyayers/django-tables2/pull/400) by 
[@dyve](https://github.com/dyve)
 
 ## 1.2.7 (2016-12-12)
 - Apply `title` to a column's `verbose_name` when it is derived from a model, 
fixes [#249](https://github.com/bradleyayers/django-tables2/issues/249). 
([#382](https://github.com/bradleyayers/django-tables2/pull/382) by 
[@shawnnapora](https://github.com/shawnnapora))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/django_tables2/__init__.py 
new/django-tables2-2.5.3/django_tables2/__init__.py
--- old/django-tables2-2.5.2/django_tables2/__init__.py 2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/django_tables2/__init__.py 2023-03-06 
07:18:04.000000000 +0100
@@ -20,7 +20,7 @@
 from .utils import A
 from .views import MultiTableMixin, SingleTableMixin, SingleTableView
 
-__version__ = "2.5.2"
+__version__ = "2.5.3"
 
 __all__ = (
     "Table",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/django_tables2/rows.py 
new/django-tables2-2.5.3/django_tables2/rows.py
--- old/django-tables2-2.5.2/django_tables2/rows.py     2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/django_tables2/rows.py     2023-03-06 
07:18:04.000000000 +0100
@@ -311,15 +311,13 @@
 
     def __iter__(self):
         # Top pinned rows
-        for pinned_record in 
self.generator_pinned_row(self.pinned_data.get("top")):
-            yield pinned_record
+        yield from self.generator_pinned_row(self.pinned_data.get("top"))
 
         for record in self.data:
             yield BoundRow(record, table=self.table)
 
         # Bottom pinned rows
-        for pinned_record in 
self.generator_pinned_row(self.pinned_data.get("bottom")):
-            yield pinned_record
+        yield from self.generator_pinned_row(self.pinned_data.get("bottom"))
 
     def __len__(self):
         length = len(self.data)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/django_tables2/tables.py 
new/django-tables2-2.5.3/django_tables2/tables.py
--- old/django-tables2-2.5.2/django_tables2/tables.py   2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/django_tables2/tables.py   2023-03-06 
07:18:04.000000000 +0100
@@ -345,7 +345,7 @@
         self._sequence = sequence.expand(base_columns.keys())
 
         # reorder columns based on sequence.
-        base_columns = OrderedDict(((x, base_columns[x]) for x in sequence if 
x in base_columns))
+        base_columns = OrderedDict((x, base_columns[x]) for x in sequence if x 
in base_columns)
         self.columns = columns.BoundColumns(self, base_columns)
         # `None` value for order_by means no order is specified. This means we
         # `shouldn't touch our data's ordering in any way. *However*
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/django-tables2-2.5.2/django_tables2/templates/django_tables2/bootstrap5-responsive.html
 
new/django-tables2-2.5.3/django_tables2/templates/django_tables2/bootstrap5-responsive.html
--- 
old/django-tables2-2.5.2/django_tables2/templates/django_tables2/bootstrap5-responsive.html
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/django-tables2-2.5.3/django_tables2/templates/django_tables2/bootstrap5-responsive.html
 2023-03-06 07:18:04.000000000 +0100
@@ -0,0 +1,13 @@
+{% extends 'django_tables2/bootstrap4.html' %}
+
+{% block table-wrapper %}
+<div class="table-container table-responsive">
+    {% block table %}
+        {{ block.super }}
+    {% endblock table %}
+
+    {% block pagination %}
+        {{ block.super }}
+    {% endblock pagination %}
+</div>
+{% endblock table-wrapper %}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/django_tables2/utils.py 
new/django-tables2-2.5.3/django_tables2/utils.py
--- old/django-tables2-2.5.2/django_tables2/utils.py    2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/django_tables2/utils.py    2023-03-06 
07:18:04.000000000 +0100
@@ -281,7 +281,7 @@
             >>> order_by.opposite
             ('-name', 'age')
         """
-        return type(self)((o.opposite for o in self))
+        return type(self)(o.opposite for o in self)
 
 
 class Accessor(str):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/django_tables2/views.py 
new/django-tables2-2.5.3/django_tables2/views.py
--- old/django-tables2-2.5.2/django_tables2/views.py    2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/django_tables2/views.py    2023-03-06 
07:18:04.000000000 +0100
@@ -1,5 +1,5 @@
 from itertools import count
-from typing import Optional
+from typing import Any, Dict, Optional
 
 from django.core.exceptions import ImproperlyConfigured
 from django.views.generic.list import ListView
@@ -152,7 +152,7 @@
         """
         return {}
 
-    def get_context_data(self, **kwargs):
+    def get_context_data(self, **kwargs: Any) -> Dict[str, Any]:
         """
         Overridden version of `.TemplateResponseMixin` to inject the table into
         the template's context.
@@ -227,7 +227,7 @@
         """
         return self.tables_data
 
-    def get_context_data(self, **kwargs):
+    def get_context_data(self, **kwargs: Any) -> Dict[str, Any]:
         context = super().get_context_data(**kwargs)
         tables = self.get_tables()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/docs/conf.py 
new/django-tables2-2.5.3/docs/conf.py
--- old/django-tables2-2.5.2/docs/conf.py       2023-02-07 08:47:16.000000000 
+0100
+++ new/django-tables2-2.5.3/docs/conf.py       2023-03-06 07:18:04.000000000 
+0100
@@ -4,12 +4,11 @@
 from pathlib import Path
 
 import sphinx_rtd_theme
-from recommonmark.parser import CommonMarkParser
 
 os.environ["DJANGO_SETTINGS_MODULE"] = "example.settings"
 
 # import project
-sys.path.insert(0, Path("../").resolve())
+sys.path.insert(0, str(Path("../").resolve()))
 
 project = "django-tables2"
 with open("../django_tables2/__init__.py", "rb") as f:
@@ -19,16 +18,12 @@
 
 default_role = "py:obj"
 
-# allow markdown to be able to include the CHANGELOG.md
-source_parsers = {".md": CommonMarkParser}
-source_suffix = [".rst", ".md"]
-
 # symlink CHANGELOG.md from repo root to the pages dir.
 basedir = Path(__file__).parent.parent
 filename = "CHANGELOG.md"
 target = basedir / "docs" / "pages" / filename
-if not target.is_symlink:
-    (basedir / filename).symlink_to(target)
+if not target.is_symlink():
+    target.symlink_to(basedir / filename)
 
 extensions = [
     "sphinx.ext.autodoc",
@@ -37,6 +32,7 @@
     "sphinx.ext.viewcode",
     "sphinx.ext.doctest",
     "sphinxcontrib.spelling",
+    "myst_parser",
 ]
 
 intersphinx_mapping = {
@@ -68,3 +64,5 @@
 # Boolean controlling whether suggestions for misspelled words are printed.
 # Defaults to False.
 spelling_show_suggestions = True
+
+myst_heading_anchors = 3
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/docs/pages/api-reference.rst 
new/django-tables2-2.5.3/docs/pages/api-reference.rst
--- old/django-tables2-2.5.2/docs/pages/api-reference.rst       2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/docs/pages/api-reference.rst       2023-03-06 
07:18:04.000000000 +0100
@@ -20,9 +20,7 @@
 
 .. autoclass:: django_tables2.tables.Table
     :members: paginate, as_html, as_values, get_column_class_names,
-              before_render,
-              get_top_pinned_data, get_bottom_pinned_data,
-              get_column_class_names
+              before_render, get_top_pinned_data, get_bottom_pinned_data
 
 
 `.Table.Meta`
@@ -378,7 +376,6 @@
 ~~~~~~~~~~~~~~~~~~~~~
 
 .. autoclass:: django_tables2.export.ExportMixin
-    :members:
 
 `.LazyPaginator`
 ~~~~~~~~~~~~~~~~
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/docs/pages/custom-rendering.rst 
new/django-tables2-2.5.3/docs/pages/custom-rendering.rst
--- old/django-tables2-2.5.2/docs/pages/custom-rendering.rst    2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/docs/pages/custom-rendering.rst    2023-03-06 
07:18:04.000000000 +0100
@@ -25,12 +25,26 @@
     >>> # renders to something like this:
     '<table class="mytable">...'
 
+By default, django-tables2 looks for the ``DJANGO_TABLES2_TABLE_ATTRS``
+setting which allows you to define attributes globally for all tables.
+For example, to have a Bootstrap5 table with hoverable rows 
+and a light table header define it as follows:
+
+.. sourcecode:: python
+
+    DJANGO_TABLES2_TABLE_ATTRS = {
+        'class': 'table table-hover',
+        'thead': {
+            'class': 'table-light',
+        },
+    }
+
 You can also specify ``attrs`` attribute when creating a column. ``attrs``
 is a dictionary which contains attributes which by default get rendered
 on various tags involved with rendering a column. You can read more about
 them in :ref:`column-attributes`. django-tables2 supports three different
 dictionaries, this way you can give different attributes
-to column tags in table header (``th``), rows (``td``) or footer (``tf``)
+to column tags in table header (``th``), rows (``td``) or footer (``tf``).
 
 .. sourcecode:: python
 
@@ -54,23 +68,26 @@
 
 We ship a couple of different templates:
 
-======================================== 
======================================================
-Template name                            Description
-======================================== 
======================================================
-django_tables2/table.html                Basic table template (default).
-django_tables2/bootstrap.html            Template using bootstrap 3 
structure/classes
-django_tables2/bootstrap4.html           Template using bootstrap 4 
structure/classes
-django_tables2/bootstrap-responsive.html Same as bootstrap, but wrapped in 
``.table-responsive``
-django_tables2/semantic.html             Template using semantic UI
-======================================== 
======================================================
+=========================================  
======================================================
+Template name                              Description
+=========================================  
======================================================
+django_tables2/table.html                  Basic table template (default).
+django_tables2/bootstrap.html              Template using bootstrap 3 
structure/classes
+django_tables2/bootstrap-responsive.html   Same as bootstrap, but wrapped in 
``.table-responsive``
+django_tables2/bootstrap4.html             Template using bootstrap 4 
structure/classes
+django_tables2/bootstrap4-responsive.html  Same as bootstrap4, but wrapped in 
``.table-responsive``
+django_tables2/bootstrap5.html             Template using bootstrap 5 
structure/classes
+django_tables2/bootstrap5-responsive.html  Same as bootstrap5, but wrapped in 
``.table-responsive``
+django_tables2/semantic.html               Template using semantic UI
+=========================================  
======================================================
 
 By default, django-tables2 looks for the ``DJANGO_TABLES2_TEMPLATE`` setting
 which is ``django_tables2/table.html`` by default.
 
-If you use bootstrap 3 for your site, it makes sense to set the default to
-the bootstrap 3 template::
+If you use bootstrap 5 for your site, it makes sense to set the default to
+the bootstrap 5 template::
 
-    DJANGO_TABLES2_TEMPLATE = "django_tables2/bootstrap.html"
+    DJANGO_TABLES2_TEMPLATE = "django_tables2/bootstrap5.html"
 
 If you want to specify a custom template for selected tables in your project,
 you can set a ``template_name`` attribute to your custom ``Table.Meta`` class::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/docs/pages/export.rst 
new/django-tables2-2.5.3/docs/pages/export.rst
--- old/django-tables2-2.5.2/docs/pages/export.rst      2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/docs/pages/export.rst      2023-03-06 
07:18:04.000000000 +0100
@@ -12,7 +12,7 @@
 
 .. note::
    For all supported formats (xls, xlsx, etc.), you must install additional 
dependencies:
-   `Installing tablib: 
<https://tablib.readthedocs.io/en/stable/install/#installing-tablib`_
+   `Installing tablib 
<https://tablib.readthedocs.io/en/stable/install/#installing-tablib>`_
 
 
 Adding ability to export the table data to a class based views looks like 
this::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/docs/requirements.txt 
new/django-tables2-2.5.3/docs/requirements.txt
--- old/django-tables2-2.5.2/docs/requirements.txt      2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/docs/requirements.txt      2023-03-06 
07:18:04.000000000 +0100
@@ -1,7 +1,7 @@
 -r ../requirements/common.pip
-Sphinx==2.2.0
-sphinx_rtd_theme==0.5.0
-recommonmark==0.4.0
+Sphinx==6.1.3
+sphinx_rtd_theme==1.2.0
 django
-sphinxcontrib-spelling==5.2.0
-pyenchant==3.1.1
+sphinxcontrib-spelling==8.0.0
+pyenchant==3.2.2
+myst-parser==0.19.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/django-tables2-2.5.2/example/app/migrations/0001_initial.py 
new/django-tables2-2.5.3/example/app/migrations/0001_initial.py
--- old/django-tables2-2.5.2/example/app/migrations/0001_initial.py     
2023-02-07 08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/example/app/migrations/0001_initial.py     
2023-03-06 07:18:04.000000000 +0100
@@ -1,5 +1,4 @@
 # Generated by Django 1.11.5 on 2017-09-22 13:23
-from __future__ import unicode_literals
 
 from django.db import migrations, models
 import django.db.models.deletion
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/tests/columns/test_general.py 
new/django-tables2-2.5.3/tests/columns/test_general.py
--- old/django-tables2-2.5.2/tests/columns/test_general.py      2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/tests/columns/test_general.py      2023-03-06 
07:18:04.000000000 +0100
@@ -308,7 +308,7 @@
         with self.assertRaises(ImproperlyConfigured):
 
             @library.register
-            class Klass(object):
+            class Klass:
                 pass
 
         self.assertEqual(len(library.columns), currently_registered)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/django-tables2-2.5.2/tests/columns/test_templatecolumn.py 
new/django-tables2-2.5.3/tests/columns/test_templatecolumn.py
--- old/django-tables2-2.5.2/tests/columns/test_templatecolumn.py       
2023-02-07 08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/tests/columns/test_templatecolumn.py       
2023-03-06 07:18:04.000000000 +0100
@@ -15,7 +15,7 @@
                 self.pinned = data
                 revised_data = []
 
-                super(TestOnlyPinnedTable, self).__init__(revised_data)
+                super().__init__(revised_data)
 
             def get_top_pinned_data(self):
                 return self.pinned
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/tests/test_export.py 
new/django-tables2-2.5.3/tests/test_export.py
--- old/django-tables2-2.5.2/tests/test_export.py       2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/tests/test_export.py       2023-03-06 
07:18:04.000000000 +0100
@@ -259,9 +259,9 @@
         response = OccupationView.as_view()(build_request("/?_export=xls"))
         data = response.content
         # binary data, so not possible to compare to an exact expectation
-        self.assertTrue(data.find("Vlaanderen".encode()))
-        self.assertTrue(data.find("Ecoloog".encode()))
-        self.assertTrue(data.find("Timmerman".encode()))
+        self.assertTrue(data.find(b"Vlaanderen"))
+        self.assertTrue(data.find(b"Ecoloog"))
+        self.assertTrue(data.find(b"Timmerman"))
 
     def test_datetime_xls(self):
         """Verify datatime objects can be exported to xls."""
@@ -294,7 +294,7 @@
         self.assertEqual(data, expected_csv)
 
         response = View.as_view()(build_request("/?_export=xls"))
-        self.assertIn("07/22/2019 1:11 p.m.".encode(), response.content)
+        self.assertIn(b"07/22/2019 1:11 p.m.", response.content)
 
     def test_export_invisible_columns(self):
         """Verify columns with visible=False *do* get exported."""
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/tests/test_models.py 
new/django-tables2-2.5.3/tests/test_models.py
--- old/django-tables2-2.5.2/tests/test_models.py       2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/tests/test_models.py       2023-03-06 
07:18:04.000000000 +0100
@@ -90,7 +90,7 @@
         class Table(tables.Table):
             class Meta:
                 model = Person
-                fields = (str("first_name"),)
+                fields = ("first_name",)
 
         table = Table(Person.objects.all())
         self.assertEqual(table.rows[0].get_cell("first_name"), "Bradley")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/tests/test_templatetags.py 
new/django-tables2-2.5.3/tests/test_templatetags.py
--- old/django-tables2-2.5.2/tests/test_templatetags.py 2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/tests/test_templatetags.py 2023-03-06 
07:18:04.000000000 +0100
@@ -179,7 +179,7 @@
         )
         url = parse(template.render(context)).text
         qs = parse_qs(url[1:])  # trim the ?
-        self.assertEqual(set(qs.keys()), set(["name", "c"]))
+        self.assertEqual(set(qs.keys()), {"name", "c"})
 
     def test_only_without(self):
         context = Context({"request": build_request("/?a=b&name=dog&c=5"), 
"a_var": "a"})
@@ -188,7 +188,7 @@
         )
         url = parse(template.render(context)).text
         qs = parse_qs(url[1:])  # trim the ?
-        self.assertEqual(set(qs.keys()), set(["c"]))
+        self.assertEqual(set(qs.keys()), {"c"})
 
     def test_querystring_syntax_error(self):
         with self.assertRaisesMessage(TemplateSyntaxError, "Malformed 
arguments to 'querystring'"):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/django-tables2-2.5.2/tests/test_utils.py 
new/django-tables2-2.5.3/tests/test_utils.py
--- old/django-tables2-2.5.2/tests/test_utils.py        2023-02-07 
08:47:16.000000000 +0100
+++ new/django-tables2-2.5.3/tests/test_utils.py        2023-03-06 
07:18:04.000000000 +0100
@@ -49,7 +49,7 @@
         assert sorted(items, key=obt.key) == [{"a": 1, "b": 3}, {"a": 1, "b": 
2}]
 
     def test_sort_key_empty_comes_first(self):
-        obt = OrderByTuple(("a"))
+        obt = OrderByTuple("a")
         items = [{"a": 1}, {"a": ""}, {"a": 2}]
         assert sorted(items, key=obt.key) == [{"a": ""}, {"a": 1}, {"a": 2}]
 

Reply via email to