Commit graph

23108 commits

Author SHA1 Message Date
Mojca Miklavec
32d279a437 ICU-21896 Use double base in pow()
gcc 5.5 on Solaris refuses to recognise pow(int, int32_t)
2022-01-26 11:26:11 -08:00
Mojca Miklavec
406d90000f ICU-13543 Do not remove -std=c++11 from compiler flags on Solaris 2022-01-21 10:54:05 -06:00
allensu05
c9fae4bda4 ICU-21699 Concatenate Katakana chars
See #1962
2022-01-19 23:07:22 -08:00
allenwtsu
470e44c551 ICU-21699 Separate lb and lw
See #1959
2022-01-19 22:46:18 -08:00
allenwtsu
d0290c03db ICU-21699 Phrase based breaking(C++)
See #1936
2022-01-13 20:22:05 -08:00
Peter Edberg
23081486ff ICU-21353 Implement DateTimePatternGenerator use of correct datetime pattern;
includes new getter/setter API per TC discussion.
2022-01-13 19:16:37 -08:00
allenwtsu
06ef8867f3 ICU-21699 Fix CjkBreakEngine performance issue
1. vector.contains() uses sequential comparison, O(n).
   As the vector size is great, the performance will be impacted.
   Remove this unnecessary check, vector.contains(), in C++.

2. At Java's CjkBreakEngine, replace "vector.contains()" with "if(pos > previous)" to deal with duplicate breakpoint position.
   This way, C++ and Java implementation will be synchronous.
   Test: ant checkTest -Dtestclass='com.ibm.icu.dev.test.rbbi.RBBITest'
   (RBBTest#TestBreakAllChars() can generate duplicate position for word break. It could pass with this change)
2022-01-11 16:46:32 -08:00
Hugo van der Merwe
44c7137ae5 ICU-21862 icu4c unit conversions: support inverting 0 and Infinity (for vehicle-fuel)
See #1947
2022-01-09 04:04:06 -06:00
allenwtsu
08c3f99c08 ICU-21878 Sync icu4j's CjkBreakEngine to icu4c's
See #1953
2021-12-30 14:47:37 -08:00
Andy Heninger
904cf62457 ICU-21763 UVector cleanup in Formatting Code
Revise uses of UVector in Formatting related code 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 uses of UVector::addElementX() to the
new adoptElement() or addElement() functions, as appropriate, and using
LocalPointers for tracking memory ownership.
2021-12-16 11:56:30 -08:00
gnrunge
f37a5e0090 ICU-21796 Rename bazel build files from BUILD to BUILD.bazel. This can
prevent conflicts when ICU users have their own BUILD files already.
2021-12-16 06:55:09 -08:00
Hugo van der Merwe
7b05da0910 ICU-21863 Fix div-by-zero in ICU4J, test inverse unit conversions
Also cleans up some old icu-units TODOs:
- This PR fixes icu-units#38 and icu-units#63 TODOs (now part of ICU-21862)
- icu-units#21 is obsolete
2021-12-02 20:25:58 +01:00
Iain Ireland
d385b3c273 ICU-21855 Export case data for ICU4X 2021-12-02 09:30:20 -08:00
Frank Tang
704415402a ICU-21847 Move UnicodeSet to stack in constructor
See #1941
2021-12-01 22:23:47 -08:00
Elango Cheran
57d41c92a1 ICU-21762 Export Script_Extensions data in icuexportdata tool
See #1933
2021-12-01 09:03:31 -08:00
Frank Tang
8d79987eea ICU-21865 Move include ctgmath to complex
See #1948
2021-12-01 01:57:06 -08:00
Andy Heninger
fa30c0eeb4 ICU-21763 UVector cleanup, continued.
Revise uses of UVector in the next batch of files 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 uses of UVector::addElementX() to the
new adoptElement() or addElement() functions, as appropriate, and using
LocalPointers for tracking memory ownership.
2021-11-30 09:12:16 -08:00
Hugo van der Merwe
54e4120738 ICU-21613 Fix undefined behaviour in ComplexUnitsConverter::applyRounder 2021-11-30 11:26:37 +01:00
Fredrik Roubert
93b7f6e98d ICU-21819 Make all comparison operators const. 2021-11-22 15:11:11 +01:00
Shane F. Carr
3228b200a4
ICU-21807 Merge maint-70 to main 2021-11-17 12:36:59 -06:00
Andy Heninger
c48f218600 ICU-21763 UVector cleanup in Locale & Region Code
Revise uses of UVector in Locale and Region related code 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 involve switching uses of UVector::addElementX() to the new
adoptElement() or addElement() functions, as appropriate, and using
LocalPointers for tracking memory ownership.

In Region::loadRegionData(), improved the overall error detection and recovery.
2021-11-11 16:06:36 -08:00
Yoshito Umaoka
7a93cd146c ICU-21825 Integrate tzdata2021a4 including America/Coral_Harbour Link fix 2021-11-08 13:04:10 -05:00
Markus Scherer
51016c12c8 ICU-21820 ucase_toFullXyz() reset output pointer 2021-11-05 15:27:41 -07:00
Andy Heninger
fd5a346b3d ICU-21778 UnicodeString::clone error handling fix
Change UnicodeString::clone() to return a nullptr if the underlying copy
constructor produces a bogus string. This can happen if the copy constructor
encounters a memory allocation failure in allocating the copy's internal string
buffer, or if the string being copied was already bogus.

The change is consistent with other ICU clone functions, which are generally
defined to return nullptr in case of errors.
2021-11-05 13:48:08 -07:00
Jérémy Lal
698efda42b ICU-21793 Fix ucptrietest golden diff 2021-11-03 15:01:41 -07:00
Andy Heninger
83eb2ee1d8 ICU-21763 UVector cleanup in vtzone.cpp
Revise uses of UVector in vtzone.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 uses of UVector::addElementX() to the
new adoptElement() or addElement() functions, as appropriate, and using
LocalPointers for tracking memory ownership.
2021-10-29 17:38:42 -07:00
Andy Heninger
f66c8ca36b ICU-21763 UVector cleanup in time zone code
Revise uses of UVector in time zone related code 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 involve switching uses of UVector::addElementX() to the new
adoptElement() or addElement() functions, as appropriate, and using
LocalPointers for tracking memory ownership.
2021-10-29 17:37:13 -07:00
Shane F. Carr
a56dde820d ICU-21579 Fix warnings in number formatting code 2021-10-27 17:19:31 -07:00
Yoshito Umaoka
a061dfea1f ICU-21811 Adding local region mapping for Coral Harbour and integrating revised tz 2021a3 (2021e) data. 2021-10-27 17:10:41 -04:00
Jacky_Yin
31b4b9cc32 ICU-21800 Fix ARM64 search path for Windows 2021-10-27 11:00:08 -07:00
Yoshito Umaoka
2921a81ee4 ICU-21811 TZ update 2021a (2021e) 2021-10-25 13:24:25 -04:00
Yoshito Umaoka
bd1f7742e7 ICU-21797 TZ 2021d equivalent updates based on 2021a (ICU 2021a2) 2021-10-22 18:17:33 -04:00
Markus Scherer
75ac80bd68 ICU-21580 change site.icu-project.org to icu.unicode.org etc 2021-10-21 15:54:42 -07:00
Jeff Genovy
58bee95ab6 ICU-21803 Fix Windows build break on MSYS2 with GCC 11 2021-10-21 14:18:04 -07:00
Shane Carr
5c4bb5fa1b ICU-21776 Update double conversion 2021-10-20 18:20:50 -07:00
Markus Scherer
a0baa69277 ICU-21580 fix links to CLDR Language Plural Rules 2021-10-20 11:45:46 -07:00
Markus Scherer
b303de1ff1 ICU-21524 UnicodeSet.hasStrings(): no complement in toPattern() 2021-10-19 12:24:15 -07:00
Peter Edberg
3a601a80a3 ICU-21776 integrate CLDR release-40-beta3 to ICU maint/maint-70 2021-10-14 14:48:15 -07:00
Peter Edberg
38337a53c0 ICU-21776 integrate CLDR release-40-beta2 to ICU maint/maint-70 2021-10-06 09:04:38 -07:00
Craig Cornelius
60c1857f96 ICU-21581 ICU Change Reports for 70rc
See #1877
2021-09-29 16:17:15 -07:00
Shane F. Carr
6115e58966 ICU-21581 Update double-conversion 2021-09-29 12:41:28 -05:00
Steven R. Loomis
4a8b16056f ICU-21764 icu-data-bin: fix filenames to nn_n
ex: icu4c-70_1-data-bin-b.zip
(was incorrectly "70.1" before)
2021-09-29 10:40:55 -07:00
Peter Edberg
4fd10ba2b7 ICU-21581 check non-stable API macros (mostly U_HIDE_INTERNAL_API) 2021-09-29 09:05:40 -07:00
Peter Edberg
2b76d335fb ICU-21581 BRS 70rc, update urename.h pass 2 2021-09-28 16:48:50 -07:00
yumaoka
7561cb2857 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
2021-09-28 18:12:00 -04:00
Markus Scherer
109a830ed2 ICU-21545 fix Unicode properties Bazel build 2021-09-27 17:49:44 -07:00
Erik Torres
da5fc8e730 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 :)
2021-09-23 09:54:12 -07:00
Elango Cheran
2660845480 ICU-21714 Use FixedDecimal instead of double for plural samples in tests
See #1875
2021-09-22 18:28:15 -07:00
Jeff Genovy
0a478416d2 ICU-21533 Lazily create the internal break iterator used in StringSearch, and improve error handling.
Change NULL to nullptr.
2021-09-22 15:25:26 -07:00
Younies
f1f0b22a2a ICU-21544 Throw argument error when the units are not convertible. 2021-09-22 19:55:58 +02:00