GothenburgBitFactory / GothenburgBitFactory/holidata

Support location in addition to ISO 3166-2 codes as region

Open
#57 2 comments 0 reactions 0 assignees View on GitHub
api enhancement
Dominant language
Python
Stars
58
Forks
18
PR merge metrics
No merged PRs in 30d

Description

In Spain we have national and regional holidays that can be covered by [ISO 3166-2:ES](https://en.wikipedia.org/wiki/ISO_3166-2:ES) codes but also 2 days of local holidays. And by local I mean holidays different by location not province. i.e. a Granada, Málaga or Seville holiday is not for the whole province but just for the city.

I think we must use ISO 3166 codes for regions that are covered but for smaller divisions accept the complete localized name of the location. Holidays by regions smaller and/or not in ISO 3266 codes could be the case in other countries. At least it is for Spain.
region | meaning
--|--
AN | for Andalusia autonomous community [ISO 3166-2:ES](https://en.wikipedia.org/wiki/ISO_3166-2:ES)
GR | for Granada province [ISO 3166-2:ES](https://en.wikipedia.org/wiki/ISO_3166-2:ES)
MA | for Málaga province [ISO 3166-2:ES](https://en.wikipedia.org/wiki/ISO_3166-2:ES)
SE | for Seville province [ISO 3166-2:ES](https://en.wikipedia.org/wiki/ISO_3166-2:ES)
Granada | for Granada city (proposed)
Málaga | for Málaga city (proposed)
Sevilla | for Seville city (proposed)

But I don't know if the region parameter can handle safely UTF-8 and spaces present in some location's name.

Contributor guide

Open the contributing guide

Research direction

Start by tracing how the region parameter is parsed and how holiday regions are represented. Check whether UTF-8 names and spaces are already supported, then compare the proposed city names with the existing ISO 3166-2 handling. Done means local locations can be represented safely without breaking current ISO region codes, with behavior covered by tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.