Skip to content

Latest commit

 

History

History
934 lines (765 loc) · 32.9 KB

RELEASES.md

File metadata and controls

934 lines (765 loc) · 32.9 KB

TAX-CALCULATOR RELEASE HISTORY

Go here for a complete commit history.

2017-11-10 Release 0.13.1

(last merged pull request is #1655)

API Changes

  • None

New Features

  • Add household and family identifiers from the CPS for the cps.csv.gz file that ships with taxcalc [#1635 by Anderson Frailey]
  • Improved documentation for the cps.csv.gz file that ships with taxcalc [#1648 by Martin Holmer]
  • Add parameter for the business income exclusion in the Senate TCJA Chairman's mark [#1651 by Cody Kallen]
  • Add TCJA reform file for the Senate Chairman's mark [#1652 by Cody Kallen]
  • Add FIPS state codes to the cps.csv.gz file that ships with taxcalc [#1653 by Anderson Frailey]

Bug Fixes

  • Fix an edge case related to new pass-through parameters that caused some extreme MTRs [#1645 by Cody Kallen, reported by Richard Evans]

2017-11-07 Release 0.13.0

(last merged pull request is #1632)

API Changes

  • Add new statistics and top-decile detail to distribution and difference tables [#1605 by Martin Holmer]

New Features

  • Add expanded_income and aftertax_income to distribution table [#1602 by Martin Holmer]
  • Add utility functions that generate a change-in-aftertax-income-by-decile graph [#1606 by Martin Holmer]
  • Add new dependent credits for children and non-children dependents [#1615 by Cody Kallen]
  • Add new non-refundable credit for filer and spouse [#1618 by Cody Kallen]
  • Add capability to model pass-through tax rate eligiblity rules in TCJA [#1620 by Cody Kallen]
  • Make several Personal Nonrefundable Credit parameters available to external applications like TaxBrain [#1622 by Matt Jensen]
  • Extend extrapolation to 2027 and update to June 2017 CBO baseline [#1624 by Anderson Frailey]
  • Add new reform JSON file for the Tax Cuts and Jobs Act [#1625 by Cody Kallen]

Bug Fixes

  • Resolve compatibility issues with Pandas 0.21.0 [#1629 by Hank Doupe]
  • Cleaner solution to compatibility issues with Pandas 0.21.0 [#1634 by Hank Doupe]

2017-10-20 Release 0.12.0

(last merged pull request is #1600)

API Changes

  • Rename read_json_param_files as read_json_param_objects [#1563 by Martin Holmer]
  • Remove arrays_not_lists argument from read_json_param_objects [#1568 by Martin Holmer]
  • Rename dropq as tbi (taxbrain interface) and refactor run_nth_year_*_model functions so that either puf.csv or cps.csv can be used as input data [#1577 by Martin Holmer]
  • Change Calculator class constructor so that it makes a deep copy of each specified object for internal use [#1582 by Martin Holmer]
  • Rename and reorder difference table columns [#1584 by Martin Holmer]

New Features

  • Add Calculator.reform_documentation that generates plain text documentation of a reform [#1564 by Martin Holmer]
  • Enhance stats_summary.py script and its output [#1566 by Amy Xu]
  • Add reform documentation as standard output from Tax-Calculator CLI, tc [#1567 by Martin Holmer]
  • Add parameter type checking to Policy.implement_reform method [#1585 by Martin Holmer]
  • Add _CTC_new_for_all policy parameter to allow credits for those with negative AGI [#1595 by Martin Holmer]
  • Narrow range of legal values for _CDCC_c policy parameter [#1597 by Matt Jensen]
  • Make several UBI policy parameters available to external applications like TaxBrain [#1599 by Matt Jensen]

Bug Fixes

  • Relax _STD and _STD_Dep minimum value warning logic [#1578 by Martin Holmer]
  • Fix macro-elasticity model logic so that GDP change in year t depends on tax rate changes in year t-1 [#1579 by Martin Holmer]
  • Fix bugs in automatic generation of reform documentation having to do with policy parameters that are boolean scalars [#1596 by Martin Holmer]

2017-09-21 Release 0.11.0

(last merged pull request is #1555)

API Changes

  • Revise dropq distribution and difference tables used by TaxBrain [#1537 by Anderson Frailey and Martin Holmer]
  • Make dropq run_nth_year_tax_calc_model return a dictionary of results [#1543 by Martin Holmer]

New Features

  • Add option to cap the amount of gross itemized deductions allowed as a decimal fraction of AGI [#1542 by Matt Jensen]
  • Add dropq tables using AGI as income measure for TaxBrain use [#1544 by Martin Holmer]
  • Add JSON reform file for Brown-Khanna GAIN Act that expands the EITC [#1555 by Matt Jensen and Martin Holmer]

Bug Fixes

  • None

2017-09-13 Release 0.10.2

API Changes

  • None

New Features

  • None

Bug Fixes

  • Allow policy parameter suffix logic to work even when there are reform errors [34561ff by Martin Holmer]

2017-09-08 Release 0.10.1

API Changes

  • None

New Features

  • None

Bug Fixes

  • Fix vagueness of error/warning messages for non-scalar policy parameters [5536792 by Martin Holmer]

2017-08-28 Release 0.10.0

(last merged pull request is #1531)

API Changes

  • Add dropq function that returns reform warnings and errors [#1524 by Martin Holmer]

New Features

  • Add option to use policy parameter suffixes in JSON reform files [#1505 by Martin Holmer] and [#1520 by Martin Holmer]
  • Add rounding of wage-inflated or price-inflated parameter values to nearest cent [#1506 by Martin Holmer]
  • Add extensive checking of reform policy parameter names and values [#1524 by Martin Holmer]

Bug Fixes

  • None

2017-07-26 Release 0.9.2

(last merged pull request is #1490)

API Changes

  • None

New Features

  • Add several taxcalc/reforms/earnings_shifting.* files that analyze the revenue implications of high-paid workers forming personal LLCs to contract with their former employers under the Trump2017.json reform [#1464 by Martin Holmer]
  • Add ability to read and calculate taxes with new CPS input data for 2014 and subsequent years [#1484 by Martin Holmer]
  • Add tests of ability to calculate taxes with new CPS input data [#1490 by Martin Holmer]

Bug Fixes

  • Fix decorators bug that appeared when numpy 1.13.1, and pandas 0.20.2 that uses numpy 1.13, recently became available [#1470 by T.J. Alumbaugh]
  • Fix records bug that appeared when numpy 1.13.1, and pandas 0.20.2 that uses numpy 1.13, recently became available [#1473 by Martin Holmer]

2017-07-06 Release 0.9.1

(last merged pull request is #1438)

API Changes

  • None

New Features

  • Add Form 1065 Schedule K-1 self-employment earnings to calculation of self-employment payroll taxes [#1438 by Martin Holmer], which requires new puf.csv input file with this information:
    • Byte size: 53743252
    • MD5 checksum: ca0ad8bbb05ee15b1cbefc7f1fa1f965
  • Improve calculation of sub-sample weights [#1441 by Hank Doupe]

Bug Fixes

  • Fix personal refundable credit bug and personal nonrefundable credit bug [#1450 by Martin Holmer]

2017-06-14 Release 0.9.0

(last merged pull request is #1431)

API Changes

  • Initial specification of public API removes several unused utility functions and makes private several Tax-Calculator members whose only role is to support public members [#1424 by Martin Holmer]

New Features

  • Add nonrefundable personal credit reform options [#1427 by William Ensor]

  • Add repeal personal exemptions for dependents under age 18 reform option [#1428 by Hank Doupe]

  • Switch to use of new improved puf.csv input file that causes small changes in tax results [#1429 by Martin Holmer], which requires new puf.csv input file with this information:

    • Byte size: 52486351
    • MD5 checksum: d56b649c92049e32501b2d2fc5c36c92

Bug Fixes

  • Fix logic of gross casualty loss calculation by moving it out of Tax-Calculator and into the taxdata repository [#1426 by Martin Holmer]

2017-06-08 Release 0.8.5

(last merged pull request is #1416)

API Changes

  • None

New Features

  • Add column to differences table to show the change in tax liability as percentage of pre-reform after tax income [#1375 by Anderson Frailey]
  • Add policy reform file for the Renacci reform [#1376, #1383 and #1385 by Hank Doupe]
  • Add separate ceiling for each itemized deduction parameter [#1385 by Hank Doupe]

Bug Fixes

  • Fix bug in add_weighted_income_bins utility function [#1387 by Martin Holmer]

2017-05-12 Release 0.8.4

(last merged pull request is #1363)

API Changes

  • None

New Features

  • Add economic response assumption file template to documentation [#1332 by Cody Kallen]
  • Complete process of creating user documentation [#1355 by Martin Holmer]
  • Add Tax-Calculator conda package for Python 3.6 [#1361 by Martin Holmer]

Bug Fixes

  • None

2017-05-01 Release 0.8.3

(last merged pull request is #1328)

API Changes

  • None

New Features

  • Add --test installation option to Tax-Calculator CLI [#1306 by Martin Holmer]
  • Add --sqldb SQLite3 database dump output option to CLI [#1312 by Martin Holmer]
  • Add a reform preset for the April 2017 Trump tax plan [#1323 by Cody Kallen]
  • Add Other Taxes to tables and clarify documentation [#1328 by Martin Holmer]

Bug Fixes

  • None

2017-04-13 Release 0.8.2

(last merged pull request is #1295)

API Changes

  • None

New Features

  • None

Bug Fixes

  • Minor edits to comments in Trump/Clinton policy reform files [#1295 by Matt Jensen]

2017-04-13 Release 0.8.1

(last merged pull request is #1293)

API Changes

  • None

New Features

  • Add testing for notebooks, starting with the behavior_example and 10-minute notebooks [#1198 by Peter Steinberg]
  • Add MTR with respect to spouse earnings [#1257 by Anderson Frailey]
  • Add tax differences table to Tax-Calculator CLI --tables output [#1265 by Martin Holmer]
  • Update Jupyter Notebooks to demonstrate the latest Python API [#1277 by Matt Jensen]
  • Enable the charitable givings elasticity to vary by AGI value [#1278 by Matt Jensen]
  • Introduce records_variables.json to serve as a single source of truth for Records variables [#1179 and #1285 by Zach Risher]

Bug Fixes

  • None

2017-03-24 Release 0.8.0

(last merged pull request is #1260)

API Changes

  • None

New Features

  • Add ability to calculate, and possibly tax, UBI benefits [#1235 by Anderson Frailey]
  • Add additional deduction and credit haircut policy parameters [#1247 by Anderson Frailey]
  • Add constant charitable giving elasticities to behavioral response [#1246 by Matt Jensen]
  • Add another credit haircut policy parameter [#1252 by Anderson Frailey]
  • Make Tax-Calculator CLI an entry point to the taxcalc package [#1253 by Martin Holmer]
  • Add --tables option to Tax-Calculator CLI [#1258 by Martin Holmer]

Bug Fixes

  • None

2017-03-08 Release 0.7.9

(last merged pull request is #1228)

API Changes

  • Move simtax.py to taxcalc/validation/taxsim directory [#1288 by Martin Holmer]

New Features

  • Make import style more consistent [#1288 by Martin Holmer]

Bug Fixes

  • Add growdiff.json to MANIFEST.in [#1217 and #1219 by Peter Steinberg]

2017-03-01 Release 0.7.8

(last merged pull request is #1206)

API Changes

  • Redesign Growth class to support more realistic growth responses [#1199 by Martin Holmer]

New Features

  • Add a policy reform file for key provisions of the Ryan-Brady Better Way tax plan [#1204 by Cody Kallen]
  • Add a policy reform file for select provisions of the Clinton 2016 campaign tax plan [#1206 by Cody Kallen]

Bug Fixes

  • None

2017-02-16 Release 0.7.7

(last merged pull request is #1197)

API Changes

  • None

New Features

  • None

Bug Fixes

  • Add name of new Stage3 adjustment-ratios file to MANIFEST.in [#1197 by Anderson Frailey]

2017-02-15 Release 0.7.6

(last merged pull request is #1192)

API Changes

  • Add Stage3 adjustment ratios to target IRS-SOI data on the distribution of interest income [#1193 by Anderson Frailey], which requires new puf.csv input file with this information:
    • Byte size: 51470450
    • MD5 checksum: 3a02e9909399ba85d0a7cf5e98149b90

New Features

  • Add to diagnostic table the number of tax units with non-positive income and combined tax liability [#1170 by Anderson Frailey]

Bug Fixes

  • Correct Policy wage growth rates to agree with CBO projection [#1171 by Martin Holmer]

2017-01-31 Release 0.7.5

(last merged pull request is #1169)

API Changes

  • None

New Features

  • Add a Trump 2016 policy reform JSON file [#1135 by Matt Jensen]
  • Reduce size of input file by rounding weights [#1158 by Anderson Frailey]
  • Update current-law policy parameters to 2017 IRS values [#1169 by Anderson Frailey]

Bug Fixes

  • Index EITC investment income cap to inflation [#1169 by Anderson Frailey]

2017-01-24 Release 0.7.4

(last merged pull request is #1152)

API Changes

  • Separate policy reforms and response assumptions into two separate JSON files [#1148 by Martin Holmer]

New Features

  • New JSON reform file examples and capabilities [#1123-#1131 by Martin Holmer]

Bug Fixes

  • Fix bugs in 10-minute notebook [#1152 by Matt Jensen]

2017-01-24 Release 0.7.3

(last merged pull request is #1113)

API Changes

  • None

New Features

  • Add ability to use an expression to specify a policy parameter [#1081 by Martin Holmer]
  • Expand scope of JSON reform file to include non-policy parameters [#1083 by Martin Holmer]
  • Add ability to conduct normative expected-utility analysis [#1098 by Martin Holmer]
  • Add ability to compute MTR with respect to charitable cash contributions [#1104 by Cody Kallen]
  • Unify environment definition by removing requirements.txt [#1094 by Zach Risher]
  • Reorganize current_law_policy.json and add section headers [#1109 by Matt Jensen]
  • Add dollar limit on itemized deductions [#1084 by Cody Kallen]
  • Add testing for Windows with Appveyor [#1111 by T.J. Alumbaugh]

Bug Fixes

  • Fix capital-gains-reform bug reported by Cody Kallen [#1088 by Martin Holmer]
  • Provide Pandas 0.19.1 compatibility by fixing DataFrame.to_csv() usage [#1092 by Zach Risher]

2016-12-05 Release 0.7.2

(last merged pull request is #1082)

API Changes

  • None

New Features

  • Add ability to simulate non-refundable dependent credit [#1069 by Cody Kallen]
  • Add ability to narrow investment income exclusion base [#1072 by Martin Holmer]
  • Replace use of two cmbtp_* variables with a single cmbtp variable [#1077 by Martin Holmer], which requires new puf.csv input file with this information:
    • Byte size: 50953138
    • MD5 checksum: acbf905c8b7d29fd4b06b13e1cc8a60c

Bug Fixes

  • None

2016-11-15 Release 0.7.1

(last merged pull request is #1060)

API Changes

  • Rename policy parameters for consistency [#1051 by Martin Holmer]

New Features

  • Add ability to simulate broader range of refundable CTC reforms [#1055 by Matt Jensen]
  • Add more income items into expanded_income variable [#1057 by Martin Holmer]

Bug Fixes

  • None

2016-11-09 Release 0.7.0

(last merged pull request is #1044)

API Changes

  • Rename and refactor old add_weighted_decile_bins utility function [#1043 by Martin Holmer]

New Features

  • None

Bug Fixes

  • Remove unused argument from means_and_comparisons utility function [#1044 by Martin Holmer]

2016-11-09 Release 0.6.9

(last merged pull request is #1039)

API Changes

  • None

New Features

  • Add calculation of MTR wrt e26270, partnership & S-corp income [#987 by Cody Kallen]
  • Add utility function that plots marginal tax rates by percentile [#948 by Sean Wang]
  • Add ability to simulate Trump-style dependent care credit [#999 by Anderson Frailey]
  • Add ability to simulate Clinton-style NIIT reform [#1012 by Martin Holmer]
  • Add ability to simulate Clinton-style CTC expansion [#1039 by Matt Jensen]

Bug Fixes

  • Fix bug in TaxGains function [#981 by Cody Kallen]
  • Fix bug in multiyear_diagnostic_table utility function [#988 by Matt Jensen]
  • Fix AMT bug that ignored value of AMT_CG_rt1 parameter [#1000 by Martin Holmer]
  • Fix several other minor AMT CG bugs [#1001 by Martin Holmer]
  • Move self-employment tax from income tax total to payroll tax total [#1021 by Martin Holmer]
  • Add half of self-employment tax to expanded income [#1032 by Martin Holmer]

2016-10-07 Release 0.6.8

(last merged pull request is #970)

API Changes

  • None

New Features

  • Add ability to simulate reforms that limit benefit of itemized deductions [#867 by Matt Jensen]
  • Add investment income exclusion policy parameter [#972 by Cody Kallen]
  • Add ability to eliminate differential tax treatment of LTCG+QDIV income [#973 by Martin Holmer]

Bug Fixes

  • None

2016-09-29 Release 0.6.7

(last merged pull request is #945)

API Changes

  • None

New Features

  • Add extra income tax brackets and rates [#858, Sean Wang]
  • Add ability to simulate Fair Share Tax, or Buffet Rule, reforms [#904 by Anderson Frailey]
  • Add ability to tax pass-through income at different rates [#913 by Sean Wang]
  • Add itemized-deduction surtax exemption policy parameter [#926 by Matt Jensen]
  • Add ability to simulate high-AGI surtax reforms [#939 by Sean Wang]

Bug Fixes

  • Correct Net Investment Income Tax (NIIT) calculation [#874 by Martin Holmer]
  • Correct Schedule R credit calculation [#898 by Martin Holmer]
  • Remove logic for expired First-Time Homebuyer Credit [#914 by Martin Holmer]

2016-08-13 Release 0.6.6

(last merged pull request is #844)

API Changes

  • None

New Features

  • Revise code to use smaller puf.csv input file and make changes to create that input file
  • Remove debugging variables from functions.py reducing execution time by 42 percent [#833]
  • Add comments to show one way to use Python debugger to trace Tax-Calculator code [#835]
  • Add tests that confirm zeroing-out CALCULATED_VARS at start leaves results unchanged [#837]
  • Revise logic used to estimate behavioral responses to policy reforms [#846, #854 and #857]

Bug Fixes

  • Make 2013-2016 medical deduction threshold for elderly be 7.5% of AGI (not 10%) [#839]
  • Fix typo so that two ways of limiting itemized deductions produce the same results [#842]

2016-07-12 Release 0.6.5

(last merged pull request is #820)

API Changes

  • None

New Features

  • Add --exact option to simtax.py and inctax.py scripts
  • Add calculation of Schedule R credit
  • Remove _cmp variable from functions.py code

Bug Fixes

  • Fix itemized deduction logic for charity
  • Remove Numba dependency

2016-06-17 Release 0.6.4

(last merged pull request is #794)

API Changes

  • Create Consumption class used to compute "effective" marginal tax rates

New Features

  • Revise Behavior class logic
  • Add unit tests to increase code coverage to 98 percent
  • Add scripts to version and release

Bug Fixes

  • Test TaxBrain handling of delayed reforms
  • Move cmbtp calculation and earnings splitting logic from Records class to puf.csv file preparation
  • Update Numpy and Pandas dependencies to latest versions to avoid a bug in the Windows conda package for Pandas 0.16.2

2016-05-09 Release 0.6.3

(last merged pull request is #727)

API Changes

  • None

New Features

  • Add --records option to simtax.py
  • Add --csvdump option to inctax.py
  • Add three "d" samples to Tax-Calculator versus Internet-TAXSIM comparisons
  • Add first set of Tax-Calculator versus TaxBrain comparisons
  • Add data and logic to implement EITC age-eligibility rules
  • Update and fix 10_minutes_to_Tax-Calculator.ipynb
  • Update files in taxcalc/comparison

Bug Fixes

  • Fix Child Care Expense logic
  • Exclude dependents from EITC eligibility

Before Release 0.6.2

See commit history for pull requests before #650