Allow to set Gregorian change date for UDateIntervalFormat

Description

UDateIntervalFormat doesn't provide a way to change the Gregorian change date and instead always uses the default Gregorian change date from icu::GregorianCalendar.

This issue is blocking Mozilla from implementing the ECMA-402 proposal <https://github.com/tc39/proposal-intl-DateTimeFormat-formatRange>. (Firefox code uses the ICU C API instead of the C++ API to get a stable ABI, because we allow embedders to provide their own ICU version.)

Example:

  • Expected: Prints 10/04/1582.

  • Actual: Prints 09/24/1582.

And in comparison with the C++ API:

Activity

Show:
Frank Yung-Fong Tang
November 20, 2019, 8:47 PM
Frank Yung-Fong Tang
October 29, 2019, 4:30 AM

V8 work around (using C++) is under review

https://chromium-review.googlesource.com/c/v8/v8/+/1884955

Frank Yung-Fong Tang
October 29, 2019, 4:29 AM

Here is my C API proposal:

source/i18n/unicode/udateintervalformat.h

 

Fixed

Assignee

Frank Yung-Fong Tang

Reporter

André Bargull

Components

Labels

Priority

major

Time Needed

Days

Fix versions