Open Bug 852837 Opened 9 years ago Updated 4 years ago

ICU-based Intl.DateTimeFormat implementation doesn't meet BasicFormatMatcher spec

Categories

(Core :: JavaScript: Internationalization API, defect)

defect
Not set
normal

Tracking

()

People

(Reporter: mozillabugs, Unassigned)

References

Details

Attachments

(1 file)

The ICU-based implementation of Intl.DateTimeFormat relies on ICU's UDateTimePatternGenerator to map requested date-time components and their representations to ICU pattern strings. UDateTimePatternGenerator is an adequate implementation of the BestFitFormatMatcher abstract operation, but doesn't meet the specification of the BasicFormatMatcher abstract operation.

One problem is that the set of date-time components allows for 69,984 combinations, and the test case (ch12/12.1/12.1.1_BFM.js) takes 5 minutes on my Mac debug build just to collect information about all possible results.
Attached patch Test caseSplinter Review
This test case is in the format for ECMAScript conformance tests (Test262 format), but hasn't been integrated into the ECMA-402 conformance test suite because it takes way too long (over 5 minutes in a debug build on my Mac).
Mass-moving existing Intl-related bugs to the new Core :: JavaScript: Internationalization API component.

If you think this bug has been moved in error, feel free to move it back to Core :: JavaScript Engine.

[Mass change filter: core-js-intl-api-move]
Component: JavaScript Engine → JavaScript: Internationalization API
Assignee: general → nobody
Summary: ICU-based Intl.DateTimeFormat implementation doesn't meet BascicFormatMatcher spec → ICU-based Intl.DateTimeFormat implementation doesn't meet BasicFormatMatcher spec
You need to log in before you can comment on or make changes to this bug.