Summary
src/configs/packages.txt specifies dependency versions from 2020, which are increasingly incompatible with modern Python environments such as Ubuntu 24.04 (Python 3.12).
Current State
scipy==1.5.2 # Released 2020
pandas==1.1.3 # Released 2020
numpy==1.19.2 # Released 2020
torch==1.4.0 # Released 2020
xgboost==0.90 # Released 2019
matplotlib==3.3.2 # Released 2020
Known Breakage
pandas==1.1.3 is the most critical case. The .max()[0] pattern used across 51 table_generator.py files silently works on pandas v1.x but raises KeyError: 0 on pandas v2.0+. This has been fixed in PR #7, but the root cause is the outdated dependency specification.
Other packages likely have similar silent API changes that have not yet surfaced.
Proposed Work
- Audit each pinned dependency for API-breaking changes introduced
since the specified version
- Update
packages.txt and requirements_pip3.txt to versions
compatible with Python 3.12
- Test the full Planter workflow (data loading → model training →
table generation → BMv2 deployment) against the updated dependencies
- Document the tested environment (Python version, OS, package versions)
in the README or a dedicated COMPATIBILITY.md
Environment Context
Modern default environments that trigger breakage:
- Ubuntu 24.04 LTS: Python 3.12, pandas 2.x, numpy 1.26+
- macOS 14+ with Homebrew: Python 3.12, pandas 2.x
Related
Summary
src/configs/packages.txtspecifies dependency versions from 2020, which are increasingly incompatible with modern Python environments such as Ubuntu 24.04 (Python 3.12).Current State
Known Breakage
pandas==1.1.3 is the most critical case. The
.max()[0]pattern used across 51table_generator.pyfiles silently works on pandas v1.x but raisesKeyError: 0on pandas v2.0+. This has been fixed in PR #7, but the root cause is the outdated dependency specification.Other packages likely have similar silent API changes that have not yet surfaced.
Proposed Work
since the specified version
packages.txtandrequirements_pip3.txtto versionscompatible with Python 3.12
table generation → BMv2 deployment) against the updated dependencies
in the README or a dedicated
COMPATIBILITY.mdEnvironment Context
Modern default environments that trigger breakage:
Related
.max()[0]breakage