• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

jqueguiner / num2words2 / 30248601769
95%
main: 95%

Build:
Build:
LAST BUILD BRANCH: v1.0.20
DEFAULT BRANCH: main
Ran 27 Jul 2026 08:10AM UTC
Jobs 6
Files 168
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

27 Jul 2026 08:05AM UTC coverage: 95.183% (+0.007%) from 95.176%
30248601769

Pull #121

github

jqueguiner
feat(sentence): multi-language ordinal + date registry in Rust core

Reimplements PR #121's multi-language ordinal/date extension inside the
Rust SentenceConverter port (rust/num2words2-py/src/sentencepath.rs)
instead of reintroducing a pure-Python converter — the project is
Rust-native (num2words2 is a thin binder over the compiled _rust core),
so the feature must live in Rust.

Extends ordinal coverage from 6 languages (en/fr/es/de/it/pt) to ~26 and
date detection to ~26 by porting lang_registry's surface-form tables:
ORDINAL_PATTERNS, MONTH_NAMES, DATE_PATTERNS_TEMPLATE, TEMP_PATTERNS and
NEGATIVE_WORDS, plus the _norm_lang normalisation. Passes 3 (standalone
ordinals), 4 (dates) and 5 (years) are rewritten to be registry-driven
and byte-compatible with the legacy 6-language behaviour:

  * ordinals own their full surface span; the date pass only fires where
    no ordinal was consumed;
  * the day is auto-located as the first all-digit capture group;
  * langs whose written day form is "<n>." consume the trailing period;
  * year detection is gated on the active language's month names.

27 new multilang tests pass; all 42 existing sentence-converter tests
still pass (69 total). No change to any other language path.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Pull Request #121: feat(sentence): multi-language ordinal + date detection registry

1258 of 1414 branches covered (88.97%)

Branch coverage included in aggregate %.

81 of 82 new or added lines in 1 file covered. (98.78%)

24570 of 25721 relevant lines covered (95.53%)

5.73 hits per line

Uncovered Changes

Lines Coverage ∆ File
1
97.62
tests/test_sentence_multilang_ordinals.py
Jobs
ID Job ID Ran Files Coverage
1 3.10 - 30248601769.1 27 Jul 2026 08:15AM UTC 168
95.18
GitHub Action Run
2 3.13 - 30248601769.2 27 Jul 2026 08:15AM UTC 168
95.18
GitHub Action Run
3 3.15 - 30248601769.3 27 Jul 2026 08:15AM UTC 168
95.18
GitHub Action Run
4 3.11 - 30248601769.4 27 Jul 2026 08:15AM UTC 168
95.18
GitHub Action Run
5 3.12 - 30248601769.5 27 Jul 2026 08:15AM UTC 168
95.18
GitHub Action Run
6 3.14 - 30248601769.6 27 Jul 2026 08:15AM UTC 168
95.18
GitHub Action Run
Source Files on build 30248601769
  • Tree
  • List 168
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Repo
  • Pull Request #121
  • PR Base - main (#29639041667)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc