taxcalc 4.6.3__tar.gz → 5.0.4__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.
Files changed (243) hide show
  1. {taxcalc-4.6.3/taxcalc.egg-info → taxcalc-5.0.4}/PKG-INFO +1 -1
  2. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/about/releases.md +20 -0
  3. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/contributing/RELEASING.md +1 -1
  4. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/make/make_params.py +0 -2
  5. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/policy_params.md +3 -570
  6. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/index.md +1 -1
  7. {taxcalc-4.6.3 → taxcalc-5.0.4}/extend_tcja.py +9 -15
  8. {taxcalc-4.6.3 → taxcalc-5.0.4}/ppp.py +0 -7
  9. {taxcalc-4.6.3 → taxcalc-5.0.4}/pytest.ini +1 -0
  10. {taxcalc-4.6.3 → taxcalc-5.0.4}/setup.py +1 -1
  11. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/__init__.py +1 -1
  12. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/calcfunctions.py +295 -684
  13. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/calculator.py +12 -9
  14. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/consumption.json +0 -16
  15. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/growdiff.json +2 -18
  16. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/parameters.py +1 -4
  17. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/policy.py +45 -30
  18. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/policy_current_law.json +4416 -7535
  19. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/records.py +3 -0
  20. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/records_variables.json +34 -40
  21. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/2017_law.json +1 -15
  22. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ARPA.json +6 -6
  23. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Larson2019.json +3 -3
  24. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/TCJA.json +2 -30
  25. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Trump2016.json +1 -16
  26. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Trump2017.json +1 -10
  27. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ext.json +1 -15
  28. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/conftest.py +2 -2
  29. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/pufcsv_agg_expect.csv +2 -2
  30. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/reforms.json +37 -89
  31. taxcalc-5.0.4/taxcalc/tests/reforms_expect.csv +61 -0
  32. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_calcfunctions.py +94 -17
  33. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_calculator.py +9 -81
  34. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_compatible_data.py +0 -6
  35. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_parameters.py +31 -19
  36. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_policy.py +5 -31
  37. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_pufcsv.py +0 -56
  38. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_reforms.py +2 -2
  39. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_utils.py +59 -59
  40. {taxcalc-4.6.3 → taxcalc-5.0.4/taxcalc.egg-info}/PKG-INFO +1 -1
  41. taxcalc-4.6.3/taxcalc/tests/reforms_expect.csv +0 -64
  42. {taxcalc-4.6.3 → taxcalc-5.0.4}/.coveragerc +0 -0
  43. {taxcalc-4.6.3 → taxcalc-5.0.4}/.github/FUNDING.yml +0 -0
  44. {taxcalc-4.6.3 → taxcalc-5.0.4}/.github/workflows/build_and_test.yml +0 -0
  45. {taxcalc-4.6.3 → taxcalc-5.0.4}/.github/workflows/check_jupyterbook.yml +0 -0
  46. {taxcalc-4.6.3 → taxcalc-5.0.4}/.github/workflows/deploy_jupyterbook.yml +0 -0
  47. {taxcalc-4.6.3 → taxcalc-5.0.4}/.github/workflows/deploy_parameters_docs.yml +0 -0
  48. {taxcalc-4.6.3 → taxcalc-5.0.4}/.gitignore +0 -0
  49. {taxcalc-4.6.3 → taxcalc-5.0.4}/LICENSE +0 -0
  50. {taxcalc-4.6.3 → taxcalc-5.0.4}/MANIFEST.in +0 -0
  51. {taxcalc-4.6.3 → taxcalc-5.0.4}/Makefile +0 -0
  52. {taxcalc-4.6.3 → taxcalc-5.0.4}/PSL_catalog.json +0 -0
  53. {taxcalc-4.6.3 → taxcalc-5.0.4}/README.md +0 -0
  54. {taxcalc-4.6.3 → taxcalc-5.0.4}/codecov.yml +0 -0
  55. {taxcalc-4.6.3 → taxcalc-5.0.4}/conda.recipe/bld.bat +0 -0
  56. {taxcalc-4.6.3 → taxcalc-5.0.4}/conda.recipe/build.sh +0 -0
  57. {taxcalc-4.6.3 → taxcalc-5.0.4}/conda.recipe/meta.yaml +0 -0
  58. {taxcalc-4.6.3 → taxcalc-5.0.4}/csv_show.sh +0 -0
  59. {taxcalc-4.6.3 → taxcalc-5.0.4}/csv_vars.sh +0 -0
  60. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/PSL.svg +0 -0
  61. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/_config.yml +0 -0
  62. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/_static/atr.png +0 -0
  63. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/_static/mtr.png +0 -0
  64. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/_static/pch.png +0 -0
  65. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/_toc.yml +0 -0
  66. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/about/LICENSE.md +0 -0
  67. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/about/history.md +0 -0
  68. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/about/roadmap.md +0 -0
  69. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/calcfunctions.rst +0 -0
  70. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/calculator.rst +0 -0
  71. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/consumption.rst +0 -0
  72. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/data.rst +0 -0
  73. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/decorators.rst +0 -0
  74. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/growdiff.rst +0 -0
  75. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/growfactors.rst +0 -0
  76. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/parameters.rst +0 -0
  77. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/policy.rst +0 -0
  78. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/public_api.rst +0 -0
  79. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/records.rst +0 -0
  80. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/taxcalcio.rst +0 -0
  81. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/utils.rst +0 -0
  82. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/api/utilsprvt.rst +0 -0
  83. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/contributing/contributor_guide.md +0 -0
  84. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/contributing/param_naming.md +0 -0
  85. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/contributing/pr_workflow.md +0 -0
  86. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/contributing/testing.md +0 -0
  87. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/README.md +0 -0
  88. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/assumption_params.md +0 -0
  89. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/cli.md +0 -0
  90. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/index.md +0 -0
  91. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/input_vars.md +0 -0
  92. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/make/make_io_vars.py +0 -0
  93. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/make/make_uguide.py +0 -0
  94. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/output_vars.md +0 -0
  95. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/python_interface.md +0 -0
  96. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/templates/assumption_params_template.md +0 -0
  97. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/templates/input_vars_template.md +0 -0
  98. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/templates/output_vars_template.md +0 -0
  99. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/guide/templates/policy_params_template.md +0 -0
  100. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/README.md +0 -0
  101. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/_static/reformA.json +0 -0
  102. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/_static/reformB.json +0 -0
  103. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/_static/reformC.json +0 -0
  104. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/convert_all.sh +0 -0
  105. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/index.md +0 -0
  106. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe00.md +0 -0
  107. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe01.md +0 -0
  108. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe02.md +0 -0
  109. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe03.md +0 -0
  110. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe04.md +0 -0
  111. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe04_pandas.md +0 -0
  112. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe05.md +0 -0
  113. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/md_src/recipe06.md +0 -0
  114. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe00.ipynb +0 -0
  115. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe01.ipynb +0 -0
  116. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe02.ipynb +0 -0
  117. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe03.ipynb +0 -0
  118. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe04.ipynb +0 -0
  119. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe04_pandas.ipynb +0 -0
  120. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe05.ipynb +0 -0
  121. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/recipes/recipe06.ipynb +0 -0
  122. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/usage/data.md +0 -0
  123. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/usage/overview.md +0 -0
  124. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/usage/starting.md +0 -0
  125. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/usage/tcja_after_2025.md +0 -0
  126. {taxcalc-4.6.3 → taxcalc-5.0.4}/docs/use_cases.md +0 -0
  127. {taxcalc-4.6.3 → taxcalc-5.0.4}/environment.yml +0 -0
  128. {taxcalc-4.6.3 → taxcalc-5.0.4}/gitpr +0 -0
  129. {taxcalc-4.6.3 → taxcalc-5.0.4}/gitpr.bat +0 -0
  130. {taxcalc-4.6.3 → taxcalc-5.0.4}/gitsync +0 -0
  131. {taxcalc-4.6.3 → taxcalc-5.0.4}/gitsync.bat +0 -0
  132. {taxcalc-4.6.3 → taxcalc-5.0.4}/pyproject.toml +0 -0
  133. {taxcalc-4.6.3 → taxcalc-5.0.4}/setup.cfg +0 -0
  134. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/assumptions/ASSUMPTIONS.md +0 -0
  135. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/assumptions/README.md +0 -0
  136. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/assumptions/economic_assumptions_template.json +0 -0
  137. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/cli/__init__.py +0 -0
  138. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/cli/tc.py +0 -0
  139. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/conftest.py +0 -0
  140. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/consumption.py +0 -0
  141. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/cps.csv.gz +0 -0
  142. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/cps_weights.csv.gz +0 -0
  143. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/data.py +0 -0
  144. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/decorators.py +0 -0
  145. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/growdiff.py +0 -0
  146. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/growfactors.csv +0 -0
  147. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/growfactors.py +0 -0
  148. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/puf_ratios.csv +0 -0
  149. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/puf_weights.csv.gz +0 -0
  150. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/2017_law.out.csv +0 -0
  151. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ARPA.out.csv +0 -0
  152. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/BrownKhanna.json +0 -0
  153. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/BrownKhanna.out.csv +0 -0
  154. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/CARES.json +0 -0
  155. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/CARES.out.csv +0 -0
  156. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ConsolidatedAppropriationsAct2021.json +0 -0
  157. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ConsolidatedAppropriationsAct2021.out.csv +0 -0
  158. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Larson2019.out.csv +0 -0
  159. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/README.md +0 -0
  160. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/REFORMS.md +0 -0
  161. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Renacci.json +0 -0
  162. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Renacci.out.csv +0 -0
  163. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/SandersDeFazio.json +0 -0
  164. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/SandersDeFazio.out.csv +0 -0
  165. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/TCJA.md +0 -0
  166. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/TCJA.out.csv +0 -0
  167. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Trump2016.out.csv +0 -0
  168. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/Trump2017.out.csv +0 -0
  169. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/Clinton2016.json +0 -0
  170. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/RyanBrady.json +0 -0
  171. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/TCJA_House.json +0 -0
  172. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/TCJA_House_Amended.json +0 -0
  173. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/TCJA_Reconciliation.json +0 -0
  174. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/TCJA_Senate.json +0 -0
  175. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/TCJA_Senate_111417.json +0 -0
  176. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/archive/TCJA_Senate_120117.json +0 -0
  177. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/cases.csv +0 -0
  178. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/clp.out.csv +0 -0
  179. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/growfactors_ext.csv +0 -0
  180. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes0.json +0 -0
  181. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes0.out.csv +0 -0
  182. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes1.json +0 -0
  183. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes1.out.csv +0 -0
  184. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes2.json +0 -0
  185. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes2.out.csv +0 -0
  186. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes3.json +0 -0
  187. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/reforms/ptaxes3.out.csv +0 -0
  188. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/taxcalcio.py +0 -0
  189. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/benefits_expect.csv +0 -0
  190. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/cmpi_cps_expect.txt +0 -0
  191. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/cmpi_puf_expect.txt +0 -0
  192. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/cpscsv_agg_expect.csv +0 -0
  193. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/puf_var_correl_coeffs_2016.csv +0 -0
  194. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/puf_var_wght_means_by_year.csv +0 -0
  195. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/pufcsv_mtr_expect.txt +0 -0
  196. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_4package.py +0 -0
  197. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_benefits.py +0 -0
  198. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_compare.py +0 -0
  199. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_consumption.py +0 -0
  200. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_cpscsv.py +0 -0
  201. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_data.py +0 -0
  202. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_decorators.py +0 -0
  203. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_growdiff.py +0 -0
  204. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_growfactors.py +0 -0
  205. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_puf_var_stats.py +0 -0
  206. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_records.py +0 -0
  207. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_responses.py +0 -0
  208. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/tests/test_taxcalcio.py +0 -0
  209. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/utils.py +0 -0
  210. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/utilsprvt.py +0 -0
  211. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/CSV_INPUT_VARS.md +0 -0
  212. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/CSV_OUTPUT_VARS.md +0 -0
  213. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/README.md +0 -0
  214. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/Differences_Explained.md +0 -0
  215. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/README.md +0 -0
  216. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/a17-taxdiffs-expect.csv +0 -0
  217. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/a18-taxdiffs-expect.csv +0 -0
  218. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/a19-taxdiffs-expect.csv +0 -0
  219. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/a20-taxdiffs-expect.csv +0 -0
  220. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/a21-taxdiffs-expect.csv +0 -0
  221. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/b17-taxdiffs-expect.csv +0 -0
  222. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/b18-taxdiffs-expect.csv +0 -0
  223. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/b19-taxdiffs-expect.csv +0 -0
  224. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/b20-taxdiffs-expect.csv +0 -0
  225. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/b21-taxdiffs-expect.csv +0 -0
  226. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/c17-taxdiffs-expect.csv +0 -0
  227. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/c18-taxdiffs-expect.csv +0 -0
  228. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/expected_differences/c19-taxdiffs-expect.csv +0 -0
  229. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/input_setup.py +0 -0
  230. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/main_comparison.py +0 -0
  231. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/prepare_taxcalc_input.py +0 -0
  232. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/process_taxcalc_output.py +0 -0
  233. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/taxsim_emulation.json +0 -0
  234. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/taxsim_input.py +0 -0
  235. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/tc_sims.py +0 -0
  236. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/taxsim35/tests_35.py +0 -0
  237. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc/validation/tests_35.sh +0 -0
  238. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc.egg-info/SOURCES.txt +0 -0
  239. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc.egg-info/dependency_links.txt +0 -0
  240. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc.egg-info/entry_points.txt +0 -0
  241. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc.egg-info/requires.txt +0 -0
  242. {taxcalc-4.6.3 → taxcalc-5.0.4}/taxcalc.egg-info/top_level.txt +0 -0
  243. {taxcalc-4.6.3 → taxcalc-5.0.4}/tctest-nojit.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: taxcalc
3
- Version: 4.6.3
3
+ Version: 5.0.4
4
4
  Summary: Tax-Calculator
5
5
  Home-page: https://github.com/PSLmodels/Tax-Calculator
6
6
  Download-URL: https://github.com/PSLmodels/Tax-Calculator
@@ -4,6 +4,26 @@ Go [here](https://github.com/PSLmodels/Tax-Calculator/pulls?q=is%3Apr+is%3Aclose
4
4
  for a complete commit history.
5
5
 
6
6
 
7
+ 2025-07-02 Release 5.0.0
8
+ ------------------------
9
+ (last merged pull request is
10
+ [#2920](https://github.com/PSLmodels/Tax-Calculator/pull/2920))
11
+
12
+ **This is a major release with changes that make Tax-Calculator incompatible with earlier releases.**
13
+
14
+ **API Changes**
15
+ - Rename two OASDI benefit taxation policy parameters
16
+ [[#2918](https://github.com/PSLmodels/Tax-Calculator/pull/2918) by Martin Holmer]
17
+ - Remove `PT_rt?` and `PT_brk?` and four associated `PT_*` parameters
18
+ [[#2919](https://github.com/PSLmodels/Tax-Calculator/pull/2919) by Martin Holmer]
19
+ - Remove several, but not all, policy parameters that limit itemized deductions
20
+ [[#2920](https://github.com/PSLmodels/Tax-Calculator/pull/2920) by Martin Holmer]
21
+
22
+ **New Features**
23
+
24
+ **Bug Fixes**
25
+
26
+
7
27
  2025-06-13 Release 4.6.3
8
28
  ------------------------
9
29
  (last merged pull request is
@@ -16,7 +16,7 @@ In the top-level Tax-Calculator directory, do the following:
16
16
 
17
17
  --> on branch X-Y-Z, edit docs/about/releases.md to finalize X.Y.Z info
18
18
 
19
- --> specify release X.Y.Z in setup.py and taxcalc/__init__.py and docs/index.md
19
+ --> specify release X.Y.Z in setup.py, taxcalc/__init__.py, docs/index.md
20
20
 
21
21
  --> run `python update_pcl.py` [to update policy_current_law.json if needed]
22
22
 
@@ -142,8 +142,6 @@ def paramtextdf(df, ptype):
142
142
  txt += ' for: [single, mjoint, mseparate, headhh, widow] \n'
143
143
  elif nvalues == 4:
144
144
  txt += ' for: [0kids, 1kid, 2kids, 3+kids] \n'
145
- elif nvalues == 7:
146
- txt += ' for: [med, sltx, retx, cas, misc, int, char] \n'
147
145
  for cyr, val in zip(row['years'], row['values']):
148
146
  if nvalues == 1:
149
147
  val = val[0]
@@ -186,7 +186,7 @@ _Out-of-Range Action:_ error
186
186
 
187
187
  ### Social Security Benefit Taxability
188
188
 
189
- #### `SS_thd50`
189
+ #### `SS_thd1`
190
190
  _Description:_ The first threshold for Social Security benefit taxability: if taxpayers have provisional income greater than this threshold, up to rate 1 of their Social Security benefit will be subject to tax under current law.
191
191
  _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
192
192
  _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ False
@@ -221,7 +221,7 @@ _Valid Range:_ min = 0 and max = 1
221
221
  _Out-of-Range Action:_ error
222
222
 
223
223
 
224
- #### `SS_thd85`
224
+ #### `SS_thd2`
225
225
  _Description:_ The second threshold for Social Security taxability: if taxpayers have provisional income greater than this threshold, up to rate 2 of their Social Security benefit will be subject to tax under current law.
226
226
  _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
227
227
  _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ False
@@ -1440,78 +1440,6 @@ _Valid Range:_ min = 0 and max = 9e+99
1440
1440
  _Out-of-Range Action:_ error
1441
1441
 
1442
1442
 
1443
- #### `ID_AmountCap_rt`
1444
- _Description:_ The gross allowable amount of specified itemized deductions is capped at this percent of AGI.
1445
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
1446
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
1447
- _Value Type:_ float
1448
- _Known Values:_
1449
- 2013: 9e+99
1450
- 2014: 9e+99
1451
- 2015: 9e+99
1452
- 2016: 9e+99
1453
- 2017: 9e+99
1454
- 2018: 9e+99
1455
- 2019: 9e+99
1456
- _Valid Range:_ min = 0 and max = 9e+99
1457
- _Out-of-Range Action:_ error
1458
-
1459
-
1460
- #### `ID_AmountCap_Switch`
1461
- _Description:_ The cap on itemized deduction benefits applies to the benefits derived from the itemized deductions specified with this parameter.
1462
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
1463
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
1464
- _Value Type:_ bool
1465
- _Known Values:_
1466
- for: [med, sltx, retx, cas, misc, int, char]
1467
- 2013: [True, True, True, True, True, True, True]
1468
- 2014: [True, True, True, True, True, True, True]
1469
- 2015: [True, True, True, True, True, True, True]
1470
- 2016: [True, True, True, True, True, True, True]
1471
- 2017: [True, True, True, True, True, True, True]
1472
- 2018: [True, True, True, True, True, True, True]
1473
- 2019: [True, True, True, True, True, True, True]
1474
- _Valid Range:_ min = False and max = True
1475
- _Out-of-Range Action:_ error
1476
-
1477
-
1478
- ### Ceiling On The Benefit Of Itemized Deductions As A Percent Of Deductible Expenses
1479
-
1480
- #### `ID_BenefitCap_rt`
1481
- _Description:_ The benefit from specified itemized deductions is capped at this percent of the total deductible expenses.
1482
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
1483
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
1484
- _Value Type:_ float
1485
- _Known Values:_
1486
- 2013: 1.0
1487
- 2014: 1.0
1488
- 2015: 1.0
1489
- 2016: 1.0
1490
- 2017: 1.0
1491
- 2018: 1.0
1492
- 2019: 1.0
1493
- _Valid Range:_ min = 0 and max = 1
1494
- _Out-of-Range Action:_ error
1495
-
1496
-
1497
- #### `ID_BenefitCap_Switch`
1498
- _Description:_ The cap on itemized deduction benefits applies to the benefits derived from the itemized deductions specified with this parameter.
1499
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
1500
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
1501
- _Value Type:_ bool
1502
- _Known Values:_
1503
- for: [med, sltx, retx, cas, misc, int, char]
1504
- 2013: [True, True, True, True, True, True, True]
1505
- 2014: [True, True, True, True, True, True, True]
1506
- 2015: [True, True, True, True, True, True, True]
1507
- 2016: [True, True, True, True, True, True, True]
1508
- 2017: [True, True, True, True, True, True, True]
1509
- 2018: [True, True, True, True, True, True, True]
1510
- 2019: [True, True, True, True, True, True, True]
1511
- _Valid Range:_ min = False and max = True
1512
- _Out-of-Range Action:_ error
1513
-
1514
-
1515
1443
  ### Charity
1516
1444
 
1517
1445
  #### `ID_Charity_crt_cash`
@@ -2035,78 +1963,6 @@ _Valid Range:_ min = 0 and max = 9e+99
2035
1963
  _Out-of-Range Action:_ error
2036
1964
 
2037
1965
 
2038
- ### Surtax On Itemized Deduction Benefits Above An AGI Threshold
2039
-
2040
- #### `ID_BenefitSurtax_trt`
2041
- _Description:_ The benefit from specified itemized deductions exceeding the credit is taxed at this rate. A surtax rate of 1 strictly limits the benefit from specified itemized deductions to the specified credit. In http://www.nber.org/papers/w16921, Feldstein, Feenberg, and MacGuineas propose a credit of 2% of AGI against a 100% tax rate; in their proposal, however, a broader set of tax benefits, including the employer provided health exclusion, would be taxed.
2042
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2043
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2044
- _Value Type:_ float
2045
- _Known Values:_
2046
- 2013: 0.0
2047
- 2014: 0.0
2048
- 2015: 0.0
2049
- 2016: 0.0
2050
- 2017: 0.0
2051
- 2018: 0.0
2052
- 2019: 0.0
2053
- _Valid Range:_ min = 0 and max = 1
2054
- _Out-of-Range Action:_ error
2055
-
2056
-
2057
- #### `ID_BenefitSurtax_crt`
2058
- _Description:_ The surtax on specified itemized deductions applies to benefits in excess of this fraction of AGI. In http://www.nber.org/papers/w16921, Feldstein, Feenberg, and MacGuineas propose a credit of 2% of AGI against a 100% tax rate; in their proposal, however, a broader set of tax benefits, including the employer provided health exclusion, would be taxed.
2059
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2060
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2061
- _Value Type:_ float
2062
- _Known Values:_
2063
- 2013: 1.0
2064
- 2014: 1.0
2065
- 2015: 1.0
2066
- 2016: 1.0
2067
- 2017: 1.0
2068
- 2018: 1.0
2069
- 2019: 1.0
2070
- _Valid Range:_ min = 0 and max = 1
2071
- _Out-of-Range Action:_ error
2072
-
2073
-
2074
- #### `ID_BenefitSurtax_em`
2075
- _Description:_ This amount is subtracted from itemized deduction benefits in the calculation of the itemized deduction benefit surtax. With ID_BenefitSurtax_crt set to 0.0 and ID_BenefitSurtax_trt set to 1.0, this amount serves as a dollar limit on the value of itemized deductions.
2076
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2077
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2078
- _Value Type:_ float
2079
- _Known Values:_
2080
- for: [single, mjoint, mseparate, headhh, widow]
2081
- 2013: [0.0, 0.0, 0.0, 0.0, 0.0]
2082
- 2014: [0.0, 0.0, 0.0, 0.0, 0.0]
2083
- 2015: [0.0, 0.0, 0.0, 0.0, 0.0]
2084
- 2016: [0.0, 0.0, 0.0, 0.0, 0.0]
2085
- 2017: [0.0, 0.0, 0.0, 0.0, 0.0]
2086
- 2018: [0.0, 0.0, 0.0, 0.0, 0.0]
2087
- 2019: [0.0, 0.0, 0.0, 0.0, 0.0]
2088
- _Valid Range:_ min = 0 and max = 9e+99
2089
- _Out-of-Range Action:_ error
2090
-
2091
-
2092
- #### `ID_BenefitSurtax_Switch`
2093
- _Description:_ The surtax on itemized deduction benefits applies to the benefits derived from the itemized deductions specified with this parameter.
2094
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2095
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2096
- _Value Type:_ bool
2097
- _Known Values:_
2098
- for: [med, sltx, retx, cas, misc, int, char]
2099
- 2013: [True, True, True, True, True, True, True]
2100
- 2014: [True, True, True, True, True, True, True]
2101
- 2015: [True, True, True, True, True, True, True]
2102
- 2016: [True, True, True, True, True, True, True]
2103
- 2017: [True, True, True, True, True, True, True]
2104
- 2018: [True, True, True, True, True, True, True]
2105
- 2019: [True, True, True, True, True, True, True]
2106
- _Valid Range:_ min = False and max = True
2107
- _Out-of-Range Action:_ error
2108
-
2109
-
2110
1966
  ## Capital Gains And Dividends
2111
1967
 
2112
1968
  ### AMT - Long Term Capital Gains And Qualified Dividends
@@ -2551,429 +2407,6 @@ _Out-of-Range Action:_ error
2551
2407
 
2552
2408
  ### Pass-Through
2553
2409
 
2554
- #### `PT_rt1`
2555
- _Description:_ The lowest tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 1.
2556
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2557
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2558
- _Value Type:_ float
2559
- _Known Values:_
2560
- 2013: 0.1
2561
- 2014: 0.1
2562
- 2015: 0.1
2563
- 2016: 0.1
2564
- 2017: 0.1
2565
- 2018: 0.1
2566
- 2019: 0.1
2567
- 2020: 0.1
2568
- 2021: 0.1
2569
- 2022: 0.1
2570
- 2023: 0.1
2571
- 2024: 0.1
2572
- 2025: 0.1
2573
- 2026: 0.1
2574
- _Valid Range:_ min = 0 and max = 1
2575
- _Out-of-Range Action:_ error
2576
-
2577
-
2578
- #### `PT_brk1`
2579
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold is taxed at tax rate 1.
2580
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2581
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2582
- _Value Type:_ float
2583
- _Known Values:_
2584
- for: [single, mjoint, mseparate, headhh, widow]
2585
- 2013: [8925.0, 17850.0, 8925.0, 12750.0, 17850.0]
2586
- 2014: [9075.0, 18150.0, 9075.0, 12950.0, 18150.0]
2587
- 2015: [9225.0, 18450.0, 9225.0, 13150.0, 18450.0]
2588
- 2016: [9275.0, 18550.0, 9275.0, 13250.0, 18550.0]
2589
- 2017: [9325.0, 18650.0, 9325.0, 13350.0, 18650.0]
2590
- 2018: [9525.0, 19050.0, 9525.0, 13600.0, 19050.0]
2591
- 2019: [9700.0, 19400.0, 9700.0, 13850.0, 19400.0]
2592
- 2020: [9849.38, 19698.76, 9849.38, 14063.29, 19698.76]
2593
- 2021: [9921.28, 19842.56, 9921.28, 14165.95, 19842.56]
2594
- 2022: [10015.53, 20031.06, 10015.53, 14300.53, 20031.06]
2595
- 2023: [10173.78, 20347.55, 10173.78, 14526.48, 20347.55]
2596
- 2024: [10370.13, 20740.26, 10370.13, 14806.84, 20740.26]
2597
- 2025: [10577.53, 21155.07, 10577.53, 15102.98, 21155.07]
2598
- 2026: [10802.0, 21603.0, 10802.0, 15464.0, 21603.0]
2599
- _Valid Range:_ min = 0 and max = PT_brk2
2600
- _Out-of-Range Action:_ error
2601
-
2602
-
2603
- #### `PT_rt2`
2604
- _Description:_ The second lowest tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 2 and above tax bracket 1.
2605
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2606
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2607
- _Value Type:_ float
2608
- _Known Values:_
2609
- 2013: 0.15
2610
- 2014: 0.15
2611
- 2015: 0.15
2612
- 2016: 0.15
2613
- 2017: 0.15
2614
- 2018: 0.12
2615
- 2019: 0.12
2616
- 2020: 0.12
2617
- 2021: 0.12
2618
- 2022: 0.12
2619
- 2023: 0.12
2620
- 2024: 0.12
2621
- 2025: 0.12
2622
- 2026: 0.15
2623
- _Valid Range:_ min = 0 and max = 1
2624
- _Out-of-Range Action:_ error
2625
-
2626
-
2627
- #### `PT_brk2`
2628
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold and above tax bracket 1 is taxed at tax rate 2.
2629
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2630
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2631
- _Value Type:_ float
2632
- _Known Values:_
2633
- for: [single, mjoint, mseparate, headhh, widow]
2634
- 2013: [36250.0, 72500.0, 36250.0, 48600.0, 72500.0]
2635
- 2014: [36900.0, 73800.0, 36900.0, 49400.0, 73800.0]
2636
- 2015: [37450.0, 74900.0, 37450.0, 50200.0, 74900.0]
2637
- 2016: [37650.0, 75300.0, 37650.0, 50400.0, 75300.0]
2638
- 2017: [37950.0, 75900.0, 37950.0, 50800.0, 75900.0]
2639
- 2018: [38700.0, 77400.0, 38700.0, 51800.0, 77400.0]
2640
- 2019: [39475.0, 78950.0, 39475.0, 52850.0, 78950.0]
2641
- 2020: [40082.92, 80165.83, 40082.92, 53663.89, 80165.83]
2642
- 2021: [40375.53, 80751.04, 40375.53, 54055.64, 80751.04]
2643
- 2022: [40759.1, 81518.17, 40759.1, 54569.17, 81518.17]
2644
- 2023: [41403.09, 82806.16, 41403.09, 55431.36, 82806.16]
2645
- 2024: [42202.17, 84404.32, 42202.17, 56501.19, 84404.32]
2646
- 2025: [43046.21, 86092.41, 43046.21, 57631.21, 86092.41]
2647
- 2026: [43959.0, 87918.0, 43959.0, 58844.0, 87918.0]
2648
- _Valid Range:_ min = PT_brk1 and max = PT_brk3
2649
- _Out-of-Range Action:_ error
2650
-
2651
-
2652
- #### `PT_rt3`
2653
- _Description:_ The third lowest tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 3 and above tax bracket 2.
2654
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2655
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2656
- _Value Type:_ float
2657
- _Known Values:_
2658
- 2013: 0.25
2659
- 2014: 0.25
2660
- 2015: 0.25
2661
- 2016: 0.25
2662
- 2017: 0.25
2663
- 2018: 0.22
2664
- 2019: 0.22
2665
- 2020: 0.22
2666
- 2021: 0.22
2667
- 2022: 0.22
2668
- 2023: 0.22
2669
- 2024: 0.22
2670
- 2025: 0.22
2671
- 2026: 0.25
2672
- _Valid Range:_ min = 0 and max = 1
2673
- _Out-of-Range Action:_ error
2674
-
2675
-
2676
- #### `PT_brk3`
2677
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold and above tax bracket 2 is taxed at tax rate 3.
2678
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2679
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2680
- _Value Type:_ float
2681
- _Known Values:_
2682
- for: [single, mjoint, mseparate, headhh, widow]
2683
- 2013: [87850.0, 146400.0, 73200.0, 125450.0, 146400.0]
2684
- 2014: [89350.0, 148850.0, 74425.0, 127550.0, 148850.0]
2685
- 2015: [90750.0, 151200.0, 75600.0, 129600.0, 151200.0]
2686
- 2016: [91150.0, 151900.0, 75950.0, 130150.0, 151900.0]
2687
- 2017: [91900.0, 153100.0, 76550.0, 131200.0, 153100.0]
2688
- 2018: [82500.0, 165000.0, 82500.0, 82500.0, 165000.0]
2689
- 2019: [84200.0, 168400.0, 84200.0, 84200.0, 168400.0]
2690
- 2020: [85496.68, 170993.36, 85496.68, 85496.68, 170993.36]
2691
- 2021: [86120.81, 172241.61, 86120.81, 86120.81, 172241.61]
2692
- 2022: [86938.96, 173877.91, 86938.96, 86938.96, 173877.91]
2693
- 2023: [88312.6, 176625.18, 88312.6, 88312.6, 176625.18]
2694
- 2024: [90017.03, 180034.05, 90017.03, 90017.03, 180034.05]
2695
- 2025: [91817.37, 183634.73, 91817.37, 91817.37, 183634.73]
2696
- 2026: [106452.0, 177343.0, 88671.0, 151975.0, 177343.0]
2697
- _Valid Range:_ min = PT_brk2 and max = PT_brk4
2698
- _Out-of-Range Action:_ error
2699
-
2700
-
2701
- #### `PT_rt4`
2702
- _Description:_ The tax rate applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 4 and above tax bracket 3.
2703
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2704
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2705
- _Value Type:_ float
2706
- _Known Values:_
2707
- 2013: 0.28
2708
- 2014: 0.28
2709
- 2015: 0.28
2710
- 2016: 0.28
2711
- 2017: 0.28
2712
- 2018: 0.24
2713
- 2019: 0.24
2714
- 2020: 0.24
2715
- 2021: 0.24
2716
- 2022: 0.24
2717
- 2023: 0.24
2718
- 2024: 0.24
2719
- 2025: 0.24
2720
- 2026: 0.28
2721
- _Valid Range:_ min = 0 and max = 1
2722
- _Out-of-Range Action:_ error
2723
-
2724
-
2725
- #### `PT_brk4`
2726
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold and above tax bracket 3 is taxed at tax rate 4.
2727
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2728
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2729
- _Value Type:_ float
2730
- _Known Values:_
2731
- for: [single, mjoint, mseparate, headhh, widow]
2732
- 2013: [183250.0, 223050.0, 111525.0, 203150.0, 223050.0]
2733
- 2014: [186350.0, 226850.0, 113425.0, 206600.0, 226850.0]
2734
- 2015: [189300.0, 230450.0, 115225.0, 209850.0, 230450.0]
2735
- 2016: [190150.0, 231450.0, 115725.0, 210800.0, 231450.0]
2736
- 2017: [191650.0, 233350.0, 116675.0, 212500.0, 233350.0]
2737
- 2018: [157500.0, 315000.0, 157500.0, 157500.0, 315000.0]
2738
- 2019: [160725.0, 321450.0, 160725.0, 160700.0, 321450.0]
2739
- 2020: [163200.16, 326400.33, 163200.16, 163174.78, 326400.33]
2740
- 2021: [164391.52, 328783.05, 164391.52, 164365.96, 328783.05]
2741
- 2022: [165953.24, 331906.49, 165953.24, 165927.44, 331906.49]
2742
- 2023: [168575.3, 337150.61, 168575.3, 168549.09, 337150.61]
2743
- 2024: [171828.8, 343657.62, 171828.8, 171802.09, 343657.62]
2744
- 2025: [175265.38, 350530.77, 175265.38, 175238.13, 350530.77]
2745
- 2026: [221997.0, 270300.0, 135150.0, 246148.0, 270300.0]
2746
- _Valid Range:_ min = PT_brk3 and max = PT_brk5
2747
- _Out-of-Range Action:_ error
2748
-
2749
-
2750
- #### `PT_rt5`
2751
- _Description:_ The third highest tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 5 and above tax bracket 4.
2752
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2753
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2754
- _Value Type:_ float
2755
- _Known Values:_
2756
- 2013: 0.33
2757
- 2014: 0.33
2758
- 2015: 0.33
2759
- 2016: 0.33
2760
- 2017: 0.33
2761
- 2018: 0.32
2762
- 2019: 0.32
2763
- 2020: 0.32
2764
- 2021: 0.32
2765
- 2022: 0.32
2766
- 2023: 0.32
2767
- 2024: 0.32
2768
- 2025: 0.32
2769
- 2026: 0.33
2770
- _Valid Range:_ min = 0 and max = 1
2771
- _Out-of-Range Action:_ error
2772
-
2773
-
2774
- #### `PT_brk5`
2775
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold and above tax bracket 4 is taxed at tax rate 5.
2776
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2777
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2778
- _Value Type:_ float
2779
- _Known Values:_
2780
- for: [single, mjoint, mseparate, headhh, widow]
2781
- 2013: [398350.0, 398350.0, 199175.0, 398350.0, 398350.0]
2782
- 2014: [405100.0, 405100.0, 202550.0, 405100.0, 405100.0]
2783
- 2015: [411500.0, 411500.0, 205750.0, 411500.0, 411500.0]
2784
- 2016: [413350.0, 413350.0, 206675.0, 413350.0, 413350.0]
2785
- 2017: [416700.0, 416700.0, 208350.0, 416700.0, 416700.0]
2786
- 2018: [200000.0, 400000.0, 200000.0, 200000.0, 400000.0]
2787
- 2019: [204100.0, 408200.0, 204100.0, 204100.0, 408200.0]
2788
- 2020: [207243.14, 414486.28, 207243.14, 207243.14, 414486.28]
2789
- 2021: [208756.01, 417512.03, 208756.01, 208756.01, 417512.03]
2790
- 2022: [210739.19, 421478.39, 210739.19, 210739.19, 421478.39]
2791
- 2023: [214068.87, 428137.75, 214068.87, 214068.87, 428137.75]
2792
- 2024: [218200.4, 436400.81, 218200.4, 218200.4, 436400.81]
2793
- 2025: [222564.41, 445128.83, 222564.41, 222564.41, 445128.83]
2794
- 2026: [482682.0, 482682.0, 241341.0, 482682.0, 482682.0]
2795
- _Valid Range:_ min = PT_brk4 and max = PT_brk6
2796
- _Out-of-Range Action:_ error
2797
-
2798
-
2799
- #### `PT_rt6`
2800
- _Description:_ The second higher tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 6 and above tax bracket 5.
2801
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2802
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2803
- _Value Type:_ float
2804
- _Known Values:_
2805
- 2013: 0.35
2806
- 2014: 0.35
2807
- 2015: 0.35
2808
- 2016: 0.35
2809
- 2017: 0.35
2810
- 2018: 0.35
2811
- 2019: 0.35
2812
- 2020: 0.35
2813
- 2021: 0.35
2814
- 2022: 0.35
2815
- 2023: 0.35
2816
- 2024: 0.35
2817
- 2025: 0.35
2818
- 2026: 0.35
2819
- _Valid Range:_ min = 0 and max = 1
2820
- _Out-of-Range Action:_ error
2821
-
2822
-
2823
- #### `PT_brk6`
2824
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold and above tax bracket 5 is taxed at tax rate 6.
2825
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2826
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2827
- _Value Type:_ float
2828
- _Known Values:_
2829
- for: [single, mjoint, mseparate, headhh, widow]
2830
- 2013: [400000.0, 450000.0, 225000.0, 425000.0, 450000.0]
2831
- 2014: [406750.0, 457600.0, 228800.0, 432200.0, 457600.0]
2832
- 2015: [413200.0, 464850.0, 232425.0, 439000.0, 464850.0]
2833
- 2016: [415050.0, 466950.0, 233475.0, 441000.0, 466950.0]
2834
- 2017: [418400.0, 470700.0, 235350.0, 444550.0, 470700.0]
2835
- 2018: [500000.0, 600000.0, 300000.0, 500000.0, 600000.0]
2836
- 2019: [510300.0, 612350.0, 306175.0, 510300.0, 612350.0]
2837
- 2020: [518158.62, 621780.19, 310890.1, 518158.62, 621780.19]
2838
- 2021: [521941.18, 626319.19, 313159.6, 521941.18, 626319.19]
2839
- 2022: [526899.62, 632269.22, 316134.62, 526899.62, 632269.22]
2840
- 2023: [535224.63, 642259.07, 321129.55, 535224.63, 642259.07]
2841
- 2024: [545554.47, 654654.67, 327327.35, 545554.47, 654654.67]
2842
- 2025: [556465.56, 667747.76, 333873.9, 556465.56, 667747.76]
2843
- 2026: [484651.0, 545233.0, 272616.0, 514942.0, 545233.0]
2844
- _Valid Range:_ min = PT_brk5 and max = PT_brk7
2845
- _Out-of-Range Action:_ error
2846
-
2847
-
2848
- #### `PT_rt7`
2849
- _Description:_ The highest tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations below tax bracket 7 and above tax bracket 6.
2850
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2851
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2852
- _Value Type:_ float
2853
- _Known Values:_
2854
- 2013: 0.396
2855
- 2014: 0.396
2856
- 2015: 0.396
2857
- 2016: 0.396
2858
- 2017: 0.396
2859
- 2018: 0.37
2860
- 2019: 0.37
2861
- 2020: 0.37
2862
- 2021: 0.37
2863
- 2022: 0.37
2864
- 2023: 0.37
2865
- 2024: 0.37
2866
- 2025: 0.37
2867
- 2026: 0.396
2868
- _Valid Range:_ min = 0 and max = 1
2869
- _Out-of-Range Action:_ error
2870
-
2871
-
2872
- #### `PT_brk7`
2873
- _Description:_ Income from sole proprietorships, partnerships and S-corporations below this threshold and above tax bracket 6 is taxed at tax rate 7. Default value is essentially infinity.
2874
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2875
- _Can Be Inflation Indexed:_ True _Is Inflation Indexed:_ True
2876
- _Value Type:_ float
2877
- _Known Values:_
2878
- for: [single, mjoint, mseparate, headhh, widow]
2879
- 2013: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2880
- 2014: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2881
- 2015: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2882
- 2016: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2883
- 2017: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2884
- 2018: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2885
- 2019: [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]
2886
- _Valid Range:_ min = PT_brk6 and max = 9e+99
2887
- _Out-of-Range Action:_ error
2888
-
2889
-
2890
- #### `PT_rt8`
2891
- _Description:_ The extra tax rate, applied to the portion of income from sole proprietorships, partnerships and S-corporations above the tax bracket 7.
2892
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2893
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2894
- _Value Type:_ float
2895
- _Known Values:_
2896
- 2013: 1.0
2897
- 2014: 1.0
2898
- 2015: 1.0
2899
- 2016: 1.0
2900
- 2017: 1.0
2901
- 2018: 1.0
2902
- 2019: 1.0
2903
- _Valid Range:_ min = 0 and max = 1
2904
- _Out-of-Range Action:_ error
2905
-
2906
-
2907
- #### `PT_EligibleRate_active`
2908
- _Description:_ Eligibility rate of active business income for separate pass-through rates.
2909
- _Notes:_ Active business income defined as e00900 + e26270
2910
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2911
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2912
- _Value Type:_ float
2913
- _Known Values:_
2914
- 2013: 1.0
2915
- 2014: 1.0
2916
- 2015: 1.0
2917
- 2016: 1.0
2918
- 2017: 1.0
2919
- 2018: 1.0
2920
- 2019: 1.0
2921
- _Valid Range:_ min = 0 and max = 1
2922
- _Out-of-Range Action:_ error
2923
-
2924
-
2925
- #### `PT_EligibleRate_passive`
2926
- _Description:_ Eligibility rate of passive business income for mseparate pass-through rates.
2927
- _Notes:_ Passive business income defined as e02000 - e26270
2928
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ False
2929
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2930
- _Value Type:_ float
2931
- _Known Values:_
2932
- 2013: 0.0
2933
- 2014: 0.0
2934
- 2015: 0.0
2935
- 2016: 0.0
2936
- 2017: 0.0
2937
- 2018: 0.0
2938
- 2019: 0.0
2939
- _Valid Range:_ min = 0 and max = 1
2940
- _Out-of-Range Action:_ error
2941
-
2942
-
2943
- #### `PT_wages_active_income`
2944
- _Description:_ Whether active business income eligibility base for PT schedule for includes wages.
2945
- _Notes:_ Only applies if active business income is positive
2946
- _Has An Effect When Using:_ _PUF data:_ False _CPS data:_ False
2947
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2948
- _Value Type:_ bool
2949
- _Known Values:_
2950
- 2013: False
2951
- 2014: False
2952
- 2015: False
2953
- 2016: False
2954
- 2017: False
2955
- 2018: False
2956
- 2019: False
2957
- _Valid Range:_ min = False and max = True
2958
- _Out-of-Range Action:_ error
2959
-
2960
-
2961
- #### `PT_top_stacking`
2962
- _Description:_ Whether taxable income eligible for PT rate schedule is stacked on top of regular taxable income.
2963
- _Has An Effect When Using:_ _PUF data:_ True _CPS data:_ True
2964
- _Can Be Inflation Indexed:_ False _Is Inflation Indexed:_ False
2965
- _Value Type:_ bool
2966
- _Known Values:_
2967
- 2013: True
2968
- 2014: True
2969
- 2015: True
2970
- 2016: True
2971
- 2017: True
2972
- 2018: True
2973
- 2019: True
2974
- _Valid Range:_ min = False and max = True
2975
- _Out-of-Range Action:_ error
2976
-
2977
2410
 
2978
2411
  #### `PT_qbid_rt`
2979
2412
  _Description:_ Fraction of pass-through business income that may be excluded from taxable income.
@@ -3157,7 +2590,7 @@ _Valid Range:_ min = 0 and max = 9e+99
3157
2590
  _Out-of-Range Action:_ error
3158
2591
 
3159
2592
 
3160
- ### Regular: Non-AMT, Non-Pass-Through
2593
+ ### Regular: Non-AMT
3161
2594
 
3162
2595
  #### `II_rt1`
3163
2596
  _Description:_ The lowest tax rate, applied to the portion of taxable income below tax bracket 1.
@@ -54,7 +54,7 @@ cross-model validation work with NBER's TAXSIM-35 model is described
54
54
 
55
55
  ## Latest release
56
56
 
57
- {doc}`4.6.3 (2025-06-13) <about/releases>`
57
+ {doc}`5.0.0 (2025-07-02) <about/releases>`
58
58
 
59
59
  If you are already using Tax-Calculator, upgrade using the following command:
60
60
  ```