No significant changes.
No significant changes.
No significant changes.
No significant changes.
No significant changes.
No significant changes.
- Add
StructuralReform(pre=..., post=...)to the Python wrapper, enabling reforms that can't be expressed as parameter overlays. Both hooks take(year, persons, benunits, households)and return the modified triple, so multi-year reforms can branch by year.
No significant changes.
No significant changes.
No significant changes.
No significant changes.
No significant changes.
No significant changes.
- Republish with correct SimulationResult model and SPI support.
- Sync SimulationResult Python model with Rust output (hbai_incomes, poverty headcounts) and add --persons-only support for SPI datasets.
- Add
datasetparameter toSimulationto run simulations against SPI, LCFS, or WAS microdata. Passdataset="spi",dataset="lcfs", ordataset="was"— data auto-downloads from GCS on first use. Also exportsensure_datasetandDATASETSfrom the package top-level.
- Added HBAI income definitions (BHC/AHC, equivalised/non-equivalised means and medians) and four poverty definitions (relative/absolute × BHC/AHC) with headcounts for child, working-age, and pensioner poverty to JSON output.
- Add GCS download support for LCFS, SPI, and WAS datasets. New ensure_dataset(dataset, year) and updated download_all() support all four datasets (frs, lcfs, spi, was) from gs://policyengine-uk-microdata.
- Fix Python interface CLI flags: --data-dir/--clean-frs-base/--clean-frs → --data, --frs-raw → --frs, matching the binary's current flag names. Fixes all economy-wide simulations failing with "unexpected argument '--clean-frs-base' found".
-
Fix LCFS income columns and weights; add --uprate-to flag; generate 2026/27 clean data for FRS, LCFS, SPI, and WAS.
LCFS loader: switch employment income to wkgrossp (weekly gross pay, well-populated), add p047p for main SE income, add p048p for investment income, and rescale weighta to UK household population (~28.3m) so weighted aggregates are correct.
Add --uprate-to flag to --extract mode, allowing raw survey data to be extracted and uprated to a target fiscal year in one step (e.g. --frs raw/ --year 2023 --uprate-to 2026 --extract data/frs/2026/).
Update SKILL.md to document --uprate-to and the UKDS project ID for LCFS/WAS/SPI downloads.
- Use variable-specific uprating indices (earnings, CPI, GDP/capita, etc.) matching policyengine-uk; fix Scottish brackets for 2025/26+; repeal two-child limit from 2026/27; upload uprated FRS data for 2024-2029 to GCS
- Fix aarch64-linux wheel: build natively in manylinux container instead of cross-compiling (fixes glibc 2.39 dependency)
- Fix CI: use manylinux container's bundled Python for wheel builds
- Fix CI: resolve rustup/cargo toolchain detection in manylinux container builds
- Fix Linux wheel builds: manylinux container for glibc compat, aarch64-linux support
- Add aarch64-linux wheel and fix x86_64-linux glibc compatibility (build in manylinux container)
- Fixed PyPI publishing pipeline: manylinux wheel tags, automated versioning trigger.
- Initial release: compiled UK microsimulation engine with Python interface, PyPI packaging, and Modal API deployment.