Commit graph

23454 commits

Author SHA1 Message Date
Craig
6d178fd002 ICU-22325 Update ICU4C API Change Reports - frontload
Change version on uspoof.h from "74.0" to "74"
2023-09-12 16:15:11 -07:00
Frank Tang
68a61daa95 ICU-22497 Fix buffer-overflow READ for toLanguateTag 2023-09-12 15:21:26 -07:00
Frank Tang
35645abdcb ICU-22494 Avoid adding empty or duplicate variants during locale canoncalization.
It change the failure case (see the bug) from 35s to 0.126s on a very
fast developement machine.
2023-09-11 15:25:37 -07:00
Rich Gillam
916452befc ICU-22169 Fixed ures_getFunctionalEquivalent() to check the resource bundles' %%Parent resources when ascending
the parent tree.
2023-09-11 12:58:41 -07:00
Peter Edberg
612cfbbfe4 ICU-22325 BRS 74rc update rename.h #1 2023-09-07 22:21:55 -07:00
Silas S. Brown
7ae7b15698 ICU-22323 update comment: it is now only two word lists, not three 2023-09-07 21:34:25 -04:00
Rich Gillam
b6a4eb8a65 ICU-22325 Promoted all @draft ICU 72 APIs to @stable ICU 72. 2023-09-06 14:03:05 -07:00
Frank Tang
c294c3272c ICU-22365 Add adoptULocale and buildULocale to ULocaleBuilder
Add two methods related to ULocale to ULocaleBuilder API

void ulocbld_adoptULocale(ULocaleBuilder* builder, ULocale* locale);
ULocale* ulocbld_buildULocale(ULocaleBuilder* builder, UErrorCode* err);

ICU TC approved this in 2023-08-31
2023-09-05 16:37:39 -07:00
Frank Tang
fab5faa3aa ICU-22479 Limit the collator_compare_fuzzer
Test only first 4K bytes of data, which means compare two
UnicodeString each with 1024 Unicodes at most.

Avoid finding timeout issue due to large amount of data.
2023-09-05 14:10:33 -07:00
Rich Gillam
21f74b3698 ICU-22455 Implemented algorithm in CLDR-16981 to preserve regional unit overrides when they don't conflict
with the ms subtag.
2023-09-05 16:52:18 -04:00
Frank Tang
aa70ba6746 ICU-22479 Add a new fuzzer to test more Locale methods
See #2576
2023-09-05 12:08:39 -07:00
Mihai Nita
5fb2a6ad06 ICU-22324 Mavenization, updating the cldr-to-icu scripts and instructions 2023-09-05 10:24:23 -07:00
Frank Tang
869713b65f ICU-22479 Improve collator_compare_fuzzer
See #2574
2023-09-01 17:57:30 -07:00
Frank Tang
35bae683a5 ICU-22475 Fix double free in Locale under OOM
See #2567
2023-08-30 12:35:15 -07:00
Frank Tang
02d5e71903 ICU-22342 Implement ExternalBreakEngineAPI
ICU-22342 Fix comments
2023-08-30 11:43:16 -07:00
Frank Tang
29a6ffc350 ICU-22365 call u_terminateChars in ULocale(Builder)? 2023-08-28 15:35:36 -07:00
Rich Gillam
8817c25c1e ICU-22449 Fixed SimpleDateFormat (in C++ and Java) to correctly honor the rg and hc subtags in the locale when choosing the hour cycle. 2023-08-28 13:30:45 -04:00
Frank Tang
706044b0a2 ICU-20777 Remove the generation of likelySubtags.res 2023-08-23 15:47:50 -07:00
Robin Leroy
f79fe9347a ICU-22332 bidiSkeleton and LTR- and RTL-confusabilities 2023-08-23 15:56:02 +02:00
Peter Edberg
2270c174a5 ICU-22325 CLDR release-44-alpha1 to main:
- binaries, binary-as-source, CLDR data sources;
  - CLDR test data & dtd, ICU lib/tool/test source updates.
2023-08-22 14:40:51 -07:00
Frank Tang
5d6d197a03 ICU-22466 Fix incorrect memory read while the locale is bogus
ICU-22466 Fix illegal read

ICU-22466 Fix memory issue
2023-08-22 09:22:12 -07:00
Frank Tang
667ee72b7c ICU-22457 count() of getUnicodeKeywords is incorrect
The count() is incorrect if the Locale contains extension which is not -u-
for example -x-, -t-.

Currently, this PR only contains tests to show the problem.

ICU-22457 Fix the enum_count
2023-08-21 14:44:10 -07:00
Rich Gillam
52177cc8c7 ICU-22364 Modify ulocimp_getRegionForSupplementalData() to ignore the subdivision code, rather than requiring it to
be "zzzz".
2023-08-21 14:06:00 -04:00
Fredrik Roubert
1fc560c07f ICU-22465 Change .s to .data() for replacing TinyString with CharString.
This was forgotten by ICU-7496 which replaced the local TinyString data
type with the shared CharString data type, but as it's in code heavily
nested in #ifdef's it hasn't been noticed until now.
2023-08-21 15:57:20 +02:00
Frank Tang
ffc449de62 ICU-20777 Merge the likelySubtags implemention
Change testdata/likelySubtags.txt to consider FAIL line

ICU-20777 Fix Java Tests

ICU-20777 Fix all issues

ICU-20777 Incase timeout

ICU-20777

ICU-20777 Skip Data Driven test
2023-08-18 09:35:54 -07:00
Frank Tang
27181e36a6 ICU-22435 Add C API for Locale
See #2531
2023-08-17 12:15:47 -07:00
Markus Scherer
81a6edb287 ICU-22404 Unicode 15.1 data 20230811 plus UTS46 fix 2023-08-16 14:25:22 -07:00
yumaoka
6338b704ff ICU-22452 API for resolving preferred IANA zone ID from a zone ID. 2023-08-11 17:00:05 -04:00
Rich Gillam
d91859de21 ICU-22363 Add copyright notices to new QNX build files 2023-08-11 12:44:28 -07:00
James Choi
b70b2d0433 ICU-22363 Add support for QNX 7.1
Signed-off-by: James Choi <chachoi@blackberry.com>
2023-08-10 17:46:01 -07:00
Peter Edberg
cc2ddc0d11 ICU-22325 Convert cldr-icu-readme to md, update it, point to it from older docs 2023-08-10 14:03:06 -07:00
Robin Leroy
a6fc915e05 ICU-22404 Strip default ignorable code points in the skeleton for confusable detection 2023-08-10 17:55:14 +02:00
Robin Leroy
86193b1b98 ICU-22404 Improve documentation of segmentation rules 2023-08-10 03:01:20 +02:00
Frank Tang
ca1435c3ea ICU-22453 Fix non null terminated buffer issue.
See #2543
2023-08-09 15:36:04 -07:00
Rich Gillam
56850c9a42 ICU-22402 Add support in ICU and in the CLDR-to-ICU tool for the new nativeSpaceReplacement and parameterDefault
resources for PersonNameFormatter in CLDR. Regenerated the ICU4J data resources as well as the ICU4C resources
to include the new resources.
2023-08-08 14:42:02 -07:00
Robin Leroy
47e47ec439 ICU-22433 uppercase decomposed greek to decomposed greek and precomposed greek to precomposed greek. 2023-08-08 22:20:20 +02:00
Frank Tang
6ba5a1a1b7 ICU-22365 C API for ULocaleBuilder
See #2520

ICU-22365 Fix comments
2023-08-03 14:11:12 -07:00
DraganBesevic
1f07d2b29f ICU-22325 Integrate CLDR 44.1 to ICU, add personName testdata, fix RBBITestMonkey 2023-07-28 16:53:50 -07:00
Frank Tang
19bac42f98 ICU-22446 Fix incorrect Hebrew ORDINAL MONTH bug 2023-07-27 22:18:00 -07:00
Frank Tang
03e98c04f3 ICU-22442 Sync the spelling of NEHASSA to ICU4J NEHASSE
ICU4J has that as part of public API but ++ is private
so we should sync to the ICU4J one.
2023-07-27 09:56:31 -07:00
Shane F. Carr
2238f1c2c1 ICU-20297 Improve discoverability of currency formatting 2023-07-23 09:23:13 -07:00
Jiawen Geng
c7e967c456 ICU-22401 fix build on MSVC with cpp20 2023-07-14 14:31:40 +02:00
Elango Cheran
2e45e6ec0e ICU-22404 Unicode 15.1 beta data files & API constants
See #2492

Co-authored-by: Andy Heninger <andy.heninger@gmail.com>
Co-authored-by: Robin Leroy <egg.robin.leroy@gmail.com>
2023-07-13 19:26:14 -07:00
Frank Tang
5826bf7ed7 ICU-22434 Not calling setFirstDayOfWeek(MONDAY) if the locale has fw
The Calendar constructor already take care of the fw override.
We should not set the first day of week for iso8601 to Monday if
we have a fw keyword/type in the locale.

ICU-22434 Fix incorrect calendar keyword extraction
2023-07-13 09:49:32 -07:00
Peter Edberg
70d308731a ICU-22325 BRS 74 front-load update version to 74.0.1 2023-07-10 16:45:41 -07:00
Frank Tang
1b15a4e9db ICU-22424 Fix Calendar::clear(UCAL_MONTH)
Make the calling of clear(UCAL_MONTH or UCAL_ORDINAL_MONTH) clear both fields.
2023-06-30 00:48:34 -07:00
Shane F. Carr
4a255c4301 ICU-21239 Improve docs for MeasureUnit default constructor 2023-06-27 11:27:25 -07:00
Victor Chang
83ee7e662f ICU-22390 Transliterator.<clinit> can be optimized - part 2
WIDTH_FIX instance could be lazily initialized, because it's used
only if transliterate() is called on the AnyTransliterator instance,
but apparently not used by other Transliterator instance.
2023-06-27 11:25:43 -07:00
Frank Tang
a9f7570892 ICU-22412 Fix C API ucal_(g|s)etGregorianChange for iso8601 calendar
See #2510
2023-06-22 15:44:37 -07:00
Frank Tang
26bd70e301 ICU-22421 Remove two unused internal methods in gregorian cal
Remove pinDayOfMonth() and yearLength(int32_t year)
from GregorianCalendar.

These two methods are
1. Unused by any code inside ICU, not in source/{common,i18n,test}.
2. Marked as @internal in the header.
3. Wrap inside #ifndef U_HIDE_INTERNAL_API block in the header
4. In "protected:" section.
5. No ICU4J counterpart.

The yearLength(int32_t year) dup the functionality as
handleGetYearLength of the same class and that one is the correct one to
be keep and used..
There is another yearLength() w/o the year as parameter should NOT be
removed and still needed internally.
2023-06-22 15:44:05 -07:00