Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
94700d3
Fix last release, just to get a commit in here.
hmgaudecker Dec 12, 2024
6c6c015
Namespaces: Infrastructure (#780)
lars-reimann Feb 15, 2025
e31e924
Change behaviour of namespaces so they are at the module level. (#818)
hmgaudecker Feb 22, 2025
fd2d696
Commit to create PR.
MImmesberger Dec 19, 2024
8ee5308
Revert "Commit to create PR."
MImmesberger Mar 11, 2025
b2bdda0
Use qualified name for rounding keys in params files (#824)
MImmesberger Mar 11, 2025
5f76cc4
Merge branch 'main' into collect-components-of-namespaces
hmgaudecker Mar 14, 2025
dab7a66
Namespaces: Renamings (#805)
MImmesberger Mar 23, 2025
1b6bdf6
Incorporate dags release. Update authors, add maintainers.
hmgaudecker Mar 24, 2025
2399531
Start with TTSIM/DE distinction (#850)
MImmesberger Apr 7, 2025
780d820
Fix test namespace (#858)
felixschmitz Apr 8, 2025
4fa1fa1
Fix #814 (#860)
timmens Apr 9, 2025
a947910
Add minimal test policy environment - METTSIM (#856)
MImmesberger Apr 9, 2025
f9e5f55
Fix bug in `fg_id` creation, #801 (#861)
mj023 Apr 9, 2025
e3a9b23
Credits.
MImmesberger Apr 9, 2025
54b9692
Add PolicyInputs, change Type Hierarchy (#854)
timmens Apr 12, 2025
5878a73
Require dashed iso date everywhere. Fixes #795 (#871)
hmgaudecker Apr 14, 2025
12170b2
Remove custom type conversions. (#872)
hmgaudecker Apr 14, 2025
46af123
Agg decorator (#873)
hmgaudecker Apr 17, 2025
70f0964
Fix JAX-Jit tests (#877)
timmens Apr 22, 2025
e1dd5df
Use `ast.unparse` instead of `astor.code_gen.to_source` (#878)
hmgaudecker Apr 22, 2025
908e272
Validate params files (#880)
hmgaudecker Apr 25, 2025
7ff0b24
Interface: Add DataFrame to NestedDataDict conversion (#876)
MImmesberger Apr 26, 2025
3628098
Fix ruff complaints. (#885)
MImmesberger Apr 26, 2025
cc7a01d
Fix docs build (#886)
MImmesberger Apr 26, 2025
0634bb6
Credits.
MImmesberger Apr 28, 2025
5ee1bac
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Apr 28, 2025
43858f9
Vectorize `piecewise_polynomial` (#867)
mj023 Apr 28, 2025
8390bc5
Infer groupings from objects tree (#888)
MImmesberger Apr 29, 2025
da62dfd
Typing (#887)
hmgaudecker Apr 29, 2025
7980a57
Make METTSIM largely jittable (#879)
hmgaudecker May 1, 2025
d9248f9
Prepare for jitting / vectorization of GETTSIM (#891)
hmgaudecker May 1, 2025
598620d
Replace Proxy Renteneinkommen Vorjahr with policy input (#894)
MImmesberger May 5, 2025
cb79c6d
Remove fake dependencies, fixes #666. (#896)
hmgaudecker May 6, 2025
82f0646
Remove infrastructure to create synthetic data. (#899)
MImmesberger May 6, 2025
be71147
Unify parsing of params (#897)
hmgaudecker Jun 2, 2025
8069fe4
Move param dataclasses to param_types.py (#945)
MImmesberger Jun 3, 2025
9263beb
METTSIM: Test overwriting scalar param / scalar param function with a…
MImmesberger Jun 3, 2025
53f87fc
Remove all occurrences of `vectorization_strategy='loop'` (#943)
mj023 Jun 5, 2025
692278d
Preliminary DAG-based interface (#948)
hmgaudecker Jun 5, 2025
d19f22a
Improve implementation of Mehrbedarf für Alleinerziehende. (#954)
MImmesberger Jun 5, 2025
ae5936e
Fix small typo; #954 was merged a bit too fast.
MImmesberger Jun 5, 2025
ba6d1aa
Consecutiveint type for Anspruchsdauer ALG1 (#955)
MImmesberger Jun 5, 2025
cdd9611
Use relative paths for taxes and transfers (#957)
MImmesberger Jun 5, 2025
e5aaf0a
Hierarchical interface (#953)
hmgaudecker Jun 25, 2025
edf184a
Add 'output' keyword to main, fix tests (#984)
hmgaudecker Jun 27, 2025
152909f
Update dags branch after merge over there.
hmgaudecker Jun 27, 2025
7866306
Make date input dependent, improve logic of `InputDependentInterfaceF…
MImmesberger Jun 30, 2025
e9efb90
Run fail_if functions first, closes #981 (#987)
hmgaudecker Jun 30, 2025
ef2ead8
Make GETTSIM functions jittable (#986)
hmgaudecker Jul 2, 2025
c916252
Remove config elements from policy environment (#990)
MImmesberger Jul 3, 2025
53a61c3
Fail if length of data input arrays differs. (#992)
MImmesberger Jul 3, 2025
e4c7305
Upserting of params (#993)
MImmesberger Jul 4, 2025
aa1e29a
Implement remaining interface components (#991)
hmgaudecker Jul 4, 2025
8f5eed6
Small fixes related to #991 (#996)
MImmesberger Jul 7, 2025
c22b3ca
Improve errors when executing the interface DAG (#997)
MImmesberger Jul 7, 2025
a74e763
Rename: output -> main_target(s), targets -> tt_targets (#1001)
hmgaudecker Jul 7, 2025
4a16194
Add N-Dimensional Lookup Table (#998)
mj023 Jul 7, 2025
02168be
Use individual-specific Zusatzbeitrag (#1000)
MImmesberger Jul 8, 2025
a8dca0c
Update hooks and run them, fix new failures.
hmgaudecker Jul 8, 2025
3b09e4c
Bring in some stuff from #855 s.t. diff is minimal.
hmgaudecker Jul 8, 2025
e475e36
Improve error message.
hmgaudecker Jul 8, 2025
ceee61b
Fix regex in tests.
hmgaudecker Jul 8, 2025
0f870c0
Remove `kind` input (#1007)
MImmesberger Jul 12, 2025
d1e1641
Simple renamings. (#1011)
MImmesberger Jul 12, 2025
27e081e
Rente angleichung ost west (#1012)
MImmesberger Jul 13, 2025
683da2e
Remaining parts of 2025 parameter update (#1015)
MImmesberger Jul 13, 2025
d03cdda
Fix Rente Hinzuverdienstgrenze (#1013)
MImmesberger Jul 14, 2025
1823c31
Enable annotations for interface / tax-transfer functions (#1018)
hmgaudecker Jul 15, 2025
322dbbe
Turn fail_ifs and warn_ifs on + let `main` return a pytree, update pi…
MImmesberger Jul 15, 2025
50d846f
Split up `fail_and_warn` argument of `main` (#1024)
MImmesberger Jul 16, 2025
36574d1
Change calls of main so that `main_target` / `main_targets` is the fi…
hmgaudecker Jul 16, 2025
8267dbd
Fix #1023 (#1026)
MImmesberger Jul 16, 2025
0e48d1d
Better error message for missing input data (#1017)
MImmesberger Jul 16, 2025
18a8fd6
Better fail/warn tests (#1027)
MImmesberger Jul 17, 2025
00d4a23
Tighten ruff checks (#1033)
hmgaudecker Jul 17, 2025
3a8e894
Change namespace of private Renteneinnahmen (#1029)
MImmesberger Jul 18, 2025
e0d9801
Fix #1006, Improve error message when input data are missing and resu…
MImmesberger Jul 18, 2025
4d79580
Improve performance of `processed_data` (#1037)
JuergenWiemers Jul 20, 2025
2ee33f9
Rename `ist_selbstständig` to `ist_hauptberuflich_selbstständig` (#1038)
MImmesberger Jul 21, 2025
e68a2d7
Clean up Wohngeld, Werbungskosten, Minjobs around the introduction of…
MImmesberger Jul 21, 2025
cd61e02
Change the handling of `policy_date`, `evaluation_date`; remove `date…
hmgaudecker Jul 21, 2025
cd1354b
Use monthly interval for dependabot.
hmgaudecker Jul 22, 2025
4327982
Vorjahr input names and their namespaces (#1040)
MImmesberger Jul 22, 2025
3ef80ca
Update changelog.
hmgaudecker Jul 22, 2025
395a787
Fix links.
hmgaudecker Jul 22, 2025
c494693
Fix links, formatting, add 1041.
hmgaudecker Jul 22, 2025
6e4f869
Don't create DAG cycles via automatically added functions (#1041)
MImmesberger Jul 22, 2025
3f35322
Add copy_environment function (#1008) (#1042)
timmens Jul 22, 2025
cbf95c1
Had merged without double-checking all tests...
hmgaudecker Jul 22, 2025
6f12a59
Fail if param functions depend on policy functions.
MImmesberger Jul 22, 2025
30662fa
Revert "Fail if param functions depend on policy functions."
MImmesberger Jul 22, 2025
e4e7ada
Fail if ParamFunctions depends on ColumnObjects (#1044)
MImmesberger Jul 23, 2025
3437b12
Raise more errors during vectorization (#1043)
hmgaudecker Jul 23, 2025
205f358
Fail if backend has changed (#1046)
hmgaudecker Jul 23, 2025
b88e3e1
Raise an error if invalid input paths are provided to `main`, fixes #…
hmgaudecker Jul 23, 2025
84daa3c
Allow input template creation when path to root node traverses an aut…
MImmesberger Jul 23, 2025
5fe956f
GEP 7 and updates to GEPs 1-5 necessitated by GEP 6 (#855)
hmgaudecker Jul 23, 2025
ad1d40e
Remove explicitly adding group ID to template, see issue #1051.
MImmesberger Jul 23, 2025
ae759f4
Extract TTSIM (#1052)
hmgaudecker Jul 24, 2025
df63e7d
Changelog.
hmgaudecker Jul 24, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
---
version: 2
updates:
- package-ecosystem: github-actions
directory: /
schedule:
interval: monthly
groups:
github-actions:
patterns:
- '*'
37 changes: 21 additions & 16 deletions .github/workflows/main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,38 +25,43 @@ jobs:
environment:
- py311
- py312
# - py312-jax
- py313
- py313-jax
exclude:
- os: macos-latest
environment: py311
environment: py311, py312
- os: windows-latest
environment: py311
environment: py311, py312
steps:
- uses: actions/checkout@v4
- uses: prefix-dev/[email protected].1
- uses: prefix-dev/[email protected].10
with:
pixi-version: v0.34.0
pixi-version: v0.49.0
cache: true
cache-write: ${{ github.event_name == 'push' && github.ref_name == 'main' }}
frozen: true
environments: ${{ matrix.environment }}
- name: Run tests on Linux (with NumPy backend)
# Ignore MacOS for being slow -- no reason that would break if JAX works.
if: runner.os == 'Linux'
run: pixi run -e ${{ matrix.environment }} pytest --cov=./ --cov-report=xml
shell: bash -el {0}
- name: Configure dot on macOS
if: runner.os == 'macOS'
run: pixi run -e ${{ matrix.environment }} dot -c
- name: Run tests on macOS & Windows (with JAX backend)
# TODO: remove exclusion of Linux once --use-jax is fixed.
- name: Run tests on Linux (with NumPy backend and without coverage)
if: matrix.environment == 'py311' || matrix.environment == 'py312'
run: pixi run -e ${{ matrix.environment }} tests
shell: bash -el {0}
- name: Run tests on Linux (with NumPy backend and coverage)
if: runner.os == 'Linux' && matrix.environment == 'py313'
run: pixi run -e ${{ matrix.environment }} tests --cov=./ --cov-report=xml
shell: bash -el {0}
- name: Run tests on MacOS / Windows (with NumPy backend and without coverage)
if: runner.os != 'Linux'
run: pixi run -e ${{ matrix.environment }} pytest
# TODO: add to the end of previous line to actually run with Jax backend
# --use-jax
run: pixi run -e ${{ matrix.environment }} tests
shell: bash -el {0}
- name: Run tests with JAX backend
if: matrix.environment == 'py313-jax'
run: pixi run -e ${{ matrix.environment }} tests-jax
shell: bash -el {0}
- name: Upload coverage reports
if: runner.os == 'Linux' && matrix.environment == 'py312'
if: runner.os == 'Linux' && matrix.environment == 'py313'
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
4 changes: 2 additions & 2 deletions .github/workflows/publish-to-pypi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,9 @@ jobs:
name: Build and publish Python 🐍 distributions 📦 to PyPI
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python 3.12
uses: actions/setup-python@v4
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install pypa/build
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -72,3 +72,4 @@ docs/_build
docs/tutorials/sandbox_cz.ipynb
_version.py
.pixi/
prof/
28 changes: 22 additions & 6 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,11 @@ repos:
- id: check-ast
- id: check-docstring-first
- repo: https://github.com/adrienverge/yamllint.git
rev: v1.35.1
rev: v1.37.1
hooks:
- id: yamllint
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.7.2
rev: v0.12.2
hooks:
# Run the linter.
- id: ruff
Expand All @@ -57,14 +57,14 @@ repos:
- python
- jupyter
- repo: https://github.com/kynan/nbstripout
rev: 0.8.0
rev: 0.8.1
hooks:
- id: nbstripout
args:
- --extra-keys
- metadata.kernelspec metadata.language_info.version metadata.vscode
- repo: https://github.com/executablebooks/mdformat
rev: 0.7.18
rev: 0.7.22
hooks:
- id: mdformat
additional_dependencies:
Expand All @@ -75,7 +75,7 @@ repos:
- '88'
files: (README\.md)
- repo: https://github.com/executablebooks/mdformat
rev: 0.7.18
rev: 0.7.22
hooks:
- id: mdformat
additional_dependencies:
Expand All @@ -86,14 +86,30 @@ repos:
- '88'
files: (docs/.|CHANGES.md|CODE_OF_CONDUCT.md)
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.13.0
rev: v1.16.1
hooks:
- id: mypy
args:
- --ignore-missing-imports
- --config=pyproject.toml
- --allow-redefinition-new
- --local-partial-types
additional_dependencies:
- types-PyYAML
- types-pytz
- numpy >= 2
- jaxtyping
# - dags >= 0.3
- optree >= 0.15
- repo: https://github.com/python-jsonschema/check-jsonschema
rev: 0.33.2
hooks:
- id: check-jsonschema
name: Validate JSON/YAML files against schema
entry: check-jsonschema
language: python
files: ^src/_gettsim/.*\.(yaml|yml)$
args:
- --schemafile=docs/geps/params-schema.json
ci:
autoupdate_schedule: monthly
19 changes: 12 additions & 7 deletions .readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,15 @@ version: 2
build:
os: ubuntu-lts-latest
tools:
python: mambaforge-latest
conda:
environment: docs/rtd_environment.yml
sphinx:
builder: html
configuration: docs/conf.py
fail_on_warning: false
python: '3.13'
jobs:
create_environment:
- asdf plugin add pixi
- asdf install pixi latest
- asdf global pixi latest
install:
# assuming you have an environment called "docs"
- pixi install -e docs
build:
html:
- pixi run -e docs sphinx-build -T -b html docs $READTHEDOCS_OUTPUT/html
Loading
Loading