scylladb / scylladb/alternator-client-python
Remove temporary async SDK adapter when aioboto3 supports modern Botocore
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 4
- Avg merge
- 2h 49m
- Merged PRs (30d)
- 7
Description
Context
PR #114 upgraded Boto3 and Botocore to a release family with native DynamoDB vector models. The latest released aioboto3 (15.5.0) pins aiobotocore==2.25.1, which caps Boto3 and Botocore below 1.40.62, so it cannot coexist with the required botocore>=1.43.64 floor.
Until aioboto3 catches up, Alternator client uses a small private, client-only session adapter backed directly by aiobotocore. The adapter is an implementation detail and does not add a public API.
Upstream tracking: https://github.com/terricain/aioboto3/issues/404
Removal criteria
Remove the temporary adapter after an aioboto3 release:
- supports the Botocore minimum required by this project (currently
>=1.43.64) - supports every Python version supported by this project
- resolves together with all project extras and development type stubs
Work
- restore aioboto3 to the
asyncextra - switch async client construction back to
aioboto3.Session().client(...) - remove the private adapter and its adapter-specific contract tests
- retain the existing public async client API and lifecycle behavior
- update documentation and run unit tests across Python 3.10–3.14 plus the integration suite
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
First verify that a released aioboto3 version meets the stated Botocore, Python-version, extras, and type-stub requirements, using upstream issue #404 for status. Then locate the async extra, the private aiobotocore-backed adapter, its adapter-specific contract tests, and the async client construction. Done means restoring aioboto3.Session().client(...), removing the adapter and its tests, preserving the public lifecycle behavior, updating documentation, and passing the stated unit and integration suites.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100