Skip to content

Update Armenia holidays: add WORKDAY category and substituted holidays#3240

Merged
arkid15r merged 1 commit intovacanza:devfrom
KJhellico:upd-armenia
Jan 25, 2026
Merged

Update Armenia holidays: add WORKDAY category and substituted holidays#3240
arkid15r merged 1 commit intovacanza:devfrom
KJhellico:upd-armenia

Conversation

@KJhellico
Copy link
Copy Markdown
Collaborator

Proposed change

Update Armenia holidays:

  • add WORKDAY category holidays
  • update holidays names and establishment years
  • add substituted holidays
  • add subdivisions support

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 25, 2026

Summary by CodeRabbit

  • New Features

    • Added regional subdivisions for Armenia (AG, AR, AV, ER, GR, KT, LO, SH, SU) with region-specific calendars
    • Introduced WORKDAY vs PUBLIC holiday categories and expanded workday observances
    • Expanded Armenia holiday coverage through 2050 with many new commemorations and substituted days
  • Documentation

    • Updated README and locale translations to reflect new Armenian holiday names and labels

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

Walkthrough

Adds comprehensive Armenia holiday support: integrates StaticHolidays, expands year-conditional public and workday holidays, adds subdivisions and aliases, updates English/Armenian translations, removes one small international helper, and adds per-subdivision JSON snapshots covering 1991–2050.

Changes

Cohort / File(s) Summary
Core Armenia Holiday Logic
holidays/countries/armenia.py
Armenia now inherits StaticHolidays and initializes it with a new ArmeniaStaticHolidays data container; extensive year-based public and workday holiday additions/renames; adds subdivisions, subdivisions_aliases, and supported_categories; new _populate_workday_holidays method.
International group
holidays/groups/international.py
Removed private helper _add_new_years_day_four() (delegation method removed).
README
README.md
Updated Armenia row: added subdivisions list and set Supported Categories to WORKDAY.
Localization (English)
holidays/locale/en_US/LC_MESSAGES/AM.po
Bumped headers and added/updated translations for many new and renamed Armenian holidays and substituted-day labels.
Localization (Armenian)
holidays/locale/hy/LC_MESSAGES/AM.po
Bumped headers and updated Armenian translations/contexts for reworded and newly added holidays.
Snapshots — per-subdivision
snapshots/countries/AM_*.json
snapshots/countries/AM_AG.json, AM_AR.json, AM_AV.json, AM_ER.json, AM_GR.json, AM_KT.json, AM_LO.json, AM_SH.json, AM_SU.json
Added new JSON snapshot files mapping dates (1991–2050) to holiday names for each listed Armenian subdivision (static data, many substituted-day entries).
Snapshots — common
snapshots/countries/AM_COMMON.json
Large update: renamed/standardized genocide remembrance and Women's Day labels; expanded holiday catalog with many new observances and substituted-day annotations across years.

Estimated code review effort

🎯 5 (Critical) | ⏱️ ~120 minutes

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 Title accurately describes the main changes: adding WORKDAY category and substituted holidays support to Armenia's holiday implementation.
Description check ✅ Passed Description clearly outlines the key objectives: WORKDAY category additions, holiday name updates, substituted holidays, and subdivision support, all reflected in the changeset.

✏️ 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

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 25, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (34dc376) to head (e1f88b3).
⚠️ Report is 1 commits behind head on dev.

Additional details and impacted files
@@            Coverage Diff            @@
##               dev     #3240   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          307       307           
  Lines        18310     18376   +66     
  Branches      2331      2358   +27     
=========================================
+ Hits         18310     18376   +66     

☔ 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.

@KJhellico
Copy link
Copy Markdown
Collaborator Author

@coderabbitai review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jan 25, 2026

✅ Actions performed

Review triggered.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

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 25, 2026
Merged via the queue into vacanza:dev with commit 97ffb63 Jan 25, 2026
32 checks passed
@KJhellico KJhellico deleted the upd-armenia branch January 25, 2026 20:30
@KJhellico KJhellico mentioned this pull request Feb 2, 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