Commit Graph

31048 Commits

Author SHA1 Message Date
Markus Scherer
d2ea4513dc ICU-20700 reimplement acceptLanguage() using the LocaleMatcher; replace older accept-language-string parsing by LocalePriorityList 2020-03-08 08:01:31 -07:00
Markus Scherer
3edff03393 ICU-20915 LocaleMatcher no match: always getSupportedIndex()=-1; remove defaultLocaleIndex field; constructor check if locales are equivalent to default, not just equal; simplify locale sorting; minor builder & test deflaking 2020-03-08 07:54:46 -07:00
Frank Tang
94c9ff2089 ICU-20991 Trace BreakIterator/BreakEngine creation
See #1014
2020-03-06 14:18:43 -08:00
Shane F. Carr
01523b4da6 ICU-20974 Fix exhaustive test failures 2020-03-06 01:34:51 -08:00
Jeff Genovy
7302079653 ICU-21000 Fix abort called by DateTimePatternGenerator::getDefaultHourCycle
If you call the API getDefaultHourCycle on an empty DateTimePatternGenerator
instance (ie: no locale) then it calls UPRV_UNREACHABLE which calls abort().
We should return an error code instead of aborting.
2020-03-05 18:19:04 -08:00
Jeff Genovy
ce7e060d50 ICU-21001 Fixing problems found by running valgrind.
This makes fixes in order to run the icu4c tests (intltest, cintltst,
iotest, and icuinfo) cleanly under valgrind with --leak-check=full.
2020-03-05 14:34:20 -08:00
Jeff Genovy
bd08ba2c5b ICU-21004 Fix buffer over-read in ucal_open
The issue shows under valgrind or as an Address Sanitizer failure.
2020-03-05 14:09:34 -08:00
Shane Carr
0b7f6b1864 ICU-20974 Correctly handle extreme values of double. 2020-03-05 13:40:59 -08:00
Peter Edberg
ad00acac12 ICU-20980 integrate CLDR release-36-1 (final) to maint-66 2020-03-05 13:25:35 -08:00
Frank Tang
be3ee4cc63 ICU-20967 add millisecond to DateIntervalFormat
See #978
2020-03-05 10:55:19 -08:00
Shane Carr
e572de5516 ICU-20961 Return correct currency plural pattern from DecimalFormat 2020-03-04 19:43:57 -08:00
Jeff Genovy
1424d9b6e2 ICU-21003 Fix CI config to use new Git LFS syntax, add timeout to ICU4J exhaustive test
(cherry-picked from commit eb92d41a1c)
2020-03-04 17:48:40 -08:00
Jeff Genovy
eb92d41a1c ICU-21003 Fix CI config to use new Git LFS syntax, add timeout to ICU4J exhaustive test 2020-03-04 14:08:23 -08:00
Daniel Ju
6119662f03 ICU-20980 BRS66GA Update version numbers and README files 2020-03-04 11:12:47 -08:00
Peter Edberg
0778144ff6 ICU-20987 integrate CLDR release-37-alpha2 to master (new tools) 2020-03-03 15:01:28 -08:00
Peter Edberg
63e480dedc ICU-20987 integrate CLDR release-37-alpha1 to master (using new tooling) 2020-02-27 16:27:50 -08:00
Jeff Genovy
e1aa9119ad ICU-20975 BRS66rc Fix warnings found when building ICU4C samples. 2020-02-26 13:04:08 -08:00
Yoshito Umaoka
62bd8ac914 ICU-20975 BRS ICU 66rc - J API signature, API change report and serialization test data
- Added ICU 66.1 serialization test data and removed ICU 61.1 serialization test data.
- Added ICU 66 API signature file and removed ICU 56 API signature file
- Updated API change report
2020-02-26 14:01:27 -05:00
Shane F. Carr
6417a3b720
ICU-20919 Merge maint/maint-66 into master 2020-02-21 21:21:26 -08:00
Shane Carr
bb1f00efb8 ICU-20919 Merge branch 'maint/maint-66' into maint-66-merge
Conflicts:
	icu4j/main/shared/data/icudata.jar
2020-02-21 18:21:05 -08:00
David Beaumont
76a32b7c93 ICU-20693 Update README.txt in lib directory to lessen risk of failure when setting up libs.
See #999
2020-02-21 18:33:32 +01:00
Laurent Stacul
3b58179396 ICU-20972 Fix invalid conversion from const char8_t* to const char* (C++20) 2020-02-20 13:09:18 -08:00
Markus Scherer
af9ef2650b ICU-20893 Unicode 13 data 2020feb19 2020-02-19 22:02:35 -08:00
Jeff Genovy
77fcded28b ICU-20969 Fix file permissions (-x) on ICU4C source files. 2020-02-19 17:00:06 -08:00
Peter Edberg
d95621c57f ICU-20975 BRS66rc update Unicode license copyright 2020-02-19 15:23:29 -08:00
Vincent Torri
caa25fd878 ICU-20842 Fix library names in pkg-config files on Windows (mingw-w64)
since the move of the DLL to bin/ the library names in .pc files is
wrong. With ICU 65.1, icu-uc.pc contains

Libs: -L${libdir} -licuuc65 -licudt65

the version number should not appear. Indeed, the linker looks for the
libraries in $prefix/lib in the following order (see [1]):

libxxx.dll.a
xxx.dll.a
libxxx.a
cygxxx.dll
libxxx.dll
xxx.dll

As the is only the import library with no versioning (which is normal),
the is a link error when using ICU pc files.

[1] https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Using_ld_the_GNU_Linker/win32.html
2020-02-19 14:57:59 -08:00
Steven R. Loomis
532954ba14 ICU-20975 update API Change Report for 66
- Compared against ICU4C 65.1
- no substantive change. Just dropped 'preview'
2020-02-19 14:56:41 -08:00
Mojca Miklavec
4a3a457b38 ICU-20852 Fix Makefile to build on Sparc Solaris 2020-02-19 12:42:40 -08:00
Peter Edberg
ea907cdf5f ICU-20975 integrate CLDR release-36-1-beta to maint-66 2020-02-18 23:02:26 -08:00
Andy Heninger
14bcaaf58e ICU-20876 Regex Grapheme Cluster matching with Break Iterators.
Change the implementation of grapheme cluster matching in regex to use an ICU
break iterator instead of a little one-off state machine.

The old implementation had fallen behind the Unicode UAX-29 specification for
graphem clusters, and could not be easily updated.

The implementation follows the same general pattern that is used for finding
word boundaries with an ICU break iterator. In reviewing that code, a few
improvements to the handling of ICU error codes were also made.

Also note that this change adds a new dependency on Break Iteration.  Regex
patterns that previously would work with ICU builds that were configured with
no break iteration will now fail. But only if they include \X for matching
grapheme cluster boundaries.
2020-02-18 18:28:10 -08:00
Daniel Ju
925f255092 ICU-20975 BRS66RC Update version numbers, README files, configure 2020-02-18 14:40:46 -08:00
Jeff Genovy
ed9ea2e7ac ICU-20322 Do "make install" on the CI Builds for MinGW.
Also recursively list out the contents of the install directory,
and run the icuinfo.exe program.
2020-02-12 14:19:15 -08:00
Jeff Genovy
c8eb90cfff ICU-20322 Add icudt*.dll and srtest.exe to .gitignore file. 2020-02-12 14:19:15 -08:00
Jeff Genovy
783ee4c902 ICU-20322 On MinGW, move the DLLs to the "bin" directory.
This change builds on Vincent Torri's changes.

This installs the ICU DLL files in $prefix/bin instead of $prefix/lib.

Note: In order to disable this change in behavior you can edit
the "mh-mingw*" file(s). If you set the variable MINGW_MOVEDLLSTOBINDIR
to NO instead of YES, then it will retain the previous behavior of
installing the DLLs into the bin folder.
2020-02-12 14:19:15 -08:00
Vincent Torri
5fbb4d3a5f ICU-20322 Install dll in $prefix/bin instead of $prefix/lib 2020-02-12 14:19:15 -08:00
Andrew Paprocki
cd41cba82a ICU-20895 ICU_TIMEZONE_FILES_DIR_PREFIX_ENV_VAR
Adds `ICU_TIMEZONE_FILES_DIR_PREFIX_ENV_VAR`, similar to
`ICU_DATA_DIR_PREFIX_ENV_VAR`, that specifies an environment variable
to retrieve and prepend to the ICU time zone data file path.
2020-02-12 12:45:12 -05:00
Frank Tang
6ea0fc7713 ICU-20834 Implement UTS35 Locale ID Canonicalization
See #951
2020-02-11 22:44:39 -08:00
Mihai Nita
dd50e38f45 ICU-20738 Best-match pattern for 'sS' uses <appendItem> data 2020-02-10 07:59:52 -08:00
Shane Carr
9eca171a39 ICU-20954 Fix currency spacing in suffix. 2020-02-06 09:56:32 -08:00
Jeff Genovy
c0a7ecc790 ICU-20953 Tell GitHub to treat JSON as JSONC to fix syntax highlighting for comments. 2020-02-05 11:33:53 -08:00
Elango Cheran
1a9fb8ec33 ICU-13836 C++ port of adding exponent for better plurals for compact decimal format 2020-02-05 09:08:48 -08:00
Andy Heninger
d6b88d49e3 ICU-20939 Fix problem w regexp \b boundaries & UTF-8 text
In regular expressions, when testing for word boundaries with \b, the
boundaries were incorrect when in Unicode mode, meaning that an ICU word break
iterator is being used to find the boundaries, and the text being matched is
UTF-8 encoded.

The bug stemmed from a misunderstanding of how string indexes work with UText
and break iterators, leading to the inclusion of code to convert from UTF-8 to
UTF-16 indexing, when what was wanted was the original UTF-8 index everywhere.
Removing the indexing conversion fixes the problem.
2020-02-03 16:51:17 -08:00
Frank Tang
b7d08bc04a ICU-20958 Prevent SEGV_MAPERR in append
See #971
2020-02-03 13:22:30 -08:00
Andy Heninger
54a60fe6f4 ICU-11548 Improve regex static UnicodeSets handling
Compiled regular expression patterns make use of several shared common
UnicodeSets. This change simplifies the creation and use of these
static UnicodeSets.

- Pointer fields to the static sets are removed from the compiled patterns,
  and the static variables are accessed directly. The deleted pointers
  were a hold-over from earlier code that did not use shared statics.

- The UnicodeSet pattern literals are changed from hex constants to
  u"string literals".

- The size of fRuleSets (from regexst.h) is changed from a hard-coded 10
  to the number of UnicodeSets actually required. Doing this required
  a change to regexcst.pl to export the required size. Changing and
  rerunning this perl code resulted in massive but benign changes to
  the generated file regexcst.h, the result of perl having changed its
  order of enumeration of hashes since the file was last regenerated.

- UnicodeSets are frozen when possible. Should result in faster matching.
2020-01-30 15:13:07 -08:00
Younies
b9bb61259f ICU-20744 Add VS Code configuration files for c++
See #899
2020-01-29 14:21:01 +01:00
Egor Pugin
76f190024d ICU-20938 Add --skip-dll-export option to genccode to prevent exporting statically linked ICU data from executables. 2020-01-23 12:00:29 -08:00
Shane Carr
edf3f9c727 ICU-20099 Implementing Java ListFormatter proposals for ICU 67.
See #904
2020-01-22 16:45:31 -08:00
Keita Suzuki
a4a5c603ac ICU-20767 Potential negative index access in one of the sample codes 2020-01-22 13:13:27 -08:00
Elango Cheran
ee2d1e7b9b ICU-13836 Represent suppressed exponent for better plural support 2020-01-21 15:58:00 -08:00
David Beaumont
6a0e9ce0cd ICU-20693 Tidyups and small fixes for ICU conversion code 2020-01-21 10:20:51 +01:00