policyengine-us 1.432.0__py3-none-any.whl → 1.432.2__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.
- policyengine_us/reforms/states/ri/exemption/ri_exemption_reform.py +26 -5
- policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_cdcc.yaml +4 -4
- policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/integration.yaml +59 -0
- policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/pr_normal_tax.yaml +1 -1
- policyengine_us/tests/policy/contrib/states/ri/exemption_reform_test.yaml +2 -2
- policyengine_us/variables/gov/states/oh/tax/income/credits/oh_cdcc.py +2 -2
- {policyengine_us-1.432.0.dist-info → policyengine_us-1.432.2.dist-info}/METADATA +1 -1
- {policyengine_us-1.432.0.dist-info → policyengine_us-1.432.2.dist-info}/RECORD +11 -11
- {policyengine_us-1.432.0.dist-info → policyengine_us-1.432.2.dist-info}/WHEEL +0 -0
- {policyengine_us-1.432.0.dist-info → policyengine_us-1.432.2.dist-info}/entry_points.txt +0 -0
- {policyengine_us-1.432.0.dist-info → policyengine_us-1.432.2.dist-info}/licenses/LICENSE +0 -0
|
@@ -68,13 +68,29 @@ def create_ri_exemption_reform() -> Reform:
|
|
|
68
68
|
defined_for = StateCode.RI
|
|
69
69
|
|
|
70
70
|
def formula(tax_unit, period, parameters):
|
|
71
|
-
p = parameters(period).gov.contrib.states.ri.dependent_exemption
|
|
72
71
|
|
|
73
72
|
maximum = tax_unit("ri_dependent_exemption_maximum", period)
|
|
74
73
|
phaseout = tax_unit("ri_dependent_exemption_phaseout", period)
|
|
75
74
|
|
|
76
75
|
return max_(maximum - phaseout, 0)
|
|
77
76
|
|
|
77
|
+
class ri_older_dependents_count(Variable):
|
|
78
|
+
value_type = float
|
|
79
|
+
entity = TaxUnit
|
|
80
|
+
label = "Rhode Island older dependents count"
|
|
81
|
+
unit = USD
|
|
82
|
+
definition_period = YEAR
|
|
83
|
+
defined_for = StateCode.RI
|
|
84
|
+
|
|
85
|
+
def formula(tax_unit, period, parameters):
|
|
86
|
+
person = tax_unit.members
|
|
87
|
+
is_dependent = person("is_tax_unit_dependent", period)
|
|
88
|
+
total_dependents = tax_unit.sum(is_dependent)
|
|
89
|
+
eligible_dependent_exemptions = tax_unit(
|
|
90
|
+
"ri_eligible_dependents_count", period
|
|
91
|
+
)
|
|
92
|
+
return max_(0, total_dependents - eligible_dependent_exemptions)
|
|
93
|
+
|
|
78
94
|
class ri_exemptions(Variable):
|
|
79
95
|
value_type = float
|
|
80
96
|
entity = TaxUnit
|
|
@@ -88,10 +104,14 @@ def create_ri_exemption_reform() -> Reform:
|
|
|
88
104
|
|
|
89
105
|
# Calculate personal exemptions base amount
|
|
90
106
|
filing_status = tax_unit("filing_status", period)
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
107
|
+
older_dependents = tax_unit("ri_older_dependents_count", period)
|
|
108
|
+
personal_exemptions = (
|
|
109
|
+
where(
|
|
110
|
+
filing_status == filing_status.possible_values.JOINT,
|
|
111
|
+
2,
|
|
112
|
+
1,
|
|
113
|
+
)
|
|
114
|
+
+ older_dependents
|
|
95
115
|
)
|
|
96
116
|
personal_exemption_base = personal_exemptions * p_base.amount
|
|
97
117
|
|
|
@@ -118,6 +138,7 @@ def create_ri_exemption_reform() -> Reform:
|
|
|
118
138
|
self.update_variable(ri_dependent_exemption_phaseout)
|
|
119
139
|
self.update_variable(ri_dependent_exemption)
|
|
120
140
|
self.update_variable(ri_exemptions)
|
|
141
|
+
self.update_variable(ri_older_dependents_count)
|
|
121
142
|
|
|
122
143
|
return reform
|
|
123
144
|
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
input:
|
|
4
4
|
state_code: OH
|
|
5
5
|
oh_modified_agi: 19_999
|
|
6
|
-
|
|
6
|
+
cdcc_potential: 2_000
|
|
7
7
|
output:
|
|
8
8
|
oh_cdcc: 2_000
|
|
9
9
|
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
input:
|
|
13
13
|
state_code: OH
|
|
14
14
|
oh_modified_agi: 20_000
|
|
15
|
-
|
|
15
|
+
cdcc_potential: 2_000
|
|
16
16
|
output:
|
|
17
17
|
oh_cdcc: 500
|
|
18
18
|
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
input:
|
|
22
22
|
state_code: OH
|
|
23
23
|
oh_modified_agi: 39_999
|
|
24
|
-
|
|
24
|
+
cdcc_potential: 2_000
|
|
25
25
|
output:
|
|
26
26
|
oh_cdcc: 500
|
|
27
27
|
|
|
@@ -30,6 +30,6 @@
|
|
|
30
30
|
input:
|
|
31
31
|
state_code: OH
|
|
32
32
|
oh_modified_agi: 40_000
|
|
33
|
-
|
|
33
|
+
cdcc_potential: 2_000
|
|
34
34
|
output:
|
|
35
35
|
oh_cdcc: 0
|
|
@@ -122,3 +122,62 @@
|
|
|
122
122
|
state_fips: 39 # OH
|
|
123
123
|
output: # expected results from patched TAXSIM35 2024-03-09 version
|
|
124
124
|
oh_income_tax: 2_818.55
|
|
125
|
+
|
|
126
|
+
- name: 0-OH.yaml
|
|
127
|
+
absolute_error_margin: 2
|
|
128
|
+
period: 2024
|
|
129
|
+
input:
|
|
130
|
+
people:
|
|
131
|
+
person1:
|
|
132
|
+
age: 70
|
|
133
|
+
employment_income: 10000.0
|
|
134
|
+
ssi: 0
|
|
135
|
+
wic: 0
|
|
136
|
+
head_start: 0
|
|
137
|
+
early_head_start: 0
|
|
138
|
+
commodity_supplemental_food_program: 0
|
|
139
|
+
deductible_mortgage_interest: 13333.333
|
|
140
|
+
qualified_dividend_income: 9822.7325
|
|
141
|
+
is_tax_unit_head: true
|
|
142
|
+
person2:
|
|
143
|
+
age: 70
|
|
144
|
+
employment_income: 10000.0
|
|
145
|
+
ssi: 0
|
|
146
|
+
wic: 0
|
|
147
|
+
head_start: 0
|
|
148
|
+
early_head_start: 0
|
|
149
|
+
commodity_supplemental_food_program: 0
|
|
150
|
+
qualified_dividend_income: 9822.7325
|
|
151
|
+
is_tax_unit_spouse: true
|
|
152
|
+
person3:
|
|
153
|
+
age: 5
|
|
154
|
+
employment_income: 0
|
|
155
|
+
ssi: 0
|
|
156
|
+
wic: 0
|
|
157
|
+
head_start: 0
|
|
158
|
+
early_head_start: 0
|
|
159
|
+
commodity_supplemental_food_program: 0
|
|
160
|
+
is_tax_unit_dependent: true
|
|
161
|
+
is_tax_unit_head: false
|
|
162
|
+
is_tax_unit_spouse: false
|
|
163
|
+
tax_units:
|
|
164
|
+
tax_unit:
|
|
165
|
+
members: [person1, person2, person3]
|
|
166
|
+
premium_tax_credit: 0
|
|
167
|
+
local_income_tax: 0
|
|
168
|
+
state_sales_tax: 0
|
|
169
|
+
tax_unit_childcare_expenses: 6000.0
|
|
170
|
+
spm_units:
|
|
171
|
+
spm_unit:
|
|
172
|
+
members: [person1, person2, person3]
|
|
173
|
+
snap: 0
|
|
174
|
+
tanf: 0
|
|
175
|
+
free_school_meals: 0
|
|
176
|
+
reduced_price_school_meals: 0
|
|
177
|
+
households:
|
|
178
|
+
household:
|
|
179
|
+
members: [person1, person2, person3]
|
|
180
|
+
state_fips: 39
|
|
181
|
+
output:
|
|
182
|
+
oh_cdcc: 165
|
|
183
|
+
oh_income_tax: 273
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
members: [parent, child1, child2]
|
|
26
26
|
state_name: RI
|
|
27
27
|
output:
|
|
28
|
-
ri_exemptions:
|
|
28
|
+
ri_exemptions: 15_200 # 1 personal (5_050) + 1 dependent (5_100) + 1 older dependent (5_050)
|
|
29
29
|
|
|
30
30
|
- name: RI exemption reform - restrict to children under 13
|
|
31
31
|
period: 2025
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
members: [parent, child1, child2]
|
|
55
55
|
state_name: RI
|
|
56
56
|
output:
|
|
57
|
-
ri_exemptions:
|
|
57
|
+
ri_exemptions: 15_200 # 1 personal (5_050) + 1 dependent (5_100) + 1 older dependent (5_050)
|
|
58
58
|
|
|
59
59
|
- name: RI exemption reform - AGI phaseout
|
|
60
60
|
period: 2025
|
|
@@ -16,8 +16,8 @@ class oh_cdcc(Variable):
|
|
|
16
16
|
p = parameters(period).gov.states.oh.tax.income.credits.cdcc
|
|
17
17
|
|
|
18
18
|
agi = tax_unit("oh_modified_agi", period)
|
|
19
|
-
# Ohio matches the federal credit
|
|
20
|
-
us_cdcc = tax_unit("
|
|
19
|
+
# Ohio matches the potential federal credit
|
|
20
|
+
us_cdcc = tax_unit("cdcc_potential", period)
|
|
21
21
|
|
|
22
22
|
rate = p.match.calc(agi)
|
|
23
23
|
# qualify for full CDCC amount when AGI < 20_000
|
|
@@ -3400,7 +3400,7 @@ policyengine_us/reforms/states/ri/__init__.py,sha256=BG3Wr6c3tcsIiMfCvqZMsiZp9qa
|
|
|
3400
3400
|
policyengine_us/reforms/states/ri/ctc/__init__.py,sha256=L95JQFkq-Srt-n7CSXWytzly6nkhtbrTzomeodskTio,48
|
|
3401
3401
|
policyengine_us/reforms/states/ri/ctc/ri_ctc_reform.py,sha256=Jm35tP17Bl6hg1Ub5fI9-mzzhx4Hi6XPlRs-Y3do0uI,6023
|
|
3402
3402
|
policyengine_us/reforms/states/ri/exemption/__init__.py,sha256=hEkhBVlshUVIG8KPHpnoTp1Gg69syHmIote4WlCjOOE,63
|
|
3403
|
-
policyengine_us/reforms/states/ri/exemption/ri_exemption_reform.py,sha256=
|
|
3403
|
+
policyengine_us/reforms/states/ri/exemption/ri_exemption_reform.py,sha256=c90gXlYL2RUM9xwR-iJBJ1WoNpyYONgLc8m905NaMH0,5952
|
|
3404
3404
|
policyengine_us/reforms/tax_exempt/__init__.py,sha256=v3EbtUk6a2jsi9MrOlyb8ckzPyX7EgG7qkI7QXoSGto,65
|
|
3405
3405
|
policyengine_us/reforms/tax_exempt/tax_exempt_reform.py,sha256=bkW91XMJ-jd23nhq4-PfWJv0YW2whVn98cQikbq6-Z8,2427
|
|
3406
3406
|
policyengine_us/reforms/treasury/__init__.py,sha256=406jIbu32B57tUKhVLflWxlXf3S4SWjclVqlEtMeMwg,92
|
|
@@ -5002,13 +5002,13 @@ policyengine_us/tests/policy/baseline/gov/states/ny/tax/income/taxable_income/de
|
|
|
5002
5002
|
policyengine_us/tests/policy/baseline/gov/states/ny/tax/income/taxable_income/deductions/itemized/ny_itemized_deductions_reduction_based_on_charitable_deduction.yaml,sha256=1uzaus-lN19vtzMfTWANUuajpsp32F498fNIomh8c1A,1115
|
|
5003
5003
|
policyengine_us/tests/policy/baseline/gov/states/ny/tax/income/taxable_income/deductions/itemized/ny_itemized_deductions_reduction_based_on_charitable_deduction_applies.yaml,sha256=bVrcl4Ol2QiDmbCShC_CAcWEhxGPef_pB5-dpZAmIkI,440
|
|
5004
5004
|
policyengine_us/tests/policy/baseline/gov/states/ny/tax/income/taxable_income/deductions/itemized/ny_itemizes.yaml,sha256=YmmMVqSYoSIAe8cyA2FZ34M3ysZ8GTyKn_delt9YuRs,749
|
|
5005
|
-
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/integration.yaml,sha256=
|
|
5005
|
+
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/integration.yaml,sha256=YmY4_8L6eOLZYuEwTpGAVnQkYVRjCzvBxdb3grKFv7c,5245
|
|
5006
5006
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/oh_income_tax_before_non_refundable_credits.yaml,sha256=U-UhhYcKc2B93NIvgLUJAUj7fgtc56WU1dl3dSFi5FM,622
|
|
5007
5007
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/oh_income_tax_before_refundable_credits.yaml,sha256=Ypv2xQF3bdw4qekYQPh1CarA2XgdIT7VssfKtAwPen8,499
|
|
5008
5008
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/oh_taxable_income.yaml,sha256=qwA5S8vkIJ7DE3GpAdqpa8si40ch4Ykvr3BG2qQ1kiU,362
|
|
5009
5009
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/oh_withheld_income_tax.yaml,sha256=j5vyHphfUCP1ek1wqhTLjimKUPgOuQ0DPOCN6P-YYXU,717
|
|
5010
5010
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_adoption_credit_person.yaml,sha256=-9cXlAAFMxEPAZvJeadmlHR3M95Au8Bzg1eGJtGJBWk,8029
|
|
5011
|
-
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_cdcc.yaml,sha256=
|
|
5011
|
+
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_cdcc.yaml,sha256=S5xTfUR0qlSZMRLDrkFw8XC0meePGsr23idirYrrTek,845
|
|
5012
5012
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_eitc.yaml,sha256=k28r4TnrtjbonrHVvpCYVueo7qmnLCedQk_NLaKUKBs,351
|
|
5013
5013
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_exemption_credits.yaml,sha256=1Qy9uKJJcnZOEpFjI0HnU_kVWbkGJLjfj3jTeh9oV0E,523
|
|
5014
5014
|
policyengine_us/tests/policy/baseline/gov/states/oh/tax/income/credits/oh_non_public_school_credits.yaml,sha256=pldAs0s9-mHtBrL6bv5kuyhUWZz8bmAM5-w6ZfYqHqo,2061
|
|
@@ -5340,7 +5340,7 @@ policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/subtractions/seni
|
|
|
5340
5340
|
policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/subtractions/social_security/wv_social_security_benefits_subtraction_eligible.yaml,sha256=14LNSRJcEUKcNrs0TeQbBbDIyo_oEjl796L89IRRrtY,2401
|
|
5341
5341
|
policyengine_us/tests/policy/baseline/gov/states/wv/tax/income/subtractions/social_security/wv_social_security_benefits_subtraction_person.yaml,sha256=FYlFFRNZkMEs3-BBc9aoLKqjQE1vYQYMrAw9w3OyvYA,7445
|
|
5342
5342
|
policyengine_us/tests/policy/baseline/gov/tax/income/integration.yaml,sha256=1kwIJmcmqG6X5kZjCga-hfsclylJB0fWVXSdh08OZHM,706
|
|
5343
|
-
policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/pr_normal_tax.yaml,sha256=
|
|
5343
|
+
policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/pr_normal_tax.yaml,sha256=79H2cj93JYnaUZGdG9zNatvf1s3SHzgkxJU6Ujzhm7Q,536
|
|
5344
5344
|
policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/credits/earned_income/integration.yaml,sha256=-9Q9J78TOZuPG8LLK5PqHM4dgi9PmT3KB08jgPNTHFU,1570
|
|
5345
5345
|
policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/credits/earned_income/pr_earned_income_credit.yaml,sha256=ya84wBvd6bTepawJlWt_1xrzHoshmorBhMThd7V3fqo,4076
|
|
5346
5346
|
policyengine_us/tests/policy/baseline/gov/territories/pr/tax/income/credits/earned_income/pr_earned_income_credit_eligible_person.yaml,sha256=05_kLBxBq9we-w72eJj9fq_1fEeFnqv7P_mG0dl3e84,1196
|
|
@@ -5570,7 +5570,7 @@ policyengine_us/tests/policy/contrib/states/mt/ctc/mt_ctc.yaml,sha256=WYTHmavj-l
|
|
|
5570
5570
|
policyengine_us/tests/policy/contrib/states/ny/ny_working_families_tax_credit.yaml,sha256=XPIBSvoA_fbz56jj5oyphaglco44oMwSvLPB5yJNhMM,8232
|
|
5571
5571
|
policyengine_us/tests/policy/contrib/states/or/rebate/or_rebate_state_tax_exempt.yaml,sha256=P7cuxKGo0GrJrOHoHHrZFfW53cH_IJbwj4mzt3OYq58,1220
|
|
5572
5572
|
policyengine_us/tests/policy/contrib/states/ri/ctc_reform_test.yaml,sha256=hptunGKb3A4Aey4IYMJn1MVrCXn6i3gORV-oyI9OxTQ,6022
|
|
5573
|
-
policyengine_us/tests/policy/contrib/states/ri/exemption_reform_test.yaml,sha256=
|
|
5573
|
+
policyengine_us/tests/policy/contrib/states/ri/exemption_reform_test.yaml,sha256=_BgiVNMgoQMCdCvbjW_U3YhNYkI4WgVkIifZWbvpDuI,4042
|
|
5574
5574
|
policyengine_us/tests/policy/contrib/tax_exempt/tax_exempt_reform.yaml,sha256=T-NrLa5NoAj3Hu4E4sb-Sbi71aDvbloGG3MLtZOsmgA,2412
|
|
5575
5575
|
policyengine_us/tests/policy/contrib/taxsim/taxsim_v10.yaml,sha256=0an6UXc229i52BUulZsvpTEphDUi8S6OhG3OT9SjiD4,68577
|
|
5576
5576
|
policyengine_us/tests/policy/contrib/taxsim/taxsim_v11.yaml,sha256=5JSMXOJ-Dt44jx5yYcJUnBNlY6BfTc5-x_uT9ZigDWs,72309
|
|
@@ -7823,7 +7823,7 @@ policyengine_us/variables/gov/states/oh/tax/income/adjusted_gross_income/oh_agi.
|
|
|
7823
7823
|
policyengine_us/variables/gov/states/oh/tax/income/adjusted_gross_income/oh_agi_person.py,sha256=LoUnZBXkTujGUfetDxbpxOXFlbQsV2AXuDkTOIlsUfI,529
|
|
7824
7824
|
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_adoption_credit.py,sha256=FXnBvIxYL9zT-QWXlF7A0yhGHuJu9fnnn-CAEnpcM1s,1277
|
|
7825
7825
|
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_adoption_credit_person.py,sha256=M-NIT-8jbJ6mASNeaWaOePDV1cyjW1tJDOXYgr2vQIM,1906
|
|
7826
|
-
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_cdcc.py,sha256=
|
|
7826
|
+
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_cdcc.py,sha256=teTAL6mQYW_gJwdVfJ1ShunL7KPIRIejJoFlh-mwD4w,873
|
|
7827
7827
|
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_eitc.py,sha256=O1peErUAnf95DquJw46o3bld3GE6Iu2LjFc8tm8JGPM,650
|
|
7828
7828
|
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_exemption_credit.py,sha256=xJDlL2gxeKV4Iz24J2BESUMVqg2NOv1_BuFYZjHHtoA,844
|
|
7829
7829
|
policyengine_us/variables/gov/states/oh/tax/income/credits/oh_has_taken_oh_lump_sum_credits.py,sha256=dA6112zBx2tbPb-VrzRmoe24PmtEm76vLbYcO8kgdAc,473
|
|
@@ -8862,8 +8862,8 @@ policyengine_us/variables/input/farm_income.py,sha256=BEKxYmHNNnWJAAvULl5qZJigy5
|
|
|
8862
8862
|
policyengine_us/variables/input/geography.py,sha256=Ux0ueAf0rhZaflyEqz81UuXP3xKCKBDvoO3CrKhiQEc,5421
|
|
8863
8863
|
policyengine_us/variables/input/self_employment_income.py,sha256=PwsGz8R4lRikKWUYOhsC0qosNNLXq4f5SQmfw4S3mk8,511
|
|
8864
8864
|
policyengine_us/variables/input/self_employment_income_before_lsr.py,sha256=E8fcX9Nlyqz8dziHhQv_euutdmoIwFMMWePUwbbwv_w,379
|
|
8865
|
-
policyengine_us-1.432.
|
|
8866
|
-
policyengine_us-1.432.
|
|
8867
|
-
policyengine_us-1.432.
|
|
8868
|
-
policyengine_us-1.432.
|
|
8869
|
-
policyengine_us-1.432.
|
|
8865
|
+
policyengine_us-1.432.2.dist-info/METADATA,sha256=AjUd7Vssk4VOvZRaeu9jnMp9b5Js7-5MTUaDcmiweFE,1649
|
|
8866
|
+
policyengine_us-1.432.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
8867
|
+
policyengine_us-1.432.2.dist-info/entry_points.txt,sha256=MLaqNyNTbReALyKNkde85VkuFFpdPWAcy8VRG1mjczc,57
|
|
8868
|
+
policyengine_us-1.432.2.dist-info/licenses/LICENSE,sha256=2N5ReRelkdqkR9a-KP-y-shmcD5P62XoYiG-miLTAzo,34519
|
|
8869
|
+
policyengine_us-1.432.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|