Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-fakeredis for
openSUSE:Factory checked in at 2025-06-26 11:34:30
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-fakeredis (Old)
and /work/SRC/openSUSE:Factory/.python-fakeredis.new.7067 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-fakeredis"
Thu Jun 26 11:34:30 2025 rev:30 rq:1288470 version:2.30.1
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-fakeredis/python-fakeredis.changes
2025-06-24 20:46:06.424738025 +0200
+++
/work/SRC/openSUSE:Factory/.python-fakeredis.new.7067/python-fakeredis.changes
2025-06-26 11:34:47.962528162 +0200
@@ -1,0 +2,9 @@
+Tue Jun 24 11:41:38 UTC 2025 - Markéta Machová <[email protected]>
+
+- Update to 2.30.1
+ * Move LICENSE file to fakeredis/ on build
+ * Show warning for deprecated parameter only if parameter is included
+ in instantiation
+ * Replace deprecated event_loop fixture
+
+-------------------------------------------------------------------
Old:
----
fakeredis-2.30.0-gh.tar.gz
New:
----
fakeredis-2.30.1-gh.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-fakeredis.spec ++++++
--- /var/tmp/diff_new_pack.XBY5Dm/_old 2025-06-26 11:34:48.694558530 +0200
+++ /var/tmp/diff_new_pack.XBY5Dm/_new 2025-06-26 11:34:48.698558696 +0200
@@ -18,7 +18,7 @@
%{?sle15_python_module_pythons}
Name: python-fakeredis
-Version: 2.30.0
+Version: 2.30.1
Release: 0
Summary: Fake implementation of redis API for testing purposes
License: BSD-3-Clause AND MIT
@@ -57,7 +57,6 @@
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
-%python_expand rm %{buildroot}%{$python_sitelib}/LICENSE
%check
export LANG="en_US.UTF8"
++++++ fakeredis-2.30.0-gh.tar.gz -> fakeredis-2.30.1-gh.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/docs/about/changelog.md
new/fakeredis-py-2.30.1/docs/about/changelog.md
--- old/fakeredis-py-2.30.0/docs/about/changelog.md 2025-06-16
22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/docs/about/changelog.md 2025-06-19
19:52:14.000000000 +0200
@@ -7,6 +7,17 @@
toc_depth: 2
---
+## v2.30.1 - 2025-06-20
+
+### 🐛 Bug Fixes
+
+- Move `LICENSE` file to fakeredis/ on build #395
+- Show warning for deprecated parameter only if parameter is included in
instantiation #384
+
+### 🧰 Maintenance
+
+- Replace deprecated event_loop fixture @mgorny #396
+
## v2.30.0 - 2025-06-11
### 🚀 Features
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/fakeredis/_connection.py
new/fakeredis-py-2.30.1/fakeredis/_connection.py
--- old/fakeredis-py-2.30.0/fakeredis/_connection.py 2025-06-16
22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/fakeredis/_connection.py 2025-06-19
19:52:14.000000000 +0200
@@ -1,14 +1,12 @@
-import inspect
import queue
import time
-import uuid
import warnings
from typing import Tuple, Any, List, Optional, Set
import redis
from fakeredis._fakesocket import FakeSocket
-from fakeredis._helpers import FakeSelector
+from fakeredis._helpers import FakeSelector, convert_args_to_redis_init_kwargs
from . import _msgs as msgs
from ._server import FakeBaseConnectionMixin, FakeServer, VersionType,
ServerType
from .typing import Self
@@ -123,16 +121,7 @@
lua_modules: Optional[Set[str]] = None,
**kwargs: Any,
) -> None:
- # Interpret the positional and keyword arguments according to the
version of redis in use.
- parameters =
list(inspect.signature(redis.Redis.__init__).parameters.values())[1:]
- # Convert args => kwargs
- kwargs.update({parameters[i].name: args[i] for i in range(len(args))})
- kwargs.setdefault("host", uuid.uuid4().hex)
- kwds = {
- p.name: kwargs.get(p.name, p.default)
- for ind, p in enumerate(parameters)
- if p.default != inspect.Parameter.empty
- }
+ kwds = convert_args_to_redis_init_kwargs(redis.Redis, *args, **kwargs)
kwds["server"] = server
if not kwds.get("connection_pool", None):
charset = kwds.get("charset", None)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/fakeredis/_helpers.py
new/fakeredis-py-2.30.1/fakeredis/_helpers.py
--- old/fakeredis-py-2.30.0/fakeredis/_helpers.py 2025-06-16
22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/fakeredis/_helpers.py 2025-06-19
19:52:14.000000000 +0200
@@ -1,10 +1,14 @@
+import inspect
import re
import threading
import time
+import uuid
import weakref
from collections import defaultdict
from collections.abc import MutableMapping
-from typing import Any, Set, Callable, Dict, Optional, Iterator, AnyStr
+from typing import Any, Set, Callable, Dict, Optional, Iterator, AnyStr, Type
+
+import redis
class SimpleString:
@@ -253,3 +257,29 @@
@staticmethod
def check_is_ready_for_command(_: Any) -> bool:
return True
+
+
+def _get_args_to_warn() -> Set[str]:
+ closure = redis.Redis.__init__.__closure__
+ if closure is None:
+ return set()
+ for cell in closure:
+ value = cell.cell_contents
+ if isinstance(value, list) and len(value) > 0:
+ return set(value)
+ return set()
+
+
+def convert_args_to_redis_init_kwargs(redis_class: Type[redis.Redis], *args:
Any, **kwargs: Any) -> Dict[str, Any]:
+ """Interpret the positional and keyword arguments according to the version
of redis in use"""
+ parameters =
list(inspect.signature(redis_class.__init__).parameters.values())[1:]
+ args_to_warn = _get_args_to_warn()
+ # Convert args => kwargs
+ kwargs.update({parameters[i].name: args[i] for i in range(len(args))})
+ kwargs.setdefault("host", uuid.uuid4().hex)
+ kwds = {
+ p.name: kwargs.get(p.name, p.default)
+ for ind, p in enumerate(parameters)
+ if p.default != inspect.Parameter.empty and (p.name not in
args_to_warn or p.name in kwargs)
+ }
+ return kwds
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/fakeredis/aioredis.py
new/fakeredis-py-2.30.1/fakeredis/aioredis.py
--- old/fakeredis-py-2.30.0/fakeredis/aioredis.py 2025-06-16
22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/fakeredis/aioredis.py 2025-06-19
19:52:14.000000000 +0200
@@ -1,8 +1,6 @@
from __future__ import annotations
import asyncio
-import inspect
-import uuid
import warnings
from typing import Union, Optional, Any, Callable, Iterable, Tuple, List, Set
@@ -13,7 +11,7 @@
from . import _fakesocket
from . import _helpers
from . import _msgs as msgs
-from ._helpers import SimpleError
+from ._helpers import SimpleError, convert_args_to_redis_init_kwargs
from ._server import FakeBaseConnectionMixin, VersionType, FakeServer,
ServerType
from .typing import async_timeout, Self
@@ -191,16 +189,7 @@
lua_modules: Optional[Set[str]] = None,
**kwargs: Any,
) -> None:
- # Interpret the positional and keyword arguments according to the
version of redis in use.
- parameters =
list(inspect.signature(redis_async.Redis.__init__).parameters.values())[1:]
- # Convert args => kwargs
- kwargs.update({parameters[i].name: args[i] for i in range(len(args))})
- kwargs.setdefault("host", uuid.uuid4().hex)
- kwds = {
- p.name: kwargs.get(p.name, p.default)
- for ind, p in enumerate(parameters)
- if p.default != inspect.Parameter.empty
- }
+ kwds = convert_args_to_redis_init_kwargs(redis_async.Redis, *args,
**kwargs)
kwds["server"] = server
kwds["connected"] = kwargs.get("connected", True)
if not kwds.get("connection_pool", None):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/pyproject.toml
new/fakeredis-py-2.30.1/pyproject.toml
--- old/fakeredis-py-2.30.0/pyproject.toml 2025-06-16 22:29:06.000000000
+0200
+++ new/fakeredis-py-2.30.1/pyproject.toml 2025-06-19 19:52:14.000000000
+0200
@@ -4,14 +4,14 @@
[project]
name = "fakeredis"
-version = "2.30.0"
+version = "2.30.1"
description = "Python implementation of redis API, can be used for testing
purposes."
authors = [
{ name = "Daniel Moran", email = "[email protected]" },
{ name = "Bruce Merry", email = "[email protected]" },
{ name = "James Saryerwinnie", email = "[email protected]" },
]
-requires-python = "~=3.7"
+requires-python = ">=3.7"
readme = "README.md"
license = "BSD-3-Clause"
maintainers = [{ name = "Daniel Moran", email = "[email protected]" }]
@@ -62,7 +62,7 @@
[dependency-groups]
dev = [
- "ruff>=0.11 ; python_version >= '3.10'",
+ "ruff>=0.12 ; python_version >= '3.10'",
"mypy>=1.15 ; python_version >= '3.10'",
"pre-commit~=4.2 ; python_version >= '3.10'",
]
@@ -91,17 +91,15 @@
[tool.hatch.build.targets.sdist]
include = [
"fakeredis",
- "LICENSE",
"test",
]
[tool.hatch.build.targets.wheel]
include = [
"fakeredis",
- "LICENSE",
]
-[tool.hatch.build.targets.wheel.sources]
+[tool.hatch.build.targets.wheel.force-include]
LICENSE = "fakeredis/LICENSE"
[tool.pytest.ini_options]
@@ -135,6 +133,7 @@
'.venv',
'__pycache__',
]
+target-version = "py311"
[tool.ruff.format]
quote-style = "double"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/test/test_asyncredis.py
new/fakeredis-py-2.30.1/test/test_asyncredis.py
--- old/fakeredis-py-2.30.0/test/test_asyncredis.py 2025-06-16
22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/test/test_asyncredis.py 2025-06-19
19:52:14.000000000 +0200
@@ -58,7 +58,7 @@
await tr.execute()
-async def test_pubsub(async_redis, event_loop):
+async def test_pubsub(async_redis):
queue = asyncio.Queue()
async def reader(ps):
@@ -71,7 +71,7 @@
async with async_timeout(5), async_redis.pubsub() as ps:
await ps.subscribe("channel")
- task = event_loop.create_task(reader(ps))
+ task = asyncio.get_running_loop().create_task(reader(ps))
await async_redis.publish("channel", "message1")
await async_redis.publish("channel", "message2")
result1 = await queue.get()
@@ -117,14 +117,14 @@
@pytest.mark.slow
-async def test_blocking_unblock(async_redis, conn, event_loop):
+async def test_blocking_unblock(async_redis, conn):
"""Blocking command that gets unblocked after some time."""
async def unblock():
await asyncio.sleep(0.1)
await async_redis.rpush("list", "y")
- task = event_loop.create_task(unblock())
+ task = asyncio.get_running_loop().create_task(unblock())
result = await conn.blpop("list", timeout=1)
assert result == (b"list", b"y")
await task
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/fakeredis-py-2.30.0/test/test_internals/test_init_args.py
new/fakeredis-py-2.30.1/test/test_internals/test_init_args.py
--- old/fakeredis-py-2.30.0/test/test_internals/test_init_args.py
2025-06-16 22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/test/test_internals/test_init_args.py
2025-06-19 19:52:14.000000000 +0200
@@ -1,6 +1,29 @@
+from unittest import mock
+
import pytest
import fakeredis
+from test.testtools import run_test_if_redispy_ver
+
+
[email protected]
+@run_test_if_redispy_ver("gte", "6")
[email protected]("warnings.warn")
+def test_deprecated_args_show_warnings_for_retry_on_timeout(warn_mock:
mock.MagicMock):
+ fakeredis.FakeStrictRedis(host="localhost", port=6390, db=0,
retry_on_timeout=True)
+ warn_mock.assert_called_once_with(
+ "Call to '__init__' function with deprecated usage of input argument/s
'retry_on_timeout'. (TimeoutError is included by default.) -- Deprecated since
version 6.0.0.",
+ category=DeprecationWarning,
+ stacklevel=3,
+ )
+
+
[email protected]
+@run_test_if_redispy_ver("gte", "6")
[email protected]("warnings.warn")
+def test_deprecated_args_no_warnings(warn_mock: mock.MagicMock):
+ fakeredis.FakeStrictRedis(host="localhost", port=6390, db=0)
+ warn_mock.assert_not_called()
@pytest.mark.fake
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/fakeredis-py-2.30.0/uv.lock
new/fakeredis-py-2.30.1/uv.lock
--- old/fakeredis-py-2.30.0/uv.lock 2025-06-16 22:29:06.000000000 +0200
+++ new/fakeredis-py-2.30.1/uv.lock 2025-06-19 19:52:14.000000000 +0200
@@ -1,6 +1,6 @@
version = 1
revision = 2
-requires-python = ">=3.7, <4"
+requires-python = ">=3.7"
resolution-markers = [
"python_full_version >= '3.10'",
"python_full_version == '3.9.*'",
@@ -409,7 +409,7 @@
[[package]]
name = "fakeredis"
-version = "2.30.0"
+version = "2.30.1"
source = { editable = "." }
dependencies = [
{ name = "redis", version = "5.0.8", source = { registry =
"https://pypi.org/simple" }, marker = "python_full_version < '3.8'" },
@@ -479,7 +479,7 @@
dev = [
{ name = "mypy", marker = "python_full_version >= '3.10'", specifier =
">=1.15" },
{ name = "pre-commit", marker = "python_full_version >= '3.10'", specifier
= "~=4.2" },
- { name = "ruff", marker = "python_full_version >= '3.10'", specifier =
">=0.11" },
+ { name = "ruff", marker = "python_full_version >= '3.10'", specifier =
">=0.12" },
]
docs = [
{ name = "pygithub", marker = "python_full_version >= '3.10'", specifier =
"~=2.3" },
@@ -507,16 +507,16 @@
[[package]]
name = "hypothesis"
-version = "6.135.10"
+version = "6.135.12"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "attrs", marker = "python_full_version >= '3.9'" },
{ name = "exceptiongroup", marker = "python_full_version >= '3.9' and
python_full_version < '3.11'" },
{ name = "sortedcontainers", marker = "python_full_version >= '3.9'" },
]
-sdist = { url =
"https://files.pythonhosted.org/packages/c8/8e/6176e9b3e51fbab6dab1e572116605dbc54eadda0c60dd45927f601d3c60/hypothesis-6.135.10.tar.gz",
hash =
"sha256:ce224e310012e40b8e3aa6edba226c032c57bbcbdccad41212ab6d2d74b602cf", size
= 452518, upload-time = "2025-06-15T06:02:07.517Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/63/03/28f2158273fa2119641f793b7a73bbf8b38257800e18c825324cff6c9f8d/hypothesis-6.135.12.tar.gz",
hash =
"sha256:d2aeed8db7defc368841cbfb021d703cf98102827460bee7ba0d2e2aab6580f6", size
= 452566, upload-time = "2025-06-19T17:36:09.922Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/a9/e5/8c62bd37d2815f37a2886be6b9d5e037d14cc3f6adc377711f323617b113/hypothesis-6.135.10-py3-none-any.whl",
hash =
"sha256:275012ee9a7a1a64fd38745c2b7a07e838fc9f738d49c97a881d235b53fe28c1", size
= 518624, upload-time = "2025-06-15T06:02:04.227Z" },
+ { url =
"https://files.pythonhosted.org/packages/c9/5b/12cfe6bfbf27c598f9000085cf53010cf4aa5b571740b882375cfdefa787/hypothesis-6.135.12-py3-none-any.whl",
hash =
"sha256:89baf42d7f08e20d3ab36768dea9636ea0532bdaf9951ae6fd9126a8d708345b", size
= 518777, upload-time = "2025-06-19T17:36:06.224Z" },
]
[[package]]
@@ -945,7 +945,7 @@
[[package]]
name = "pytest"
-version = "8.4.0"
+version = "8.4.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "colorama", marker = "python_full_version >= '3.9' and
sys_platform == 'win32'" },
@@ -956,9 +956,9 @@
{ name = "pygments", marker = "python_full_version >= '3.9'" },
{ name = "tomli", marker = "python_full_version >= '3.9' and
python_full_version < '3.11'" },
]
-sdist = { url =
"https://files.pythonhosted.org/packages/fb/aa/405082ce2749be5398045152251ac69c0f3578c7077efc53431303af97ce/pytest-8.4.0.tar.gz",
hash =
"sha256:14d920b48472ea0dbf68e45b96cd1ffda4705f33307dcc86c676c1b5104838a6", size
= 1515232, upload-time = "2025-06-02T17:36:30.03Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/08/ba/45911d754e8eba3d5a841a5ce61a65a685ff1798421ac054f85aa8747dfb/pytest-8.4.1.tar.gz",
hash =
"sha256:7c67fd69174877359ed9371ec3af8a3d2b04741818c51e5e99cc1742251fa93c", size
= 1517714, upload-time = "2025-06-18T05:48:06.109Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/2f/de/afa024cbe022b1b318a3d224125aa24939e99b4ff6f22e0ba639a2eaee47/pytest-8.4.0-py3-none-any.whl",
hash =
"sha256:f40f825768ad76c0977cbacdf1fd37c6f7a468e460ea6a0636078f8972d4517e", size
= 363797, upload-time = "2025-06-02T17:36:27.859Z" },
+ { url =
"https://files.pythonhosted.org/packages/29/16/c8a903f4c4dffe7a12843191437d7cd8e32751d5de349d45d3fe69544e87/pytest-8.4.1-py3-none-any.whl",
hash =
"sha256:539c70ba6fcead8e78eebbf1115e8b589e7565830d7d006a8723f19ac8a0afb7", size
= 365474, upload-time = "2025-06-18T05:48:03.955Z" },
]
[[package]]
@@ -1156,27 +1156,27 @@
[[package]]
name = "ruff"
-version = "0.11.13"
+version = "0.12.0"
source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/ed/da/9c6f995903b4d9474b39da91d2d626659af3ff1eeb43e9ae7c119349dba6/ruff-0.11.13.tar.gz",
hash =
"sha256:26fa247dc68d1d4e72c179e08889a25ac0c7ba4d78aecfc835d49cbfd60bf514", size
= 4282054, upload-time = "2025-06-05T21:00:15.721Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/24/90/5255432602c0b196a0da6720f6f76b93eb50baef46d3c9b0025e2f9acbf3/ruff-0.12.0.tar.gz",
hash =
"sha256:4d047db3662418d4a848a3fdbfaf17488b34b62f527ed6f10cb8afd78135bc5c", size
= 4376101, upload-time = "2025-06-17T15:19:26.217Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/7d/ce/a11d381192966e0b4290842cc8d4fac7dc9214ddf627c11c1afff87da29b/ruff-0.11.13-py3-none-linux_armv6l.whl",
hash =
"sha256:4bdfbf1240533f40042ec00c9e09a3aade6f8c10b6414cf11b519488d2635d46", size
= 10292516, upload-time = "2025-06-05T20:59:32.944Z" },
- { url =
"https://files.pythonhosted.org/packages/78/db/87c3b59b0d4e753e40b6a3b4a2642dfd1dcaefbff121ddc64d6c8b47ba00/ruff-0.11.13-py3-none-macosx_10_12_x86_64.whl",
hash =
"sha256:aef9c9ed1b5ca28bb15c7eac83b8670cf3b20b478195bd49c8d756ba0a36cf48", size
= 11106083, upload-time = "2025-06-05T20:59:37.03Z" },
- { url =
"https://files.pythonhosted.org/packages/77/79/d8cec175856ff810a19825d09ce700265f905c643c69f45d2b737e4a470a/ruff-0.11.13-py3-none-macosx_11_0_arm64.whl",
hash =
"sha256:53b15a9dfdce029c842e9a5aebc3855e9ab7771395979ff85b7c1dedb53ddc2b", size
= 10436024, upload-time = "2025-06-05T20:59:39.741Z" },
- { url =
"https://files.pythonhosted.org/packages/8b/5b/f6d94f2980fa1ee854b41568368a2e1252681b9238ab2895e133d303538f/ruff-0.11.13-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
hash =
"sha256:ab153241400789138d13f362c43f7edecc0edfffce2afa6a68434000ecd8f69a", size
= 10646324, upload-time = "2025-06-05T20:59:42.185Z" },
- { url =
"https://files.pythonhosted.org/packages/6c/9c/b4c2acf24ea4426016d511dfdc787f4ce1ceb835f3c5fbdbcb32b1c63bda/ruff-0.11.13-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
hash =
"sha256:6c51f93029d54a910d3d24f7dd0bb909e31b6cd989a5e4ac513f4eb41629f0dc", size
= 10174416, upload-time = "2025-06-05T20:59:44.319Z" },
- { url =
"https://files.pythonhosted.org/packages/f3/10/e2e62f77c65ede8cd032c2ca39c41f48feabedb6e282bfd6073d81bb671d/ruff-0.11.13-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:1808b3ed53e1a777c2ef733aca9051dc9bf7c99b26ece15cb59a0320fbdbd629", size
= 11724197, upload-time = "2025-06-05T20:59:46.935Z" },
- { url =
"https://files.pythonhosted.org/packages/bb/f0/466fe8469b85c561e081d798c45f8a1d21e0b4a5ef795a1d7f1a9a9ec182/ruff-0.11.13-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl",
hash =
"sha256:d28ce58b5ecf0f43c1b71edffabe6ed7f245d5336b17805803312ec9bc665933", size
= 12511615, upload-time = "2025-06-05T20:59:49.534Z" },
- { url =
"https://files.pythonhosted.org/packages/17/0e/cefe778b46dbd0cbcb03a839946c8f80a06f7968eb298aa4d1a4293f3448/ruff-0.11.13-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
hash =
"sha256:55e4bc3a77842da33c16d55b32c6cac1ec5fb0fbec9c8c513bdce76c4f922165", size
= 12117080, upload-time = "2025-06-05T20:59:51.654Z" },
- { url =
"https://files.pythonhosted.org/packages/5d/2c/caaeda564cbe103bed145ea557cb86795b18651b0f6b3ff6a10e84e5a33f/ruff-0.11.13-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl",
hash =
"sha256:633bf2c6f35678c56ec73189ba6fa19ff1c5e4807a78bf60ef487b9dd272cc71", size
= 11326315, upload-time = "2025-06-05T20:59:54.469Z" },
- { url =
"https://files.pythonhosted.org/packages/75/f0/782e7d681d660eda8c536962920c41309e6dd4ebcea9a2714ed5127d44bd/ruff-0.11.13-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:4ffbc82d70424b275b089166310448051afdc6e914fdab90e08df66c43bb5ca9", size
= 11555640, upload-time = "2025-06-05T20:59:56.986Z" },
- { url =
"https://files.pythonhosted.org/packages/5d/d4/3d580c616316c7f07fb3c99dbecfe01fbaea7b6fd9a82b801e72e5de742a/ruff-0.11.13-py3-none-musllinux_1_2_aarch64.whl",
hash =
"sha256:4a9ddd3ec62a9a89578c85842b836e4ac832d4a2e0bfaad3b02243f930ceafcc", size
= 10507364, upload-time = "2025-06-05T20:59:59.154Z" },
- { url =
"https://files.pythonhosted.org/packages/5a/dc/195e6f17d7b3ea6b12dc4f3e9de575db7983db187c378d44606e5d503319/ruff-0.11.13-py3-none-musllinux_1_2_armv7l.whl",
hash =
"sha256:d237a496e0778d719efb05058c64d28b757c77824e04ffe8796c7436e26712b7", size
= 10141462, upload-time = "2025-06-05T21:00:01.481Z" },
- { url =
"https://files.pythonhosted.org/packages/f4/8e/39a094af6967faa57ecdeacb91bedfb232474ff8c3d20f16a5514e6b3534/ruff-0.11.13-py3-none-musllinux_1_2_i686.whl",
hash =
"sha256:26816a218ca6ef02142343fd24c70f7cd8c5aa6c203bca284407adf675984432", size
= 11121028, upload-time = "2025-06-05T21:00:04.06Z" },
- { url =
"https://files.pythonhosted.org/packages/5a/c0/b0b508193b0e8a1654ec683ebab18d309861f8bd64e3a2f9648b80d392cb/ruff-0.11.13-py3-none-musllinux_1_2_x86_64.whl",
hash =
"sha256:51c3f95abd9331dc5b87c47ac7f376db5616041173826dfd556cfe3d4977f492", size
= 11602992, upload-time = "2025-06-05T21:00:06.249Z" },
- { url =
"https://files.pythonhosted.org/packages/7c/91/263e33ab93ab09ca06ce4f8f8547a858cc198072f873ebc9be7466790bae/ruff-0.11.13-py3-none-win32.whl",
hash =
"sha256:96c27935418e4e8e77a26bb05962817f28b8ef3843a6c6cc49d8783b5507f250", size
= 10474944, upload-time = "2025-06-05T21:00:08.459Z" },
- { url =
"https://files.pythonhosted.org/packages/46/f4/7c27734ac2073aae8efb0119cae6931b6fb48017adf048fdf85c19337afc/ruff-0.11.13-py3-none-win_amd64.whl",
hash =
"sha256:29c3189895a8a6a657b7af4e97d330c8a3afd2c9c8f46c81e2fc5a31866517e3", size
= 11548669, upload-time = "2025-06-05T21:00:11.147Z" },
- { url =
"https://files.pythonhosted.org/packages/ec/bf/b273dd11673fed8a6bd46032c0ea2a04b2ac9bfa9c628756a5856ba113b0/ruff-0.11.13-py3-none-win_arm64.whl",
hash =
"sha256:b4385285e9179d608ff1d2fb9922062663c658605819a6876d8beef0c30b7f3b", size
= 10683928, upload-time = "2025-06-05T21:00:13.758Z" },
+ { url =
"https://files.pythonhosted.org/packages/e6/fd/b46bb20e14b11ff49dbc74c61de352e0dc07fb650189513631f6fb5fc69f/ruff-0.12.0-py3-none-linux_armv6l.whl",
hash =
"sha256:5652a9ecdb308a1754d96a68827755f28d5dfb416b06f60fd9e13f26191a8848", size
= 10311554, upload-time = "2025-06-17T15:18:45.792Z" },
+ { url =
"https://files.pythonhosted.org/packages/e7/d3/021dde5a988fa3e25d2468d1dadeea0ae89dc4bc67d0140c6e68818a12a1/ruff-0.12.0-py3-none-macosx_10_12_x86_64.whl",
hash =
"sha256:05ed0c914fabc602fc1f3b42c53aa219e5736cb030cdd85640c32dbc73da74a6", size
= 11118435, upload-time = "2025-06-17T15:18:49.064Z" },
+ { url =
"https://files.pythonhosted.org/packages/07/a2/01a5acf495265c667686ec418f19fd5c32bcc326d4c79ac28824aecd6a32/ruff-0.12.0-py3-none-macosx_11_0_arm64.whl",
hash =
"sha256:07a7aa9b69ac3fcfda3c507916d5d1bca10821fe3797d46bad10f2c6de1edda0", size
= 10466010, upload-time = "2025-06-17T15:18:51.341Z" },
+ { url =
"https://files.pythonhosted.org/packages/4c/57/7caf31dd947d72e7aa06c60ecb19c135cad871a0a8a251723088132ce801/ruff-0.12.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
hash =
"sha256:e7731c3eec50af71597243bace7ec6104616ca56dda2b99c89935fe926bdcd48", size
= 10661366, upload-time = "2025-06-17T15:18:53.29Z" },
+ { url =
"https://files.pythonhosted.org/packages/e9/ba/aa393b972a782b4bc9ea121e0e358a18981980856190d7d2b6187f63e03a/ruff-0.12.0-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
hash =
"sha256:952d0630eae628250ab1c70a7fffb641b03e6b4a2d3f3ec6c1d19b4ab6c6c807", size
= 10173492, upload-time = "2025-06-17T15:18:55.262Z" },
+ { url =
"https://files.pythonhosted.org/packages/d7/50/9349ee777614bc3062fc6b038503a59b2034d09dd259daf8192f56c06720/ruff-0.12.0-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:c021f04ea06966b02614d442e94071781c424ab8e02ec7af2f037b4c1e01cc82", size
= 11761739, upload-time = "2025-06-17T15:18:58.906Z" },
+ { url =
"https://files.pythonhosted.org/packages/04/8f/ad459de67c70ec112e2ba7206841c8f4eb340a03ee6a5cabc159fe558b8e/ruff-0.12.0-py3-none-manylinux_2_17_ppc64.manylinux2014_ppc64.whl",
hash =
"sha256:7d235618283718ee2fe14db07f954f9b2423700919dc688eacf3f8797a11315c", size
= 12537098, upload-time = "2025-06-17T15:19:01.316Z" },
+ { url =
"https://files.pythonhosted.org/packages/ed/50/15ad9c80ebd3c4819f5bd8883e57329f538704ed57bac680d95cb6627527/ruff-0.12.0-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
hash =
"sha256:0c0758038f81beec8cc52ca22de9685b8ae7f7cc18c013ec2050012862cc9165", size
= 12154122, upload-time = "2025-06-17T15:19:03.727Z" },
+ { url =
"https://files.pythonhosted.org/packages/76/e6/79b91e41bc8cc3e78ee95c87093c6cacfa275c786e53c9b11b9358026b3d/ruff-0.12.0-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl",
hash =
"sha256:139b3d28027987b78fc8d6cfb61165447bdf3740e650b7c480744873688808c2", size
= 11363374, upload-time = "2025-06-17T15:19:05.875Z" },
+ { url =
"https://files.pythonhosted.org/packages/db/c3/82b292ff8a561850934549aa9dc39e2c4e783ab3c21debe55a495ddf7827/ruff-0.12.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:68853e8517b17bba004152aebd9dd77d5213e503a5f2789395b25f26acac0da4", size
= 11587647, upload-time = "2025-06-17T15:19:08.246Z" },
+ { url =
"https://files.pythonhosted.org/packages/2b/42/d5760d742669f285909de1bbf50289baccb647b53e99b8a3b4f7ce1b2001/ruff-0.12.0-py3-none-musllinux_1_2_aarch64.whl",
hash =
"sha256:3a9512af224b9ac4757f7010843771da6b2b0935a9e5e76bb407caa901a1a514", size
= 10527284, upload-time = "2025-06-17T15:19:10.37Z" },
+ { url =
"https://files.pythonhosted.org/packages/19/f6/fcee9935f25a8a8bba4adbae62495c39ef281256693962c2159e8b284c5f/ruff-0.12.0-py3-none-musllinux_1_2_armv7l.whl",
hash =
"sha256:b08df3d96db798e5beb488d4df03011874aff919a97dcc2dd8539bb2be5d6a88", size
= 10158609, upload-time = "2025-06-17T15:19:12.286Z" },
+ { url =
"https://files.pythonhosted.org/packages/37/fb/057febf0eea07b9384787bfe197e8b3384aa05faa0d6bd844b94ceb29945/ruff-0.12.0-py3-none-musllinux_1_2_i686.whl",
hash =
"sha256:6a315992297a7435a66259073681bb0d8647a826b7a6de45c6934b2ca3a9ed51", size
= 11141462, upload-time = "2025-06-17T15:19:15.195Z" },
+ { url =
"https://files.pythonhosted.org/packages/10/7c/1be8571011585914b9d23c95b15d07eec2d2303e94a03df58294bc9274d4/ruff-0.12.0-py3-none-musllinux_1_2_x86_64.whl",
hash =
"sha256:1e55e44e770e061f55a7dbc6e9aed47feea07731d809a3710feda2262d2d4d8a", size
= 11641616, upload-time = "2025-06-17T15:19:17.6Z" },
+ { url =
"https://files.pythonhosted.org/packages/6a/ef/b960ab4818f90ff59e571d03c3f992828d4683561095e80f9ef31f3d58b7/ruff-0.12.0-py3-none-win32.whl",
hash =
"sha256:7162a4c816f8d1555eb195c46ae0bd819834d2a3f18f98cc63819a7b46f474fb", size
= 10525289, upload-time = "2025-06-17T15:19:19.688Z" },
+ { url =
"https://files.pythonhosted.org/packages/34/93/8b16034d493ef958a500f17cda3496c63a537ce9d5a6479feec9558f1695/ruff-0.12.0-py3-none-win_amd64.whl",
hash =
"sha256:d00b7a157b8fb6d3827b49d3324da34a1e3f93492c1f97b08e222ad7e9b291e0", size
= 11598311, upload-time = "2025-06-17T15:19:21.785Z" },
+ { url =
"https://files.pythonhosted.org/packages/d0/33/4d3e79e4a84533d6cd526bfb42c020a23256ae5e4265d858bd1287831f7d/ruff-0.12.0-py3-none-win_arm64.whl",
hash =
"sha256:8cd24580405ad8c1cc64d61725bca091d6b6da7eb3d36f72cc605467069d7e8b", size
= 10724946, upload-time = "2025-06-17T15:19:23.952Z" },
]
[[package]]
@@ -1266,11 +1266,11 @@
[[package]]
name = "urllib3"
-version = "2.4.0"
+version = "2.5.0"
source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/8a/78/16493d9c386d8e60e442a35feac5e00f0913c0f4b7c217c11e8ec2ff53e0/urllib3-2.4.0.tar.gz",
hash =
"sha256:414bc6535b787febd7567804cc015fee39daab8ad86268f1310a9250697de466", size
= 390672, upload-time = "2025-04-10T15:23:39.232Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/15/22/9ee70a2574a4f4599c47dd506532914ce044817c7752a79b6a51286319bc/urllib3-2.5.0.tar.gz",
hash =
"sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760", size
= 393185, upload-time = "2025-06-18T14:07:41.644Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/6b/11/cc635220681e93a0183390e26485430ca2c7b5f9d33b15c74c2861cb8091/urllib3-2.4.0-py3-none-any.whl",
hash =
"sha256:4e16665048960a0900c702d4a66415956a584919c03361cac9f1df5c5dd7e813", size
= 128680, upload-time = "2025-04-10T15:23:37.377Z" },
+ { url =
"https://files.pythonhosted.org/packages/a7/c2/fe1e52489ae3122415c51f387e221dd0773709bad6c6cdaa599e8a2c5185/urllib3-2.5.0-py3-none-any.whl",
hash =
"sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc", size
= 129795, upload-time = "2025-06-18T14:07:40.39Z" },
]
[[package]]