New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 794737 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Closed: Dec 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Android , Windows , Chrome , Mac , Fuchsia
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Revert the latest German AM/PM marker change - cherry-pick from the upstream ICU/CLDR

Project Member Reported by js...@chromium.org, Dec 13 2017

Issue description

In ICU 60.1/CLDR 32, AM/PM marker for German were changed to 'AM/PM' from 'vorm./nachm.'.  

The upstream reverted the change in ICU 60.2 / CLDR 30.0.2. See https://unicode.org/cldr/trac/ticket/10735 . 

This is to cherry-pick that revert. 

It's not very critical because German does not use 12h format although Chrome OS does have an UI option to use 12h format even in German and other locales where the default is 24h format. Ecma 402 (JavaScript Intl API) also has such an option to override the locale default. So, this is a 'user-visible' 'regression'. 



 

Comment 1 by js...@chromium.org, Dec 13 2017

Components: Blink>JavaScript>Internationalization
Labels: -Pri-3 M-64 Pri-2

Comment 2 by js...@chromium.org, Dec 14 2017

v8 example:

Without a fix: 

d8> (new Date(2017,11,10,5,3)).toLocaleString("de", {'hour12': 'true'})
"10.12.2017, 5:03:00 AM"
d8> (new Date(2017,11,10,17,3)).toLocaleString("de", {'hour12': 'true'})
"10.12.2017, 5:03:00 PM"

With a fix:

d8> (new Date(2017,11,10,5,3)).toLocaleString("de", {'hour12': 'true'})
"10.12.2017, 5:03:00 vorm."
d8> (new Date(2017,11,10,17,3)).toLocaleString("de", {'hour12': 'true'})
"10.12.2017, 5:03:00 nachm."

Comment 3 by js...@chromium.org, Dec 14 2017

Summary: Revert the latest German AM/PM marker change - cherry-pick from the upstream ICU/CLDR (was: Revert German AM/PM marker - cherry-pick from the upstream ICU/CLDR)
Project Member

Comment 4 by bugdroid1@chromium.org, Dec 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/deps/icu.git/+/94d819fa3e7e71f3dd8210d428c213ddb6e2b336

commit 94d819fa3e7e71f3dd8210d428c213ddb6e2b336
Author: Jungshik Shin <jshin@chromium.org>
Date: Thu Dec 14 07:10:55 2017

Update German AM/PM marker to the previous value

In CLDR 32.0 (used in ICU 60), German AM/PM markers were changed to
'AM' and 'PM', but the change is controversial. For now, revert to
the previous values per the upstream (CLDR 32.0.1 / ICU 60.2). See
   https://unicode.org/cldr/trac/ticket/10735 .

Bug:  794737 
Test: base_unittests --gtest_filter=TimeFormat*.*TimeOfDayDE
Change-Id: Ifb715af8cf6d41803eaf612cbb8940dbc7851806
Reviewed-on: https://chromium-review.googlesource.com/826250
Reviewed-by: Mark Mentovai <mark@chromium.org>

[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/README.chromium
[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/android/icudtl.dat
[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/cast/icudtl.dat
[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/common/icudtb.dat
[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/common/icudtl.dat
[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/ios/icudtl.dat
[add] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/patches/de_ampm.patch
[modify] https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/source/data/locales/de.txt

Project Member

Comment 5 by bugdroid1@chromium.org, Dec 14 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/27be5b2f24250e2b35d2c0746a685c2ff4ab784f

commit 27be5b2f24250e2b35d2c0746a685c2ff4ab784f
Author: Jungshik Shin <jshin@chromium.org>
Date: Thu Dec 14 21:38:31 2017

Roll ICU to  94d819f

Add a test for German time format (12hr with AM/PM marker).

It has 3 changes:

 https://chromium.googlesource.com/chromium/deps/icu.git/+log/e3b480d..94d819f

 2017-12-13 jshin@chromium.org Update German AM/PM marker to the previous value
 2017-12-13 jshin@chromium.org Cherry-pick an upstream fix for UTF8 to UTF8 conversion
 2017-12-12 jshin@chromium.org Cherry-pick an upstream fix for Calendar class

Bug:  794737 , 794390 , 792537 
Test: base_unittests --gtest_filter=TimeFormat*.*TimeOfDayDE
Test:  crbug.com/794737#c2 
Change-Id: Ifa6d31624cbd9d4edc1b776e34527d8e842f7290
Reviewed-on: https://chromium-review.googlesource.com/826363
Commit-Queue: Jungshik Shin <jshin@chromium.org>
Reviewed-by: Mark Mentovai <mark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#524189}
[modify] https://crrev.com/27be5b2f24250e2b35d2c0746a685c2ff4ab784f/DEPS
[modify] https://crrev.com/27be5b2f24250e2b35d2c0746a685c2ff4ab784f/base/i18n/time_formatting_unittest.cc

Comment 6 by js...@chromium.org, Dec 15 2017

Status: Fixed (was: Started)

Comment 7 by js...@chromium.org, Dec 16 2017

Labels: -Type-Bug Merge-Request-64 Type-Bug-Regression
Status: Verified (was: Fixed)
Verified in 65.0.3296.0 

Asking for merge to 64 branch. It's a regression introduced in ICU 60.1 that was fixed in ICU 60.2. 

The actual change is in https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/source/data/locales/de.txt
(see comment 4). 

When ICU is rolled to 94d819f in 64 branch, it will include two other ICU changes as shown in comment 5. They're also cherry-picks from the upstream ICU 60.2.  They should be safe (included in the upstream 60.2 ).  They're also required for 794390 and 792537.

Project Member

Comment 8 by sheriffbot@chromium.org, Dec 16 2017

Labels: -Merge-Request-64 Hotlist-Merge-Review Merge-Review-64
This bug requires manual review: DEPS changes referenced in bugdroid comments.
Please contact the milestone owner if you have questions.
Owners: cmasso@(Android), cmasso@(iOS), kbleicher@(ChromeOS), abdulsyed@(Desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Comment 9 by js...@chromium.org, Dec 17 2017

> They're also required for 794390 and 792537.

For  bug 794390  and  bug 792537 , I'm not making a separate Merge-request for M64. I'm using this one for those two as well. 

After the ICU roll is approved and landed for M64 branch buildspec, I'll mark those two bugs as 'merged-merged-64'. 
What OS(s) does this impact?

Comment 11 by js...@chromium.org, Dec 19 2017

Labels: OS-Android OS-Chrome OS-Fuchsia OS-Linux OS-Mac OS-Windows
Sorry forgot to check OS boxes. All except for iOS.  

Comment 12 by js...@chromium.org, Dec 19 2017

 bug 794390   and   bug 792537  do not affect iOS either because we use iOS WebView. 

Does this have a GRD impact for string translation?  Also, this isn't a regression from M63 so not likely to be merged.

Comment 14 by js...@chromium.org, Dec 21 2017

It does not have changes in strings to translte. It's rolling an ICU library to a version with 3 fixes. 

Owner: js...@chromium.org
What is(are) the CL(s) you are requesting merge for? Can you provide the rational as to why this should be merged in M64? Any risk associated? How will users be affected in M64 if this is not merged.

Comment 16 by js...@chromium.org, Dec 21 2017

From comment 5; these are changes to be rolled in when ICU is rolled to 94d819f in M64 branch. 


 https://chromium.googlesource.com/chromium/deps/icu.git/+log/e3b480d..94d819f

 2017-12-13 jshin@chromium.org Update German AM/PM marker to the previous value
 2017-12-13 jshin@chromium.org Cherry-pick an upstream fix for UTF8 to UTF8 conversion
 2017-12-12 jshin@chromium.org Cherry-pick an upstream fix for Calendar class

For German AM/PM marker, the actual change is 


https://crrev.com/94d819fa3e7e71f3dd8210d428c213ddb6e2b336/source/data/locales/de.txt

Comment 17 by js...@chromium.org, Dec 23 2017

> Can you provide the rational as to why this should be merged in M64? 

This bug is a regression from M63.  
The 2nd ( bug 794390 ) and 3rd ( bug 792537 ) are security issues.


> Any risk associated? 

Risk is all but none for the top change in comment 16. 
As for the 2nd, it's also very low. The upstream adds a unittest to check the validity of their fix. It's already cherry-picked by other Google products. 

As for the 3rd, the risk is all but none. The code was hardened to prevent a security concern discovered by *San builds. 

> How will users be affected in M64 if this is not merged.

This one (the first) affects Chrome OS in German locale and v8 when DateTimeFormat or Date.prototype.toLocaleString is used for formatting time with 12 hour format. It's rare that German users want 12 hour format, but some may do. Again, this is regressed in 64.x


Comment 18 by js...@chromium.org, Dec 23 2017

Cc: abdulsyed@chromium.org cma...@chromium.org kbleicher@chromium.org
Labels: Restrict-View-SecurityNotify
Labels: -Merge-Review-64 Merge-Approved-64
Thanks, Michael for the merge approval. 
https://chrome-internal-review.googlesource.com/c/chrome/tools/buildspec/+/538121 is an internal CL to roll ICU in M64 branch. 

I'll also make a separate CL for v8's ICU. 

Project Member

Comment 21 by bugdroid1@chromium.org, Jan 2 2018

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/chrome/tools/buildspec/+/e3f547afefe52835be482b32421c016dc90ddc4f

commit e3f547afefe52835be482b32421c016dc90ddc4f
Author: Jungshik Shin <jungshik@google.com>
Date: Tue Jan 02 18:38:21 2018

Labels: -Merge-Approved-64 merge-merged-3282
Project Member

Comment 23 by sheriffbot@chromium.org, Mar 24 2018

Labels: -Restrict-View-SecurityNotify allpublic
This bug has been closed for more than 14 weeks. Removing security view restrictions.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Sign in to add a comment