]> granicus.if.org Git - icu/log
icu
3 years agoICU-21777 Move Windows "ICU4C Platform Support" notes to "Building ICU4C" User Guide...
Jeff Genovy [Thu, 30 Sep 2021 01:58:35 +0000 (18:58 -0700)]
ICU-21777 Move Windows "ICU4C Platform Support" notes to "Building ICU4C" User Guide page.

3 years agoICU-21581 ICU Change Reports for 70rc cldr/2021-09-29 release-70-rc
Craig Cornelius [Wed, 29 Sep 2021 19:05:52 +0000 (19:05 +0000)]
ICU-21581 ICU Change Reports for 70rc

See #1877

3 years agoICU-21581 Update double-conversion
Shane F. Carr [Wed, 29 Sep 2021 07:24:20 +0000 (02:24 -0500)]
ICU-21581 Update double-conversion

3 years agoICU-21764 icu-data-bin: fix filenames to nn_n
Steven R. Loomis [Tue, 28 Sep 2021 21:18:11 +0000 (16:18 -0500)]
ICU-21764 icu-data-bin: fix filenames to nn_n

ex: icu4c-70_1-data-bin-b.zip
(was incorrectly "70.1" before)

3 years agoICU-21581 check non-stable API macros (mostly U_HIDE_INTERNAL_API)
Peter Edberg [Wed, 29 Sep 2021 05:22:18 +0000 (22:22 -0700)]
ICU-21581 check non-stable API macros (mostly U_HIDE_INTERNAL_API)

3 years agoICU-21581 BRS 70rc, update urename.h pass 2
Peter Edberg [Tue, 28 Sep 2021 19:18:10 +0000 (12:18 -0700)]
ICU-21581 BRS 70rc, update urename.h pass 2

3 years agoICU-21581 Creates a new workflow to be activated upon merge into main or
gnrunge [Mon, 27 Sep 2021 22:31:44 +0000 (15:31 -0700)]
ICU-21581 Creates a new workflow to be activated upon merge into main or
maintenance branches only and adds GHA CI automation of BRS task 'Test ICU4J
with only little-endian ICU4C data', cf.:
https://unicode-org.github.io/icu/processes/release/tasks/integration.html#test-icu4j-with-only-little-endian-icu4c-data.

ICU-21581 Adds copyright notice and comment to new GHA script.

3 years agoICU-21767 Merging tz2021b changes.
yumaoka [Tue, 28 Sep 2021 16:17:51 +0000 (16:17 +0000)]
ICU-21767 Merging tz2021b changes.

Update ICU (main branch and upcoming version 70) halfway to 2021b.

- with Samoa & Jordan rule updates
- with corrected pre-1993 transitions in Malawi (?), Portugal, etc.
- without for now (due to release timing) renaming Pacific/Enderbury to Pacific/Kanton
- without merging many zones whose timestamps agree since 1970

3 years agoICU-21581 BRS70RC Adding ICU4J serialization test data for ICU4J 70
Yoshito Umaoka [Mon, 27 Sep 2021 06:52:59 +0000 (02:52 -0400)]
ICU-21581 BRS70RC Adding ICU4J serialization test data for ICU4J 70

Deleted ICU4J 65 serialization test data.

3 years agoICU-21581 BRS70RC Adding API signature file for ICU4J 70
Yoshito Umaoka [Mon, 27 Sep 2021 06:23:41 +0000 (02:23 -0400)]
ICU-21581 BRS70RC Adding API signature file for ICU4J 70

Also fixed API doc tag problem in DacimalFormatSymbols.java. Deleted ICU4J 60 API signature file.

3 years agoICU-21581 BRS 70RC Clean up import statements
Yoshito Umaoka [Mon, 27 Sep 2021 05:46:07 +0000 (01:46 -0400)]
ICU-21581 BRS 70RC Clean up import statements

3 years agoICU-21545 fix Unicode properties Bazel build
Markus Scherer [Mon, 27 Sep 2021 18:46:06 +0000 (11:46 -0700)]
ICU-21545 fix Unicode properties Bazel build

3 years agoICU-21751 Improves failure reporting of the run-with-stubdata CI target and
gnrunge [Wed, 22 Sep 2021 22:36:03 +0000 (15:36 -0700)]
ICU-21751 Improves failure reporting of the run-with-stubdata CI target and
also updates the instuctions how to reproduce a failur case.

ICU-21751 Review comments worked in.

3 years agoICU-21581 BRSRC 70.1 Version update and regenerate configure for v70.1
Erik Torres [Wed, 22 Sep 2021 22:51:08 +0000 (22:51 +0000)]
ICU-21581 BRSRC 70.1 Version update and regenerate configure for v70.1

In this PR, I am updating the version number from 70.0.1 for the BRS task.
Previously, we had frontloaded part of this, so the diff in this PR are not as numerous.

It has also been decided that we should differentiate frontloaded tasks and RC tasks by having the version numbers being:
Frontload version number: XX.X.X (70.0.1 -> Major.minor.patch)
RC/GA version number: XX.X (70.1 -> Major.minor)

I've added some documentation for this, for future releases :)

3 years agoICU-21714 Use FixedDecimal instead of double for plural samples in tests
Elango Cheran [Wed, 22 Sep 2021 05:21:58 +0000 (05:21 +0000)]
ICU-21714 Use FixedDecimal instead of double for plural samples in tests

See #1875

3 years agoICU-21533 Lazily create the internal break iterator used in StringSearch, and improve...
Jeff Genovy [Wed, 18 Nov 2020 03:02:15 +0000 (19:02 -0800)]
ICU-21533 Lazily create the internal break iterator used in StringSearch, and improve error handling.

Change NULL to nullptr.

3 years agoICU-21662 Userguide on Adoption and UErrorCode
Andy Heninger [Wed, 22 Sep 2021 02:48:58 +0000 (19:48 -0700)]
ICU-21662 Userguide on Adoption and UErrorCode

Update the userguide sections on object adoption and UErrorCode,
expanding on how the two interact.

3 years agoICU-21544 Throw argument error when the units are not convertible.
Younies [Wed, 22 Sep 2021 14:07:43 +0000 (16:07 +0200)]
ICU-21544 Throw argument error when the units are not convertible.

3 years agoICU-21581 Fix calendar list in userguide
Rob Meyer [Thu, 10 Sep 2020 16:55:53 +0000 (09:55 -0700)]
ICU-21581 Fix calendar list in userguide

3 years agoICU-21683 ICU-21674 Clear state from UFormattedNumber[Range] in C API
Shane F. Carr [Tue, 21 Sep 2021 07:56:49 +0000 (07:56 +0000)]
ICU-21683 ICU-21674 Clear state from UFormattedNumber[Range] in C API

See #1862

3 years agoICU-21675 Allow NaN and Infinity to appear in DecNum strings
Shane F. Carr [Tue, 21 Sep 2021 20:09:45 +0000 (20:09 +0000)]
ICU-21675 Allow NaN and Infinity to appear in DecNum strings

See #1871

3 years agoICU-21556 Support currency as decimal separator in patterns
Shane F. Carr [Tue, 21 Sep 2021 09:01:45 +0000 (09:01 +0000)]
ICU-21556 Support currency as decimal separator in patterns

See #1711

3 years agoICU-20425 Strip trailing zeros from Java rounding increment
Shane F. Carr [Tue, 21 Sep 2021 07:33:11 +0000 (07:33 +0000)]
ICU-20425 Strip trailing zeros from Java rounding increment

See #1726

3 years agoICU-21662 UVector cleanup in rbtz.cpp
Andy Heninger [Wed, 15 Sep 2021 21:51:48 +0000 (14:51 -0700)]
ICU-21662 UVector cleanup in rbtz.cpp

Revise uses of UVector in rbtz.cpp to better handle memory allocation failures.
This is one of an ongoing series of commits to address similar problems with
UVector usage throughout ICU.

The changes include

- Use LocalPointers and UVector deleter functions to simplify OOM checking and recovery.
- Fix RuleBasedTimeZone::addTransitionRule(rule) to have standard ICU adopt behavior
  when errors occur, meaning automatic deletion of the incoming rule. This simplifies
  both the implementation of the function and the code at the call sites.
- Update addTransitionRule() call sites. Includes modifying the Dangi calendar initializtion
  to not silently ignore errors.
- struct Transition is changed to derive from UMemory, which allows the use of LocalPointers.

3 years agoICU-21545 Add plumbing for running icuexportdata in BRS
Shane F. Carr [Tue, 21 Sep 2021 05:15:02 +0000 (05:15 +0000)]
ICU-21545 Add plumbing for running icuexportdata in BRS

See #1857

- Renames tool from icuwriteuprops
- Adds more command-line flags

3 years agoICU-21656 fix wrong matching categories.
Younies [Thu, 16 Sep 2021 18:04:34 +0000 (18:04 +0000)]
ICU-21656 fix wrong matching categories.

See #1839

3 years agoICU-21524 UnicodeSet pattern parser: code point complement
Markus Scherer [Tue, 14 Sep 2021 20:04:27 +0000 (13:04 -0700)]
ICU-21524 UnicodeSet pattern parser: code point complement

3 years agoICU-21756 icu4j: port UnicodeKnownIssues.java from CLDR
Steven R. Loomis [Sat, 18 Sep 2021 00:51:23 +0000 (19:51 -0500)]
ICU-21756 icu4j: port UnicodeKnownIssues.java from CLDR

- port of CLDR-14588
- use a fake Consumer<String>
- currently logs after each test class, not ideal but better
- Formerly ICU-12589 but that is not as related
- add unit test

3 years agoICU-11891 UnicodeRegex change supplementary escapes to Java regex syntax
Markus Scherer [Mon, 20 Sep 2021 22:34:28 +0000 (15:34 -0700)]
ICU-11891 UnicodeRegex change supplementary escapes to Java regex syntax

3 years agoICU-21662 UVector cleanup in basictz.cpp
Andy Heninger [Sat, 11 Sep 2021 23:57:03 +0000 (16:57 -0700)]
ICU-21662 UVector cleanup in basictz.cpp

Revise uses of UVector in basictz.cpp to better handle memory allocation failures.
This is one of an ongoing series of commits to address similar problems with
UVector usage throughout ICU.

The changes primarily involve switching to the use of LocalPointers for
the tracking of memory ownership, and to simplify cleanup in case of errors.

In the function BasicTimeZone::getTimeZoneRulesAfter(), also switched some additional
allocated memory to use LocalPointer or LocalMemory, for consistency in
memory handling.

3 years agoICU-11891 make UnicodeSet.toPattern() well-formed & round-trip
Markus Scherer [Fri, 17 Sep 2021 02:51:56 +0000 (19:51 -0700)]
ICU-11891 make UnicodeSet.toPattern() well-formed & round-trip

3 years agoICU-21429 Allow timezones with max 2 digits at the end to
Bernhard Messerklinger [Thu, 19 Aug 2021 10:41:02 +0000 (12:41 +0200)]
ICU-21429 Allow timezones with max 2 digits at the end to

3 years agoICU-21581 integrate CLDR release-40-alpha4 to ICU trunk
Peter Edberg [Thu, 16 Sep 2021 21:52:16 +0000 (14:52 -0700)]
ICU-21581 integrate CLDR release-40-alpha4 to ICU trunk

3 years agoICU-21668 Fix nickel rounding with away-from-zero rounding mode
Shane F. Carr [Tue, 14 Sep 2021 08:08:10 +0000 (08:08 +0000)]
ICU-21668 Fix nickel rounding with away-from-zero rounding mode

See #1814

3 years agoICU-21684 Fix performance issue in NumberRangeFormatter cldr/2021-09-15
Shane F. Carr [Wed, 15 Sep 2021 05:39:06 +0000 (00:39 -0500)]
ICU-21684 Fix performance issue in NumberRangeFormatter

3 years agoICU-21675 Add Infinity and NaN tests for NumberRangeFormatter
Shane F. Carr [Wed, 15 Sep 2021 06:34:01 +0000 (01:34 -0500)]
ICU-21675 Add Infinity and NaN tests for NumberRangeFormatter

3 years agoICU-21749 Fix stack-use-after-scope bug in uloc
Frank Tang [Sat, 11 Sep 2021 03:46:00 +0000 (03:46 +0000)]
ICU-21749 Fix stack-use-after-scope bug in uloc

See #1858

3 years agoICU-21752 fix wrong link of howtouseicu
Jacky_Yin [Fri, 10 Sep 2021 06:34:16 +0000 (14:34 +0800)]
ICU-21752 fix wrong link of howtouseicu

3 years agoICU-21662 UVector Error Handling in Regex
Andy Heninger [Fri, 10 Sep 2021 21:59:46 +0000 (14:59 -0700)]
ICU-21662 UVector Error Handling in Regex

Clean up some oversights from commit 0ec329c. This was triggered by fuzz testing finding
a memory leak with the original commit, see https://oss-fuzz.com/testcase-detail/4656781834452992

I was unable to replicate the fuzzing failure, but reviewing the nearby code showed
some likely problems.

In this commit,
- Fix UStack::pop() to not delete the popped element when a deleter function is present.
  This was a bug, but because there were no stacks with deleters, was not causing trouble.

- Change RegexCompile::compileSet() to delete the set if it cannot be added to the internal
  vector of sets. I suspect this is the cause of the fuzzing leak - 0ec329c changed the
  behavior of UVector in the presence of errors.

- Changed RegexCompile::fSetStack to use an object deleter function. This fixes the
  leak checking at the points new elements are pushed onto this stack.

3 years agoICU-21669 UPRV_UNREACHABLE > UPRV_UNREACHABLE_EXIT/ASSERT, update usages
Peter Edberg [Tue, 14 Sep 2021 05:46:55 +0000 (22:46 -0700)]
ICU-21669 UPRV_UNREACHABLE > UPRV_UNREACHABLE_EXIT/ASSERT, update usages

3 years agoICU-21654 Fix skeleton output for rounding increment in C++
Shane F. Carr [Sat, 11 Sep 2021 06:48:58 +0000 (06:48 +0000)]
ICU-21654 Fix skeleton output for rounding increment in C++

See #1813

3 years agoICU-20870 Fix breakage on UCONFIG_NO_FORMATTING
Frank Tang [Mon, 13 Sep 2021 21:54:42 +0000 (14:54 -0700)]
ICU-20870 Fix breakage on UCONFIG_NO_FORMATTING

3 years agoICU-20870 If locale/lang name lookup fails, canonicalize lang and try again
Peter Edberg [Wed, 8 Sep 2021 22:20:48 +0000 (15:20 -0700)]
ICU-20870 If locale/lang name lookup fails, canonicalize lang and try again

3 years agoICU-21750 Output tail end of the uconfig variation test run in case of failure
gnrunge [Fri, 10 Sep 2021 20:15:17 +0000 (13:15 -0700)]
ICU-21750 Output tail end of the uconfig variation test run in case of failure
to allow easier identification of build or test failures.

3 years agoICU-13353 Fixed several problems preventing horizontal resource inheritance from...
Rich Gillam [Fri, 6 Aug 2021 21:00:41 +0000 (14:00 -0700)]
ICU-13353 Fixed several problems preventing horizontal resource inheritance from working as intended, and added a
Java version of a unit test I'd previously only added on the C++ side.

3 years agoICU-21735 Fixed two old references to UNUM_CURRENCY_CASH, one in a comment, one in...
Rich Gillam [Wed, 8 Sep 2021 22:53:34 +0000 (15:53 -0700)]
ICU-21735 Fixed two old references to UNUM_CURRENCY_CASH, one in a comment, one in a unit-test failure message--
to refer to the now-correct UNUM_CASH_CURRENCY.

3 years agoICU-21581 integrate CLDR release-40-alpha3 to ICU trunk
Peter Edberg [Thu, 9 Sep 2021 04:42:54 +0000 (21:42 -0700)]
ICU-21581 integrate CLDR release-40-alpha3 to ICU trunk

3 years agoICU-21662 Improve UVector error handling.
Andy Heninger [Thu, 2 Sep 2021 23:09:04 +0000 (16:09 -0700)]
ICU-21662 Improve UVector error handling.

This is the next installment of UVector error handling cleanup. It includes:

- Revise UStack to follow the conventions of UVector, to leave the stack
  unmodified when there is an incoming error code. And, for stacks with a
  deleter function, to delete the incoming object if it cannot be
  succesfully pushed.

 - Review all useage of UStack in ICU; adjust call sites as needed.

 - Review all uses of UVector::addElementX() in the implementation of
   - Regular Expressions
   - Break Iteration
   - toolutil/xmlparser

   changing to the updated functions, and adjusting call sites as needed.

3 years agoICU-21730 Port `testGetPreferencesFor` ICU4C tests to ICU4J
Younies [Wed, 8 Sep 2021 16:58:23 +0000 (16:58 +0000)]
ICU-21730 Port `testGetPreferencesFor` ICU4C tests to ICU4J

See #1850

3 years agoICU-21545 Add icuwriteuprops tool
Shane F. Carr [Wed, 1 Sep 2021 18:30:14 +0000 (18:30 +0000)]
ICU-21545 Add icuwriteuprops tool

See #1741

3 years agoICU-21652 add emoji properties of strings
Markus Scherer [Fri, 3 Sep 2021 21:53:25 +0000 (14:53 -0700)]
ICU-21652 add emoji properties of strings
- 7 new properties: API constants & property names
- u_stringHasBinaryProperty(s, property) & UCharacter.hasBinaryProperty(s, property)
- two additional source data files
- new genprops part for writing new binary data file uemoji.icu
- data for existing emoji properties moved from uprops.icu (hardcoded in C++) to uemoji.icu (always loaded)
- new EmojiProps implementation

3 years agoICU-21685 In list of currencies from ucurr_openISOCurrencies(): add VES, remove EQE
Peter Edberg [Fri, 23 Jul 2021 06:24:51 +0000 (23:24 -0700)]
ICU-21685 In list of currencies from ucurr_openISOCurrencies(): add VES, remove EQE

3 years agoICU-21734 Add -Wsuggest-override to Build only WarningsAsErrors buildbot
Frank Tang [Wed, 8 Sep 2021 01:26:53 +0000 (01:26 +0000)]
ICU-21734 Add -Wsuggest-override to  Build only WarningsAsErrors buildbot

See #1842

3 years agoICU-21630 Ignore .DS_Store files
Leander Schulten [Fri, 28 May 2021 12:06:52 +0000 (14:06 +0200)]
ICU-21630 Ignore .DS_Store files

3 years agoICU-21741 remove redundant html tag: </pre>
Jacky_Yin [Tue, 31 Aug 2021 11:01:57 +0000 (11:01 +0000)]
ICU-21741 remove redundant html tag: </pre>

See #1838

3 years agoICU-21734 Add missing overrides
Peter Varga [Thu, 26 Aug 2021 08:26:58 +0000 (10:26 +0200)]
ICU-21734 Add missing overrides

3 years agoICU-21734 Add missing overrides to pure virtual methods
Peter Varga [Thu, 2 Sep 2021 07:26:11 +0000 (09:26 +0200)]
ICU-21734 Add missing overrides to pure virtual methods

These methods are pure virtual in the base class too.

3 years agoICU-21734 Add missing overrides in tests
Peter Varga [Thu, 2 Sep 2021 08:45:26 +0000 (10:45 +0200)]
ICU-21734 Add missing overrides in tests

3 years agoICU-20992 Added new API for iterating child resources while following aliases, and...
Rich Gillam [Sat, 24 Jul 2021 00:18:41 +0000 (17:18 -0700)]
ICU-20992 Added new API for iterating child resources while following aliases, and changed DateTimePatternGenerator
to use it.

3 years agoICU-21460 Changed the ULocale initializers to allow locale IDs that use BCP47 syntax...
Rich Gillam [Tue, 17 Aug 2021 23:28:32 +0000 (16:28 -0700)]
ICU-21460 Changed the ULocale initializers to allow locale IDs that use BCP47 syntax, but with '_' as a field delimiter.
(APIs that specifically require BCP47 syntax are unaffected-- they still require '-').

3 years agoICU-21727 Commit Checker: add Reviewer: header
Steven R. Loomis [Tue, 31 Aug 2021 22:59:44 +0000 (17:59 -0500)]
ICU-21727 Commit Checker: add Reviewer: header

3 years agoICU-21038 Run ICU4J localespiCheck as a part of CI build
Yoshito Umaoka [Thu, 26 Aug 2021 21:41:47 +0000 (21:41 +0000)]
ICU-21038 Run ICU4J localespiCheck as a part of CI build

See #1797

3 years agoICU-21530 Added U_HIDE_DEPRECATED_API to deprecated methods.
yumaoka [Thu, 2 Sep 2021 22:03:41 +0000 (22:03 +0000)]
ICU-21530 Added U_HIDE_DEPRECATED_API to deprecated methods.

3 years agoICU-21662 Improve UVector error handling.
Andy Heninger [Wed, 28 Jul 2021 18:20:53 +0000 (11:20 -0700)]
ICU-21662 Improve UVector error handling.

- Add updated versions of UVector::addElement() and ensureCapacity() that respect
  incoming errors.
  Follow on to c26aebe, which renamed the original versions.

- Add UVector::adoptElement() as a replacement for addElement() when the vector
  has a deleter function set, meaning that it adopts ownership of its elements.

  The intent is to make the behavior clearer at the call sites when looking
  at unfamiliar code.

- Make all functions with an incoming failure, as indicated by a UErrorCode parameter,
  leave the vector unchanged.

- Change all functions that store object pointers into the vector such that,
  when the store cannot be completed for any reason _and_ the vector has a deleter function,
  then the incoming object is deleted.

  This change can simplify the error handling code around calls to the affected functions
  (addElement() and insertElementAt(), in particular)

- Add index bounds checking on functions where it was possible - that is, on functions
  with both U_ErrorCode and index parameters.

- Changed to more modern C++ idioms in some parts of the UVector implementation.

- Review & update as required all uses of the UVector functions
  setElementAt(), insertElementAt(), setSize(), sortedInsert()
  these being the functions with changed behavior on error conditions
  (aside from addElement()).

This PR will be followed by more, switching call sites in various ICU services
from UVector::addElementX() (old behavior on errors)
to   UVector::addElement()  (new behavior on errors)

3 years agoICU-21551 Fixing unit prefix normalization order to match LDML spec
Younies Mahmoud [Tue, 31 Aug 2021 16:40:17 +0000 (16:40 +0000)]
ICU-21551 Fixing unit prefix normalization order to match LDML spec

See #1754

3 years agoICU-21747 Add check for expectedBreakCount in Java
Jeff Genovy [Wed, 1 Sep 2021 23:27:52 +0000 (16:27 -0700)]
ICU-21747 Add check for expectedBreakCount in Java

3 years agoICU-21747 Upgrade WarningsAsErrors build bot to Clang-13 on Ubuntu 20.04
Jeff Genovy [Wed, 1 Sep 2021 21:01:00 +0000 (14:01 -0700)]
ICU-21747 Upgrade WarningsAsErrors build bot to Clang-13 on Ubuntu 20.04

3 years agoICU-21581 integrate CLDR release-40-alpha2 to ICU trunk
Peter Edberg [Wed, 1 Sep 2021 21:00:29 +0000 (14:00 -0700)]
ICU-21581 integrate CLDR release-40-alpha2 to ICU trunk

3 years agoICU-20769 getAliasTargetAsResourceBundle() only needs ResourceData
Markus Scherer [Wed, 1 Sep 2021 16:35:43 +0000 (09:35 -0700)]
ICU-20769 getAliasTargetAsResourceBundle() only needs ResourceData

3 years agoICU-21740 Output source code line when an error occurs when building with MSVC.
Jeff Genovy [Mon, 30 Aug 2021 20:15:08 +0000 (13:15 -0700)]
ICU-21740 Output source code line when an error occurs when building with MSVC.

3 years agoICU-21579 Fix compiler warnings with MSVC.
Jeff Genovy [Mon, 30 Aug 2021 20:57:01 +0000 (13:57 -0700)]
ICU-21579 Fix compiler warnings with MSVC.

3 years agoICU-21730 Check unit aliases support.
Younies [Tue, 31 Aug 2021 13:13:13 +0000 (13:13 +0000)]
ICU-21730 Check unit aliases support.

See #1804

3 years agoICU-20769 refactor UResourceBundle.fResData & init_resb_result()
Markus Scherer [Thu, 26 Aug 2021 21:44:49 +0000 (14:44 -0700)]
ICU-20769 refactor UResourceBundle.fResData & init_resb_result()
- replace UResourceBundle.fResData with access via fData
- change ResourceDataValue.resData into a pointer
- move C tests to C++ that stack-allocate now-C++ UResourceBundle
- init_resb_result():
  - remove redundant ResourceData parameter
  - simplify memory management, and various small simplifications
  - /LOCALE/path reuse valid locale, no ures_open()
  - pull alias-fetching code into separate function getAliasTargetAsResourceBundle()
  - `const char *` for keyPath pieces
  - s/noAlias/recursionDepth/
- getAllItemsWithFallback() set correct parentBundle.fValidLocaleDataEntry

3 years agoICU-21671 Corrected a bug in SimpleDateFormat.subParse() that was causing us to alway...
Rich Gillam [Sat, 28 Aug 2021 00:03:22 +0000 (17:03 -0700)]
ICU-21671 Corrected a bug in SimpleDateFormat.subParse() that was causing us to always parse quarter names that begin
with numbers as though the number was the whole quarter name.

3 years agoICU-21710 Additional clean up after removing BOYER_MOORE code from usearch.cpp
Jeff Genovy [Fri, 27 Aug 2021 02:23:16 +0000 (19:23 -0700)]
ICU-21710 Additional clean up after removing BOYER_MOORE code from usearch.cpp

Changes:
- We can completely remove the shift tables and related fields from
  data structs.

- Creation of UStringSearch objects should be faster now,
  as it doesn't waste time computing the unused shift tables.

- The sizeof(UStringSearch) is decreased from 5240 to 3192, so
  this should help to reduce memory for applications that create many string search objects.

Note regarding the comments on initialize(). It actually does not set illegal argument error if pattern is all ignoreables. Added a test case for it.

3 years agoICU-21555 Fix typos in repo from letter d to i
Erik Torres [Fri, 27 Aug 2021 01:16:53 +0000 (01:16 +0000)]
ICU-21555 Fix typos in repo from letter d to i

Fix typos in repo from letter d to i

3 years agoICU-21617 Remove work around of uninstalling GCC11 in CI build
Erik Torres [Fri, 27 Aug 2021 00:20:33 +0000 (00:20 +0000)]
ICU-21617 Remove work around of uninstalling GCC11 in CI build

Remove work around of uninstalling GCC11 in CI build

3 years agoICU-21130 Update cpp14 to cpp17 in CI builds
Erik Torres [Thu, 26 Aug 2021 21:46:57 +0000 (21:46 +0000)]
ICU-21130 Update cpp14 to cpp17 in CI builds

See #1827

3 years agoICU-21598 Add CI builds that exercises the data filtering on windows
Erik Torres [Thu, 26 Aug 2021 20:52:58 +0000 (20:52 +0000)]
ICU-21598 Add CI builds that exercises the data filtering on windows

See #1820

3 years agoICU-20973 Use standard keywords true & false to initialize type bool.
Fredrik Roubert [Thu, 26 Aug 2021 13:15:30 +0000 (15:15 +0200)]
ICU-20973 Use standard keywords true & false to initialize type bool.

Now when all equality operators return standard bool (commit 633438f),
it no longer makes any sense to use the ICU4C constants TRUE & FALSE
or local variables of type UBool for their return value.

3 years agoICU-21710 Remove BOYER_MOORE dead code from usearch.cpp
Jeff Genovy [Thu, 12 Aug 2021 20:17:52 +0000 (13:17 -0700)]
ICU-21710 Remove BOYER_MOORE dead code from usearch.cpp

3 years agoICU-21705 ICU-21706 Fix crash if ICU's default locale has BCP47 Unicode Extensions...
Jeff Genovy [Tue, 10 Aug 2021 01:37:22 +0000 (18:37 -0700)]
ICU-21705 ICU-21706 Fix crash if ICU's default locale has BCP47 Unicode Extensions, and fix ures_openDirect crash with NULL locale ID.

Add test case for ures_openDirect with NULL locale ID.

3 years agoICU-20973 Rewrite polymorphic CacheKeyBase equality operators for C++20.
Fredrik Roubert [Wed, 25 Aug 2021 16:11:20 +0000 (18:11 +0200)]
ICU-20973 Rewrite polymorphic CacheKeyBase equality operators for C++20.

The existing polymorphic equality operators that use different types for
the `this` and `other` objects are ambiguous with C++20 resolution rules
that require equality for reversed arguments.

In order to resolve that, while also possibly making the implementation
somewhat simpler overall, the implementation classes (LocaleCacheKey
and DateFmtBestPatternKey) now get normal (non-polymorphic) equality
operators that are trivially non-ambiguous (and as a bonus also don't
need any type casts), while the dynamic type checking logic is moved
into protected helper functions, which in the end are invoked
(without any ambiguity) by friend operators in the base class.

This way, all equality testing of cache key objects ends up taking one
of these two possible paths:

1. Both sides of the equality operator are of the same implementation
   type (ie. LocaleCacheKey or DateFmtBestPatternKey):

   The type specific equality operator is called directly, comparing the
   relevant attributes of the two objects directly.

2. The two sides of the equality operator are either of different types
   or of some base class type:

   The friend equality operators of CacheKeyBase call the virtual helper
   function to figure out whether the two objects are actually of the
   same type and if they are and this type is an implementation type
   then does the necessary type cast to get to 1.

3 years agoICU-21215 Add default constructor to FormattedNumberRange cldr/2021-08-25
Shane F. Carr [Fri, 20 Aug 2021 20:04:37 +0000 (15:04 -0500)]
ICU-21215 Add default constructor to FormattedNumberRange

3 years agoICU-21590 Add skeleton syntax for integer-width-trunc
Shane F. Carr [Fri, 20 Aug 2021 23:01:26 +0000 (18:01 -0500)]
ICU-21590 Add skeleton syntax for integer-width-trunc

3 years agoICU-21648 limit backslash-uhhhh escapes to ASCII hex digits
Markus Scherer [Tue, 24 Aug 2021 19:42:40 +0000 (12:42 -0700)]
ICU-21648 limit backslash-uhhhh escapes to ASCII hex digits

3 years agoICU-21663 UnicodeSetIterator: make protected members private
Markus Scherer [Tue, 24 Aug 2021 21:12:55 +0000 (14:12 -0700)]
ICU-21663 UnicodeSetIterator: make protected members private

3 years agoICU-21708 Update ant version in cldr-to-icu tool
Yoshito Umaoka [Mon, 23 Aug 2021 22:24:49 +0000 (18:24 -0400)]
ICU-21708 Update ant version in cldr-to-icu tool

dependabot reported ant 1.10.9 has a security problem and suggested to update to 1.10.11.

3 years agoICU-21655 widen Java character APIs from char to int arguments
Markus Scherer [Tue, 24 Aug 2021 01:36:57 +0000 (18:36 -0700)]
ICU-21655 widen Java character APIs from char to int arguments

3 years agoICU-21581 Update ICU4J LICENSE file
Yoshito Umaoka [Wed, 18 Aug 2021 16:34:58 +0000 (12:34 -0400)]
ICU-21581 Update ICU4J LICENSE file

3 years agoICU-21693 Fix FormattedNumber::toDecimalNumber on 0
Shane F. Carr [Sat, 21 Aug 2021 03:30:31 +0000 (22:30 -0500)]
ICU-21693 Fix FormattedNumber::toDecimalNumber on 0

3 years agoICU-21635 Unicode 14 data files 20210820, line break LB30b.2
Markus Scherer [Mon, 23 Aug 2021 03:24:02 +0000 (03:24 +0000)]
ICU-21635 Unicode 14 data files 20210820, line break LB30b.2

See #1807

3 years agoICU-21584 Fixed Java7 build error in earlier fix.
Rich Gillam [Fri, 20 Aug 2021 17:28:02 +0000 (10:28 -0700)]
ICU-21584 Fixed Java7 build error in earlier fix.

3 years agoICU-21581 lingering exhaustive fail, need to separately skip sd_Deva month name exemp...
Peter Edberg [Thu, 19 Aug 2021 23:00:54 +0000 (16:00 -0700)]
ICU-21581 lingering exhaustive fail, need to separately skip sd_Deva month name exemplar test

3 years agoICU-21581 integrate CLDR release-40-alpha1 to ICU trunk
Peter Edberg [Thu, 19 Aug 2021 20:28:43 +0000 (13:28 -0700)]
ICU-21581 integrate CLDR release-40-alpha1 to ICU trunk

3 years agoICU-21358 Use sign position to format approximate numbers
Shane F. Carr [Wed, 17 Mar 2021 17:45:58 +0000 (17:45 +0000)]
ICU-21358 Use sign position to format approximate numbers

See #1635

3 years agoICU-21581 integrate CLDR 40a0 to ICU trunk
Peter Edberg [Wed, 18 Aug 2021 23:51:53 +0000 (16:51 -0700)]
ICU-21581 integrate CLDR 40a0 to ICU trunk

3 years agoICU-21244 Fix the Valgrind status badge in the top-level Readme.
Jeff Genovy [Wed, 18 Aug 2021 20:07:55 +0000 (13:07 -0700)]
ICU-21244 Fix the Valgrind status badge in the top-level Readme.

3 years agoICU-20973 Delete unnecessary deprecated TimeUnitFormat::operator!=().
Fredrik Roubert [Tue, 17 Aug 2021 13:28:19 +0000 (15:28 +0200)]
ICU-20973 Delete unnecessary deprecated TimeUnitFormat::operator!=().

An operator!=() is already defined by a base class so this class doesn't
need to define it again and not doing so avoids a C++20 ambiguity.

This simplifies the code.

3 years agoICU-21729 Fix setLanguageTag doc matching Java
Frank Tang [Wed, 18 Aug 2021 19:00:03 +0000 (12:00 -0700)]
ICU-21729 Fix setLanguageTag doc matching Java