PolicyEngine / PolicyEngine/policyengine-us
spm-calculator 1.0.0 breaks policyengine-us imports (No module named 'spm_calculator.geoadj')
- Dominant language
- Python
- Stars
- 162
- Forks
- 212
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 97
Description
spm-calculator 1.0.0, released 2026-09-11 15:45 UTC, removes or relocates the `geoadj` module that policyengine-us imports, so every fresh `pip install policyengine-us` now fails at import time:
```
ModuleNotFoundError: No module named 'spm_calculator.geoadj'
```
Reproduced on policyengine-us 1.824.7 in clean CI environments (17/17 jobs failed on collection); pinning `spm-calculator==0.3.1` restores imports. policyengine-us should add an upper bound (or adapt to the 1.0.0 API) — until then, every downstream consumer without a pin is broken on fresh installs.
Found via the Child Poverty Impact Dashboard's CI, which now pins 0.3.1 as a workaround.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_014p5C4W5UC1MvusNZLuzFTf
Contributor guide
Research direction
Start by locating policyengine-us's dependency configuration and the imports of spm_calculator.geoadj. Reproduce the failure with a clean install, then either constrain spm-calculator below 1.0.0 or adapt to its new API. Done means fresh policyengine-us installation and import checks pass without the dashboard workaround.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 68/100