Skip to content

Update Argentina holidays: add 2026 bridge public holidays#3210

Merged
arkid15r merged 1 commit intovacanza:devfrom
KJhellico:upd-argentina
Jan 14, 2026
Merged

Update Argentina holidays: add 2026 bridge public holidays#3210
arkid15r merged 1 commit intovacanza:devfrom
KJhellico:upd-argentina

Conversation

@KJhellico
Copy link
Copy Markdown
Collaborator

Proposed change

Update Argentina holidays:

  • add 2026 bridge public holidays
  • add 2025 bank holidays

Type of change

  • New country/market holidays support (thank you!)
  • Supported country/market holidays update (calendar discrepancy fix, localization)
  • Existing code/documentation/test/process quality improvement (best practice, cleanup, refactoring, optimization)
  • Dependency update (version deprecation/pin/upgrade)
  • Bugfix (non-breaking change which fixes an issue)
  • Breaking change (a code change causing existing functionality to break)
  • New feature (new holidays functionality in general)

Checklist

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jan 13, 2026

Summary by CodeRabbit

  • New Features

    • Added new bank holidays for December 24–31, 2025, and bridge public holidays for March 23, July 10, and December 7, 2026, to Argentina's holiday calendar, reflecting updated official holiday schedules across regional variations.
  • Tests

    • Updated test cases to validate new holiday entries.

✏️ Tip: You can customize this high-level summary in your review settings.

Walkthrough

Updates Argentina holiday definitions for 2025–2026 by renaming a public-holiday constant, adding year-end bank holidays for 2025 (December 24 and 31), and introducing bridge public holidays for 2026 (March 23, July 10, December 7). Changes propagate across source code, snapshot test files, and unit tests.

Changes

Cohort / File(s) Summary
Source Implementation
holidays/countries/argentina.py
Renamed arg_bridge_public_holiday to bridge_public_holiday and updated all references across years 2011–2025. Added 2026 special public holidays (March 23, July 10, December 7), 2025 special bank holidays (December 24, 31), and Release P51199 reference in documentation.
Snapshot Data Files
snapshots/countries/AR_A.json, AR_B.json, AR_C.json, AR_COMMON.json, AR_D.json, AR_E.json, AR_F.json, AR_G.json, AR_H.json, AR_J.json, AR_K.json, AR_L.json, AR_M.json, AR_N.json, AR_P.json, AR_Q.json, AR_R.json, AR_S.json, AR_T.json, AR_U.json, AR_V.json, AR_W.json, AR_X.json, AR_Y.json, AR_Z.json
Added consistent holiday entries across all variants: 2025-12-24 and 2025-12-31 as Bank Holidays; 2026-03-23, 2026-07-10, and 2026-12-07 as Bridge Public Holidays. AR_Z.json additionally updated existing 2026-12-07 entry to include Bridge Public Holiday label.
Unit Tests
tests/countries/test_argentina.py
Expanded test_special_holidays to include 2026 bridge public holidays (March 23, July 10, December 7) and test_special_bank_holidays to include 2025 year-end bank holidays (December 24, 31).

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~12 minutes

Possibly related PRs

  • PR #2375 — Modifies holidays/countries/argentina.py and ArgentinaStaticHolidays, addressing overlapping updates to special holidays and public-holiday constants.

Suggested labels

snapshot, test

Suggested reviewers

  • arkid15r
  • PPsyrius
🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and specifically describes the main change: adding 2026 bridge public holidays for Argentina, which aligns with the primary changeset.
Description check ✅ Passed The description is directly related to the changeset, detailing the two main updates: adding 2026 bridge public holidays and adding 2025 bank holidays, matching the actual changes.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 45fa3c4 and cb65b67.

📒 Files selected for processing (27)
  • holidays/countries/argentina.py
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_D.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_Z.json
  • tests/countries/test_argentina.py
🧰 Additional context used
🧠 Learnings (48)
📓 Common learnings
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:228-229
Timestamp: 2025-11-08T04:56:18.070Z
Learning: Argentina: Good Friday ("Viernes Santo") is established from 1977 by Law 21329. In tests/countries/test_argentina.py, assert presence for range(1977, self.end_year) and absence for range(self.start_year, 1977); do not assert over self.full_range.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_french_polynesia.py:19-22
Timestamp: 2025-11-08T05:09:56.159Z
Learning: In the vacanza/holidays project's test framework (PR #2881 onwards), the base class CommonCountryTests provides a default test_no_holidays implementation that automatically tests years=start_year - 1 for standard PUBLIC category cases. Individual country test files should only override test_no_holidays when the country supports additional non-PUBLIC categories (GOVERNMENT, WORKDAY, OPTIONAL, etc.) with different start years requiring separate validation.
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2530
File: tests/countries/test_andorra.py:23-28
Timestamp: 2025-05-06T21:07:11.577Z
Learning: In the holidays project, test methods for country holidays follow a standard form where year ranges are explicitly recreated in each test method rather than being stored as class variables, to maintain consistency across all country tests.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:146-159
Timestamp: 2025-03-19T16:54:58.657Z
Learning: In the holidays library implementation, explicit holiday dates (like Diwali in Fiji) are only defined for historical years with official sources (2016-2025). Future dates beyond the explicitly defined range are automatically calculated by methods like `_add_diwali`, which provide approximations when official dates aren't yet available.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_south_africa.py:22-22
Timestamp: 2025-09-14T04:41:10.139Z
Learning: South Africa's observed holiday system only started in 1995, so in tests/countries/test_south_africa.py, using years_non_observed=range(1995, 2050) is intentional to limit testing to years where observed holidays actually exist, improving both correctness and performance.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_algeria.py:28-30
Timestamp: 2025-09-18T03:19:23.722Z
Learning: In the vacanza/holidays project, tests now use self.start_year and self.end_year from the TestCase class instead of country-specific aliases (like DZ.start_year) for start_year and end_year references. This approach provides the test framework with better control over test year ranges rather than being tied to specific country start years.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2386
File: tests/countries/test_nepal.py:499-536
Timestamp: 2025-04-05T06:49:06.217Z
Learning: In the holidays project, test files follow a dual testing approach: individual methods test specific holidays across multiple years, while comprehensive year-specific tests (e.g., `test_2025`) verify all holidays for a specific year in a single assertion. Both approaches serve different testing purposes and complement each other.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2642
File: holidays/countries/france.py:300-319
Timestamp: 2025-06-18T10:21:01.376Z
Learning: In the France holidays implementation, legislative years for holiday changes should be hard-coded rather than extracted into constants, as this maintains consistency with the existing codebase pattern and provides historical accuracy for specific legislative acts.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2416
File: tests/countries/test_turkmenistan.py:52-64
Timestamp: 2025-04-05T04:47:27.213Z
Learning: For holiday tests in the vacanza/holidays project, structure tests by individual holidays rather than by years. Each test method should focus on a specific holiday and test it across multiple years (from start_year through 2050) using helper methods like `assertHolidayName`. For fixed holidays, use generators like `(f"{year}-01-01" for year in range(1991, 2051))`. For movable holidays, specify individual dates for specific years followed by a range check.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: tests/countries/test_finland.py:23-26
Timestamp: 2025-05-09T18:36:09.607Z
Learning: The holidays project prioritizes complete historical coverage in tests, verifying holidays from their first year of observance (e.g., 1853 for Finland) through future projections, rather than using shorter sliding windows.
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2653
File: holidays/locale/th/LC_MESSAGES/TW.po:17-21
Timestamp: 2025-06-21T18:06:50.027Z
Learning: KJhellico's username includes a tilde character (~) as part of their nickname (appears as "~Jhellico" in Last-Translator headers), which is intentional formatting and not an error.
📚 Learning: 2025-04-03T05:59:57.480Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2407
File: snapshots/countries/TL_COMMON.json:7-7
Timestamp: 2025-04-03T05:59:57.480Z
Learning: In the holidays project, snapshot files (like snapshots/countries/TL_COMMON.json) are auto-generated when running `make snapshot` and should not be manually edited. Semicolons (;) in holiday entries are used as separators when multiple holidays occur on the same date.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-03-29T15:15:05.919Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:171-183
Timestamp: 2025-03-29T15:15:05.919Z
Learning: In the Fiji holidays implementation, the maintainers are aware of the need to extend the MAWLID_DATES dictionary beyond 2025 when future official references become available, and will do so when appropriate. No suggestions about extending this dictionary should be made in future reviews.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
📚 Learning: 2025-11-08T05:09:56.159Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_french_polynesia.py:19-22
Timestamp: 2025-11-08T05:09:56.159Z
Learning: In the vacanza/holidays project's test framework (PR #2881 onwards), the base class CommonCountryTests provides a default test_no_holidays implementation that automatically tests years=start_year - 1 for standard PUBLIC category cases. Individual country test files should only override test_no_holidays when the country supports additional non-PUBLIC categories (GOVERNMENT, WORKDAY, OPTIONAL, etc.) with different start years requiring separate validation.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-06-24T17:26:17.728Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2654
File: snapshots/countries/CV_RS.json:471-478
Timestamp: 2025-06-24T17:26:17.728Z
Learning: Snapshot files in the holidays library (like those in snapshots/countries/) are generated automatically and should not be manually edited. Any issues with snapshot content should be addressed in the source code that generates them, not in the snapshot files themselves.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-25T09:57:22.291Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2833
File: holidays/countries/uganda.py:50-56
Timestamp: 2025-08-25T09:57:22.291Z
Learning: In the holidays package, when adding comments for year-restricted holidays in Uganda and similar country modules, include specific legal or historical context such as the actual laws, parliamentary acts, or government decisions that established the holidays, rather than just generic "since YEAR" information. For example, reference the specific Parliament act, decree, or historical event that created the holiday.

Applied to files:

  • snapshots/countries/AR_S.json
  • holidays/countries/argentina.py
📚 Learning: 2025-09-14T04:41:10.139Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_south_africa.py:22-22
Timestamp: 2025-09-14T04:41:10.139Z
Learning: South Africa's observed holiday system only started in 1995, so in tests/countries/test_south_africa.py, using years_non_observed=range(1995, 2050) is intentional to limit testing to years where observed holidays actually exist, improving both correctness and performance.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-11-08T04:56:18.070Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:228-229
Timestamp: 2025-11-08T04:56:18.070Z
Learning: Argentina: Good Friday ("Viernes Santo") is established from 1977 by Law 21329. In tests/countries/test_argentina.py, assert presence for range(1977, self.end_year) and absence for range(self.start_year, 1977); do not assert over self.full_range.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-05-09T18:36:09.607Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: tests/countries/test_finland.py:23-26
Timestamp: 2025-05-09T18:36:09.607Z
Learning: The holidays project prioritizes complete historical coverage in tests, verifying holidays from their first year of observance (e.g., 1853 for Finland) through future projections, rather than using shorter sliding windows.

Applied to files:

  • snapshots/countries/AR_S.json
  • tests/countries/test_argentina.py
📚 Learning: 2025-09-14T07:26:25.431Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: holidays/countries/south_africa.py:69-75
Timestamp: 2025-09-14T07:26:25.431Z
Learning: When reviewing historical holiday implementations in the vacanza/holidays repository, trust the maintainers' research and implementation decisions for specific historical edge cases, especially when they can provide sources like Wikipedia or other historical documentation that supports unusual or complex date calculation rules during specific time periods.

Applied to files:

  • snapshots/countries/AR_S.json
📚 Learning: 2025-04-23T14:55:35.504Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2489
File: holidays/countries/sao_tome_and_principe.py:22-26
Timestamp: 2025-04-23T14:55:35.504Z
Learning: References in holidays classes should only be included if they're used for test case cross-checks or provide historical context about when holidays were added/removed, not just for the sake of having more references.

Applied to files:

  • snapshots/countries/AR_S.json
📚 Learning: 2025-03-19T16:54:58.657Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:146-159
Timestamp: 2025-03-19T16:54:58.657Z
Learning: In the holidays library implementation, explicit holiday dates (like Diwali in Fiji) are only defined for historical years with official sources (2016-2025). Future dates beyond the explicitly defined range are automatically calculated by methods like `_add_diwali`, which provide approximations when official dates aren't yet available.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-15T19:16:14.119Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2821
File: holidays/countries/tanzania.py:37-83
Timestamp: 2025-08-15T19:16:14.119Z
Learning: PDF filenames in government holiday documentation may not always reflect the actual year covered in the content. The Tanzania Bank of Tanzania (BOT) 2024 public holidays document is hosted at a URL containing "2023" in the filename but contains 2024 holiday information.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-09-14T16:03:13.558Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_barbados.py:21-23
Timestamp: 2025-09-14T16:03:13.558Z
Learning: In tests/countries/test_barbados.py, using years_non_observed=range(2000, 2024) is intentional because all observed holiday examples fall within 2001-2023, making this range appropriate for limiting testing to years where observed holidays actually exist in the test data.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-09-17T15:16:16.192Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2944
File: holidays/countries/myanmar.py:183-191
Timestamp: 2025-09-17T15:16:16.192Z
Learning: The special_public_holidays formatting pattern in the holidays codebase follows a consistent convention: single entries per year use flat tuple format like `2024: (MONTH, DAY, name)`, while multiple entries per year use tuple-of-tuples format like `2024: ((MONTH, DAY, name), (MONTH, DAY, name))`. This pattern is used consistently across all countries.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-07-10T03:36:16.461Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2706
File: holidays/countries/cayman_islands.py:80-97
Timestamp: 2025-07-10T03:36:16.461Z
Learning: In the holidays library, date dictionaries that map years to specific dates (like queens_birthday_dates, spring_bank_dates, thanksgiving_day_dates, etc.) are typically defined within the _populate_public_holidays method rather than as module-level constants. This is the established library-wide pattern seen across multiple country implementations including United Kingdom, United States, Sri Lanka, and others.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-03-19T16:53:00.375Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:185-188
Timestamp: 2025-03-19T16:53:00.375Z
Learning: In the Fiji holidays implementation, the `special_public_holidays_observed` dictionary in `FijiStaticHolidays` is only used for exceptions to the normal observance rules, not for documenting all holidays. Only 2019's Constitution Day needed a special entry as it didn't follow the standard patterns.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-15T19:16:14.119Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2821
File: holidays/countries/tanzania.py:37-83
Timestamp: 2025-08-15T19:16:14.119Z
Learning: In Tanzania holiday documentation, the Bank of Tanzania (BOT) may publish yearly public holidays PDFs using URLs with previous year filenames. For example, the 2024 public holidays document is accessible via a URL containing "2023 public holidays.pdf" but contains actual 2024 holiday information. Always check content rather than assuming filename indicates the year covered.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-12T03:21:09.116Z
Learnt from: mbfarah
Repo: vacanza/holidays PR: 2798
File: holidays/countries/chile.py:278-281
Timestamp: 2025-08-12T03:21:09.116Z
Learning: In Chile holidays implementation, the general rule for September 17 (years >= 2007) uses MON_ONLY for years 2007-2016, meaning it only adds the holiday when September 17 falls on a Monday. For years when September 17 falls on other days and was declared a one-off holiday by specific laws, it must be added to the special_public_holidays dictionary.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-10-28T17:26:45.090Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 3026
File: holidays/countries/spain.py:189-189
Timestamp: 2025-10-28T17:26:45.090Z
Learning: In the vacanza/holidays codebase, `_populate` methods (such as `_populate_public_holidays`, `_populate_subdiv_holidays`, and subdivision-specific methods like `_populate_subdiv_XX_public_holidays`) intentionally do not include return type annotations like `-> None`. This is a consistent pattern across country implementations (e.g., Germany, United States, Spain) and should not be changed even when static analysis tools like Ruff suggest adding them.
<!-- </add_learning>

Applied to files:

  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_B.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_N.json
📚 Learning: 2025-06-19T02:34:18.382Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2643
File: holidays/countries/mauritius.py:144-169
Timestamp: 2025-06-19T02:34:18.382Z
Learning: Custom holiday classes that extend _CustomHinduHolidays, _CustomIslamicHolidays, _CustomBuddhistHolidays, etc. in the holidays library do not use docstrings. They follow a pattern of using only inline comments above date dictionaries, as seen in Malaysia, Singapore, UAE, and other country implementations.

Applied to files:

  • snapshots/countries/AR_A.json
📚 Learning: 2025-05-06T21:07:11.577Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2530
File: tests/countries/test_andorra.py:23-28
Timestamp: 2025-05-06T21:07:11.577Z
Learning: In the holidays project, test methods for country holidays follow a standard form where year ranges are explicitly recreated in each test method rather than being stored as class variables, to maintain consistency across all country tests.

Applied to files:

  • snapshots/countries/AR_A.json
  • tests/countries/test_argentina.py
📚 Learning: 2025-09-20T15:37:21.301Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_colombia.py:45-61
Timestamp: 2025-09-20T15:37:21.301Z
Learning: In Colombia's holiday system, movable observed holidays were only introduced from 1984 onwards. Before this date, holidays that later became movable (like Saint Joseph's Day) existed as regular holidays from their introduction year, but had no observed variant system. The years_non_observed parameter in Colombia tests reflects this 1984 start date for the observed holiday system.

Applied to files:

  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-09-28T05:42:12.777Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_indonesia.py:221-223
Timestamp: 2025-09-28T05:42:12.777Z
Learning: In tests/countries/test_indonesia.py, the manual set inclusion checks using get_named and years_found for Lunar New Year (test_lunar_new_year) and Vesak Day (test_vesak_day) are intentional and should remain until both holidays get their own `{insert}_no_estimated` flags implemented, rather than using standard harness assertions like assertHolidayName/assertNoHolidayName.

Applied to files:

  • tests/countries/test_argentina.py
  • snapshots/countries/AR_Y.json
📚 Learning: 2025-04-05T04:47:27.213Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2416
File: tests/countries/test_turkmenistan.py:52-64
Timestamp: 2025-04-05T04:47:27.213Z
Learning: For holiday tests in the vacanza/holidays project, structure tests by individual holidays rather than by years. Each test method should focus on a specific holiday and test it across multiple years (from start_year through 2050) using helper methods like `assertHolidayName`. For fixed holidays, use generators like `(f"{year}-01-01" for year in range(1991, 2051))`. For movable holidays, specify individual dates for specific years followed by a range check.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-09-20T12:21:50.877Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_belgium.py:28-30
Timestamp: 2025-09-20T12:21:50.877Z
Learning: Belgium holidays implementation currently lacks a start_year attribute. In tests/countries/test_belgium.py, do not suggest adding test_no_holidays methods that rely on start_year until the start_year attribute is introduced to Belgium's holiday implementation.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-04-05T06:49:06.217Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2386
File: tests/countries/test_nepal.py:499-536
Timestamp: 2025-04-05T06:49:06.217Z
Learning: In the holidays project, test files follow a dual testing approach: individual methods test specific holidays across multiple years, while comprehensive year-specific tests (e.g., `test_2025`) verify all holidays for a specific year in a single assertion. Both approaches serve different testing purposes and complement each other.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-07-02T18:17:53.342Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2608
File: tests/countries/test_saint_vincent_and_the_grenadines.py:162-178
Timestamp: 2025-07-02T18:17:53.342Z
Learning: In the Saint Vincent and the Grenadines holidays implementation, New Year's Day is added without observed rules using `_add_new_years_day()` and should not include observed rule testing in its test method. Only holidays explicitly wrapped with `_add_observed()` have observed behavior.

Applied to files:

  • tests/countries/test_argentina.py
  • snapshots/countries/AR_V.json
📚 Learning: 2025-09-03T16:49:35.246Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:375-375
Timestamp: 2025-09-03T16:49:35.246Z
Learning: In the holidays library, national holiday tests use self.full_range (or similar comprehensive year ranges) even when explicit test dates only show modern observance. This is intentional for correctness and comprehensive coverage, unlike subdivision-specific holidays which have explicit year boundaries based on known start dates.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-04-04T10:52:41.546Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2398
File: holidays/countries/guinea.py:106-110
Timestamp: 2025-04-04T10:52:41.546Z
Learning: In the Guinea holidays implementation, observed Eid al-Fitr cases are properly covered by the test_eid_al_fitr_day() method, which tests both the regular holiday dates and the observed dates when the holiday falls on a non-working day (for years >= 2023).

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-09-14T16:05:55.205Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_iran.py:28-28
Timestamp: 2025-09-14T16:05:55.205Z
Learning: In tests/countries/test_iran.py, using years=(self.start_year - 1, 2102) in the no-holiday test is intentional because Iran uses the Persian Calendar which has specific supported year range constraints, and 2102 represents the upper limit of the Persian Calendar's supported range, not just an arbitrary far-future date.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-09-14T17:17:14.387Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_saint_helena_ascension_and_tristan_da_cunha.py:209-209
Timestamp: 2025-09-14T17:17:14.387Z
Learning: In tests/countries/test_saint_helena_ascension_and_tristan_da_cunha.py, the explicit loop iteration pattern for subdivision-specific holiday checks (like Anniversary Day for TA subdivision) is intentionally preferred over using assertSubdivTa helper methods, as confirmed by PPsyrius.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-08-19T19:47:21.735Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2829
File: tests/countries/test_canada.py:291-296
Timestamp: 2025-08-19T19:47:21.735Z
Learning: In the holidays library, HolidayBase objects automatically populate years on-demand when expand=True (the default). When checking dates from years not initially in the years range, those years are automatically populated via the logic at line 646 in holiday_base.py: "if self.expand and dt.year not in self.years:". This means tests can check dates outside the initial year range without needing separate holiday instances.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-08-31T19:34:20.731Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2820
File: holidays/countries/__init__.py:199-203
Timestamp: 2025-08-31T19:34:20.731Z
Learning: In the Saint Helena, Ascension and Tristan da Cunha implementation, there's a discrepancy between the registry.py entry (which references "HolidaysSH") and the actual implementation (which only defines SaintHelenaAscensionAndTristanDaCunha, SH, SHN, and SaintHelenaAscensionAndTristanDaCunhaStaticHolidays classes). The HolidaysSH class doesn't exist and according to the maintainer isn't needed.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-06-13T12:18:03.539Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2614
File: holidays/countries/guyana.py:78-90
Timestamp: 2025-06-13T12:18:03.539Z
Learning: The holidays codebase now uses the constructor signature pattern `__init__(self, *args, islamic_show_estimated: bool = True, **kwargs)` across country classes.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-09-14T06:39:08.485Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: holidays/countries/south_africa.py:163-170
Timestamp: 2025-09-14T06:39:08.485Z
Learning: In South Africa's holidays implementation (holidays/countries/south_africa.py), the 2021 election uses the literal "Municipal elections" instead of the local_elections constant ("Local Government Elections") - this inconsistency is intentional and should not be flagged as an issue.

Applied to files:

  • holidays/countries/argentina.py
  • snapshots/countries/AR_E.json
📚 Learning: 2025-05-10T04:02:13.815Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: holidays/countries/finland.py:249-253
Timestamp: 2025-05-10T04:02:13.815Z
Learning: Holiday name comments directly above tr() function calls in the holidays package should only contain the holiday name itself (e.g., "# Independence Day.") without any additional context, dates, or historical information.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-05-10T04:32:15.760Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: holidays/countries/finland.py:0-0
Timestamp: 2025-05-10T04:32:15.760Z
Learning: In the holidays package, detailed historical context and additional information should be added as comments at the method level or above conditional blocks, while comments directly above tr() function calls should only contain the holiday name itself (e.g., "# Independence Day.").

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-09-03T17:08:59.893Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:765-766
Timestamp: 2025-09-03T17:08:59.893Z
Learning: The Anniversary of the Battle of Tucumán holiday in Argentina's Tucumán province (subdiv="T") has been in effect since at least 1946 according to official government documentation, which predates AR.start_year (1957). Therefore, using self.full_range for this holiday test is correct.

Applied to files:

  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_Y.json
📚 Learning: 2025-09-14T04:44:28.854Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_indonesia.py:22-22
Timestamp: 2025-09-14T04:44:28.854Z
Learning: In Indonesia's holidays implementation, observed holidays are only available in years 2004 and 2020 due to presidential decrees, so years_non_observed=(2004, 2020) should be passed as a tuple of discrete years rather than a range.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-07-10T03:36:16.461Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2706
File: holidays/countries/cayman_islands.py:80-97
Timestamp: 2025-07-10T03:36:16.461Z
Learning: In the holidays library, date dictionaries that map years to specific dates (like queens_birthday_dates, special holiday dates, etc.) are typically defined within the _populate_public_holidays method rather than as module-level constants. This is the established library-wide pattern and should be maintained for consistency.

Applied to files:

  • holidays/countries/argentina.py
  • snapshots/countries/AR_V.json
📚 Learning: 2025-03-04T11:32:45.095Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2323
File: holidays/countries/macau.py:407-461
Timestamp: 2025-03-04T11:32:45.095Z
Learning: In the holidays library, the standard approach for organizing static holidays is to use separate dictionaries for different categories (like `special_government_holidays`, `special_mandatory_holidays`, and `special_public_holidays`), which are utilized by syntactic sugar methods to pick up the appropriate holidays based on the selected category.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-12-15T22:50:33.654Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 3135
File: holidays/countries/united_states.py:1175-1178
Timestamp: 2025-12-15T22:50:33.654Z
Learning: In the holidays library (vacanza/holidays), for Puerto Rico and potentially other US territories, maintain the documented separation: place Spanish holiday name comments on one line, followed by a blank line, and then the English localization comment. Do not remove the blank line separator, as it documents the Spanish name (e.g., 'Día de la Abolición de la Esclavitud') while the English name below (e.g., 'Emancipation Day') is the actual localization.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-06-28T10:39:19.185Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2684
File: holidays/locale/it/LC_MESSAGES/SM.po:13-13
Timestamp: 2025-06-28T10:39:19.185Z
Learning: In the holidays project, .po file header comments use the format "# [Country] holidays." for default language files (without trailing hash) and "# [Country] holidays [locale] localization." for non-default language files (also without trailing hash).

Applied to files:

  • snapshots/countries/AR_E.json
📚 Learning: 2025-07-09T20:27:37.760Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2623
File: holidays/countries/christmas_island.py:110-112
Timestamp: 2025-07-09T20:27:37.760Z
Learning: In Christmas Island, ANZAC Day (April 25) follows the same observed holiday rules as other holidays, using the SAT_SUN_TO_NEXT_MON rule to move to Monday when it falls on a weekend. The implementation correctly uses `_add_observed` wrapper around `_add_anzac_day`.

Applied to files:

  • snapshots/countries/AR_V.json
📚 Learning: 2025-03-04T11:32:45.095Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2323
File: holidays/countries/macau.py:407-461
Timestamp: 2025-03-04T11:32:45.095Z
Learning: In the holidays library, the standard approach for organizing static holidays is to use separate dictionaries for different categories (`government`, `mandatory`, and `public`), which are utilized by syntactic sugar methods.

Applied to files:

  • snapshots/countries/AR_V.json
📚 Learning: 2025-04-03T13:03:16.558Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2398
File: holidays/countries/guinea.py:101-106
Timestamp: 2025-04-03T13:03:16.558Z
Learning: For Islamic holidays in Guinea like "Lendemain de la nuit Lailatoul Qadr" (Day after Night of Power) and "Lendemain de la nuit du Maoloud" (Day after Prophet's Birthday), the naming refers to the daylight hours following the night when these Islamic observances occur. Since in the Islamic calendar days begin at sunset rather than midnight, methods like `_add_laylat_al_qadr_day` and `_add_mawlid_day` correctly calculate these dates without requiring an additional day offset in the implementation.

Applied to files:

  • snapshots/countries/AR_U.json
📚 Learning: 2025-04-03T13:03:16.558Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2398
File: holidays/countries/guinea.py:101-106
Timestamp: 2025-04-03T13:03:16.558Z
Learning: For Islamic holidays in Guinea like "Lendemain de la nuit Lailatoul Qadr" (Day after Night of Power) and "Lendemain de la nuit du Maoloud" (Day after Prophet's Birthday), the naming refers to the daylight hours following the night when these Islamic observances occur. Since in the Islamic calendar days begin at sunset rather than midnight, methods like `_add_laylat_al_qadr_day` and `_add_mawlid_day` correctly calculate these dates without requiring an additional day offset in the implementation, following the same pattern as in the Ivory Coast implementation.

Applied to files:

  • snapshots/countries/AR_U.json
⏰ Context from checks skipped due to timeout of 300000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: Test Python 3.14 on windows-latest
  • GitHub Check: Test Python 3.12 on windows-latest
  • GitHub Check: Test Python 3.10 on windows-latest
  • GitHub Check: Test Python 3.13 on windows-latest
  • GitHub Check: Test Python 3.11 on windows-latest
🔇 Additional comments (33)
snapshots/countries/AR_V.json (1)

1328-1330: Snapshot changes properly reflect source code updates.

The snapshot changes are correctly driven by argentina.py: special_bank_holidays for 2025 defines Dec 24 & Dec 31 as Bank Holiday, while special_public_holidays for 2025 and 2026 define the Bridge Public Holiday dates. Test coverage exists at lines 84–89 and 102–103 in test_argentina.py. These snapshot entries are the expected output of make snapshot run after the source code updates.

snapshots/countries/AR_H.json (1)

1289-1291: Snapshot is correctly regenerated from source.

These dates are properly implemented in the Argentina holidays generator (StaticHolidays) and tested in test_argentina.py, not manually edited. The consistent appearance across all 23 Argentina province snapshots confirms make snapshot ran correctly.

snapshots/countries/AR_G.json (1)

1289-1291: Data looks good; snapshot appears correctly generated from source.

The 2025 bank holidays (Dec 24, Dec 31) come from BCRA Release P51199, and the 2026 bridge holidays (Mar 23, Jul 10, Dec 7) are defined per Resolution 164/2025. All entries match the source definitions in holidays/countries/argentina.py and match test expectations in tests/countries/test_argentina.py. Labels are accurate.

snapshots/countries/AR_E.json (1)

1372-1407: Snapshot additions look consistent; please confirm they were regenerated.

The added 2025 bank holidays (Dec 24/31) and 2026 bridge holidays (Mar 23, Jul 10, Dec 7) match the PR intent and mirror the other AR_* snapshots. As per repo practice, please ensure this file came from the snapshot generator (i.e., no hand edits) to avoid future drift. Based on learnings, snapshot files are auto-generated and should not be manually edited.

snapshots/countries/AR_C.json (1)

1288-1321: Snapshot additions look consistent; please confirm they were regenerated.

Same set of additions as other AR_* snapshots (2025-12-24/12-31 bank holidays; 2026-03-23/07-10/12-07 bridge public holidays). Please confirm this file is generator output rather than manual edits. Based on learnings, snapshot files are auto-generated and should not be manually edited.

snapshots/countries/AR_Q.json (1)

1288-1321: Snapshot additions look consistent; please confirm they were regenerated.

The inserted dates/labels match the PR’s stated Argentina update and are consistent with the other AR_* variants. Please verify these snapshots were regenerated from source to keep snapshots and holiday rules in sync. Based on learnings, snapshot files are auto-generated and should not be manually edited.

tests/countries/test_argentina.py (1)

41-90: Validate the 2026 bridge-holiday dates match the Argentina source mappings/categories.

These new dates are now asserted as “special holidays”; please double-check they’re emitted by Argentina under the intended category (typically PUBLIC) and not only under a narrower category.

snapshots/countries/AR_T.json (1)

1355-1357: LGTM if generated; please sanity-check cross-snapshot consistency.

These additions align with the expected 2025/2026 updates; just confirm they were produced via snapshot generation and that all AR_*.json snapshots contain the same new national-level entries. Based on learnings, snapshot files shouldn’t be manually edited.

Also applies to: 1362-1362, 1377-1377, 1386-1386

snapshots/countries/AR_K.json (1)

1374-1376: Snapshot entries are auto-generated from source code.

The 2025 Bank Holiday entries (12-24, 12-31) and 2026 Bridge Public Holiday entries (03-23, 07-10, 12-07) in AR_K.json are correctly generated from holidays/countries/argentina.py where they're defined in special_bank_holidays and special_public_holidays dictionaries respectively. These appear to be the expected output from running make snapshot against the updated source definitions.

snapshots/countries/AR_F.json (1)

1360-1362: Snapshot update looks consistent; please confirm it’s generator-produced (not hand-edited).

  • 2025-12-31 combining "Bank Holiday; Tinkunaco Festival" is correctly represented using ; as the multi-holiday separator.
  • The added 2026 bridge public holidays (2026-03-23, 2026-07-10, 2026-12-07) align with the PR intent.

Since snapshots are auto-generated in this repo, please ensure these changes come from the Argentina source logic + make snapshot, rather than editing JSON directly. Based on learnings, snapshot files should not be manually edited.

Also applies to: 1368-1372, 1384-1384, 1394-1395

snapshots/countries/AR_B.json (1)

1290-1292: Entries are coherent; verify 2026-12-07 label stays “Bridge Public Holiday” end-to-end.

The added 2025-12-24 / 2025-12-31 bank holidays and 2026 bridge public holidays (2026-03-23, 2026-07-10, 2026-12-07) look internally consistent in this snapshot.

Please sanity-check that the Argentina generator logic produces the same labels (especially 2026-12-07 as Bridge Public Holiday) and that these JSONs were regenerated via the snapshot workflow. Based on learnings, snapshot files should not be manually edited.

Also applies to: 1297-1301, 1312-1312, 1320-1321

snapshots/countries/AR_R.json (1)

1289-1291: LGTM for the added dates; just confirm source + snapshots are in sync.

The inserted 2025-12-24 / 2025-12-31 bank holidays and 2026 bridge public holidays (2026-03-23, 2026-07-10, 2026-12-07) look correct and consistently labeled in this snapshot.

As a guardrail, please confirm these entries come from the Argentina holiday logic and were applied via snapshot regeneration (not manual JSON edits). Based on learnings, snapshot files should not be manually edited.

Also applies to: 1296-1300, 1311-1312, 1319-1320

snapshots/countries/AR_L.json (1)

1289-1319: Snapshot additions look correct.

The 2025 bank holidays (Dec 24, 31) and 2026 bridge public holidays (Mar 23, Jul 10, Dec 7) align with PR objectives and follow established patterns. These files are auto-generated via make snapshot, so any adjustments would need to happen in the source code.

snapshots/countries/AR_A.json (1)

1515-1549: Snapshot additions are consistent across AR variants.

Same 2025 bank holidays and 2026 bridge public holidays as the other Argentina snapshots. Auto-generated file—changes are driven by source code in holidays/countries/argentina.py.

snapshots/countries/AR_S.json (1)

1289-1291: Treat snapshot updates as generated artifacts (avoid hand edits).

These additions look consistent, but snapshot files should come from make snapshot (or equivalent) after updating the Argentina source definitions; otherwise they can drift from the generator. Based on learnings, snapshots shouldn’t be manually edited.

Also applies to: 1296-1296, 1311-1311, 1319-1319

snapshots/countries/AR_COMMON.json (1)

1289-1291: Snapshot content looks coherent; ensure source-of-truth drives it.

The new 2025-12-24 / 2025-12-31 bank holidays and 2026 bridge holidays are formatted and positioned correctly. Please confirm they originate from the Argentina holiday implementation and that snapshots were regenerated (not patched directly). Based on learnings, snapshots shouldn’t be manually edited.

Also applies to: 1296-1296, 1311-1311, 1319-1319

snapshots/countries/AR_U.json (1)

1421-1423: Subdivision snapshot aligns with AR_COMMON; verify it’s generator-derived.

The added bank/bridge holidays match AR_COMMON and follow the existing snapshot formatting. Please double-check these are produced by the snapshot generator after updating Argentina’s definitions (vs. manual snapshot edits). Based on learnings, snapshots shouldn’t be manually edited.

Also applies to: 1428-1428, 1444-1444, 1454-1454

snapshots/countries/AR_D.json (1)

1333-1335: LGTM for the added 2025 bank holidays + 2026 bridge holidays.

No red flags in the inserted keys/labels; just ensure these snapshot updates came from regeneration (not hand edits). Based on learnings, snapshots should be auto-generated.

Also applies to: 1340-1340, 1356-1356, 1365-1365

snapshots/countries/AR_X.json (1)

1289-1291: Consistent with the other AR_ snapshots.*

Same note: please confirm these are generated outputs and (optionally) run the duplicate-key check once for all AR_*.json. Based on learnings, snapshots shouldn’t be hand-edited.

Also applies to: 1296-1296, 1311-1311, 1319-1319

snapshots/countries/AR_W.json (1)

1302-1304: Snapshots are consistent with source code; no issues detected.

Verified that all five entries (2025-12-24, 2025-12-31 as Bank Holiday; 2026-03-23, 2026-07-10, 2026-12-07 as Bridge Public Holiday) are correctly defined in holidays/countries/argentina.py and properly reflected in the snapshot. No duplicate JSON keys found. These changes align with the Argentina holidays implementation and snapshot regeneration from source.

snapshots/countries/AR_N.json (1)

1288-1321: Snapshot update looks consistent; please confirm it was regenerated (not hand-edited).

The added entries for 2025-12-24 / 2025-12-31 (Bank Holiday) and 2026-03-23 / 2026-07-10 / 2026-12-07 (Bridge Public Holiday) are in-order and naming-consistent with the rest of the snapshot. Based on learnings, snapshots should be produced by the generator—please double-check the snapshot was produced via the normal snapshot regen workflow.

snapshots/countries/AR_Y.json (1)

1486-1524: Snapshot update looks consistent; ensure all AR_ snapshots were regenerated together.*

These additions match the expected 2025 year-end Bank Holidays and 2026 Bridge Public Holidays and appear correctly placed in the sequence. Based on learnings, please ensure AR_Y (and the other AR_* snapshots touched in the PR) come from a single snapshot regeneration run, not manual edits.

snapshots/countries/AR_M.json (1)

1337-1371: LGTM for the added 2025/2026 entries; please sanity-check snapshot completeness.

The inserted Bank Holiday and Bridge Public Holiday entries are consistent and in the right spot. Based on learnings, please confirm this is generator-produced output and that no other expected AR snapshots were left unchanged (i.e., snapshot regen is complete).

snapshots/countries/AR_Z.json (2)

1324-1326: Snapshot change OK, but ensure it’s generated (not hand-edited).

The added 2025-12-24 and 2025-12-31 “Bank Holiday” entries look consistent with prior end-of-year bank-holiday patterns; please confirm these snapshots come from rerunning the snapshot generator. Based on learnings, snapshots should not be manually edited.


1331-1331: Bridge-holiday additions look consistent; keep semicolon multi-holiday formatting.

2026-03-23 and 2026-07-10 additions and the 2026-12-07 update (now Bridge Public Holiday; …) look consistent; the ; separator is the expected multi-holiday delimiter here. Please double-check the 2026 bridge-holiday dates against the underlying official source and ensure this file is output from make snapshot (or equivalent), not edited directly. Based on learnings, snapshots should not be manually edited.

Also applies to: 1346-1346, 1356-1356

snapshots/countries/AR_J.json (2)

1298-1300: Bank-holiday additions OK; verify generator/source-of-truth.

2025-12-24 and 2025-12-31 “Bank Holiday” additions look fine—please confirm they’re produced by regenerating snapshots (and that the upstream Argentina logic/data includes these bank holidays). Based on learnings, snapshots should not be manually edited.


1305-1305: Bridge-holiday additions OK; verify 2026 dates.

2026-03-23, 2026-07-10, and 2026-12-07 “Bridge Public Holiday” entries look consistent—please validate the 2026 bridge-holiday dates against the official publication and ensure this snapshot was regenerated. Based on learnings, snapshots should not be manually edited.

Also applies to: 1320-1320, 1329-1329

snapshots/countries/AR_P.json (2)

1289-1291: Bank-holiday additions OK; ensure they’re generated.

2025-12-24 and 2025-12-31 “Bank Holiday” additions look consistent; please confirm snapshots were regenerated from the Argentina holiday definitions. Based on learnings, snapshots should not be manually edited.


1296-1296: Bridge-holiday additions OK; confirm official 2026 bridge days.

2026-03-23, 2026-07-10, and 2026-12-07 “Bridge Public Holiday” entries look fine; please validate the dates against the official source and ensure they come from the generator output. Based on learnings, snapshots should not be manually edited.

Also applies to: 1311-1311, 1319-1319

holidays/countries/argentina.py (4)

819-841: Documentation updates look solid.

References for Release P51199 (2025 bank holidays) and Resolution 164/2025 (2026 bridge holidays) are properly formatted and consistent with existing entries.


845-845: Clean simplification.

Removing the arg_ prefix makes sense here since the context is already ArgentinaStaticHolidays. Consistent with other constants in this class like bank_holiday.


959-968: 2025-2026 bridge holiday entries look good.

Format is consistent with existing years. The 2026 dates (Mar 23, Jul 10, Dec 7) align with the referenced Resolution 164/2025.


992-996: 2025 bank holidays properly added.

Dec 24 and Dec 31 entries follow the established pattern. Reference to Release P51199 is consistent with the documentation header.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@sonarqubecloud
Copy link
Copy Markdown

@codecov
Copy link
Copy Markdown

codecov bot commented Jan 13, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (45fa3c4) to head (cb65b67).
⚠️ Report is 2 commits behind head on dev.

Additional details and impacted files
@@            Coverage Diff            @@
##               dev     #3210   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          307       307           
  Lines        18309     18309           
  Branches      2337      2337           
=========================================
  Hits         18309     18309           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
tests/countries/test_argentina.py (1)

92-104: Bank-holiday assertions for 2025 year-end look right; consider a dedicated test_2025/test_2026.

The added bank dates are covered here; adding a year-specific assertHolidaysInYear(2025, ...) (and optionally 2026) would catch any future naming/categorization drift beyond “present vs absent”.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 45fa3c4 and cb65b67.

📒 Files selected for processing (27)
  • holidays/countries/argentina.py
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_D.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_Z.json
  • tests/countries/test_argentina.py
🧰 Additional context used
🧠 Learnings (48)
📓 Common learnings
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:228-229
Timestamp: 2025-11-08T04:56:18.070Z
Learning: Argentina: Good Friday ("Viernes Santo") is established from 1977 by Law 21329. In tests/countries/test_argentina.py, assert presence for range(1977, self.end_year) and absence for range(self.start_year, 1977); do not assert over self.full_range.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_french_polynesia.py:19-22
Timestamp: 2025-11-08T05:09:56.159Z
Learning: In the vacanza/holidays project's test framework (PR #2881 onwards), the base class CommonCountryTests provides a default test_no_holidays implementation that automatically tests years=start_year - 1 for standard PUBLIC category cases. Individual country test files should only override test_no_holidays when the country supports additional non-PUBLIC categories (GOVERNMENT, WORKDAY, OPTIONAL, etc.) with different start years requiring separate validation.
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2530
File: tests/countries/test_andorra.py:23-28
Timestamp: 2025-05-06T21:07:11.577Z
Learning: In the holidays project, test methods for country holidays follow a standard form where year ranges are explicitly recreated in each test method rather than being stored as class variables, to maintain consistency across all country tests.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:146-159
Timestamp: 2025-03-19T16:54:58.657Z
Learning: In the holidays library implementation, explicit holiday dates (like Diwali in Fiji) are only defined for historical years with official sources (2016-2025). Future dates beyond the explicitly defined range are automatically calculated by methods like `_add_diwali`, which provide approximations when official dates aren't yet available.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_south_africa.py:22-22
Timestamp: 2025-09-14T04:41:10.139Z
Learning: South Africa's observed holiday system only started in 1995, so in tests/countries/test_south_africa.py, using years_non_observed=range(1995, 2050) is intentional to limit testing to years where observed holidays actually exist, improving both correctness and performance.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_algeria.py:28-30
Timestamp: 2025-09-18T03:19:23.722Z
Learning: In the vacanza/holidays project, tests now use self.start_year and self.end_year from the TestCase class instead of country-specific aliases (like DZ.start_year) for start_year and end_year references. This approach provides the test framework with better control over test year ranges rather than being tied to specific country start years.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2386
File: tests/countries/test_nepal.py:499-536
Timestamp: 2025-04-05T06:49:06.217Z
Learning: In the holidays project, test files follow a dual testing approach: individual methods test specific holidays across multiple years, while comprehensive year-specific tests (e.g., `test_2025`) verify all holidays for a specific year in a single assertion. Both approaches serve different testing purposes and complement each other.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2642
File: holidays/countries/france.py:300-319
Timestamp: 2025-06-18T10:21:01.376Z
Learning: In the France holidays implementation, legislative years for holiday changes should be hard-coded rather than extracted into constants, as this maintains consistency with the existing codebase pattern and provides historical accuracy for specific legislative acts.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2416
File: tests/countries/test_turkmenistan.py:52-64
Timestamp: 2025-04-05T04:47:27.213Z
Learning: For holiday tests in the vacanza/holidays project, structure tests by individual holidays rather than by years. Each test method should focus on a specific holiday and test it across multiple years (from start_year through 2050) using helper methods like `assertHolidayName`. For fixed holidays, use generators like `(f"{year}-01-01" for year in range(1991, 2051))`. For movable holidays, specify individual dates for specific years followed by a range check.
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: tests/countries/test_finland.py:23-26
Timestamp: 2025-05-09T18:36:09.607Z
Learning: The holidays project prioritizes complete historical coverage in tests, verifying holidays from their first year of observance (e.g., 1853 for Finland) through future projections, rather than using shorter sliding windows.
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2653
File: holidays/locale/th/LC_MESSAGES/TW.po:17-21
Timestamp: 2025-06-21T18:06:50.027Z
Learning: KJhellico's username includes a tilde character (~) as part of their nickname (appears as "~Jhellico" in Last-Translator headers), which is intentional formatting and not an error.
📚 Learning: 2025-04-03T05:59:57.480Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2407
File: snapshots/countries/TL_COMMON.json:7-7
Timestamp: 2025-04-03T05:59:57.480Z
Learning: In the holidays project, snapshot files (like snapshots/countries/TL_COMMON.json) are auto-generated when running `make snapshot` and should not be manually edited. Semicolons (;) in holiday entries are used as separators when multiple holidays occur on the same date.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-03-29T15:15:05.919Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:171-183
Timestamp: 2025-03-29T15:15:05.919Z
Learning: In the Fiji holidays implementation, the maintainers are aware of the need to extend the MAWLID_DATES dictionary beyond 2025 when future official references become available, and will do so when appropriate. No suggestions about extending this dictionary should be made in future reviews.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
📚 Learning: 2025-11-08T05:09:56.159Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_french_polynesia.py:19-22
Timestamp: 2025-11-08T05:09:56.159Z
Learning: In the vacanza/holidays project's test framework (PR #2881 onwards), the base class CommonCountryTests provides a default test_no_holidays implementation that automatically tests years=start_year - 1 for standard PUBLIC category cases. Individual country test files should only override test_no_holidays when the country supports additional non-PUBLIC categories (GOVERNMENT, WORKDAY, OPTIONAL, etc.) with different start years requiring separate validation.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-06-24T17:26:17.728Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2654
File: snapshots/countries/CV_RS.json:471-478
Timestamp: 2025-06-24T17:26:17.728Z
Learning: Snapshot files in the holidays library (like those in snapshots/countries/) are generated automatically and should not be manually edited. Any issues with snapshot content should be addressed in the source code that generates them, not in the snapshot files themselves.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-25T09:57:22.291Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2833
File: holidays/countries/uganda.py:50-56
Timestamp: 2025-08-25T09:57:22.291Z
Learning: In the holidays package, when adding comments for year-restricted holidays in Uganda and similar country modules, include specific legal or historical context such as the actual laws, parliamentary acts, or government decisions that established the holidays, rather than just generic "since YEAR" information. For example, reference the specific Parliament act, decree, or historical event that created the holiday.

Applied to files:

  • snapshots/countries/AR_S.json
  • holidays/countries/argentina.py
📚 Learning: 2025-09-14T04:41:10.139Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_south_africa.py:22-22
Timestamp: 2025-09-14T04:41:10.139Z
Learning: South Africa's observed holiday system only started in 1995, so in tests/countries/test_south_africa.py, using years_non_observed=range(1995, 2050) is intentional to limit testing to years where observed holidays actually exist, improving both correctness and performance.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-11-08T04:56:18.070Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:228-229
Timestamp: 2025-11-08T04:56:18.070Z
Learning: Argentina: Good Friday ("Viernes Santo") is established from 1977 by Law 21329. In tests/countries/test_argentina.py, assert presence for range(1977, self.end_year) and absence for range(self.start_year, 1977); do not assert over self.full_range.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-05-09T18:36:09.607Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: tests/countries/test_finland.py:23-26
Timestamp: 2025-05-09T18:36:09.607Z
Learning: The holidays project prioritizes complete historical coverage in tests, verifying holidays from their first year of observance (e.g., 1853 for Finland) through future projections, rather than using shorter sliding windows.

Applied to files:

  • snapshots/countries/AR_S.json
  • tests/countries/test_argentina.py
📚 Learning: 2025-09-14T07:26:25.431Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: holidays/countries/south_africa.py:69-75
Timestamp: 2025-09-14T07:26:25.431Z
Learning: When reviewing historical holiday implementations in the vacanza/holidays repository, trust the maintainers' research and implementation decisions for specific historical edge cases, especially when they can provide sources like Wikipedia or other historical documentation that supports unusual or complex date calculation rules during specific time periods.

Applied to files:

  • snapshots/countries/AR_S.json
📚 Learning: 2025-04-23T14:55:35.504Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2489
File: holidays/countries/sao_tome_and_principe.py:22-26
Timestamp: 2025-04-23T14:55:35.504Z
Learning: References in holidays classes should only be included if they're used for test case cross-checks or provide historical context about when holidays were added/removed, not just for the sake of having more references.

Applied to files:

  • snapshots/countries/AR_S.json
📚 Learning: 2025-03-19T16:54:58.657Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:146-159
Timestamp: 2025-03-19T16:54:58.657Z
Learning: In the holidays library implementation, explicit holiday dates (like Diwali in Fiji) are only defined for historical years with official sources (2016-2025). Future dates beyond the explicitly defined range are automatically calculated by methods like `_add_diwali`, which provide approximations when official dates aren't yet available.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-15T19:16:14.119Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2821
File: holidays/countries/tanzania.py:37-83
Timestamp: 2025-08-15T19:16:14.119Z
Learning: PDF filenames in government holiday documentation may not always reflect the actual year covered in the content. The Tanzania Bank of Tanzania (BOT) 2024 public holidays document is hosted at a URL containing "2023" in the filename but contains 2024 holiday information.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-09-14T16:03:13.558Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_barbados.py:21-23
Timestamp: 2025-09-14T16:03:13.558Z
Learning: In tests/countries/test_barbados.py, using years_non_observed=range(2000, 2024) is intentional because all observed holiday examples fall within 2001-2023, making this range appropriate for limiting testing to years where observed holidays actually exist in the test data.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-09-17T15:16:16.192Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2944
File: holidays/countries/myanmar.py:183-191
Timestamp: 2025-09-17T15:16:16.192Z
Learning: The special_public_holidays formatting pattern in the holidays codebase follows a consistent convention: single entries per year use flat tuple format like `2024: (MONTH, DAY, name)`, while multiple entries per year use tuple-of-tuples format like `2024: ((MONTH, DAY, name), (MONTH, DAY, name))`. This pattern is used consistently across all countries.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • tests/countries/test_argentina.py
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-07-10T03:36:16.461Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2706
File: holidays/countries/cayman_islands.py:80-97
Timestamp: 2025-07-10T03:36:16.461Z
Learning: In the holidays library, date dictionaries that map years to specific dates (like queens_birthday_dates, spring_bank_dates, thanksgiving_day_dates, etc.) are typically defined within the _populate_public_holidays method rather than as module-level constants. This is the established library-wide pattern seen across multiple country implementations including United Kingdom, United States, Sri Lanka, and others.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-03-19T16:53:00.375Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2354
File: holidays/countries/fiji.py:185-188
Timestamp: 2025-03-19T16:53:00.375Z
Learning: In the Fiji holidays implementation, the `special_public_holidays_observed` dictionary in `FijiStaticHolidays` is only used for exceptions to the normal observance rules, not for documenting all holidays. Only 2019's Constitution Day needed a special entry as it didn't follow the standard patterns.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-15T19:16:14.119Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2821
File: holidays/countries/tanzania.py:37-83
Timestamp: 2025-08-15T19:16:14.119Z
Learning: In Tanzania holiday documentation, the Bank of Tanzania (BOT) may publish yearly public holidays PDFs using URLs with previous year filenames. For example, the 2024 public holidays document is accessible via a URL containing "2023 public holidays.pdf" but contains actual 2024 holiday information. Always check content rather than assuming filename indicates the year covered.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-08-12T03:21:09.116Z
Learnt from: mbfarah
Repo: vacanza/holidays PR: 2798
File: holidays/countries/chile.py:278-281
Timestamp: 2025-08-12T03:21:09.116Z
Learning: In Chile holidays implementation, the general rule for September 17 (years >= 2007) uses MON_ONLY for years 2007-2016, meaning it only adds the holiday when September 17 falls on a Monday. For years when September 17 falls on other days and was declared a one-off holiday by specific laws, it must be added to the special_public_holidays dictionary.

Applied to files:

  • snapshots/countries/AR_S.json
  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_W.json
  • snapshots/countries/AR_X.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_C.json
  • snapshots/countries/AR_P.json
  • snapshots/countries/AR_T.json
  • snapshots/countries/AR_L.json
  • snapshots/countries/AR_COMMON.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_E.json
  • snapshots/countries/AR_G.json
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_H.json
  • snapshots/countries/AR_N.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-10-28T17:26:45.090Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 3026
File: holidays/countries/spain.py:189-189
Timestamp: 2025-10-28T17:26:45.090Z
Learning: In the vacanza/holidays codebase, `_populate` methods (such as `_populate_public_holidays`, `_populate_subdiv_holidays`, and subdivision-specific methods like `_populate_subdiv_XX_public_holidays`) intentionally do not include return type annotations like `-> None`. This is a consistent pattern across country implementations (e.g., Germany, United States, Spain) and should not be changed even when static analysis tools like Ruff suggest adding them.
<!-- </add_learning>

Applied to files:

  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_R.json
  • snapshots/countries/AR_B.json
  • holidays/countries/argentina.py
  • snapshots/countries/AR_Q.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_U.json
  • snapshots/countries/AR_N.json
📚 Learning: 2025-06-19T02:34:18.382Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2643
File: holidays/countries/mauritius.py:144-169
Timestamp: 2025-06-19T02:34:18.382Z
Learning: Custom holiday classes that extend _CustomHinduHolidays, _CustomIslamicHolidays, _CustomBuddhistHolidays, etc. in the holidays library do not use docstrings. They follow a pattern of using only inline comments above date dictionaries, as seen in Malaysia, Singapore, UAE, and other country implementations.

Applied to files:

  • snapshots/countries/AR_A.json
📚 Learning: 2025-05-06T21:07:11.577Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2530
File: tests/countries/test_andorra.py:23-28
Timestamp: 2025-05-06T21:07:11.577Z
Learning: In the holidays project, test methods for country holidays follow a standard form where year ranges are explicitly recreated in each test method rather than being stored as class variables, to maintain consistency across all country tests.

Applied to files:

  • snapshots/countries/AR_A.json
  • tests/countries/test_argentina.py
📚 Learning: 2025-09-20T15:37:21.301Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_colombia.py:45-61
Timestamp: 2025-09-20T15:37:21.301Z
Learning: In Colombia's holiday system, movable observed holidays were only introduced from 1984 onwards. Before this date, holidays that later became movable (like Saint Joseph's Day) existed as regular holidays from their introduction year, but had no observed variant system. The years_non_observed parameter in Colombia tests reflects this 1984 start date for the observed holiday system.

Applied to files:

  • snapshots/countries/AR_A.json
  • snapshots/countries/AR_J.json
  • snapshots/countries/AR_B.json
  • snapshots/countries/AR_M.json
  • snapshots/countries/AR_F.json
  • snapshots/countries/AR_Y.json
  • snapshots/countries/AR_V.json
  • snapshots/countries/AR_Z.json
  • snapshots/countries/AR_D.json
📚 Learning: 2025-09-28T05:42:12.777Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_indonesia.py:221-223
Timestamp: 2025-09-28T05:42:12.777Z
Learning: In tests/countries/test_indonesia.py, the manual set inclusion checks using get_named and years_found for Lunar New Year (test_lunar_new_year) and Vesak Day (test_vesak_day) are intentional and should remain until both holidays get their own `{insert}_no_estimated` flags implemented, rather than using standard harness assertions like assertHolidayName/assertNoHolidayName.

Applied to files:

  • tests/countries/test_argentina.py
  • snapshots/countries/AR_Y.json
📚 Learning: 2025-04-05T04:47:27.213Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2416
File: tests/countries/test_turkmenistan.py:52-64
Timestamp: 2025-04-05T04:47:27.213Z
Learning: For holiday tests in the vacanza/holidays project, structure tests by individual holidays rather than by years. Each test method should focus on a specific holiday and test it across multiple years (from start_year through 2050) using helper methods like `assertHolidayName`. For fixed holidays, use generators like `(f"{year}-01-01" for year in range(1991, 2051))`. For movable holidays, specify individual dates for specific years followed by a range check.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-09-20T12:21:50.877Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_belgium.py:28-30
Timestamp: 2025-09-20T12:21:50.877Z
Learning: Belgium holidays implementation currently lacks a start_year attribute. In tests/countries/test_belgium.py, do not suggest adding test_no_holidays methods that rely on start_year until the start_year attribute is introduced to Belgium's holiday implementation.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-04-05T06:49:06.217Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2386
File: tests/countries/test_nepal.py:499-536
Timestamp: 2025-04-05T06:49:06.217Z
Learning: In the holidays project, test files follow a dual testing approach: individual methods test specific holidays across multiple years, while comprehensive year-specific tests (e.g., `test_2025`) verify all holidays for a specific year in a single assertion. Both approaches serve different testing purposes and complement each other.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-07-02T18:17:53.342Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2608
File: tests/countries/test_saint_vincent_and_the_grenadines.py:162-178
Timestamp: 2025-07-02T18:17:53.342Z
Learning: In the Saint Vincent and the Grenadines holidays implementation, New Year's Day is added without observed rules using `_add_new_years_day()` and should not include observed rule testing in its test method. Only holidays explicitly wrapped with `_add_observed()` have observed behavior.

Applied to files:

  • tests/countries/test_argentina.py
  • snapshots/countries/AR_V.json
📚 Learning: 2025-09-03T16:49:35.246Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:375-375
Timestamp: 2025-09-03T16:49:35.246Z
Learning: In the holidays library, national holiday tests use self.full_range (or similar comprehensive year ranges) even when explicit test dates only show modern observance. This is intentional for correctness and comprehensive coverage, unlike subdivision-specific holidays which have explicit year boundaries based on known start dates.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-04-04T10:52:41.546Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2398
File: holidays/countries/guinea.py:106-110
Timestamp: 2025-04-04T10:52:41.546Z
Learning: In the Guinea holidays implementation, observed Eid al-Fitr cases are properly covered by the test_eid_al_fitr_day() method, which tests both the regular holiday dates and the observed dates when the holiday falls on a non-working day (for years >= 2023).

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-09-14T16:05:55.205Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_iran.py:28-28
Timestamp: 2025-09-14T16:05:55.205Z
Learning: In tests/countries/test_iran.py, using years=(self.start_year - 1, 2102) in the no-holiday test is intentional because Iran uses the Persian Calendar which has specific supported year range constraints, and 2102 represents the upper limit of the Persian Calendar's supported range, not just an arbitrary far-future date.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-09-14T17:17:14.387Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_saint_helena_ascension_and_tristan_da_cunha.py:209-209
Timestamp: 2025-09-14T17:17:14.387Z
Learning: In tests/countries/test_saint_helena_ascension_and_tristan_da_cunha.py, the explicit loop iteration pattern for subdivision-specific holiday checks (like Anniversary Day for TA subdivision) is intentionally preferred over using assertSubdivTa helper methods, as confirmed by PPsyrius.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-08-19T19:47:21.735Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2829
File: tests/countries/test_canada.py:291-296
Timestamp: 2025-08-19T19:47:21.735Z
Learning: In the holidays library, HolidayBase objects automatically populate years on-demand when expand=True (the default). When checking dates from years not initially in the years range, those years are automatically populated via the logic at line 646 in holiday_base.py: "if self.expand and dt.year not in self.years:". This means tests can check dates outside the initial year range without needing separate holiday instances.

Applied to files:

  • tests/countries/test_argentina.py
📚 Learning: 2025-08-31T19:34:20.731Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2820
File: holidays/countries/__init__.py:199-203
Timestamp: 2025-08-31T19:34:20.731Z
Learning: In the Saint Helena, Ascension and Tristan da Cunha implementation, there's a discrepancy between the registry.py entry (which references "HolidaysSH") and the actual implementation (which only defines SaintHelenaAscensionAndTristanDaCunha, SH, SHN, and SaintHelenaAscensionAndTristanDaCunhaStaticHolidays classes). The HolidaysSH class doesn't exist and according to the maintainer isn't needed.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-06-13T12:18:03.539Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2614
File: holidays/countries/guyana.py:78-90
Timestamp: 2025-06-13T12:18:03.539Z
Learning: The holidays codebase now uses the constructor signature pattern `__init__(self, *args, islamic_show_estimated: bool = True, **kwargs)` across country classes.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-09-14T06:39:08.485Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: holidays/countries/south_africa.py:163-170
Timestamp: 2025-09-14T06:39:08.485Z
Learning: In South Africa's holidays implementation (holidays/countries/south_africa.py), the 2021 election uses the literal "Municipal elections" instead of the local_elections constant ("Local Government Elections") - this inconsistency is intentional and should not be flagged as an issue.

Applied to files:

  • holidays/countries/argentina.py
  • snapshots/countries/AR_E.json
📚 Learning: 2025-05-10T04:02:13.815Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: holidays/countries/finland.py:249-253
Timestamp: 2025-05-10T04:02:13.815Z
Learning: Holiday name comments directly above tr() function calls in the holidays package should only contain the holiday name itself (e.g., "# Independence Day.") without any additional context, dates, or historical information.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-05-10T04:32:15.760Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2537
File: holidays/countries/finland.py:0-0
Timestamp: 2025-05-10T04:32:15.760Z
Learning: In the holidays package, detailed historical context and additional information should be added as comments at the method level or above conditional blocks, while comments directly above tr() function calls should only contain the holiday name itself (e.g., "# Independence Day.").

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-09-03T17:08:59.893Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_argentina.py:765-766
Timestamp: 2025-09-03T17:08:59.893Z
Learning: The Anniversary of the Battle of Tucumán holiday in Argentina's Tucumán province (subdiv="T") has been in effect since at least 1946 according to official government documentation, which predates AR.start_year (1957). Therefore, using self.full_range for this holiday test is correct.

Applied to files:

  • holidays/countries/argentina.py
  • snapshots/countries/AR_K.json
  • snapshots/countries/AR_Y.json
📚 Learning: 2025-09-14T04:44:28.854Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2881
File: tests/countries/test_indonesia.py:22-22
Timestamp: 2025-09-14T04:44:28.854Z
Learning: In Indonesia's holidays implementation, observed holidays are only available in years 2004 and 2020 due to presidential decrees, so years_non_observed=(2004, 2020) should be passed as a tuple of discrete years rather than a range.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-07-10T03:36:16.461Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2706
File: holidays/countries/cayman_islands.py:80-97
Timestamp: 2025-07-10T03:36:16.461Z
Learning: In the holidays library, date dictionaries that map years to specific dates (like queens_birthday_dates, special holiday dates, etc.) are typically defined within the _populate_public_holidays method rather than as module-level constants. This is the established library-wide pattern and should be maintained for consistency.

Applied to files:

  • holidays/countries/argentina.py
  • snapshots/countries/AR_V.json
📚 Learning: 2025-03-04T11:32:45.095Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2323
File: holidays/countries/macau.py:407-461
Timestamp: 2025-03-04T11:32:45.095Z
Learning: In the holidays library, the standard approach for organizing static holidays is to use separate dictionaries for different categories (like `special_government_holidays`, `special_mandatory_holidays`, and `special_public_holidays`), which are utilized by syntactic sugar methods to pick up the appropriate holidays based on the selected category.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-12-15T22:50:33.654Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 3135
File: holidays/countries/united_states.py:1175-1178
Timestamp: 2025-12-15T22:50:33.654Z
Learning: In the holidays library (vacanza/holidays), for Puerto Rico and potentially other US territories, maintain the documented separation: place Spanish holiday name comments on one line, followed by a blank line, and then the English localization comment. Do not remove the blank line separator, as it documents the Spanish name (e.g., 'Día de la Abolición de la Esclavitud') while the English name below (e.g., 'Emancipation Day') is the actual localization.

Applied to files:

  • holidays/countries/argentina.py
📚 Learning: 2025-06-28T10:39:19.185Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2684
File: holidays/locale/it/LC_MESSAGES/SM.po:13-13
Timestamp: 2025-06-28T10:39:19.185Z
Learning: In the holidays project, .po file header comments use the format "# [Country] holidays." for default language files (without trailing hash) and "# [Country] holidays [locale] localization." for non-default language files (also without trailing hash).

Applied to files:

  • snapshots/countries/AR_E.json
📚 Learning: 2025-07-09T20:27:37.760Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2623
File: holidays/countries/christmas_island.py:110-112
Timestamp: 2025-07-09T20:27:37.760Z
Learning: In Christmas Island, ANZAC Day (April 25) follows the same observed holiday rules as other holidays, using the SAT_SUN_TO_NEXT_MON rule to move to Monday when it falls on a weekend. The implementation correctly uses `_add_observed` wrapper around `_add_anzac_day`.

Applied to files:

  • snapshots/countries/AR_V.json
📚 Learning: 2025-03-04T11:32:45.095Z
Learnt from: PPsyrius
Repo: vacanza/holidays PR: 2323
File: holidays/countries/macau.py:407-461
Timestamp: 2025-03-04T11:32:45.095Z
Learning: In the holidays library, the standard approach for organizing static holidays is to use separate dictionaries for different categories (`government`, `mandatory`, and `public`), which are utilized by syntactic sugar methods.

Applied to files:

  • snapshots/countries/AR_V.json
📚 Learning: 2025-04-03T13:03:16.558Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2398
File: holidays/countries/guinea.py:101-106
Timestamp: 2025-04-03T13:03:16.558Z
Learning: For Islamic holidays in Guinea like "Lendemain de la nuit Lailatoul Qadr" (Day after Night of Power) and "Lendemain de la nuit du Maoloud" (Day after Prophet's Birthday), the naming refers to the daylight hours following the night when these Islamic observances occur. Since in the Islamic calendar days begin at sunset rather than midnight, methods like `_add_laylat_al_qadr_day` and `_add_mawlid_day` correctly calculate these dates without requiring an additional day offset in the implementation.

Applied to files:

  • snapshots/countries/AR_U.json
📚 Learning: 2025-04-03T13:03:16.558Z
Learnt from: KJhellico
Repo: vacanza/holidays PR: 2398
File: holidays/countries/guinea.py:101-106
Timestamp: 2025-04-03T13:03:16.558Z
Learning: For Islamic holidays in Guinea like "Lendemain de la nuit Lailatoul Qadr" (Day after Night of Power) and "Lendemain de la nuit du Maoloud" (Day after Prophet's Birthday), the naming refers to the daylight hours following the night when these Islamic observances occur. Since in the Islamic calendar days begin at sunset rather than midnight, methods like `_add_laylat_al_qadr_day` and `_add_mawlid_day` correctly calculate these dates without requiring an additional day offset in the implementation, following the same pattern as in the Ivory Coast implementation.

Applied to files:

  • snapshots/countries/AR_U.json
⏰ Context from checks skipped due to timeout of 300000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (5)
  • GitHub Check: Test Python 3.14 on windows-latest
  • GitHub Check: Test Python 3.12 on windows-latest
  • GitHub Check: Test Python 3.10 on windows-latest
  • GitHub Check: Test Python 3.13 on windows-latest
  • GitHub Check: Test Python 3.11 on windows-latest
🔇 Additional comments (33)
snapshots/countries/AR_V.json (1)

1328-1330: Snapshot changes properly reflect source code updates.

The snapshot changes are correctly driven by argentina.py: special_bank_holidays for 2025 defines Dec 24 & Dec 31 as Bank Holiday, while special_public_holidays for 2025 and 2026 define the Bridge Public Holiday dates. Test coverage exists at lines 84–89 and 102–103 in test_argentina.py. These snapshot entries are the expected output of make snapshot run after the source code updates.

snapshots/countries/AR_H.json (1)

1289-1291: Snapshot is correctly regenerated from source.

These dates are properly implemented in the Argentina holidays generator (StaticHolidays) and tested in test_argentina.py, not manually edited. The consistent appearance across all 23 Argentina province snapshots confirms make snapshot ran correctly.

snapshots/countries/AR_G.json (1)

1289-1291: Data looks good; snapshot appears correctly generated from source.

The 2025 bank holidays (Dec 24, Dec 31) come from BCRA Release P51199, and the 2026 bridge holidays (Mar 23, Jul 10, Dec 7) are defined per Resolution 164/2025. All entries match the source definitions in holidays/countries/argentina.py and match test expectations in tests/countries/test_argentina.py. Labels are accurate.

snapshots/countries/AR_E.json (1)

1372-1407: Snapshot additions look consistent; please confirm they were regenerated.

The added 2025 bank holidays (Dec 24/31) and 2026 bridge holidays (Mar 23, Jul 10, Dec 7) match the PR intent and mirror the other AR_* snapshots. As per repo practice, please ensure this file came from the snapshot generator (i.e., no hand edits) to avoid future drift. Based on learnings, snapshot files are auto-generated and should not be manually edited.

snapshots/countries/AR_C.json (1)

1288-1321: Snapshot additions look consistent; please confirm they were regenerated.

Same set of additions as other AR_* snapshots (2025-12-24/12-31 bank holidays; 2026-03-23/07-10/12-07 bridge public holidays). Please confirm this file is generator output rather than manual edits. Based on learnings, snapshot files are auto-generated and should not be manually edited.

snapshots/countries/AR_Q.json (1)

1288-1321: Snapshot additions look consistent; please confirm they were regenerated.

The inserted dates/labels match the PR’s stated Argentina update and are consistent with the other AR_* variants. Please verify these snapshots were regenerated from source to keep snapshots and holiday rules in sync. Based on learnings, snapshot files are auto-generated and should not be manually edited.

tests/countries/test_argentina.py (1)

41-90: Validate the 2026 bridge-holiday dates match the Argentina source mappings/categories.

These new dates are now asserted as “special holidays”; please double-check they’re emitted by Argentina under the intended category (typically PUBLIC) and not only under a narrower category.

snapshots/countries/AR_T.json (1)

1355-1357: LGTM if generated; please sanity-check cross-snapshot consistency.

These additions align with the expected 2025/2026 updates; just confirm they were produced via snapshot generation and that all AR_*.json snapshots contain the same new national-level entries. Based on learnings, snapshot files shouldn’t be manually edited.

Also applies to: 1362-1362, 1377-1377, 1386-1386

snapshots/countries/AR_K.json (1)

1374-1376: Snapshot entries are auto-generated from source code.

The 2025 Bank Holiday entries (12-24, 12-31) and 2026 Bridge Public Holiday entries (03-23, 07-10, 12-07) in AR_K.json are correctly generated from holidays/countries/argentina.py where they're defined in special_bank_holidays and special_public_holidays dictionaries respectively. These appear to be the expected output from running make snapshot against the updated source definitions.

snapshots/countries/AR_F.json (1)

1360-1362: Snapshot update looks consistent; please confirm it’s generator-produced (not hand-edited).

  • 2025-12-31 combining "Bank Holiday; Tinkunaco Festival" is correctly represented using ; as the multi-holiday separator.
  • The added 2026 bridge public holidays (2026-03-23, 2026-07-10, 2026-12-07) align with the PR intent.

Since snapshots are auto-generated in this repo, please ensure these changes come from the Argentina source logic + make snapshot, rather than editing JSON directly. Based on learnings, snapshot files should not be manually edited.

Also applies to: 1368-1372, 1384-1384, 1394-1395

snapshots/countries/AR_B.json (1)

1290-1292: Entries are coherent; verify 2026-12-07 label stays “Bridge Public Holiday” end-to-end.

The added 2025-12-24 / 2025-12-31 bank holidays and 2026 bridge public holidays (2026-03-23, 2026-07-10, 2026-12-07) look internally consistent in this snapshot.

Please sanity-check that the Argentina generator logic produces the same labels (especially 2026-12-07 as Bridge Public Holiday) and that these JSONs were regenerated via the snapshot workflow. Based on learnings, snapshot files should not be manually edited.

Also applies to: 1297-1301, 1312-1312, 1320-1321

snapshots/countries/AR_R.json (1)

1289-1291: LGTM for the added dates; just confirm source + snapshots are in sync.

The inserted 2025-12-24 / 2025-12-31 bank holidays and 2026 bridge public holidays (2026-03-23, 2026-07-10, 2026-12-07) look correct and consistently labeled in this snapshot.

As a guardrail, please confirm these entries come from the Argentina holiday logic and were applied via snapshot regeneration (not manual JSON edits). Based on learnings, snapshot files should not be manually edited.

Also applies to: 1296-1300, 1311-1312, 1319-1320

snapshots/countries/AR_L.json (1)

1289-1319: Snapshot additions look correct.

The 2025 bank holidays (Dec 24, 31) and 2026 bridge public holidays (Mar 23, Jul 10, Dec 7) align with PR objectives and follow established patterns. These files are auto-generated via make snapshot, so any adjustments would need to happen in the source code.

snapshots/countries/AR_A.json (1)

1515-1549: Snapshot additions are consistent across AR variants.

Same 2025 bank holidays and 2026 bridge public holidays as the other Argentina snapshots. Auto-generated file—changes are driven by source code in holidays/countries/argentina.py.

snapshots/countries/AR_S.json (1)

1289-1291: Treat snapshot updates as generated artifacts (avoid hand edits).

These additions look consistent, but snapshot files should come from make snapshot (or equivalent) after updating the Argentina source definitions; otherwise they can drift from the generator. Based on learnings, snapshots shouldn’t be manually edited.

Also applies to: 1296-1296, 1311-1311, 1319-1319

snapshots/countries/AR_COMMON.json (1)

1289-1291: Snapshot content looks coherent; ensure source-of-truth drives it.

The new 2025-12-24 / 2025-12-31 bank holidays and 2026 bridge holidays are formatted and positioned correctly. Please confirm they originate from the Argentina holiday implementation and that snapshots were regenerated (not patched directly). Based on learnings, snapshots shouldn’t be manually edited.

Also applies to: 1296-1296, 1311-1311, 1319-1319

snapshots/countries/AR_U.json (1)

1421-1423: Subdivision snapshot aligns with AR_COMMON; verify it’s generator-derived.

The added bank/bridge holidays match AR_COMMON and follow the existing snapshot formatting. Please double-check these are produced by the snapshot generator after updating Argentina’s definitions (vs. manual snapshot edits). Based on learnings, snapshots shouldn’t be manually edited.

Also applies to: 1428-1428, 1444-1444, 1454-1454

snapshots/countries/AR_D.json (1)

1333-1335: LGTM for the added 2025 bank holidays + 2026 bridge holidays.

No red flags in the inserted keys/labels; just ensure these snapshot updates came from regeneration (not hand edits). Based on learnings, snapshots should be auto-generated.

Also applies to: 1340-1340, 1356-1356, 1365-1365

snapshots/countries/AR_X.json (1)

1289-1291: Consistent with the other AR_ snapshots.*

Same note: please confirm these are generated outputs and (optionally) run the duplicate-key check once for all AR_*.json. Based on learnings, snapshots shouldn’t be hand-edited.

Also applies to: 1296-1296, 1311-1311, 1319-1319

snapshots/countries/AR_W.json (1)

1302-1304: Snapshots are consistent with source code; no issues detected.

Verified that all five entries (2025-12-24, 2025-12-31 as Bank Holiday; 2026-03-23, 2026-07-10, 2026-12-07 as Bridge Public Holiday) are correctly defined in holidays/countries/argentina.py and properly reflected in the snapshot. No duplicate JSON keys found. These changes align with the Argentina holidays implementation and snapshot regeneration from source.

snapshots/countries/AR_N.json (1)

1288-1321: Snapshot update looks consistent; please confirm it was regenerated (not hand-edited).

The added entries for 2025-12-24 / 2025-12-31 (Bank Holiday) and 2026-03-23 / 2026-07-10 / 2026-12-07 (Bridge Public Holiday) are in-order and naming-consistent with the rest of the snapshot. Based on learnings, snapshots should be produced by the generator—please double-check the snapshot was produced via the normal snapshot regen workflow.

snapshots/countries/AR_Y.json (1)

1486-1524: Snapshot update looks consistent; ensure all AR_ snapshots were regenerated together.*

These additions match the expected 2025 year-end Bank Holidays and 2026 Bridge Public Holidays and appear correctly placed in the sequence. Based on learnings, please ensure AR_Y (and the other AR_* snapshots touched in the PR) come from a single snapshot regeneration run, not manual edits.

snapshots/countries/AR_M.json (1)

1337-1371: LGTM for the added 2025/2026 entries; please sanity-check snapshot completeness.

The inserted Bank Holiday and Bridge Public Holiday entries are consistent and in the right spot. Based on learnings, please confirm this is generator-produced output and that no other expected AR snapshots were left unchanged (i.e., snapshot regen is complete).

snapshots/countries/AR_Z.json (2)

1324-1326: Snapshot change OK, but ensure it’s generated (not hand-edited).

The added 2025-12-24 and 2025-12-31 “Bank Holiday” entries look consistent with prior end-of-year bank-holiday patterns; please confirm these snapshots come from rerunning the snapshot generator. Based on learnings, snapshots should not be manually edited.


1331-1331: Bridge-holiday additions look consistent; keep semicolon multi-holiday formatting.

2026-03-23 and 2026-07-10 additions and the 2026-12-07 update (now Bridge Public Holiday; …) look consistent; the ; separator is the expected multi-holiday delimiter here. Please double-check the 2026 bridge-holiday dates against the underlying official source and ensure this file is output from make snapshot (or equivalent), not edited directly. Based on learnings, snapshots should not be manually edited.

Also applies to: 1346-1346, 1356-1356

snapshots/countries/AR_J.json (2)

1298-1300: Bank-holiday additions OK; verify generator/source-of-truth.

2025-12-24 and 2025-12-31 “Bank Holiday” additions look fine—please confirm they’re produced by regenerating snapshots (and that the upstream Argentina logic/data includes these bank holidays). Based on learnings, snapshots should not be manually edited.


1305-1305: Bridge-holiday additions OK; verify 2026 dates.

2026-03-23, 2026-07-10, and 2026-12-07 “Bridge Public Holiday” entries look consistent—please validate the 2026 bridge-holiday dates against the official publication and ensure this snapshot was regenerated. Based on learnings, snapshots should not be manually edited.

Also applies to: 1320-1320, 1329-1329

snapshots/countries/AR_P.json (2)

1289-1291: Bank-holiday additions OK; ensure they’re generated.

2025-12-24 and 2025-12-31 “Bank Holiday” additions look consistent; please confirm snapshots were regenerated from the Argentina holiday definitions. Based on learnings, snapshots should not be manually edited.


1296-1296: Bridge-holiday additions OK; confirm official 2026 bridge days.

2026-03-23, 2026-07-10, and 2026-12-07 “Bridge Public Holiday” entries look fine; please validate the dates against the official source and ensure they come from the generator output. Based on learnings, snapshots should not be manually edited.

Also applies to: 1311-1311, 1319-1319

holidays/countries/argentina.py (4)

819-841: Documentation updates look solid.

References for Release P51199 (2025 bank holidays) and Resolution 164/2025 (2026 bridge holidays) are properly formatted and consistent with existing entries.


845-845: Clean simplification.

Removing the arg_ prefix makes sense here since the context is already ArgentinaStaticHolidays. Consistent with other constants in this class like bank_holiday.


959-968: 2025-2026 bridge holiday entries look good.

Format is consistent with existing years. The 2026 dates (Mar 23, Jul 10, Dec 7) align with the referenced Resolution 164/2025.


992-996: 2025 bank holidays properly added.

Dec 24 and Dec 31 entries follow the established pattern. Reference to Release P51199 is consistent with the documentation header.

Copy link
Copy Markdown
Collaborator

@PPsyrius PPsyrius left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM 🇦🇷

Copy link
Copy Markdown
Collaborator

@arkid15r arkid15r left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@arkid15r arkid15r added this pull request to the merge queue Jan 14, 2026
Merged via the queue into vacanza:dev with commit 9b70a6c Jan 14, 2026
32 checks passed
@KJhellico KJhellico deleted the upd-argentina branch January 14, 2026 20:52
@KJhellico KJhellico mentioned this pull request Jan 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants