#2 Update to 2.7.0; support F36 and F35
Merged a year ago by iztokf. Opened a year ago by music.
rpms/ music/python-limits v2.7.0  into  rawhide

file modified
+1
@@ -1,2 +1,3 @@ 

  /limits-2.6.2.tar.gz

  /limits-2.6.3.tar.gz

+ /limits-2.7.0.tar.gz

@@ -1,225 +0,0 @@ 

- From 9e85aea3e6a01b7ee2630099cd5365f24d101fd6 Mon Sep 17 00:00:00 2001

- From: Ali-Akber Saifee <ali@indydevs.org>

- Date: Mon, 6 Jun 2022 08:40:17 -0700

- Subject: [PATCH] Update documentation dependencies

- 

- - Switch from sphinx_panels -> sphinx_inline_tabs

- - Upgrade to sphinx 5

- ---

-  doc/source/api.rst          |  4 ++--

-  doc/source/conf.py          |  2 +-

-  doc/source/installation.rst | 14 +++++++-------

-  doc/source/quickstart.rst   |  6 +++---

-  doc/source/storage.rst      |  8 ++++----

-  doc/source/theme_config.py  |  7 -------

-  requirements/docs.txt       |  6 +++---

-  7 files changed, 20 insertions(+), 27 deletions(-)

- 

- diff --git a/doc/source/api.rst b/doc/source/api.rst

- index 120fb3f4..a6c6609d 100644

- --- a/doc/source/api.rst

- +++ b/doc/source/api.rst

- @@ -17,7 +17,7 @@ Strategies

-  ==========

-  

-  

- -.. tabbed:: Default

- +.. tab:: Default

-  

-      The available built in rate limiting strategies which expect

-      a single parameter: a subclass of :class:`~limits.storage.Storage`.

- @@ -34,7 +34,7 @@ Strategies

-  

-      .. autoclass:: RateLimiter

-  

- -.. tabbed:: Async

- +.. tab:: Async

-  

-  

-      These variants should be used in for asyncio support. These strategies

- diff --git a/doc/source/conf.py b/doc/source/conf.py

- index b2af84a3..e05fc3c8 100644

- --- a/doc/source/conf.py

- +++ b/doc/source/conf.py

- @@ -50,7 +50,7 @@

-      "sphinxext.opengraph",

-      "sphinxcontrib.programoutput",

-      "sphinx_copybutton",

- -    "sphinx_panels",

- +    "sphinx_inline_tabs",

-      "sphinx_paramlinks",

-  ]

-  

- diff --git a/doc/source/installation.rst b/doc/source/installation.rst

- index 308b462f..9c26cdeb 100644

- --- a/doc/source/installation.rst

- +++ b/doc/source/installation.rst

- @@ -8,7 +8,7 @@ Install the package with pip:

-  

-     $ pip install limits

-  

- -.. tabbed:: Redis

- +.. tab:: Redis

-  

-     .. code:: console

-  

- @@ -18,7 +18,7 @@ Install the package with pip:

-  

-     .. literalinclude:: ../../requirements/storage/redis.txt

-  

- -.. tabbed:: RedisCluster

- +.. tab:: RedisCluster

-  

-     .. code:: console

-  

- @@ -28,7 +28,7 @@ Install the package with pip:

-  

-     .. literalinclude:: ../../requirements/storage/rediscluster.txt

-  

- -.. tabbed:: Memcached

- +.. tab:: Memcached

-  

-     .. code:: console

-  

- @@ -38,7 +38,7 @@ Install the package with pip:

-  

-     .. literalinclude:: ../../requirements/storage/memcached.txt

-  

- -.. tabbed:: MongoDB

- +.. tab:: MongoDB

-  

-     .. code:: console

-  

- @@ -59,7 +59,7 @@ If you are using an async code base you can install the storage dependencies

-  along with the package using the following extras:

-  

-  

- -.. tabbed:: Redis

- +.. tab:: Redis

-  

-     .. code:: console

-  

- @@ -69,7 +69,7 @@ along with the package using the following extras:

-  

-     .. literalinclude:: ../../requirements/storage/async-redis.txt

-  

- -.. tabbed:: Memcached

- +.. tab:: Memcached

-  

-     .. code:: console

-  

- @@ -79,7 +79,7 @@ along with the package using the following extras:

-  

-     .. literalinclude:: ../../requirements/storage/async-memcached.txt

-  

- -.. tabbed:: MongoDB

- +.. tab:: MongoDB

-  

-     .. code:: console

-  

- diff --git a/doc/source/quickstart.rst b/doc/source/quickstart.rst

- index 599b26b1..6c2de62e 100644

- --- a/doc/source/quickstart.rst

- +++ b/doc/source/quickstart.rst

- @@ -8,14 +8,14 @@ Initialize the strategy & storage

-  Initialize the storage backend

-  ------------------------------

-  

- -.. tabbed:: In Memory

- +.. tab:: In Memory

-  

-      .. code::

-  

-          from limits import storage

-          memory_storage = storage.MemoryStorage()

-  

- -.. tabbed:: Memcached

- +.. tab:: Memcached

-  

-      .. code::

-  

- @@ -24,7 +24,7 @@ Initialize the storage backend

-              "memcached://localhost:11211"

-          )

-  

- -.. tabbed:: Redis

- +.. tab:: Redis

-  

-      .. code::

-  

- diff --git a/doc/source/storage.rst b/doc/source/storage.rst

- index 1e801d00..9fdadb2e 100644

- --- a/doc/source/storage.rst

- +++ b/doc/source/storage.rst

- @@ -23,7 +23,7 @@ dependency libraries and the associated storage versions.

-  The CI tests against these versions on a nightly basis and you can see

-  the results in `github <https://github.com/alisaifee/limits/actions/workflows/compatibility.yml>`_.

-  

- -.. tabbed:: Redis

- +.. tab:: Redis

-  

-     Dependency versions:

-  

- @@ -45,7 +45,7 @@ the results in `github <https://github.com/alisaifee/limits/actions/workflows/co

-  

-       .. program-output:: bash -c "cat ../../.github/workflows/compatibility.yml | grep -o -P 'LIMITS_REDIS_SENTINEL_SERVER_VERSION=[\d\.]+' | cut -d = -f 2"

-  

- -.. tabbed:: Redis Cluster

- +.. tab:: Redis Cluster

-  

-     Dependency versions:

-  

- @@ -59,7 +59,7 @@ the results in `github <https://github.com/alisaifee/limits/actions/workflows/co

-  

-       .. program-output:: bash -c "cat ../../.github/workflows/compatibility.yml | grep -o -P 'LIMITS_REDIS_SERVER_VERSION=[\d\.]+' | cut -d = -f 2"

-  

- -.. tabbed:: Memcached

- +.. tab:: Memcached

-  

-     Dependency versions:

-  

- @@ -73,7 +73,7 @@ the results in `github <https://github.com/alisaifee/limits/actions/workflows/co

-  

-       .. program-output:: bash -c "cat ../../.github/workflows/compatibility.yml | grep -o -P 'LIMITS_MEMCACHED_SERVER_VERSION=[\d\.]+' | cut -d = -f 2"

-  

- -.. tabbed:: MongoDB

- +.. tab:: MongoDB

-  

-     Dependency versions:

-  

- diff --git a/doc/source/theme_config.py b/doc/source/theme_config.py

- index 951c1850..adf0f674 100644

- --- a/doc/source/theme_config.py

- +++ b/doc/source/theme_config.py

- @@ -45,13 +45,6 @@

-          "color-highlight-on-target": colors["fg2"],

-      },

-  }

- -panels_css_variables = {

- -    "tabs-color-label-active": colors["purple"],

- -    "tabs-color-label-inactive": colors["purple2"],

- -    "tabs-color-overline": colors["purple2"],

- -    "tabs-color-underline": colors["purple2"],

- -    "tabs-size-label": "1rem",

- -}

-  

-  highlight_language = "python3"

-  pygments_style = "gruvbox-light"

- diff --git a/requirements/docs.txt b/requirements/docs.txt

- index 331f5035..2d5537b6 100644

- --- a/requirements/docs.txt

- +++ b/requirements/docs.txt

- @@ -1,10 +1,10 @@

-  -r main.txt

- -furo==2022.6.4

- -Sphinx<5

- +furo==2022.6.4.1

- +Sphinx>=5

-  sphinx-copybutton==0.5.0

-  sphinx-autobuild==2021.3.14

-  sphinxext-opengraph==0.6.2

- -sphinx-panels==0.6.0

- +sphinx-inline-tabs==2022.1.2b11

-  sphinx-paramlinks==0.5.4

-  sphinxcontrib-programoutput==0.17

-  

file modified
+47 -20
@@ -5,8 +5,20 @@ 

  # https://bugzilla.redhat.com/show_bug.cgi?id=2006555 for discussion.

  #

  # We can generate PDF documentation as a substitute.

+ %if 0%{?fc35}

+ # python3dist(sphinx-autobuild), python3dist(sphinx-copybutton), and

+ # python3dist(sphinx-inline-tabs) are missing or too old

+ %bcond_with doc_pdf

+ %else

  %bcond_without doc_pdf

+ %endif

  

+ %if 0%{?fc36} || 0%{?fc35}

+ # python3dist(redis) is too old

+ %bcond_with redis

+ %else

+ %bcond_without redis

+ %endif

  # Missing python3dist(coredis), python3dist(coredis[hiredis])

  %bcond_with async_redis

  # Missing python3dist(emcache)
@@ -22,20 +34,15 @@ 

  (Redis, Memcached & MongoDB).}

  

  Name:           python-%{pypi_name}

- Version:        2.6.3

- Release:        2%{?dist}

+ Version:        2.7.0

+ Release:        1%{?dist}

  Summary:        Utilities to implement rate limiting using various strategies

  

+ # SPDX

  License:        MIT

  URL:            https://github.com/alisaifee/%{pypi_name}

  Source0:        %{url}/archive/%{version}/%{pypi_name}-%{version}.tar.gz

  

- # Update documentation dependencies

- #

- # - Switch from sphinx_panels -> sphinx_inline_tabs

- # - Upgrade to sphinx 5

- Patch:          %{url}/commit/9e85aea3e6a01b7ee2630099cd5365f24d101fd6.patch

- 

  BuildArch:      noarch

  

  %description %_description
@@ -47,6 +54,7 @@ 

  

  %description -n python3-%{pypi_name} %_description

  

+ %if ! 0%{?fc35}

  %package doc

  Summary:        %{summary}

  
@@ -58,8 +66,9 @@ 

  

  %description doc

  Documentation for %{name}.

+ %endif

  

- %if %{with async_redis} && %{with async_memcached} && %{with async_mongodb}

+ %if %{with async_redis} && %{with async_memcached} && %{with async_mongodb} && %{with redis}

  %pyproject_extras_subpkg -n python3-%{pypi_name} all

  %endif

  %if %{with async_redis}
@@ -71,10 +80,13 @@ 

  %if %{with async_mongodb}

  %pyproject_extras_subpkg -n python3-%{pypi_name} async-mongodb

  %endif

- %pyproject_extras_subpkg -n python3-%{pypi_name} redis rediscluster memcached mongodb

+ %if %{with redis}

+ %pyproject_extras_subpkg -n python3-%{pypi_name} redis rediscluster

+ %endif

+ %pyproject_extras_subpkg -n python3-%{pypi_name} memcached mongodb

  

  %prep

- %autosetup -n %{pypi_name}-%{version} -p1

+ %autosetup -n %{pypi_name}-%{version}

  rm -fv poetry.lock

  # We only need to generate the *additional* requirements for testing.  Also, we

  # should patch out linting and coverage dependencies
@@ -85,26 +97,29 @@ 

  %if %{without hiro}

  sed -r -i '/^[[:blank:]]*(hiro)/d' requirements/test-filtered.txt

  %endif

+ %if %{without redis}

+ # If we don’t have a new enough redis, we won’t need the extra fixtures for it:

+ sed -r -i 's/^import redis/# &/' tests/conftest.py

+ %endif

  # Allow newer versions of doc dependencies.

  #

- # Drop unused and possibly unpackageable

- # (https://bugzilla.redhat.com/show_bug.cgi?id=1910798) HTML theme.

+ # Drop unused “furo” HTML theme.

  #

  # Missing dependencies (but we can build documentation anyway):

  # - python3dist(sphinx-paramlinks)

- #

- # For now, tolerate Sphinx 4 in addition to the Sphinx 5 desired by upstream;

- # the python-sphinx package will catch up shortly.

  sed -r -e 's/==/>=/' \

      -e '/^[[:blank:]]*(furo|sphinx-paramlinks)/d' \

-     -e 's/(Sphinx>=)5/\14/' \

      requirements/docs.txt | tee requirements/docs-filtered.txt

+ %if 0%{?fc36} || 0%{?fc35}

+ # Tolerate Sphinx 4 in addition to the Sphinx 5 desired by upstream.

+ sed -r -i -e 's/(Sphinx>=)5/\14/' requirements/docs-filtered.txt

+ %endif

  sed -r -i '/(paramlinks)/d' doc/source/conf.py

  # Cannot use remote intersphinx inventories in offline build:

  echo 'intersphinx_mapping.clear()' >> doc/source/conf.py

  

  %generate_buildrequires

- %if %{with async_redis} && %{with async_memcached} && %{with async_mongodb}

+ %if %{with async_redis} && %{with async_memcached} && %{with async_mongodb} && %{with redis}

  %pyproject_buildrequires -x all %{?with_tests:requirements/test-filtered.txt}

  %else

  %{pyproject_buildrequires \
@@ -113,8 +128,7 @@ 

    %{?with_async_redis:-x async-redis} \

    %{?with_async_memcached:-x async-memcached} \

    %{?with_async_mongodb:-x async-mongodb} \

-   -x redis \

-   -x rediscluster \

+   %{?with_redis:-x redis -x rediscluster} \

    -x memcached \

    -x mongodb}

  %endif
@@ -137,6 +151,12 @@ 

  ignore="${ignore-} --ignore=tests/storage/test_memory.py"

  ignore="${ignore-} --ignore=tests/aio/storage/test_memory.py"

  %endif

+ %if %{without redis}

+ # We cannot import these at all:

+ ignore="${ignore-} --ignore=tests/storage/test_redis.py"

+ ignore="${ignore-} --ignore=tests/storage/test_redis_cluster.py"

+ ignore="${ignore-} --ignore=tests/storage/test_redis_sentinel.py"

+ %endif

  # The deselected tests generally require various servers and/or Docker.

  m='not integration'

  m="${m-}${m+ and }not redis"
@@ -153,14 +173,21 @@ 

  %files -n python3-%{pypi_name} -f %{pyproject_files}

  %doc README.rst

  

+ %if ! 0%{?fc35}

  %files doc

  %license LICENSE.txt

  %if %{with doc_pdf}

  %doc doc/build/latex/%{pypi_name}.pdf

  %endif

+ %endif

  

  

  %changelog

+ * Sun Oct 09 2022 Benjamin A. Beasley <code@musicinmybrain.net> - 2.7.0-1

+ - Support F36 and F35 (close RHBZ#2133279)

+ - Don’t loosen Sphinx version bound on releases where we don’t have to do so

+ - Update to 2.7.0 (close RHBZ#2107863)

+ 

  * Fri Jul 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 2.6.3-2

  - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

  

file modified
+1 -1
@@ -1,1 +1,1 @@ 

- SHA512 (limits-2.6.3.tar.gz) = 8ee63c8a5437b6b37529b6823efa2ac5f231a85df324d5303098ca381377423b31cc4d4df6f9f25b6576fd9de4c2515d1120aa3434e777418e3fc8ebef141918

+ SHA512 (limits-2.7.0.tar.gz) = 2d37ca0a86cc1358675ee858bf7858ad6b980ee3721f1f878ed751f5049600bfe4f42bc92d0e17ad590687daf5d93ae20c2ae95c09d7c1cadc0fa7b1450bced2

Add conditionals to support building for F36 and F35 without redis and rediscluster extras. (Also, don’t build the -doc subpackage on F35.)

Update from 2.6.3 to 2.7.0.

Source diff: https://github.com/alisaifee/limits/compare/2.6.3...2.7.0
Release notes:

v2.7.0
------
Release Date: 2022-07-16

* Compatibility Updates

  * Update :pypi:`coredis` requirements to include 4.x versions
  * Remove CI / support for redis < 6.0
  * Remove python 3.7 from CI
  * Add redis 7.0 in CI

This is a compatible update suitable for stable releases. It looks like this is currently a leaf package, so no dependent packages are potentially upper-bounding the version.

Fixes:
https://bugzilla.redhat.com/show_bug.cgi?id=2107863
https://bugzilla.redhat.com/show_bug.cgi?id=2133279 (when branched and built for F36 and F35)

Metadata Update from @music:
- Request assigned

a year ago

Metadata Update from @music:
- Request assigned

a year ago

Metadata Update from @music:
- Request assigned

a year ago

Thanks @music!

Please proceed with the builds.

Pull-Request has been merged by iztokf

a year ago