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

jqueguiner / num2words2 / 25218394358 / 4
95%
main: 95%

Build:
DEFAULT BRANCH: main
Ran 01 May 2026 02:37PM UTC
Files 337
Run time 12s
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

01 May 2026 02:35PM UTC coverage: 95.198% (-0.001%) from 95.199%
25218394358.4

push

github

web-flow
feat(en_aero): ICAO/aviation English digit-by-digit reading (#114)

Implements savoirfairelinux/num2words#478 — a new lang='en_AERO'
that reads numbers digit-by-digit using ICAO Annex 10 vol II
respellings (3→tree, 4→fower, 5→fife, 7→seven, 9→niner). Goal is
unambiguous transmission over noisy radio links, matching how pilots
and ATC actually enunciate numerals on voice channels.

  num2words(5739, lang='en_AERO')        # 'fife seven tree niner'
  num2words(1971, lang='en_AERO', to='year')  # 'one niner seven one'
  num2words(127.5, lang='en_AERO')       # 'one two seven decimal fife'
  num2words(-42, lang='en_AERO')         # 'minus fower two'

Implementation:
  - num2words2/lang_EN_AERO.py — Num2Word_EN_AERO inherits from
    Num2Word_EN, overrides to_cardinal/to_year for digit-by-digit
    reading, and delegates ordinal / fraction / currency / cheque
    to a sibling Num2Word_EN instance (ICAO doesn't standardise
    those, and otherwise the digit-by-digit cardinal would leak
    into the ordinal/fraction builders and produce broken output
    like "one treeth" instead of "one third").
  - Registered in CONVERTER_CLASSES under 'en_AERO'; resolves
    case-insensitively and tolerates dash/underscore separators
    via the existing dispatcher fallback ('en-aero', 'en_aero',
    'en-AERO' all map to the same converter).

Decimal mark reads as "decimal" (ICAO standard).
Negative numbers prefix with "minus".

Tests: tests/test_478_en_aero.py — 13 cases covering the digit
table, multi-digit composition, year format, decimals, negatives,
string/dash/underscore lookup variants, and the delegation path
for fractions (where 'en_AERO' falls back to plain English so the
fraction reads "one third" not "one treeth").

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

8010 of 8796 branches covered (91.06%)

Branch coverage included in aggregate %.

42260 of 44010 relevant lines covered (96.02%)

0.96 hits per line

Source Files on job 3.15 - 25218394358.4
  • Tree
  • List 337
  • Changed 1
  • Source Changed 0
  • Coverage Changed 1
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses
  • Back to Build 25218394358
  • fbd2b50a on github
  • Prev Job for on main (#25217939620.1)
  • Next Job for on main (#25218980885.3)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc