Skip to content

Add Assamese locale parity - #1783

Merged
clairernovotny merged 2 commits into
mainfrom
feat-as
May 16, 2026
Merged

Add Assamese locale parity#1783
clairernovotny merged 2 commits into
mainfrom
feat-as

Conversation

@clairernovotny

@clairernovotny clairernovotny commented May 16, 2026

Copy link
Copy Markdown
Member

Summary\n- Add Assamese (as) locale YAML across localized surfaces\n- Add Assamese exact-output tests for phrases, numbers, ordinals, dates, clock, compass, data/time units\n- Add Assamese entries to locale coverage and sweep matrices\n\n## Validation\n- dotnet test tests/Humanizer.SourceGenerators.Tests/Humanizer.SourceGenerators.Tests.csproj --framework net10.0: pass\n- dotnet test tests/Humanizer.Tests/Humanizer.Tests.csproj --framework net10.0: pass\n- dotnet test tests/Humanizer.Tests/Humanizer.Tests.csproj --framework net8.0: pass\n- dotnet test tests/Humanizer.Tests/Humanizer.Tests.csproj --framework net11.0: pass\n- dotnet pack src/Humanizer/Humanizer.csproj -c Release -o artifacts/locale-parity-validation: pass\n- dotnet format Humanizer.slnx --verify-no-changes --verbosity diagnostic: pass\n\n## Triage note\nEarlier net8/net11 PublicApiApprovalTest failures were not branch-caused; after removing stale received approval artifacts and rerunning against the current build, the targeted approval test and the full net8/net11 Humanizer.Tests suites pass.

Copilot AI review requested due to automatic review settings May 16, 2026 20:02
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex usage limits have been reached for code reviews. Please check with the admins of this repo to increase the limits by adding credits.
Repo admins can enable using credits for code reviews in their settings.

@coderabbitai

coderabbitai Bot commented May 16, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: d68c9774-549d-463c-bd5b-507d9520cba1

📥 Commits

Reviewing files that changed from the base of the PR and between af44333 and 11eaa31.

📒 Files selected for processing (12)
  • docs/localization.md
  • src/Humanizer/Locales/as.yml
  • tests/Humanizer.Tests/Localisation/LocaleCoverageData.cs
  • tests/Humanizer.Tests/Localisation/LocaleFormatterExactTheoryData.cs
  • tests/Humanizer.Tests/Localisation/LocaleNumberMagnitudeTheoryData.cs
  • tests/Humanizer.Tests/Localisation/LocaleNumberOverloadTheoryData.cs
  • tests/Humanizer.Tests/Localisation/LocaleNumberTheoryData.cs
  • tests/Humanizer.Tests/Localisation/LocaleOrdinalizerMatrixData.cs
  • tests/Humanizer.Tests/Localisation/LocalePhraseTheoryData.cs
  • tests/Humanizer.Tests/Localisation/as/AssameseLocaleParityTests.cs
  • tests/Humanizer.Tests/Localisation/as/AssameseNumberToWordsTests.cs
  • tests/Humanizer.Tests/Localisation/as/AssameseOrdinalTests.cs
✅ Files skipped from review due to trivial changes (4)
  • docs/localization.md
  • tests/Humanizer.Tests/Localisation/LocaleCoverageData.cs
  • tests/Humanizer.Tests/Localisation/LocaleOrdinalizerMatrixData.cs
  • tests/Humanizer.Tests/Localisation/LocaleNumberOverloadTheoryData.cs
🚧 Files skipped from review as they are similar to previous changes (8)
  • tests/Humanizer.Tests/Localisation/as/AssameseOrdinalTests.cs
  • tests/Humanizer.Tests/Localisation/as/AssameseNumberToWordsTests.cs
  • tests/Humanizer.Tests/Localisation/LocaleNumberMagnitudeTheoryData.cs
  • tests/Humanizer.Tests/Localisation/as/AssameseLocaleParityTests.cs
  • tests/Humanizer.Tests/Localisation/LocaleFormatterExactTheoryData.cs
  • tests/Humanizer.Tests/Localisation/LocalePhraseTheoryData.cs
  • src/Humanizer/Locales/as.yml
  • tests/Humanizer.Tests/Localisation/LocaleNumberTheoryData.cs

📝 Walkthrough

Summary by CodeRabbit

New Features

  • Added Assamese locale support with full localization coverage for date and time humanization, relative time expressions, number-to-words conversion, ordinals, byte size formatting, compass directions, and duration formatting.

Documentation

  • Updated supported locales documentation to reflect the addition of Assamese language support.

Walkthrough

Adds a full Assamese (as) locale YAML plus comprehensive test coverage and shared theory-data rows so Humanizer can generate/parse Assamese phrases for numbers, dates, durations, clocks, compass headings, and collections.

Changes

Assamese Locale Implementation

Layer / File(s) Summary
Assamese locale configuration
src/Humanizer/Locales/as.yml
Complete YAML definition of Assamese linguistic rules including list formatting, relative dates, durations, data/time unit names/symbols, number-to-words generation and parsing maps, ordinal/date/clock templates, compass directions, and month names.
Assamese parity and behavior tests
tests/Humanizer.Tests/Localisation/as/AssameseLocaleParityTests.cs, tests/Humanizer.Tests/Localisation/as/AssameseNumberToWordsTests.cs, tests/Humanizer.Tests/Localisation/as/AssameseOrdinalTests.cs
New test classes validating Assamese outputs across collection joins, relative dates/time spans, durations, time/data units, ordinal/date formatting, clock notation, compass headings, byte-size output, number-to-words conversion, words-to-number parsing, and ordinal suffix/gender variants.
Shared theory/test data updates
tests/Humanizer.Tests/Localisation/LocaleCoverageData.cs, tests/Humanizer.Tests/Localisation/LocaleFormatterExactTheoryData.cs, tests/Humanizer.Tests/Localisation/LocalePhraseTheoryData.cs, tests/Humanizer.Tests/Localisation/LocaleNumberTheoryData.cs, tests/Humanizer.Tests/Localisation/LocaleNumberMagnitudeTheoryData.cs, tests/Humanizer.Tests/Localisation/LocaleNumberOverloadTheoryData.cs, tests/Humanizer.Tests/Localisation/LocaleOrdinalizerMatrixData.cs
Inserted Assamese ("as") expected rows across shared localisation test datasets covering date/time formatting, time-span phrases, collection humanization, compass headings, byte-size symbols, cardinal/ordinal number words, magnitude and overload cases, and words-to-number parsing.
Documentation
docs/localization.md
Updated supported-locale count and related topics link to include the new locale data.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • Humanizr/Humanizer#1749: Adds locale-specific test-data rows and docs updates for a different locale (kn) using similar test-matrix patterns.
  • Humanizr/Humanizer#1782: Adds a new locale YAML and corresponding shared test-data updates (similar integration pattern for so).
  • Humanizr/Humanizer#1771: Adds locale-parity support and test-matrix rows for another language (be) following the same approach.

Poem

🐰 I hopped through YAML, tests, and strings,
Assamese phrases on gentle wings.
Numbers, clocks, and dates now sing,
Locale stitched — a tiny spring.
Humanizer learns a neighbor's tongue.

🚥 Pre-merge checks | ✅ 4 | ❌ 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 (4 passed)
Check name Status Explanation
Title check ✅ Passed The PR title 'Add Assamese locale parity' clearly summarizes the main change: adding support for the Assamese locale throughout the Humanizer library.
Description check ✅ Passed The PR description is directly related to the changeset, detailing the Assamese locale addition across YAML configuration, test coverage, and validation results.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat-as

Comment @coderabbitai help to get the list of available commands and usage tips.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds Assamese (as) locale support across Humanizer’s generated locale YAML, shared locale test matrices, and locale-specific exact-output tests.

Changes:

  • Adds src/Humanizer/Locales/as.yml covering phrases, formatter units, numbers, ordinals, parsing, compass, clock, and calendar data.
  • Extends shared locale theory/matrix data with Assamese expectations.
  • Adds Assamese-focused tests for locale parity, number conversion, and ordinal behavior.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
src/Humanizer/Locales/as.yml Defines Assamese locale surfaces and generated behavior inputs.
tests/Humanizer.Tests/Localisation/LocaleCoverageData.cs Adds Assamese rows to shared coverage matrices.
tests/Humanizer.Tests/Localisation/LocaleFormatterExactTheoryData.cs Adds Assamese formatter/list/heading/data-unit expectations.
tests/Humanizer.Tests/Localisation/LocaleNumberMagnitudeTheoryData.cs Adds Assamese magnitude number expectations.
tests/Humanizer.Tests/Localisation/LocaleNumberOverloadTheoryData.cs Adds Assamese long-number overload expectations.
tests/Humanizer.Tests/Localisation/LocaleNumberTheoryData.cs Adds Assamese cardinal, ordinal, tuple, and parsing expectations.
tests/Humanizer.Tests/Localisation/LocaleOrdinalizerMatrixData.cs Adds Assamese ordinalizer matrix rows.
tests/Humanizer.Tests/Localisation/LocalePhraseTheoryData.cs Adds Assamese phrase, null-date, and duration expectations.
tests/Humanizer.Tests/Localisation/as/AssameseLocaleParityTests.cs Adds locale-specific parity tests for non-number surfaces.
tests/Humanizer.Tests/Localisation/as/AssameseNumberToWordsTests.cs Adds Assamese number-to-words and words-to-number tests.
tests/Humanizer.Tests/Localisation/as/AssameseOrdinalTests.cs Adds Assamese ordinal word and suffix tests.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/Humanizer/Locales/as.yml
Comment thread tests/Humanizer.Tests/Localisation/as/AssameseLocaleParityTests.cs Outdated
Comment thread tests/Humanizer.Tests/Localisation/as/AssameseNumberToWordsTests.cs Outdated
Comment thread tests/Humanizer.Tests/Localisation/as/AssameseOrdinalTests.cs Outdated
@clairernovotny
clairernovotny merged commit 3865008 into main May 16, 2026
8 checks passed
@clairernovotny
clairernovotny deleted the feat-as branch May 16, 2026 20:53
@coderabbitai coderabbitai Bot mentioned this pull request May 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants