-
Notifications
You must be signed in to change notification settings - Fork 261
Open
Description
Problem statement
Python 3.13+ Installation Fails Due to pkg_resources/flatdict Build Dependency
Attempting to install gimme-aws-creds on Python 3.13+ fails with:
ModuleNotFoundError: No module named 'pkg_resources'
ERROR: Failed to build 'flatdict' when getting requirements to build wheel
Root cause analysis
- Python 3.12+ no longer includes
pkg_resourcesby default. flatdict(an indirect dependency) importspkg_resourcesduring build.- This causes pip build isolation to fail on Python 3.13+.
Chosen fix and rationale
- Audit and remove
flatdictif possible, replacing with standard library or local flattening logic. - If not feasible, replace
flatdictwith a maintained alternative that supports Python 3.13+ and does not rely onpkg_resources. - As a fallback, use conditional dependencies or explicit build requirements as a last resort.
Compatibility verification
- Ensure
pip install gimme-aws-credsworks on both Python 3.11 and 3.13. - No
pkg_resourcesimport errors. - CI passes.
Docs update
- Update documentation to mention Python 3.13 compatibility and supported versions.
Steps to reproduce
- Create a clean Python 3.13+ environment.
- Run
pip install gimme-aws-creds. - Observe the
pkg_resources/flatdictbuild failure.
Additional context
- This is an ecosystem compatibility issue, not user misconfiguration.
References:
- Python 3.12+ packaging changes
- setuptools deprecation of
pkg_resources - pip PEP 517 build isolation
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels