ac_bcp47 0.4.0
ac_bcp47: ^0.4.0 copied to clipboard
BCP-47 related types with parsing, formatting, canonicalization and format validation.
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.4.0 - 2026-04-05 #
Fixed #
Bcp47LanguageTag.parsenow uses typedcatch (e) { if (e is! ArgumentError) rethrow; }instead ofcatch (_) {}, preventing silent swallowing of genuine runtime errors.kIrregularTagsandkRegularTagsreplaced with explicitconst <String>[...]list literals.
Changed #
Bcp47Subtagschanged fromIterable<String>toList<String>.Bcp47GrandfatheredTag.irregularchanged fromlate finaltofinal(computed inline).Bcp47LookupandBcp47Validatormembers promoted to top-level functions; deprecated class wrappers retained for backward compatibility.
0.3.0 - 2026-03-28 #
Fixed #
- Fix
==andhashCodeinBcp47LanguageTagMixinto use structural, case-insensitive comparison (was identity-based, causing map/set lookups to fail). - Fix
Bcp47BasicLanguageRange.parseto accept single-subtag ranges (e.g.'en','de').
Changed #
- Update IANA registry data (registry date 2025-08-25, latest record 2024-12-12).
Added #
- Add
Bcp47LookupwithbasicFilter,extendedFilter, andlookup(RFC 4647 §3.3 and §3.4). - Add
Bcp47LangTag.copyWithfor type-safe field replacement. - Add
///doc comments to all public API members.
0.2.3 #
- Upgrade ac_lints package to 0.4.0
0.2.2 #
- Upgrade ac_lints package to 0.3.0
0.2.1 #
- Update LICENSE's copyright to include contributors
- Widen SDK environment requirement to include Dart 3 versions
- Upgrade ac_essentials package to 0.2.1
- Upgrade ac_lints package to 0.2.0
0.2.0 #
- Minor changes
0.1.0 #
- Initial release