Skip to content

Commit 7729fb9

Browse files
authored
remove py3.9 add 3.13,3.14 + bugfix for tests (#57)
* remove py3.9 add 3.13,3.14 + bugfix for tests * rabbit defensive fix
1 parent 5f548df commit 7729fb9

File tree

5 files changed

+13
-9
lines changed

5 files changed

+13
-9
lines changed

.github/workflows/publish.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ jobs:
1010
runs-on: ubuntu-latest
1111
strategy:
1212
matrix:
13-
python-version: ["3.9", "3.10", "3.11", "3.12"]
13+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
1414

1515
services:
1616
kinesis:

.github/workflows/test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ jobs:
1111
runs-on: ubuntu-latest
1212
strategy:
1313
matrix:
14-
python-version: ["3.9", "3.10", "3.11", "3.12"]
14+
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
1515

1616
services:
1717
kinesis:

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# async-kinesis
22

3-
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black) [![PyPI version](https://badge.fury.io/py/async-kinesis.svg)](https://badge.fury.io/py/async-kinesis) [![Python 3.9](https://img.shields.io/badge/python-3.9-blue.svg)](https://www.python.org/downloads/release/python-390/) [![Python 3.10](https://img.shields.io/badge/python-3.10-blue.svg)](https://www.python.org/downloads/release/python-3100/) [![Python 3.11](https://img.shields.io/badge/python-3.11-blue.svg)](https://www.python.org/downloads/release/python-3110/) [![Python 3.12](https://img.shields.io/badge/python-3.12-blue.svg)](https://www.python.org/downloads/release/python-3120/)
3+
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black) [![PyPI version](https://badge.fury.io/py/async-kinesis.svg)](https://badge.fury.io/py/async-kinesis) [![Python 3.10](https://img.shields.io/badge/python-3.10-blue.svg)](https://www.python.org/downloads/release/python-3100/) [![Python 3.11](https://img.shields.io/badge/python-3.11-blue.svg)](https://www.python.org/downloads/release/python-3110/) [![Python 3.12](https://img.shields.io/badge/python-3.12-blue.svg)](https://www.python.org/downloads/release/python-3120/) [![Python 3.13](https://img.shields.io/badge/python-3.13-blue.svg)](https://www.python.org/downloads/release/python-3130/) [![Python 3.14](https://img.shields.io/badge/python-3.14-blue.svg)](https://www.python.org/downloads/release/python-3140/)
44

55
High-performance async Python library for AWS Kinesis with production-ready resharding support.
66

kinesis/base.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -88,15 +88,18 @@ async def __aexit__(self, exc_type: Any, exc: Any, tb: Any) -> None:
8888
if self._client_cm is not None:
8989
try:
9090
await self._client_cm.__aexit__(exc_type, exc, tb)
91-
except (AttributeError, TypeError) as e:
92-
# Handle cases where client context manager doesn't have __aexit__ or session is malformed
93-
log.debug(f"Client context manager exit failed: {e}, attempting direct close")
91+
except (AttributeError, TypeError, AssertionError) as e:
92+
# AttributeError/TypeError: client context manager doesn't have __aexit__ or session is malformed
93+
# AssertionError: aiobotocore >= 3.x raises "Session was never entered" during teardown
94+
if isinstance(e, AssertionError) and "never entered" not in str(e):
95+
log.warning(f"Unexpected assertion during client exit: {e}")
96+
else:
97+
log.debug(f"Client context manager exit failed: {e}")
9498
try:
9599
if self.client is not None:
96100
await self.client.close()
97101
except Exception as close_error:
98102
log.debug(f"Client close also failed: {close_error}")
99-
# Continue cleanup even if client close fails
100103

101104
@property
102105
def address(self) -> Dict[str, str]:

setup.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,14 +17,15 @@
1717
"Development Status :: 4 - Beta",
1818
"Programming Language :: Python",
1919
"Programming Language :: Python :: 3",
20-
"Programming Language :: Python :: 3.9",
2120
"Programming Language :: Python :: 3.10",
2221
"Programming Language :: Python :: 3.11",
2322
"Programming Language :: Python :: 3.12",
23+
"Programming Language :: Python :: 3.13",
24+
"Programming Language :: Python :: 3.14",
2425
"Intended Audience :: Developers",
2526
"License :: OSI Approved :: Apache Software License",
2627
],
27-
python_requires=">=3.9",
28+
python_requires=">=3.10",
2829
packages=["kinesis"],
2930
install_requires=[
3031
"aiobotocore>=1.3.3",

0 commit comments

Comments
 (0)