taxcalc 4.6.3__py3-none-any.whl → 5.0.0__py3-none-any.whl

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.
@@ -936,71 +936,31 @@
936
936
  "desc": "Sch A: Medical expenses deducted (component of pre-limitation c21060 total)",
937
937
  "form": {"2013-20??": "calculated variable"}
938
938
  },
939
- "e17500_capped": {
940
- "type": "float",
941
- "desc": "Sch A: Medical expenses, capped as a decimal fraction of AGI",
942
- "form": {"2013-20??": "calculated variable"}
943
- },
944
939
  "c18300": {
945
940
  "type": "float",
946
941
  "desc": "Sch A: State and local taxes plus real estate taxes deducted (component of pre-limitation c21060 total)",
947
942
  "form": {"2013-20??": "calculated variable"}
948
943
  },
949
- "e18400_capped": {
950
- "type": "float",
951
- "desc": "Sch A: State and local income taxes deductible, capped as a decimal fraction of AGI",
952
- "form": {"2013-20??": "calculated variable"}
953
- },
954
- "e18500_capped": {
955
- "type": "float",
956
- "desc": "Sch A: State and local real estate taxes deductible, capped as a decimal fraction of AGI",
957
- "form": {"2013-20??": "calculated variable"}
958
- },
959
944
  "c19200": {
960
945
  "type": "float",
961
946
  "desc": "Sch A: Interest deducted (component of pre-limitation c21060 total)",
962
947
  "form": {"2013-20??": "calculated variable"}
963
948
  },
964
- "e19200_capped": {
965
- "type": "float",
966
- "desc": "Sch A: Interest deduction deductible, capped as a decimal fraction of AGI",
967
- "form": {"2013-20??": "calculated variable"}
968
- },
969
949
  "c19700": {
970
950
  "type": "float",
971
951
  "desc": "Sch A: Charity contributions deducted (component of pre-limitation c21060 total)",
972
952
  "form": {"2013-20??": "calculated variable"}
973
953
  },
974
- "e19800_capped": {
975
- "type": "float",
976
- "desc": "Sch A: Charity cash contributions deductible, capped as a decimal fraction of AGI",
977
- "form": {"2013-20??": "calculated variable"}
978
- },
979
- "e20100_capped": {
980
- "type": "float",
981
- "desc": "Sch A: Charity noncash contributions deductible, capped as a decimal fraction of AGI",
982
- "form": {"2013-20??": "calculated variable"}
983
- },
984
954
  "c20500": {
985
955
  "type": "float",
986
956
  "desc": "Sch A: Net casualty or theft loss deducted (component of pre-limitation c21060 total)",
987
957
  "form": {"2013-20??": "calculated variable"}
988
958
  },
989
- "g20500_capped": {
990
- "type": "float",
991
- "desc": "Sch A: Gross casualty or theft loss deductible, capped as a decimal fraction of AGI",
992
- "form": {"2013-20??": "calculated variable"}
993
- },
994
959
  "c20800": {
995
960
  "type": "float",
996
961
  "desc": "Sch A: Net limited miscellaneous deductions deducted (component of pre-limitation c21060 total)",
997
962
  "form": {"2013-20??": "calculated variable"}
998
963
  },
999
- "e20400_capped": {
1000
- "type": "float",
1001
- "desc": "Sch A: Gross miscellaneous deductions deductible, capped as a decimal fraction of AGI",
1002
- "form": {"2013-20??": "calculated variable"}
1003
- },
1004
964
  "c21040": {
1005
965
  "type": "float",
1006
966
  "desc": "Itemized deductions that are phased out",
@@ -14,7 +14,7 @@
14
14
  // - Set pre-TCJA itemized deduction policy (8)
15
15
  // Reform_Parameter_Map:
16
16
  // - 0: parameter_indexing_CPI_offset
17
- // - 1: II_rt?/II_brk? and PT_rt?/PT_brk?
17
+ // - 1: II_rt?/II_brk?
18
18
  // - 2: six PT_qbid_* parameters
19
19
  // - 3: STD and II_em parameters
20
20
  // - 4: CTC_* and ACTC_* parameters
@@ -40,19 +40,6 @@
40
40
  "II_rt6": {"2018": 0.35},
41
41
  "II_brk6": {"2017": [418400, 470700, 235350, 444550, 470700]},
42
42
  "II_rt7": {"2018": 0.396},
43
- "PT_rt1": {"2018": 0.10},
44
- "PT_brk1": {"2017": [9325, 18650, 9325, 13350, 18650]},
45
- "PT_rt2": {"2018": 0.15},
46
- "PT_brk2": {"2017": [37950, 75900, 37950, 50800, 75900]},
47
- "PT_rt3": {"2018": 0.25},
48
- "PT_brk3": {"2017": [91900, 153100, 76550, 131200, 153100]},
49
- "PT_rt4": {"2018": 0.28},
50
- "PT_brk4": {"2017": [191650, 233350, 116675, 212500, 233350]},
51
- "PT_rt5": {"2018": 0.33},
52
- "PT_brk5": {"2017": [416700, 416700, 208350, 416700, 416700]},
53
- "PT_rt6": {"2018": 0.35},
54
- "PT_brk6": {"2017": [418400, 470700, 235350, 444550, 470700]},
55
- "PT_rt7": {"2018": 0.396},
56
43
  "PT_qbid_rt": {"2018": 0},
57
44
  "PT_qbid_taxinc_thd": {"2018": [0, 0, 0, 0, 0]},
58
45
  "PT_qbid_taxinc_gap": {"2018": [1, 1, 1, 1, 1]},
@@ -98,7 +85,6 @@
98
85
  "ID_Casualty_c": {"2017": [9e99, 9e99, 9e99, 9e99, 9e99]},
99
86
  "ID_Miscellaneous_c": {"2017": [9e99, 9e99, 9e99, 9e99, 9e99]},
100
87
  "ID_ps": {"2017": [261500, 313800, 156900, 287650, 313800]},
101
- "ID_BenefitSurtax_em": {"2017": [0, 0, 0, 0, 0]},
102
88
  "ID_c": {"2017": [9e99, 9e99, 9e99, 9e99, 9e99]},
103
89
  "CG_brk1": {"2017": [37950, 75900, 37950, 50800, 75900]},
104
90
  "CG_brk2": {"2017": [418400, 470700, 235350, 444550, 470700]},
@@ -8,12 +8,12 @@
8
8
  // - Make wage and self-employment income above $400,000 subject to FICA taxes (2)
9
9
  // - Phase in an increase to the contribution rate starting in 2020 (3)
10
10
  // Reform_Parameter_Map:
11
- // - 1: SS_thd50, SS_thd85
11
+ // - 1: SS_thd1, SS_thd2
12
12
  // - 2: SS_Earnings_thd
13
13
  // - 3: FICA_ss_trt_employer, FICA_ss_trt_employee
14
14
  {
15
- "SS_thd50": {"2019": [50000, 100000, 50000, 50000, 50000]},
16
- "SS_thd85": {"2019": [50000, 100000, 50000, 50000, 50000]},
15
+ "SS_thd1": {"2019": [50000, 100000, 50000, 50000, 50000]},
16
+ "SS_thd2": {"2019": [50000, 100000, 50000, 50000, 50000]},
17
17
  "SS_Earnings_thd": {"2019": 400000},
18
18
  "FICA_ss_trt_employer": {"2020": 0.0625,
19
19
  "2021": 0.063,
taxcalc/reforms/TCJA.json CHANGED
@@ -4,8 +4,7 @@
4
4
  // http://docs.house.gov/billsthisweek/20171218/CRPT-115HRPT-466.pdf
5
5
  // Reform_Baseline: 2017_law.json
6
6
  // Reform_Description:
7
- // - New personal income tax schedule (regular/non-AMT/non-pass-through) (1)
8
- // - New pass-through income tax schedule (2)
7
+ // - New personal income tax schedule (on regular taxable income) (1)
9
8
  // - New standard deductions (3)
10
9
  // - Repeal personal exemption (4)
11
10
  // - Modification to child tax credit, nonrefundable dependent credits (5)
@@ -15,7 +14,6 @@
15
14
  // - Switch to chained CPI from CPI-U for tax parameter adjustment (9)
16
15
  // Reform_Parameter_Map:
17
16
  // - 1: II_*
18
- // - 2: PT_*
19
17
  // - 3: STD (can safely ignore WARNINGs about 2026+ values)
20
18
  // - 4: II_em
21
19
  // - 5: ODC_c, _CTC_c, _CTC_ps, _ACTC_c, _ACTC_Income_thd
@@ -23,7 +21,7 @@
23
21
  // - 7: ALD_*
24
22
  // - 8: ID_* (can safely ignore WARNINGs about values for several parameters)
25
23
  // - 9: parameter_indexing_CPI_offset
26
- // Note: II_brk*, PT_brk*, STD, II_em are rounded to nearest integer value
24
+ // Note: II_brk*, STD, II_em are rounded to nearest integer value
27
25
  {
28
26
  "II_rt1": {"2018": 0.10,
29
27
  "2026": 0.10},
@@ -51,32 +49,6 @@
51
49
  "2026": [502356, 502356, 251178, 502356, 502356]},
52
50
  "II_brk6": {"2018": [500000, 600000, 300000, 500000, 600000],
53
51
  "2026": [504406 ,567457, 283728, 535931, 567457]},
54
- "PT_rt1": {"2018": 0.10,
55
- "2026": 0.10},
56
- "PT_rt2": {"2018": 0.12,
57
- "2026": 0.15},
58
- "PT_rt3": {"2018": 0.22,
59
- "2026": 0.25},
60
- "PT_rt4": {"2018": 0.24,
61
- "2026": 0.28},
62
- "PT_rt5": {"2018": 0.32,
63
- "2026": 0.33},
64
- "PT_rt6": {"2018": 0.35,
65
- "2026": 0.35},
66
- "PT_rt7": {"2018": 0.37,
67
- "2026": 0.396},
68
- "PT_brk1": {"2018": [9525, 19050, 9525, 13600, 19050],
69
- "2026": [11242, 22484, 11242, 16094, 22484]},
70
- "PT_brk2": {"2018": [38700, 77400, 38700, 51800, 77400],
71
- "2026": [45751, 91502, 45751, 61242, 91502]},
72
- "PT_brk3": {"2018": [82500, 165000, 82500, 82500, 165000],
73
- "2026": [110791, 184571, 92286, 158169, 184571]},
74
- "PT_brk4": {"2018": [157500, 315000, 157500, 157500, 315000],
75
- "2026": [231045, 281317, 140659, 256181, 281317]},
76
- "PT_brk5": {"2018": [200000, 400000, 200000, 200000, 400000],
77
- "2026": [502356, 502356, 251178, 502356, 502356]},
78
- "PT_brk6": {"2018": [500000, 600000, 300000, 500000, 600000],
79
- "2026": [504406 ,567457, 283728, 535931, 567457]},
80
52
  "PT_qbid_rt": {"2018": 0.2,
81
53
  "2026": 0.0},
82
54
  "PT_qbid_taxinc_thd": {"2018": [157500, 315000, 157500, 157500, 315000],
@@ -3,8 +3,7 @@
3
3
  // Reform_Reference: https://www.donaldjtrump.com/policies/tax-plan
4
4
  // Reform_Baseline: 2017_law.json
5
5
  // Reform_Description:
6
- // - New personal income tax schedule (regular/non-AMT/non-pass-through) (1)
7
- // - New pass-through income tax schedule (2)
6
+ // - New personal income tax schedule (on regular taxable income) (1)
8
7
  // - New long-term capital gains and qualified dividends tax schedule (3)
9
8
  // - Repeal Alternative Minimum Tax (4)
10
9
  // - Repeal Net Investment Income Tax (5)
@@ -14,7 +13,6 @@
14
13
  // - Cap itemized deductions (9)
15
14
  // Reform_Parameter_Map:
16
15
  // - 1: II_rt*, II_brk*
17
- // - 2: PT_*
18
16
  // - 3: CG_*
19
17
  // - 4: AMT_*
20
18
  // - 5: NIIT_rt
@@ -36,19 +34,6 @@
36
34
  "II_rt6": {"2017": 0.25},
37
35
  "II_brk6": {"2017": [112500, 225000, 112500, 112500, 225000]},
38
36
  "II_rt7": {"2017": 0.33},
39
- "PT_rt1": {"2017": 0.12},
40
- "PT_brk1": {"2017": [37500, 75000, 37500, 37500, 75000]},
41
- "PT_rt2": {"2017": 0.15},
42
- "PT_brk2": {"2017": [112500, 225000, 112500, 112500, 225000]},
43
- "PT_rt3": {"2017": 0.15},
44
- "PT_brk3": {"2017": [112500, 225000, 112500, 112500, 225000]},
45
- "PT_rt4": {"2017": 0.15},
46
- "PT_brk4": {"2017": [112500, 225000, 112500, 112500, 225000]},
47
- "PT_rt5": {"2017": 0.15},
48
- "PT_brk5": {"2017": [112500, 225000, 112500, 112500, 225000]},
49
- "PT_rt6": {"2017": 0.15},
50
- "PT_brk6": {"2017": [112500, 225000, 112500, 112500, 225000]},
51
- "PT_rt7": {"2017": 0.15},
52
37
  "CG_brk1": {"2017": [37500, 75000, 37500, 37500, 75000]},
53
38
  "CG_brk2": {"2017": [112500, 225000, 112500, 112500, 225000]},
54
39
  "AMT_rt1": {"2017": 0},
@@ -3,15 +3,13 @@
3
3
  // Reform_Reference: 1-page hand-out from the White House briefing
4
4
  // Reform_Baseline: 2017_law.json
5
5
  // Reform_Description:
6
- // - New personal income tax schedule (regular/non-AMT/non-pass-through) (1)
7
- // - New pass-through income tax schedule (2)
6
+ // - New personal income tax schedule (on regular taxable income) (1)
8
7
  // - Repeal Alternative Minimum Tax (3)
9
8
  // - Repeal Net Investment Income Tax (4)
10
9
  // - Double the Standard Deduction (5)
11
10
  // - Eliminate all itemized deductions except mortgage interest and charitable contributions (6)
12
11
  // Reform_Parameter_Map:
13
12
  // - 1: II_rt*
14
- // - 2: PT_*
15
13
  // - 3: AMT_*
16
14
  // - 4: NIIT_rt
17
15
  // - 5: STD
@@ -24,13 +22,6 @@
24
22
  "II_rt5": {"2017": 0.25},
25
23
  "II_rt6": {"2017": 0.35},
26
24
  "II_rt7": {"2017": 0.35},
27
- "PT_rt1": {"2017": 0.1},
28
- "PT_rt2": {"2017": 0.1},
29
- "PT_rt3": {"2017": 0.15},
30
- "PT_rt4": {"2017": 0.15},
31
- "PT_rt5": {"2017": 0.15},
32
- "PT_rt6": {"2017": 0.15},
33
- "PT_rt7": {"2017": 0.15},
34
25
  "AMT_rt1": {"2017": 0},
35
26
  "AMT_rt2": {"2017": 0},
36
27
  "NIIT_rt": {"2017": 0},
taxcalc/reforms/ext.json CHANGED
@@ -1,36 +1,22 @@
1
1
  // REFORM TO EXTEND TEMPORARY TCJA PROVISIONS BEYOND 2025
2
- // USING TAX-CALCULATOR 4.5.0
2
+ // USING TAX-CALCULATOR 5.0.0
3
3
  // WITH 2025-to-2026 INDEXING FACTOR = 1.022300
4
4
  // AND 2028-to-2029 INDEXING FACTOR = 1.022600
5
5
  {
6
6
  "II_rt1": {"2026": 0.10},
7
7
  "II_brk1": {"2026": [12190.93, 24381.86, 12190.93, 17379.1, 24381.86]},
8
- "PT_rt1": {"2026": 0.10},
9
- "PT_brk1": {"2026": [12190.93, 24381.86, 12190.93, 17379.1, 24381.86]},
10
8
  "II_rt2": {"2026": 0.12},
11
9
  "II_brk2": {"2026": [49555.99, 99111.98, 49555.99, 66296.16, 99111.98]},
12
- "PT_rt2": {"2026": 0.12},
13
- "PT_brk2": {"2026": [49555.99, 99111.98, 49555.99, 66296.16, 99111.98]},
14
10
  "II_rt3": {"2026": 0.22},
15
11
  "II_brk3": {"2026": [105654.7, 211309.41, 105654.7, 105654.7, 211309.41]},
16
- "PT_rt3": {"2026": 0.22},
17
- "PT_brk3": {"2026": [105654.7, 211309.41, 105654.7, 105654.7, 211309.41]},
18
12
  "II_rt4": {"2026": 0.24},
19
13
  "II_brk4": {"2026": [201699.79, 403399.58, 201699.79, 201699.79, 403399.58]},
20
- "PT_rt4": {"2026": 0.24},
21
- "PT_brk4": {"2026": [201699.79, 403399.58, 201699.79, 201699.79, 403399.58]},
22
14
  "II_rt5": {"2026": 0.32},
23
15
  "II_brk5": {"2026": [256111.71, 512223.42, 256111.71, 256086.15, 512223.42]},
24
- "PT_rt5": {"2026": 0.32},
25
- "PT_brk5": {"2026": [256111.71, 512223.42, 256111.71, 256086.15, 512223.42]},
26
16
  "II_rt6": {"2026": 0.35},
27
17
  "II_brk6": {"2026": [640317.6, 768360.68, 384180.34, 640317.6, 768360.68]},
28
- "PT_rt6": {"2026": 0.35},
29
- "PT_brk6": {"2026": [640317.6, 768360.68, 384180.34, 640317.6, 768360.68]},
30
18
  "II_rt7": {"2026": 0.37},
31
19
  "II_brk7": {"2026": [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]},
32
- "PT_rt7": {"2026": 0.37},
33
- "PT_brk7": {"2026": [9e+99, 9e+99, 9e+99, 9e+99, 9e+99]},
34
20
  "CTC_c": {"2026": 2000.00},
35
21
  "ACTC_c": {"2026": 1776.67},
36
22
  "ACTC_c-indexed": {"2026": true},
taxcalc/tests/conftest.py CHANGED
@@ -71,14 +71,14 @@ def fixture_test_reforms(tests_path):
71
71
  Execute logic only once rather than on each pytest-xdist node.
72
72
  """
73
73
  # pylint: disable=too-many-locals,too-many-statements
74
- num_reforms = 63 # must be same as NUM_REFORMS in test_reforms.py
74
+ num_reforms = 60 # must be same as NUM_REFORMS in test_reforms.py
75
75
  handling_logic = ('PYTEST_XDIST_WORKER' not in os.environ or
76
76
  os.environ['PYTEST_XDIST_WORKER'] == 'gw0')
77
77
  initfile = os.path.join(tests_path, 'reforms_actual_init')
78
78
  actfile_path = os.path.join(tests_path, 'reforms_actual.csv')
79
79
  afiles = os.path.join(tests_path, 'reform_actual_*.csv')
80
80
  wait_secs = 1
81
- max_waits = 240
81
+ max_waits = 300
82
82
  # test_reforms setup
83
83
  if handling_logic:
84
84
  # remove reforms_actual.csv file if exists
@@ -4,12 +4,12 @@ AGI ($b),11078.7,11816.6,12247.2,12722.3,14930.0,14939.1,15160.9,16963.9,17819.4
4
4
  Itemizers (#m),45.7,19.4,20.0,21.0,22.6,22.8,21.8,21.6,21.7,51.8
5
5
  Itemized Deduction ($b),1274.3,602.7,633.9,692.3,761.9,782.8,795.2,830.0,854.2,2073.3
6
6
  Standard Deduction Filers (#m),145.2,174.8,177.2,178.5,179.6,182.8,186.5,189.5,192.3,164.9
7
- Standard Deduction ($b),1239.3,2865.3,2954.5,3025.8,3081.1,3234.0,3533.8,3787.3,3951.8,1892.3
7
+ Standard Deduction ($b),1239.3,2865.3,2954.5,3025.8,3081.1,3234.0,3533.8,3787.3,3951.8,1892.4
8
8
  Personal Exemption ($b),1365.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1998.6
9
9
  Taxable Income ($b),8112.2,9179.2,9520.5,9907.3,12003.2,11891.0,11879.0,13486.2,14199.8,13920.5
10
10
  Regular Tax ($b),1656.8,1712.3,1778.2,1838.3,2281.5,2275.4,2228.1,2589.0,2727.0,2929.0
11
11
  AMT Income ($b),10512.4,11343.5,11749.7,12180.1,14330.8,14321.1,14527.7,16287.6,17119.6,17599.2
12
- AMT Liability ($b),51.3,22.1,23.0,25.1,27.8,27.4,28.7,31.2,32.7,89.9
12
+ AMT Liability ($b),51.3,22.1,23.0,25.1,27.8,27.4,28.7,31.2,32.7,90.0
13
13
  AMT Filers (#m),5.7,0.2,0.2,0.3,0.4,0.3,0.2,0.3,0.3,7.4
14
14
  Tax before Credits ($b),1708.1,1734.4,1801.1,1863.4,2309.4,2302.8,2256.8,2620.2,2759.7,3019.0
15
15
  Refundable Credits ($b),102.9,117.5,118.5,642.0,802.6,119.2,128.4,133.4,135.7,121.7