policyengine 4.20.0__tar.gz → 4.20.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {policyengine-4.20.0 → policyengine-4.20.2}/CHANGELOG.md +14 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/PKG-INFO +8 -8
- {policyengine-4.20.0 → policyengine-4.20.2}/pyproject.toml +8 -8
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/bundle/manifest.json +43 -49
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/bundle/uk.trace.tro.jsonld +5 -5
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/bundle/us.trace.tro.jsonld +18 -18
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine.egg-info/PKG-INFO +8 -8
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine.egg-info/requires.txt +7 -7
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/us_model_surface.json +2 -2
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_models.py +2 -2
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_release_manifests.py +3 -5
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_us_regions.py +1 -1
- {policyengine-4.20.0 → policyengine-4.20.2}/uv.lock +14 -14
- {policyengine-4.20.0 → policyengine-4.20.2}/.claude/policyengine-guide.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.claude/quick-reference.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/CONTRIBUTING.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/bump_version.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/capture-version.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/changelog_template.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/check-changelog.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/copilot-instructions.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/dispatch-policyengine-release.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/fetch_version.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/get-changelog-diff.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/has-functional-changes.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/is-version-number-acceptable.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/publish-git-tag.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/wait-for-pypi.sh +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/workflows/draft-pdf.yml +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/workflows/pr_code_changes.yaml +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/workflows/pr_docs_changes.yaml +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.github/workflows/push.yaml +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.gitignore +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/.python-version +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/AGENTS.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/CITATION.cff +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/CLAUDE.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/CODE_OF_CONDUCT.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/LICENSE +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/Makefile +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/README.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/architecture.png +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/architecture.svg +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/changelog.d/.gitkeep +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/.gitignore +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/_generator/README.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/_generator/build_reference.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/_quarto.yml +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/bundles.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/countries.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/data-publishing-design.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/dev.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/engineering/skills/README.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/engineering/skills/data-certification.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/engineering/skills/github-prs.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/engineering/skills/repository-guidance.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/examples.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/getting-started.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/households.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/impact-analysis.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/index.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/methodology/index.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/methodology/model-architecture.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/methodology/us-health-costs.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/microsim.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/outputs.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/programs/index.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/programs/us-chip.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/reference/index.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/reforms.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/regions.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/release-bundles.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/run-records.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/trace-case-study.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/docs/visualisation.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/employment_income_variation_uk.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/employment_income_variation_us.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/household_impact_example.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/income_bands_uk.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/income_distribution_us.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/paper_repro_uk.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/policy_change_uk.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/speedtest_us_simulation.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/examples/us_budgetary_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/paper-preview.html +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/paper.bib +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/paper.md +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/bundle.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/certify_data_release.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/check_data_staleness.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/export_bundle_release_assets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/generate_bundle_artifacts.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/generate_trace_tros.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/scripts/prepare_package_bundle_update.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/setup.cfg +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/bundle.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/cli.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/cache.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/dataset.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/dynamic.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/output.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/parameter.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/parameter_node.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/parameter_value.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/policy.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/region.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/run_record.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/scoping_strategy.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/simulation.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/tax_benefit_model.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/tax_benefit_model_version.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/core/variable.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/uk/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/uk/regions.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/us/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/us/data/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/us/data/districts.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/us/data/places.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/us/data/states.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/countries/us/regions.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/schemas/trace_tro.schema.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/uk_geography_assets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/derivations/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/derivations/narrate.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/derivations/trace.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/graph/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/graph/extractor.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/graph/graph.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/aggregate.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/change_aggregate.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/cliff_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/congressional_district_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/constituency_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/decile_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/extra_variables.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/inequality.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/intra_decile_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/labor_supply_response.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/local_authority_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/poverty.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/program_statistics.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/uk_geography_assets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/outputs/uk_geography_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/certification.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/dataset_sources.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/manifest.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/pyproject_pins.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/trace.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/verify.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/provenance/zenodo.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/results/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/results/schema.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/results/trace_tro.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/results/tracking.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/axes.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/extra_variables.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/household.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/model_version.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/reform.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/common/result.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/uk/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/uk/analysis.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/uk/datasets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/uk/household.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/uk/model.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/us/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/us/analysis.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/us/datasets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/us/household.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/tax_benefit_models/us/model.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/data/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/data/caching_google_storage_client.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/data/version_aware_storage_client.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/dates.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/design.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/entity_utils.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/errors.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/google_cloud_bucket.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/household_validation.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/parameter_labels.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/parametric_reforms.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/utils/plotting.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine.egg-info/SOURCES.txt +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine.egg-info/dependency_links.txt +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine.egg-info/entry_points.txt +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine.egg-info/top_level.txt +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/conftest.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/filtering_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/uk_couple_two_kids.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/uk_model_surface.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/uk_single_adult_employment_income.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/uk_single_adult_no_income.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/uk_single_parent_one_child.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/us_married_two_kids_high_income.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/us_single_adult_employment_income.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/us_single_adult_no_income.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/household_calculator_snapshots/us_single_parent_one_child.json +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/parameter_labels_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/parametric_reforms_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/poverty_by_demographics_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/region_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/us_reform_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/fixtures/variable_label_fixtures.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_aggregate.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_budgetary_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_bump_version.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_bundle.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_bundle_metadata.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_cache.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_certify_data_release.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_change_aggregate.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_cliff_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_cliff_impact_analysis.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_congressional_district_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_constituency_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_dataset_persistence.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_dataset_sources.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_derivations.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_dict_reforms_on_simulation.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_entity_mapping.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_entity_utils.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_errors.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_extra_variables.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_filtering.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_graph/__init__.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_graph/conftest.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_graph/test_extractor.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_household_calculator_snapshot.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_household_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_inequality.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_intra_decile_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_labor_supply_response.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_local_authority_impact.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_manifest_version_mismatch.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_pandas3_compatibility.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_parameter_labels.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_parametric_reforms.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_poverty.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_poverty_by_demographics.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_poverty_run.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_preservation_mirror.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_program_statistics.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_pyproject_pins.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_region.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_results.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_run_record.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_scoping_strategy.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_small_follow_ups.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_trace_tro.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_trace_tro_verify.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_uk_analysis.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_uk_geography_assets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_uk_program_statistics.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_uk_regions.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_us_long_term_datasets.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_us_microsim_structural_reforms.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_us_program_statistics.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_us_reform_application.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_variable_labels.py +0 -0
- {policyengine-4.20.0 → policyengine-4.20.2}/tests/test_zenodo_mirror.py +0 -0
|
@@ -1,3 +1,17 @@
|
|
|
1
|
+
## [4.20.2] - 2026-07-09
|
|
2
|
+
|
|
3
|
+
### Fixed
|
|
4
|
+
|
|
5
|
+
- Upgrade `policyengine-core` to 3.30.0. This enforces formula-time determinism with a static check at variable registration instead of a runtime monkeypatch of the process-global `numpy.random`, fixing intermittent, misattributed `NonDeterministicFormulaError`s that could be raised when building or running many simulations concurrently in one process (policyengine-core#518). It also corrects `Reform.from_dict` bare-date period semantics (policyengine-core#510). The pinned country packages already allow `policyengine-core>=3.26.0` and are randomness-clean, so no country-package bump is required.
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## [4.20.1] - 2026-07-09
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- Certify the US populace data release `populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z` (populace_us_2024, policyengine-us 1.764.6) into the PolicyEngine bundle manifest.
|
|
13
|
+
|
|
14
|
+
|
|
1
15
|
## [4.20.0] - 2026-07-07
|
|
2
16
|
|
|
3
17
|
### Added
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: policyengine
|
|
3
|
-
Version: 4.20.
|
|
3
|
+
Version: 4.20.2
|
|
4
4
|
Summary: A package to conduct policy analysis using PolicyEngine tax-benefit models.
|
|
5
5
|
Author-email: PolicyEngine <hello@policyengine.org>
|
|
6
6
|
License: GNU AFFERO GENERAL PUBLIC LICENSE
|
|
@@ -689,15 +689,15 @@ Requires-Dist: plotly>=5.0.0; extra == "plotting"
|
|
|
689
689
|
Provides-Extra: graph
|
|
690
690
|
Requires-Dist: networkx>=3.0; extra == "graph"
|
|
691
691
|
Provides-Extra: models
|
|
692
|
-
Requires-Dist: policyengine-core==3.
|
|
693
|
-
Requires-Dist: policyengine-us==1.
|
|
692
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "models"
|
|
693
|
+
Requires-Dist: policyengine-us==1.764.6; extra == "models"
|
|
694
694
|
Requires-Dist: policyengine-uk==2.89.2; extra == "models"
|
|
695
695
|
Provides-Extra: uk
|
|
696
|
-
Requires-Dist: policyengine-core==3.
|
|
696
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "uk"
|
|
697
697
|
Requires-Dist: policyengine-uk==2.89.2; extra == "uk"
|
|
698
698
|
Provides-Extra: us
|
|
699
|
-
Requires-Dist: policyengine-core==3.
|
|
700
|
-
Requires-Dist: policyengine-us==1.
|
|
699
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "us"
|
|
700
|
+
Requires-Dist: policyengine-us==1.764.6; extra == "us"
|
|
701
701
|
Provides-Extra: dev
|
|
702
702
|
Requires-Dist: pytest; extra == "dev"
|
|
703
703
|
Requires-Dist: furo; extra == "dev"
|
|
@@ -712,8 +712,8 @@ Requires-Dist: ruff>=0.9.0; extra == "dev"
|
|
|
712
712
|
Requires-Dist: towncrier>=24.8.0; extra == "dev"
|
|
713
713
|
Requires-Dist: mypy>=1.11.0; extra == "dev"
|
|
714
714
|
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
|
|
715
|
-
Requires-Dist: policyengine-core==3.
|
|
716
|
-
Requires-Dist: policyengine-us==1.
|
|
715
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "dev"
|
|
716
|
+
Requires-Dist: policyengine-us==1.764.6; extra == "dev"
|
|
717
717
|
Requires-Dist: policyengine-uk==2.89.2; extra == "dev"
|
|
718
718
|
Dynamic: license-file
|
|
719
719
|
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "policyengine"
|
|
7
|
-
version = "4.20.
|
|
7
|
+
version = "4.20.2"
|
|
8
8
|
description = "A package to conduct policy analysis using PolicyEngine tax-benefit models."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
authors = [
|
|
@@ -44,17 +44,17 @@ graph = [
|
|
|
44
44
|
"networkx>=3.0",
|
|
45
45
|
]
|
|
46
46
|
models = [
|
|
47
|
-
"policyengine-core==3.
|
|
48
|
-
"policyengine-us==1.
|
|
47
|
+
"policyengine-core==3.30.0",
|
|
48
|
+
"policyengine-us==1.764.6",
|
|
49
49
|
"policyengine-uk==2.89.2",
|
|
50
50
|
]
|
|
51
51
|
uk = [
|
|
52
|
-
"policyengine-core==3.
|
|
52
|
+
"policyengine-core==3.30.0",
|
|
53
53
|
"policyengine-uk==2.89.2",
|
|
54
54
|
]
|
|
55
55
|
us = [
|
|
56
|
-
"policyengine-core==3.
|
|
57
|
-
"policyengine-us==1.
|
|
56
|
+
"policyengine-core==3.30.0",
|
|
57
|
+
"policyengine-us==1.764.6",
|
|
58
58
|
]
|
|
59
59
|
dev = [
|
|
60
60
|
"pytest",
|
|
@@ -70,8 +70,8 @@ dev = [
|
|
|
70
70
|
"towncrier>=24.8.0",
|
|
71
71
|
"mypy>=1.11.0",
|
|
72
72
|
"pytest-cov>=5.0.0",
|
|
73
|
-
"policyengine-core==3.
|
|
74
|
-
"policyengine-us==1.
|
|
73
|
+
"policyengine-core==3.30.0",
|
|
74
|
+
"policyengine-us==1.764.6",
|
|
75
75
|
"policyengine-uk==2.89.2",
|
|
76
76
|
]
|
|
77
77
|
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"bundle_version": "4.20.
|
|
2
|
+
"bundle_version": "4.20.2",
|
|
3
3
|
"citation": {
|
|
4
4
|
"publisher": "PolicyEngine",
|
|
5
|
-
"title": "PolicyEngine bundle 4.20.
|
|
5
|
+
"title": "PolicyEngine bundle 4.20.2",
|
|
6
6
|
"type": "software-bundle",
|
|
7
|
-
"version": "4.20.
|
|
7
|
+
"version": "4.20.2"
|
|
8
8
|
},
|
|
9
9
|
"countries": {
|
|
10
10
|
"uk": {
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"data_releases": {
|
|
18
18
|
"uk": {
|
|
19
19
|
"build_id": "populace-uk-2023-dd68c73-4aa4b14-20260619T023711Z",
|
|
20
|
-
"bundle_id": "uk-4.20.
|
|
20
|
+
"bundle_id": "uk-4.20.2",
|
|
21
21
|
"certification": {
|
|
22
22
|
"built_with_model_version": "2.89.2",
|
|
23
23
|
"certified_by": "policyengine.py bundle certification",
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
"version": "2.89.2",
|
|
86
86
|
"wheel_url": "https://files.pythonhosted.org/packages/83/db/ce3154ba69b6fcd1e9e922ceee705ef4ddb1f81553da1e63b9296e74a4dc/policyengine_uk-2.89.2-py3-none-any.whl"
|
|
87
87
|
},
|
|
88
|
-
"policyengine_version": "4.20.
|
|
88
|
+
"policyengine_version": "4.20.2",
|
|
89
89
|
"region_datasets": {
|
|
90
90
|
"national": {
|
|
91
91
|
"path_template": "populace_uk_2023.h5"
|
|
@@ -97,30 +97,30 @@
|
|
|
97
97
|
"version": "populace-uk-2023-dd68c73-4aa4b14-20260619T023711Z"
|
|
98
98
|
},
|
|
99
99
|
"us": {
|
|
100
|
-
"build_id": "populace-us-2024-sparse-
|
|
101
|
-
"bundle_id": "us-4.20.
|
|
100
|
+
"build_id": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
101
|
+
"bundle_id": "us-4.20.2",
|
|
102
102
|
"certification": {
|
|
103
|
-
"built_with_model_version": "1.
|
|
103
|
+
"built_with_model_version": "1.764.6",
|
|
104
104
|
"certified_by": "policyengine.py bundle certification",
|
|
105
|
-
"certified_for_model_version": "1.
|
|
105
|
+
"certified_for_model_version": "1.764.6",
|
|
106
106
|
"compatibility_basis": "built_with_model_package",
|
|
107
|
-
"data_build_id": "populace-us-2024-sparse-
|
|
107
|
+
"data_build_id": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z"
|
|
108
108
|
},
|
|
109
109
|
"certified_data_artifact": {
|
|
110
|
-
"build_id": "populace-us-2024-sparse-
|
|
110
|
+
"build_id": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
111
111
|
"data_package": {
|
|
112
112
|
"name": "populace-data",
|
|
113
113
|
"version": "0.1.0"
|
|
114
114
|
},
|
|
115
115
|
"dataset": "populace_us_2024",
|
|
116
|
-
"sha256": "
|
|
117
|
-
"uri": "hf://policyengine/populace-us/populace_us_2024.h5@populace-us-2024-sparse-
|
|
116
|
+
"sha256": "5e2a10b97f1fa740fbc1cc1be3450a19b2089c56de59d3754db13ec0dd048b88",
|
|
117
|
+
"uri": "hf://policyengine/populace-us/populace_us_2024.h5@populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z"
|
|
118
118
|
},
|
|
119
119
|
"country_id": "us",
|
|
120
120
|
"data_package": {
|
|
121
121
|
"name": "populace-data",
|
|
122
|
-
"release_manifest_path": "releases/populace-us-2024-sparse-
|
|
123
|
-
"release_manifest_revision": "populace-us-2024-sparse-
|
|
122
|
+
"release_manifest_path": "releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/release_manifest.json",
|
|
123
|
+
"release_manifest_revision": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
124
124
|
"repo_id": "policyengine/populace-us",
|
|
125
125
|
"repo_type": "dataset",
|
|
126
126
|
"version": "0.1.0"
|
|
@@ -128,60 +128,54 @@
|
|
|
128
128
|
"data_producer": "populace",
|
|
129
129
|
"datasets": {
|
|
130
130
|
"calibration_diagnostics": {
|
|
131
|
-
"path": "releases/populace-us-2024-sparse-
|
|
131
|
+
"path": "releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/calibration_diagnostics.json",
|
|
132
132
|
"repo_id": "policyengine/populace-us",
|
|
133
|
-
"revision": "populace-us-2024-sparse-
|
|
134
|
-
"sha256": "
|
|
133
|
+
"revision": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
134
|
+
"sha256": "79d3a780a2e3f3524da261d702ddc9ca1ad09fb3d5a4da52d998038cf815eeb9"
|
|
135
135
|
},
|
|
136
136
|
"demographics": {
|
|
137
|
-
"path": "releases/populace-us-2024-sparse-
|
|
137
|
+
"path": "releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/demographics.json",
|
|
138
138
|
"repo_id": "policyengine/populace-us",
|
|
139
|
-
"revision": "populace-us-2024-sparse-
|
|
140
|
-
"sha256": "
|
|
139
|
+
"revision": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
140
|
+
"sha256": "b057cb4bede77d843fec2654a213610079be7d0a3195fa0ae9875e39691a4418"
|
|
141
141
|
},
|
|
142
142
|
"populace_us_2024": {
|
|
143
143
|
"path": "populace_us_2024.h5",
|
|
144
144
|
"repo_id": "policyengine/populace-us",
|
|
145
|
-
"revision": "populace-us-2024-sparse-
|
|
146
|
-
"sha256": "
|
|
145
|
+
"revision": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
146
|
+
"sha256": "5e2a10b97f1fa740fbc1cc1be3450a19b2089c56de59d3754db13ec0dd048b88"
|
|
147
147
|
},
|
|
148
148
|
"populace_us_2024_calibration": {
|
|
149
149
|
"path": "populace_us_2024_calibration.npz",
|
|
150
150
|
"repo_id": "policyengine/populace-us",
|
|
151
|
-
"revision": "populace-us-2024-sparse-
|
|
152
|
-
"sha256": "
|
|
153
|
-
},
|
|
154
|
-
"reform_validation": {
|
|
155
|
-
"path": "releases/populace-us-2024-sparse-l0-refit-57k-71a0887-national-only-20260701/reform_validation.json",
|
|
156
|
-
"repo_id": "policyengine/populace-us",
|
|
157
|
-
"revision": "populace-us-2024-sparse-l0-refit-57k-71a0887-national-only-20260701",
|
|
158
|
-
"sha256": "7df68869c57e52297181838f67f91467b8eb49cfaa128cc743411348ddcdd47f"
|
|
151
|
+
"revision": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
152
|
+
"sha256": "763f2ec8b191c81aea9a0aa7cd3ffc2235ed8d1249ebb74df95a4715a97c1101"
|
|
159
153
|
},
|
|
160
154
|
"us_source_coverage": {
|
|
161
|
-
"path": "releases/populace-us-2024-sparse-
|
|
155
|
+
"path": "releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/us_source_coverage.json",
|
|
162
156
|
"repo_id": "policyengine/populace-us",
|
|
163
|
-
"revision": "populace-us-2024-sparse-
|
|
164
|
-
"sha256": "
|
|
157
|
+
"revision": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
158
|
+
"sha256": "56bf87c81f143cdf318aa13d43faddc79f23d4d6b849b223f980f8c34c66e0dd"
|
|
165
159
|
}
|
|
166
160
|
},
|
|
167
161
|
"default_dataset": "populace_us_2024",
|
|
168
|
-
"default_dataset_uri": "hf://policyengine/populace-us/populace_us_2024.h5@populace-us-2024-sparse-
|
|
162
|
+
"default_dataset_uri": "hf://policyengine/populace-us/populace_us_2024.h5@populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
169
163
|
"model_package": {
|
|
170
164
|
"name": "policyengine-us",
|
|
171
|
-
"sha256": "
|
|
172
|
-
"version": "1.
|
|
173
|
-
"wheel_url": "https://files.pythonhosted.org/packages/
|
|
165
|
+
"sha256": "2b2c5c02c26ab212270948db1f30129728b625fc6109fc9ca0c604b714546909",
|
|
166
|
+
"version": "1.764.6",
|
|
167
|
+
"wheel_url": "https://files.pythonhosted.org/packages/e2/5a/0566666f30ad06e416f0cf25b24bdee73acd71897fb2de3c0ac43b59e3e3/policyengine_us-1.764.6-py3-none-any.whl"
|
|
174
168
|
},
|
|
175
|
-
"policyengine_version": "4.20.
|
|
169
|
+
"policyengine_version": "4.20.2",
|
|
176
170
|
"region_datasets": {
|
|
177
171
|
"national": {
|
|
178
172
|
"path_template": "populace_us_2024.h5"
|
|
179
173
|
}
|
|
180
174
|
},
|
|
181
|
-
"release_manifest_uri": "https://huggingface.co/datasets/policyengine/populace-us/resolve/populace-us-2024-sparse-
|
|
175
|
+
"release_manifest_uri": "https://huggingface.co/datasets/policyengine/populace-us/resolve/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/release_manifest.json",
|
|
182
176
|
"schema_version": 1,
|
|
183
|
-
"source_manifest_uri": "hf://dataset/policyengine/populace-us@populace-us-2024-sparse-
|
|
184
|
-
"version": "populace-us-2024-sparse-
|
|
177
|
+
"source_manifest_uri": "hf://dataset/policyengine/populace-us@populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/release_manifest.json",
|
|
178
|
+
"version": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z"
|
|
185
179
|
}
|
|
186
180
|
},
|
|
187
181
|
"extras": {
|
|
@@ -202,17 +196,17 @@
|
|
|
202
196
|
"packages": {
|
|
203
197
|
"policyengine": {
|
|
204
198
|
"import_name": "policyengine",
|
|
205
|
-
"install_requirement": "policyengine==4.20.
|
|
199
|
+
"install_requirement": "policyengine==4.20.2",
|
|
206
200
|
"name": "policyengine",
|
|
207
201
|
"role": "bundle_carrier",
|
|
208
|
-
"version": "4.20.
|
|
202
|
+
"version": "4.20.2"
|
|
209
203
|
},
|
|
210
204
|
"policyengine-core": {
|
|
211
205
|
"import_name": "policyengine_core",
|
|
212
|
-
"install_requirement": "policyengine-core==3.
|
|
206
|
+
"install_requirement": "policyengine-core==3.30.0",
|
|
213
207
|
"name": "policyengine-core",
|
|
214
208
|
"role": "runtime_dependency",
|
|
215
|
-
"version": "3.
|
|
209
|
+
"version": "3.30.0"
|
|
216
210
|
},
|
|
217
211
|
"policyengine-uk": {
|
|
218
212
|
"country": "uk",
|
|
@@ -225,12 +219,12 @@
|
|
|
225
219
|
"policyengine-us": {
|
|
226
220
|
"country": "us",
|
|
227
221
|
"import_name": "policyengine_us",
|
|
228
|
-
"install_requirement": "policyengine-us==1.
|
|
222
|
+
"install_requirement": "policyengine-us==1.764.6",
|
|
229
223
|
"name": "policyengine-us",
|
|
230
224
|
"role": "country_model",
|
|
231
|
-
"version": "1.
|
|
225
|
+
"version": "1.764.6"
|
|
232
226
|
}
|
|
233
227
|
},
|
|
234
|
-
"policyengine_version": "4.20.
|
|
228
|
+
"policyengine_version": "4.20.2",
|
|
235
229
|
"schema_version": 2
|
|
236
230
|
}
|
{policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/bundle/uk.trace.tro.jsonld
RENAMED
|
@@ -18,18 +18,18 @@
|
|
|
18
18
|
"schema:url": "https://policyengine.org"
|
|
19
19
|
},
|
|
20
20
|
"schema:dateCreated": "2026-06-19T02:38:00Z",
|
|
21
|
-
"schema:description": "TRACE TRO for certified runtime bundle uk-4.20.
|
|
21
|
+
"schema:description": "TRACE TRO for certified runtime bundle uk-4.20.2 covering the bundle manifest, the certified dataset artifact, the country model wheel, and the country data release manifest when it is available.",
|
|
22
22
|
"schema:name": "policyengine uk certified bundle TRO",
|
|
23
23
|
"trov:createdWith": {
|
|
24
24
|
"@type": "schema:SoftwareApplication",
|
|
25
25
|
"schema:name": "policyengine",
|
|
26
|
-
"schema:softwareVersion": "4.20.
|
|
26
|
+
"schema:softwareVersion": "4.20.2"
|
|
27
27
|
},
|
|
28
28
|
"trov:hasArrangement": [
|
|
29
29
|
{
|
|
30
30
|
"@id": "arrangement/1",
|
|
31
31
|
"@type": "trov:ArtifactArrangement",
|
|
32
|
-
"rdfs:comment": "Certified arrangement for bundle uk-4.20.
|
|
32
|
+
"rdfs:comment": "Certified arrangement for bundle uk-4.20.2.",
|
|
33
33
|
"trov:hasArtifactLocation": [
|
|
34
34
|
{
|
|
35
35
|
"@id": "arrangement/1/location/bundle_manifest",
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"@type": "trov:ResearchArtifact",
|
|
76
76
|
"schema:name": "policyengine.py bundle manifest for uk",
|
|
77
77
|
"trov:mimeType": "application/json",
|
|
78
|
-
"trov:sha256": "
|
|
78
|
+
"trov:sha256": "6cdb09036189a8c5fddc0c05354396d93611d31be548e2a67e3685b27f083fe3"
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
"@id": "composition/1/artifact/data_release_manifest",
|
|
@@ -102,7 +102,7 @@
|
|
|
102
102
|
"trov:hasFingerprint": {
|
|
103
103
|
"@id": "composition/1/fingerprint",
|
|
104
104
|
"@type": "trov:CompositionFingerprint",
|
|
105
|
-
"trov:sha256": "
|
|
105
|
+
"trov:sha256": "92b5f08c4a9e4e96bbc1e1f4b01dbd307029c1ad12aa437b7126f90e28e24592"
|
|
106
106
|
}
|
|
107
107
|
},
|
|
108
108
|
"trov:hasPerformance": {
|
{policyengine-4.20.0 → policyengine-4.20.2}/src/policyengine/data/bundle/us.trace.tro.jsonld
RENAMED
|
@@ -17,19 +17,19 @@
|
|
|
17
17
|
"schema:name": "PolicyEngine",
|
|
18
18
|
"schema:url": "https://policyengine.org"
|
|
19
19
|
},
|
|
20
|
-
"schema:dateCreated": "2026-07-
|
|
21
|
-
"schema:description": "TRACE TRO for certified runtime bundle us-4.20.
|
|
20
|
+
"schema:dateCreated": "2026-07-09T03:47:49.070290+00:00",
|
|
21
|
+
"schema:description": "TRACE TRO for certified runtime bundle us-4.20.2 covering the bundle manifest, the certified dataset artifact, the country model wheel, and the country data release manifest when it is available.",
|
|
22
22
|
"schema:name": "policyengine us certified bundle TRO",
|
|
23
23
|
"trov:createdWith": {
|
|
24
24
|
"@type": "schema:SoftwareApplication",
|
|
25
25
|
"schema:name": "policyengine",
|
|
26
|
-
"schema:softwareVersion": "4.20.
|
|
26
|
+
"schema:softwareVersion": "4.20.2"
|
|
27
27
|
},
|
|
28
28
|
"trov:hasArrangement": [
|
|
29
29
|
{
|
|
30
30
|
"@id": "arrangement/1",
|
|
31
31
|
"@type": "trov:ArtifactArrangement",
|
|
32
|
-
"rdfs:comment": "Certified arrangement for bundle us-4.20.
|
|
32
|
+
"rdfs:comment": "Certified arrangement for bundle us-4.20.2.",
|
|
33
33
|
"trov:hasArtifactLocation": [
|
|
34
34
|
{
|
|
35
35
|
"@id": "arrangement/1/location/bundle_manifest",
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"trov:hasArtifact": {
|
|
46
46
|
"@id": "composition/1/artifact/data_release_manifest"
|
|
47
47
|
},
|
|
48
|
-
"trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-us/resolve/populace-us-2024-sparse-
|
|
48
|
+
"trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-us/resolve/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/releases/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/release_manifest.json"
|
|
49
49
|
},
|
|
50
50
|
{
|
|
51
51
|
"@id": "arrangement/1/location/dataset",
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
"trov:hasArtifact": {
|
|
54
54
|
"@id": "composition/1/artifact/dataset"
|
|
55
55
|
},
|
|
56
|
-
"trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-us/resolve/populace-us-2024-sparse-
|
|
56
|
+
"trov:hasLocation": "https://huggingface.co/datasets/policyengine/populace-us/resolve/populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z/populace_us_2024.h5"
|
|
57
57
|
},
|
|
58
58
|
{
|
|
59
59
|
"@id": "arrangement/1/location/model_wheel",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"trov:hasArtifact": {
|
|
62
62
|
"@id": "composition/1/artifact/model_wheel"
|
|
63
63
|
},
|
|
64
|
-
"trov:hasLocation": "https://files.pythonhosted.org/packages/
|
|
64
|
+
"trov:hasLocation": "https://files.pythonhosted.org/packages/e2/5a/0566666f30ad06e416f0cf25b24bdee73acd71897fb2de3c0ac43b59e3e3/policyengine_us-1.764.6-py3-none-any.whl"
|
|
65
65
|
}
|
|
66
66
|
]
|
|
67
67
|
}
|
|
@@ -75,50 +75,50 @@
|
|
|
75
75
|
"@type": "trov:ResearchArtifact",
|
|
76
76
|
"schema:name": "policyengine.py bundle manifest for us",
|
|
77
77
|
"trov:mimeType": "application/json",
|
|
78
|
-
"trov:sha256": "
|
|
78
|
+
"trov:sha256": "6cdb09036189a8c5fddc0c05354396d93611d31be548e2a67e3685b27f083fe3"
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
"@id": "composition/1/artifact/data_release_manifest",
|
|
82
82
|
"@type": "trov:ResearchArtifact",
|
|
83
83
|
"schema:name": "populace-data release manifest 0.1.0",
|
|
84
84
|
"trov:mimeType": "application/json",
|
|
85
|
-
"trov:sha256": "
|
|
85
|
+
"trov:sha256": "c2bbe50a75279a83f741ec2267134702ee0e1de2e7babb74bd72ef148d25aa4b"
|
|
86
86
|
},
|
|
87
87
|
{
|
|
88
88
|
"@id": "composition/1/artifact/dataset",
|
|
89
89
|
"@type": "trov:ResearchArtifact",
|
|
90
90
|
"schema:name": "populace_us_2024",
|
|
91
91
|
"trov:mimeType": "application/x-hdf5",
|
|
92
|
-
"trov:sha256": "
|
|
92
|
+
"trov:sha256": "5e2a10b97f1fa740fbc1cc1be3450a19b2089c56de59d3754db13ec0dd048b88"
|
|
93
93
|
},
|
|
94
94
|
{
|
|
95
95
|
"@id": "composition/1/artifact/model_wheel",
|
|
96
96
|
"@type": "trov:ResearchArtifact",
|
|
97
|
-
"schema:name": "policyengine-us==1.
|
|
97
|
+
"schema:name": "policyengine-us==1.764.6 wheel",
|
|
98
98
|
"trov:mimeType": "application/zip",
|
|
99
|
-
"trov:sha256": "
|
|
99
|
+
"trov:sha256": "2b2c5c02c26ab212270948db1f30129728b625fc6109fc9ca0c604b714546909"
|
|
100
100
|
}
|
|
101
101
|
],
|
|
102
102
|
"trov:hasFingerprint": {
|
|
103
103
|
"@id": "composition/1/fingerprint",
|
|
104
104
|
"@type": "trov:CompositionFingerprint",
|
|
105
|
-
"trov:sha256": "
|
|
105
|
+
"trov:sha256": "cd0d43feb4fe567e2e54191a09c53c3992c9fbefc5d57b04448bde559a214052"
|
|
106
106
|
}
|
|
107
107
|
},
|
|
108
108
|
"trov:hasPerformance": {
|
|
109
109
|
"@id": "trp/1",
|
|
110
110
|
"@type": "trov:TransparentResearchPerformance",
|
|
111
|
-
"pe:builtWithModelVersion": "1.
|
|
111
|
+
"pe:builtWithModelVersion": "1.764.6",
|
|
112
112
|
"pe:certifiedBy": "policyengine.py bundle certification",
|
|
113
|
-
"pe:certifiedForModelVersion": "1.
|
|
113
|
+
"pe:certifiedForModelVersion": "1.764.6",
|
|
114
114
|
"pe:compatibilityBasis": "built_with_model_package",
|
|
115
|
-
"pe:dataBuildId": "populace-us-2024-sparse-
|
|
115
|
+
"pe:dataBuildId": "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z",
|
|
116
116
|
"pe:emittedIn": "repository-bundle",
|
|
117
|
-
"rdfs:comment": "Certification of build populace-us-2024-sparse-
|
|
117
|
+
"rdfs:comment": "Certification of build populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z for policyengine-us 1.764.6.",
|
|
118
118
|
"trov:accessedArrangement": {
|
|
119
119
|
"@id": "arrangement/1"
|
|
120
120
|
},
|
|
121
|
-
"trov:startedAtTime": "2026-07-
|
|
121
|
+
"trov:startedAtTime": "2026-07-09T03:47:49.070290+00:00",
|
|
122
122
|
"trov:wasConductedBy": {
|
|
123
123
|
"@id": "trs"
|
|
124
124
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: policyengine
|
|
3
|
-
Version: 4.20.
|
|
3
|
+
Version: 4.20.2
|
|
4
4
|
Summary: A package to conduct policy analysis using PolicyEngine tax-benefit models.
|
|
5
5
|
Author-email: PolicyEngine <hello@policyengine.org>
|
|
6
6
|
License: GNU AFFERO GENERAL PUBLIC LICENSE
|
|
@@ -689,15 +689,15 @@ Requires-Dist: plotly>=5.0.0; extra == "plotting"
|
|
|
689
689
|
Provides-Extra: graph
|
|
690
690
|
Requires-Dist: networkx>=3.0; extra == "graph"
|
|
691
691
|
Provides-Extra: models
|
|
692
|
-
Requires-Dist: policyengine-core==3.
|
|
693
|
-
Requires-Dist: policyengine-us==1.
|
|
692
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "models"
|
|
693
|
+
Requires-Dist: policyengine-us==1.764.6; extra == "models"
|
|
694
694
|
Requires-Dist: policyengine-uk==2.89.2; extra == "models"
|
|
695
695
|
Provides-Extra: uk
|
|
696
|
-
Requires-Dist: policyengine-core==3.
|
|
696
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "uk"
|
|
697
697
|
Requires-Dist: policyengine-uk==2.89.2; extra == "uk"
|
|
698
698
|
Provides-Extra: us
|
|
699
|
-
Requires-Dist: policyengine-core==3.
|
|
700
|
-
Requires-Dist: policyengine-us==1.
|
|
699
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "us"
|
|
700
|
+
Requires-Dist: policyengine-us==1.764.6; extra == "us"
|
|
701
701
|
Provides-Extra: dev
|
|
702
702
|
Requires-Dist: pytest; extra == "dev"
|
|
703
703
|
Requires-Dist: furo; extra == "dev"
|
|
@@ -712,8 +712,8 @@ Requires-Dist: ruff>=0.9.0; extra == "dev"
|
|
|
712
712
|
Requires-Dist: towncrier>=24.8.0; extra == "dev"
|
|
713
713
|
Requires-Dist: mypy>=1.11.0; extra == "dev"
|
|
714
714
|
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
|
|
715
|
-
Requires-Dist: policyengine-core==3.
|
|
716
|
-
Requires-Dist: policyengine-us==1.
|
|
715
|
+
Requires-Dist: policyengine-core==3.30.0; extra == "dev"
|
|
716
|
+
Requires-Dist: policyengine-us==1.764.6; extra == "dev"
|
|
717
717
|
Requires-Dist: policyengine-uk==2.89.2; extra == "dev"
|
|
718
718
|
Dynamic: license-file
|
|
719
719
|
|
|
@@ -23,25 +23,25 @@ ruff>=0.9.0
|
|
|
23
23
|
towncrier>=24.8.0
|
|
24
24
|
mypy>=1.11.0
|
|
25
25
|
pytest-cov>=5.0.0
|
|
26
|
-
policyengine-core==3.
|
|
27
|
-
policyengine-us==1.
|
|
26
|
+
policyengine-core==3.30.0
|
|
27
|
+
policyengine-us==1.764.6
|
|
28
28
|
policyengine-uk==2.89.2
|
|
29
29
|
|
|
30
30
|
[graph]
|
|
31
31
|
networkx>=3.0
|
|
32
32
|
|
|
33
33
|
[models]
|
|
34
|
-
policyengine-core==3.
|
|
35
|
-
policyengine-us==1.
|
|
34
|
+
policyengine-core==3.30.0
|
|
35
|
+
policyengine-us==1.764.6
|
|
36
36
|
policyengine-uk==2.89.2
|
|
37
37
|
|
|
38
38
|
[plotting]
|
|
39
39
|
plotly>=5.0.0
|
|
40
40
|
|
|
41
41
|
[uk]
|
|
42
|
-
policyengine-core==3.
|
|
42
|
+
policyengine-core==3.30.0
|
|
43
43
|
policyengine-uk==2.89.2
|
|
44
44
|
|
|
45
45
|
[us]
|
|
46
|
-
policyengine-core==3.
|
|
47
|
-
policyengine-us==1.
|
|
46
|
+
policyengine-core==3.30.0
|
|
47
|
+
policyengine-us==1.764.6
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"has_income_tax": true,
|
|
6
6
|
"has_region_registry": true,
|
|
7
7
|
"model_package_name": "policyengine-us",
|
|
8
|
-
"num_parameters_bucketed_100s":
|
|
9
|
-
"num_variables_bucketed_100s":
|
|
8
|
+
"num_parameters_bucketed_100s": 978,
|
|
9
|
+
"num_variables_bucketed_100s": 57,
|
|
10
10
|
"region_registry_country": "us"
|
|
11
11
|
}
|
|
@@ -114,13 +114,13 @@ class TestUSModel:
|
|
|
114
114
|
assert us_latest.release_manifest is not None
|
|
115
115
|
assert us_latest.release_manifest.country_id == "us"
|
|
116
116
|
assert us_latest.model_package.name == "policyengine-us"
|
|
117
|
-
assert us_latest.model_package.version == "1.
|
|
117
|
+
assert us_latest.model_package.version == "1.764.6"
|
|
118
118
|
assert us_latest.data_package.name == "populace-data"
|
|
119
119
|
assert us_latest.data_package.version == "0.1.0"
|
|
120
120
|
assert (
|
|
121
121
|
us_latest.default_dataset_uri
|
|
122
122
|
== "hf://policyengine/populace-us/populace_us_2024.h5"
|
|
123
|
-
"@populace-us-2024-sparse-
|
|
123
|
+
"@populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z"
|
|
124
124
|
)
|
|
125
125
|
|
|
126
126
|
def test_has_hundreds_of_parameters(self):
|
|
@@ -38,12 +38,10 @@ POLICYENGINE_VERSION = re.search(
|
|
|
38
38
|
PYPROJECT.read_text(),
|
|
39
39
|
re.MULTILINE,
|
|
40
40
|
).group(1)
|
|
41
|
-
US_MODEL_VERSION = "1.
|
|
42
|
-
US_BUILT_WITH_MODEL_VERSION = "1.
|
|
41
|
+
US_MODEL_VERSION = "1.764.6"
|
|
42
|
+
US_BUILT_WITH_MODEL_VERSION = "1.764.6"
|
|
43
43
|
US_DATA_RELEASE_VERSION = "0.1.0"
|
|
44
|
-
US_DATA_RELEASE_ID =
|
|
45
|
-
"populace-us-2024-sparse-l0-refit-57k-71a0887-national-only-20260701"
|
|
46
|
-
)
|
|
44
|
+
US_DATA_RELEASE_ID = "populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z"
|
|
47
45
|
US_DATA_RELEASE_REVISION = US_DATA_RELEASE_ID
|
|
48
46
|
US_DATA_RELEASE_PATH = f"releases/{US_DATA_RELEASE_ID}/release_manifest.json"
|
|
49
47
|
US_DATA_ARTIFACT_REVISION = US_DATA_RELEASE_ID
|
|
@@ -107,7 +107,7 @@ class TestUSRegionRegistry:
|
|
|
107
107
|
assert national.region_type == "national"
|
|
108
108
|
assert national.dataset_path == (
|
|
109
109
|
"hf://policyengine/populace-us/populace_us_2024.h5"
|
|
110
|
-
"@populace-us-2024-sparse-
|
|
110
|
+
"@populace-us-2024-buildi-sparse-rmloss100-6e8e929-20260709T034135Z"
|
|
111
111
|
)
|
|
112
112
|
|
|
113
113
|
def test__given_us_registry__then_has_51_states(self):
|