Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
119 commits
Select commit Hold shift + click to select a range
81d2cdc
TestCase SyntacticSugar Part 1.2: `holidays_[insert] init for categories
PPsyrius Sep 1, 2025
94eb594
Add `from collections import defaultdict` back in
PPsyrius Sep 1, 2025
69d54f8
TestCase Sort + Standardization
PPsyrius Sep 1, 2025
fb54470
TestCase Syntactic Sugar Part 2: `Assert[insert]` initializations
PPsyrius Sep 1, 2025
6b52d4d
issubclass -> isinstance migration
PPsyrius Sep 1, 2025
fc69b03
default_language check refactor
PPsyrius Sep 1, 2025
6d3bf12
Migrate Financial TestCases to New Standard, Partial NYSE refactor
PPsyrius Sep 2, 2025
acf7314
[country/financial entities].start_year usage
PPsyrius Sep 2, 2025
6ab8a1f
"A" countries test case refactor
PPsyrius Sep 3, 2025
7405219
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 3, 2025
37f0fba
Reapplied N802 supression
PPsyrius Sep 3, 2025
e3c96d5
Refactor Algeria holidays: add `CHRISTIAN`, `HEBREW` category
PPsyrius Sep 3, 2025
14a7567
Update Afghanistan holidays: 2025 Islamic holidays observances
PPsyrius Sep 3, 2025
18a5ba8
Code Review Comments
PPsyrius Sep 3, 2025
d2623e8
Algeria typo fixed
PPsyrius Sep 3, 2025
199e498
Legacy `self.subdiv_holidays` support, also allow subdiv-specific yea…
PPsyrius Sep 4, 2025
a69b81c
Yes, `AssertSubdiv[Subdivision][methodname]` works now
PPsyrius Sep 4, 2025
24946ab
Misc. Cleanup
PPsyrius Sep 4, 2025
6b5975b
"B" countries test case refactor
PPsyrius Sep 4, 2025
6e7ea1e
Further simplies SetUpClass by auto-populating `cls.full_range`
PPsyrius Sep 4, 2025
38c6fa6
Code Review Comment
PPsyrius Sep 4, 2025
9f4c5b1
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 4, 2025
b869920
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 4, 2025
33230c2
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 5, 2025
17e140d
"C" countries test case refactor
PPsyrius Sep 8, 2025
c34671f
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 8, 2025
7f27a95
Saint Helena Test Case Refactor
PPsyrius Sep 8, 2025
7b93b7d
"years_" init refactor
PPsyrius Sep 8, 2025
17a209c
Add `attr_name_suffix` on-the-go
PPsyrius Sep 8, 2025
6f10bcb
Removing unused edge cases
PPsyrius Sep 8, 2025
53ec386
Add `cls.subdiv_{category}_holidays` test support, other fixes
PPsyrius Sep 8, 2025
1fe1514
Non-Public Supported Categories Check Deduplication
PPsyrius Sep 8, 2025
1cd27fa
Further Optimization & Caching
PPsyrius Sep 9, 2025
ff87942
Syntax Standardization
PPsyrius Sep 9, 2025
008fd1f
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 10, 2025
ec35a6c
Misc. fixes
PPsyrius Sep 10, 2025
a420abc
Fix Brazil typo, simplify setUpClass even more
PPsyrius Sep 10, 2025
9edfa5e
Reorder `years_[insert]` init
PPsyrius Sep 10, 2025
fb34c93
Refactor out `.difference( ... )` usage, other misc. changes
PPsyrius Sep 13, 2025
c48d89d
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 13, 2025
a82c0fe
Typo fixes
PPsyrius Sep 13, 2025
30d3884
Refactor Sudan test case to the latest standard
PPsyrius Sep 13, 2025
26c1d10
US testcase fixed
PPsyrius Sep 13, 2025
967c562
Code Review Comments
PPsyrius Sep 14, 2025
be4739b
JP snaphot update, Switzerland testcase update
PPsyrius Sep 14, 2025
9cc2e76
Implement `self.end_year` for TestCase
PPsyrius Sep 14, 2025
ac750e5
Code Review Comments
PPsyrius Sep 14, 2025
41e4aab
Update Chile test case to assertHolidayName
PPsyrius Sep 14, 2025
7c04c42
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 15, 2025
774b5b8
Algeria test case cleanup
PPsyrius Sep 15, 2025
be0c362
Refactor Hungary code again so that .po ins't touch
PPsyrius Sep 16, 2025
8bf4be6
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 17, 2025
29acfd5
Update DZ holiday files to be in line with the separate DZ PR
PPsyrius Sep 17, 2025
d228ffc
Pre-Commit fixes
PPsyrius Sep 17, 2025
c091d98
Pre-emptively aligns with newer changes elsewhere Pt.2
PPsyrius Sep 17, 2025
757dbd0
Pre-emptively aligns with newer changes elsewhere Pt.3
PPsyrius Sep 17, 2025
c779cd3
Pre-emptively aligns with newer changes elsewhere Pt.4
PPsyrius Sep 17, 2025
298d743
Algeria test case fixes
PPsyrius Sep 17, 2025
1dbe2af
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 18, 2025
b413e1b
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 19, 2025
a3b9495
Refactor A-B countries' testcases to modern standards
PPsyrius Sep 19, 2025
380715f
Code Review Comments
PPsyrius Sep 20, 2025
ea8535b
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 20, 2025
631fb81
Refactor C countries' testcases to modern standards
PPsyrius Sep 20, 2025
acd640c
Fix up Colombia test cases
PPsyrius Sep 20, 2025
67d13fd
Code Review Comments
PPsyrius Sep 20, 2025
682722b
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 20, 2025
7cb4e5c
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 22, 2025
d0c73ec
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 23, 2025
18d7259
Code Review Comments
PPsyrius Sep 23, 2025
177ecd3
category didn't need to be lowercase'ed again
PPsyrius Sep 23, 2025
d6b6cd1
Use `isinstance` for instance checks.
PPsyrius Sep 23, 2025
7c59467
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 24, 2025
dbe26ad
Optimize `_generate_assert_methods`
PPsyrius Sep 24, 2025
eaf0fcc
mypy fixes
PPsyrius Sep 24, 2025
68d767d
Remove useless code section added by coderabbitai suggestion
PPsyrius Sep 24, 2025
a013c9c
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 25, 2025
0c37aa4
Another A-C countries and financial market test case cleanup
PPsyrius Sep 25, 2025
6de8242
`setUpClass` cleanup
PPsyrius Sep 25, 2025
3dca9d1
Unify `cls.test_class` usage
PPsyrius Sep 25, 2025
db52ab5
Afghanistan & Canada testcase fixes
PPsyrius Sep 25, 2025
02893c4
Canada should, in fact, just use default full_range for all tests
PPsyrius Sep 25, 2025
06c9f57
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 26, 2025
6c410a8
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 28, 2025
0d0c033
Update Antarctica test cases to the new standard
PPsyrius Sep 28, 2025
4e4a502
Code Review Comments
PPsyrius Sep 28, 2025
2507091
Code Review Comments
PPsyrius Sep 28, 2025
ddb00bf
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Sep 29, 2025
4685d90
Code Review Comments
PPsyrius Sep 29, 2025
3668c84
Add `setUpClass`'s `with_subdiv_categories` flag
PPsyrius Sep 29, 2025
319c1f2
This section could use a `with_subdiv_categories` gatekeeping as well
PPsyrius Sep 30, 2025
3838462
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 2, 2025
b58567a
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 3, 2025
a5f1e8a
Update new USA and Canary Islands test cases to new standard
PPsyrius Oct 3, 2025
02aa4c8
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 4, 2025
2d85739
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 6, 2025
2fc25e3
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 7, 2025
b85061d
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 8, 2025
7935957
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 9, 2025
724d485
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 10, 2025
6050827
Argentina holidays test don't need `with_subdiv_categories=True,`
PPsyrius Oct 10, 2025
64cebdf
Refactor Fiji, Uninhibited Islands test cases to new standard
PPsyrius Oct 10, 2025
9b9efb1
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 11, 2025
0480962
Better hierarchical fallback for subdiv-based year variants
PPsyrius Oct 11, 2025
5cc2ad5
Final A-C country holidays clean up
PPsyrius Oct 11, 2025
397bb9d
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 13, 2025
9f9e7d5
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 14, 2025
bdb9616
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 15, 2025
3dfa722
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 15, 2025
1f89e83
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 16, 2025
7403afe
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 20, 2025
891f1d7
Fix warning filter
PPsyrius Oct 20, 2025
e71e049
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 24, 2025
fc09e6e
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 29, 2025
6545558
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 30, 2025
c45a1eb
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Oct 30, 2025
7bc608d
Merge branch 'dev' into testcase_syntactic_sugar
PPsyrius Nov 2, 2025
8c82168
Update code
arkid15r Nov 2, 2025
4e5d9f5
Fix coverage
arkid15r Nov 2, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ any) in brackets, available languages and additional holiday categories. All cou
<td></td>
</tr>
<tr>
<td>Aland Islands</td>
<td>Åland Islands</td>
<td>AX</td>
<td>Can also be loaded as country FI, subdivision 01</td>
<td>en_US, <strong>fi</strong>, sv_FI, th, uk</td>
Expand Down
8 changes: 4 additions & 4 deletions holidays/countries/aland_islands.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysAX(ChildEntity, Finland):
class AlandIslands(ChildEntity, Finland):
"""Åland Islands holidays.

Alias of a Finnish subdivision that is also officially assigned
Expand All @@ -35,13 +35,13 @@ class HolidaysAX(ChildEntity, Finland):
start_year = 1921


class AlandIslands(HolidaysAX):
class HolidaysAX(AlandIslands):
pass


class AX(HolidaysAX):
class AX(AlandIslands):
pass


class ALA(HolidaysAX):
class ALA(AlandIslands):
pass
8 changes: 4 additions & 4 deletions holidays/countries/american_samoa.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysAS(ChildEntity, UnitedStates):
class AmericanSamoa(ChildEntity, UnitedStates):
"""American Samoa holidays.

Alias of a US subdivision that is also officially assigned its own country code in ISO 3166-1.
Expand All @@ -27,13 +27,13 @@ class HolidaysAS(ChildEntity, UnitedStates):
start_year = 1901


class AmericanSamoa(HolidaysAS):
class HolidaysAS(AmericanSamoa):
pass


class AS(HolidaysAS):
class AS(AmericanSamoa):
pass


class ASM(HolidaysAS):
class ASM(AmericanSamoa):
pass
8 changes: 4 additions & 4 deletions holidays/countries/french_guiana.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysGF(ChildEntity, France):
class FrenchGuiana(ChildEntity, France):
"""French Guiana holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -32,13 +32,13 @@ class HolidaysGF(ChildEntity, France):
start_year = 1815


class FrenchGuiana(HolidaysGF):
class HolidaysGF(FrenchGuiana):
pass


class GF(HolidaysGF):
class GF(FrenchGuiana):
pass


class GUF(HolidaysGF):
class GUF(FrenchGuiana):
pass
8 changes: 4 additions & 4 deletions holidays/countries/french_polynesia.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysPF(ChildEntity, France):
class FrenchPolynesia(ChildEntity, France):
"""French Polynesia holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -31,13 +31,13 @@ class HolidaysPF(ChildEntity, France):
start_year = 1881


class FrenchPolynesia(HolidaysPF):
class HolidaysPF(FrenchPolynesia):
pass


class PF(HolidaysPF):
class PF(FrenchPolynesia):
pass


class PYF(HolidaysPF):
class PYF(FrenchPolynesia):
pass
8 changes: 4 additions & 4 deletions holidays/countries/french_southern_territories.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysTF(ChildEntity, France):
class FrenchSouthernTerritories(ChildEntity, France):
"""French Southern Territories holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -36,13 +36,13 @@ class HolidaysTF(ChildEntity, France):
start_year = 1956


class FrenchSouthernTerritories(HolidaysTF):
class HolidaysTF(FrenchSouthernTerritories):
pass


class TF(HolidaysTF):
class TF(FrenchSouthernTerritories):
pass


class ATF(HolidaysTF):
class ATF(FrenchSouthernTerritories):
pass
8 changes: 4 additions & 4 deletions holidays/countries/guadeloupe.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysGP(ChildEntity, France):
class Guadeloupe(ChildEntity, France):
"""Guadeloupe holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -32,13 +32,13 @@ class HolidaysGP(ChildEntity, France):
start_year = 1815


class Guadeloupe(HolidaysGP):
class HolidaysGP(Guadeloupe):
pass


class GP(HolidaysGP):
class GP(Guadeloupe):
pass


class GLP(HolidaysGP):
class GLP(Guadeloupe):
pass
8 changes: 4 additions & 4 deletions holidays/countries/guam.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysGU(ChildEntity, UnitedStates):
class Guam(ChildEntity, UnitedStates):
"""Guam holidays.

Alias of a US subdivision that is also officially assigned its own country code in ISO 3166-1.
Expand All @@ -27,13 +27,13 @@ class HolidaysGU(ChildEntity, UnitedStates):
start_year = 1900


class Guam(HolidaysGU):
class HolidaysGU(Guam):
pass


class GU(HolidaysGU):
class GU(Guam):
pass


class GUM(HolidaysGU):
class GUM(Guam):
pass
10 changes: 6 additions & 4 deletions holidays/countries/marshall_islands.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,9 @@
from holidays.observed_holiday_base import ObservedHolidayBase, SUN_TO_NEXT_MON


class HolidaysMH(ObservedHolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays):
class MarshallIslands(
ObservedHolidayBase, ChristianHolidays, InternationalHolidays, StaticHolidays
):
"""Marshall Islands holidays.

References:
Expand Down Expand Up @@ -77,15 +79,15 @@ def _populate_public_holidays(self):
self._add_observed(self._add_christmas_day(name))


class MH(HolidaysMH):
class HolidaysMH(MarshallIslands):
pass


class MHL(HolidaysMH):
class MH(MarshallIslands):
pass


class MarshallIslands(HolidaysMH):
class MHL(MarshallIslands):
pass


Expand Down
8 changes: 4 additions & 4 deletions holidays/countries/martinique.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysMQ(ChildEntity, France):
class Martinique(ChildEntity, France):
"""Martinique holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -32,13 +32,13 @@ class HolidaysMQ(ChildEntity, France):
start_year = 1815


class Martinique(HolidaysMQ):
class HolidaysMQ(Martinique):
pass


class MQ(HolidaysMQ):
class MQ(Martinique):
pass


class MTQ(HolidaysMQ):
class MTQ(Martinique):
pass
6 changes: 2 additions & 4 deletions holidays/countries/mauritania.py
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,7 @@ def __init__(self, *args, islamic_show_estimated: bool = True, **kwargs):
IslamicHolidays.__init__(self, show_estimated=islamic_show_estimated)
super().__init__(*args, **kwargs)

def _populate(self, year):
super()._populate(year)

def _populate_public_holidays(self):
# New Year's Day.
self._add_new_years_day("New Year's Day")

Expand All @@ -52,7 +50,7 @@ def _populate(self, year):
self._add_africa_day("Africa Day")

# Independence Day.
if year >= 1960:
if self._year >= 1960:
self._add_holiday_nov_28("Independence Day")

# Islamic holidays.
Expand Down
8 changes: 4 additions & 4 deletions holidays/countries/mayotte.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysYT(ChildEntity, France):
class Mayotte(ChildEntity, France):
"""Mayotte holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -32,13 +32,13 @@ class HolidaysYT(ChildEntity, France):
start_year = 1842


class Mayotte(HolidaysYT):
class HolidaysYT(Mayotte):
pass


class YT(HolidaysYT):
class YT(Mayotte):
pass


class MYT(HolidaysYT):
class MYT(Mayotte):
pass
8 changes: 4 additions & 4 deletions holidays/countries/new_caledonia.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysNC(ChildEntity, France):
class NewCaledonia(ChildEntity, France):
"""New Caledonia holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -31,13 +31,13 @@ class HolidaysNC(ChildEntity, France):
start_year = 1854


class NewCaledonia(HolidaysNC):
class HolidaysNC(NewCaledonia):
pass


class NC(HolidaysNC):
class NC(NewCaledonia):
pass


class NCL(HolidaysNC):
class NCL(NewCaledonia):
pass
8 changes: 4 additions & 4 deletions holidays/countries/northern_mariana_islands.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysMP(ChildEntity, UnitedStates):
class NorthernMarianaIslands(ChildEntity, UnitedStates):
"""Northern Mariana Islands (the) holidays.

Alias of a US subdivision that is also officially assigned its own country code in ISO 3166-1.
Expand All @@ -27,13 +27,13 @@ class HolidaysMP(ChildEntity, UnitedStates):
start_year = 1948


class NorthernMarianaIslands(HolidaysMP):
class HolidaysMP(NorthernMarianaIslands):
pass


class MP(HolidaysMP):
class MP(NorthernMarianaIslands):
pass


class MNP(HolidaysMP):
class MNP(NorthernMarianaIslands):
pass
8 changes: 4 additions & 4 deletions holidays/countries/puerto_rico.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysPR(ChildEntity, UnitedStates):
class PuertoRico(ChildEntity, UnitedStates):
"""Puerto Rico holidays.

Alias of a US subdivision that is also officially assigned its own country code in ISO 3166-1.
Expand All @@ -27,13 +27,13 @@ class HolidaysPR(ChildEntity, UnitedStates):
start_year = 1900


class PuertoRico(HolidaysPR):
class HolidaysPR(PuertoRico):
pass


class PR(HolidaysPR):
class PR(PuertoRico):
pass


class PRI(HolidaysPR):
class PRI(PuertoRico):
pass
8 changes: 4 additions & 4 deletions holidays/countries/reunion.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
from holidays.mixins.child_entity import ChildEntity


class HolidaysRE(ChildEntity, France):
class Reunion(ChildEntity, France):
"""Réunion holidays.

Alias of a French subdivision that is also officially assigned
Expand All @@ -32,13 +32,13 @@ class HolidaysRE(ChildEntity, France):
start_year = 1815


class Reunion(HolidaysRE):
class HolidaysRE(Reunion):
pass


class RE(HolidaysRE):
class RE(Reunion):
pass


class REU(HolidaysRE):
class REU(Reunion):
pass
Loading