scrapinghub / scrapinghub/dateparser

Update CLDR data

Open
#826 1 comment 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Type: Enhancement
Dominant language
Python
Stars
2.9k
Forks
520
Avg merge
22h 56m
Merged PRs (30d)
6

Description

Once we merge this: https://github.com/scrapinghub/dateparser/pull/825

we will be able to upgrade the CLDR data easily. By doing it we will improve this library as we will be able to add support for more locales, fix old language bugs, etc.

I will try to explain how to do it.

  1. Increase the cldr_version number (in dateparser_scripts.utils.get_raw_data). We should go version by version to avoid too much files to check.
  2. Run python dateparser_scripts/get_cldr_data.py. This will download the new JSON files.
  3. Check the new files. If there are new locales supported (new files or new regions), we should add them to the docs and probably add tests. We can add some languages to the avoid_languages lists or remove some from it if the language is now fully supported.
  4. Run python dateparser_scripts/write_complete_data.py. This will create the new .py files by merging the json files with the yaml files.
  5. Run python dateparser_scripts/order_languages.py to sort them and update the languages_info.py
  6. Run the tests (tox).
  7. If tests fail it could be because some old valid words have been removed from the new files. In this case, we can change/remove the test or add the old words to the yaml files.
  8. Run dateparser_scripts/update_supported_languages_and_locales.py to update the supported locales in the docs.

Next versions to update:

  • 32.0.0 (Nov 2017)
  • 33.0.0 (Mar 2018)
  • 34.0.0 (Oct 2018)
  • 35.0.0 (Mar 2019)
  • 35.1.0 (Apr 2019)
  • 36.0.0 (Oct 2019)
  • 37.0.0 (Oct 2020)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review PR #825, then inspect the cldr_version setting in dateparser_scripts.utils and run the listed CLDR data scripts in order. Check generated JSON and Python files, update locale documentation and tests as needed, run tox, and finish by updating supported languages and locales.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation, localization, testing
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.