Commit Graph

21825 Commits

Author SHA1 Message Date
Frank Tang
6671947d3e ICU-20602 copyErrorTo() functions should be const 2019-05-30 17:17:52 -07:00
Frank Tang
6e6e65904e ICU-20641 Fixes undefined-shift
ICU-20641 Fixes undefined-shift See #663
2019-05-30 15:36:18 -07:00
Shane Carr
46c86b47cc ICU-20629 Fixing DTPG hour-format locale and region fallback logic.
Includes changes in C and J.  Makes region.cpp no longer depend on DecimalFormat.  See also: CLDR-13071, ICU-20640, ICU-9982.
2019-05-29 16:37:40 -07:00
Norbert Runge
633a975849 ICU-20638 Renames fuzzer target files to end with the .cpp suffix. Was .cc. 2019-05-29 16:06:10 -07:00
Shane Carr
f9ea5351b0 ICU-20625 Fixing uninitialized memory in DTPG detected by Valgrind. 2019-05-29 15:07:05 -07:00
Shane Carr
c8c3fbca28 ICU-20616 Allow bidi marks around the sign in exponent parsing. 2019-05-27 22:39:18 -07:00
Andy Heninger
afa9b9b48e ICU-20588 UMutex, add cleanup of underlying mutexes, and simplify usage model 2019-05-24 13:24:59 -07:00
Frank Tang
bb22fc1a27 ICU-20602 add LocaleBuilder::copyErrorTo
Check the status after the setter and test err.

Add more check for errors.

change comments
2019-05-22 18:03:12 -07:00
Frank Yung-Fong Tang
b7ffd7b6d0 ICU-20613 fix missing </ClInclude> 2019-05-21 16:03:20 -07:00
Alon Bar-Lev
a5bbd505d7 ICU-20578 headers: guard all C++ headers using U_SHOW_CPLUSPLUS_API
support including all files in C

cleanup and simplify the test/hdrtest

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
2019-05-14 17:18:06 -07:00
Frank Tang
53dd621e3a ICU-12760 support UDISPCTX_TYPE_SUBSTITUTE_HANDLING
add tests

remove printf

fix localeDisplayName and add tests

fix fallback

remove get
2019-05-13 17:38:07 -07:00
Frank Tang
cb40d8b1a5 ICU-20595 Make icu::TimeZone::AdoptDefault thread safe
correct the mutex

Remove comments about not thread safe
2019-05-13 16:00:27 -07:00
Mihai Nita
c1ce6d9163 ICU-20591 Increased the date rowspan to include the argSkeletonText line 2019-05-08 16:09:08 -07:00
Shane F. Carr
06114c5108 ICU-20593 Consuming ignore_xml_deprecates option in BUILDRULES.py.
The option was added in b603285, but the option was not being used.
2019-05-08 13:58:53 -07:00
Andy Heninger
b772241b52 ICU-20520 UMutex refactoring.
- Use STATIC_NEW for mutex creation, to avoid order-of-destruction problems
    by avoiding destruction altogether, while avoiding memory leak reports.

  - Remove UConditionVar, replace with direct use of std::condition_variable
2019-05-07 13:50:49 -07:00
Shane Carr
702fdb6c33 ICU-20593 Renaming Python buildtool to icutools.databuilder. 2019-05-07 13:42:06 -07:00
Shane F. Carr
9704216ef7 ICU-20529 Generate res_index on partial resource trees. 2019-05-06 16:04:36 -07:00
Shane Carr
4b04d703ab ICU-20593 Buildtool: Implementing new "additive" mode. 2019-05-06 15:48:14 -07:00
Shane Carr
b603285082 ICU-20593 Buildtool: adding some options and improving exec mode. 2019-05-06 15:37:25 -07:00
Shane Carr
e27c075b92 ICU-20593 Genrb: Remove keys if bundle is empty after filtering. 2019-05-06 15:08:02 -07:00
Markus Scherer
f1d4aa72d1 ICU-20572 build & test with U_NO_DEFAULT_INCLUDE_UTF_HEADERS 2019-05-02 09:10:25 -07:00
Steven R. Loomis
075cefb2e2 ICU-20575 fix broken default locale mapping for C.UTF-8
Regression was in 1afef30549
PR #418 [ICU-20187]

- We dropped the mapping from "C" in uloc_canonicalize,
  but then putil did not handle cases where a codepage was
  set (such as C.UTF-8).

- Add an additional check in uprv_getDefaultLocaleID() for
  locales that end up as "C" or "POSIX" after removing codepage
  suffix.

- Also fix regression where aa@bb would become aa__BB__BB
  (incorrectly doubled __BB)
2019-04-25 14:59:32 -07:00
Alon Bar-Lev
0aa19c0d22 ICU-20530 Fix header issues based on test/hdrtst
Remove explicit extern "C++" scope.

Remove C++ macros in C mode.

Fix issues detected by make -C test/hdrtst.

Run test/hdrtest during CI to detect future breakage.

Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
2019-04-25 14:51:43 -07:00
Jeff Genovy
693adf3987 ICU-20558 Fix regression in DateTimePatternGenerator
This fixes a regression introduced by commit 
b12a927c93 for issue ICU-13778.

The above commit improved the error checking in the
DateTimePatternGenerator class, adding checks for errors/failures
where there previously was none at all. This was done in order to
catch catastrophic errors like out-of-memory (OOM), and properly
report them to the caller, rather than ignoring/hiding these errors.

However, in doing so it exposed a case where the code was depending
on ignoring errors in order to fall-back to the Gregorian calendar
when the default ICU locale is set to root.

This restores the previous behavior, by allowing the error of
U_MISSING_RESOURCE_ERROR to fall-though and continue without
reporting back an error to the caller.

Note: This regression was technically introduced in ICU 63, and
also effects ICU 64 as well.
2019-04-25 10:52:06 -07:00
Fredrik Roubert
711e7e003a ICU-20573 Handle NULL return value correctly, it means empty not error. 2019-04-25 13:05:14 +02:00
Andy Heninger
a97cfb01b9 ICU-20570 UInitOnce instances, add explicit initialization where it was missing. 2019-04-24 18:15:13 -07:00
Fredrik Roubert
4bd1ee008c ICU-20445 Pass ByteSink to ulocimp_addLikelySubtags(). 2019-04-23 19:45:28 +02:00
Jeff Genovy
974087aa0b ICU-20445 Need to export the CharStringByteSink class for Windows and OSX. 2019-04-23 19:45:28 +02:00
Andy Heninger
d685cacd9b ICU-20391 Fix regexp crash with nested look-behinds, from fuzz testing. 2019-04-17 22:17:47 -07:00
Shane F. Carr
14eb026570
ICU-20511 Merge release-64-2 to master 2019-04-17 14:15:59 -07:00
Shane Carr
08766f4c02 ICU-20511 Merge tag 'release-64-2' into 64-merge-branch 2019-04-17 13:37:22 -07:00
Steven R. Loomis
e2d8530616 ICU-20563 fix macosx rpath breakage in the data build
- in the rpath case, we do NOT want a trailing space in LD_SONAME

regression was introduced in ICU-20526 with
 83a0542b5b (master)
 b76cb6517e (in maint-64)

(cherry picked from commit 1c553b9cf2)
2019-04-17 12:03:05 -07:00
Steven R. Loomis
1c553b9cf2 ICU-20563 fix macosx rpath breakage in the data build
- in the rpath case, we do NOT want a trailing space in LD_SONAME

regression was introduced in ICU-20526 with
 83a0542b5b (master)
 b76cb6517e (in maint-64)
2019-04-17 11:48:23 -07:00
Jeff Genovy
633b6510c4 ICU-20513 Treat MSVC warnings C4910 and C4003 as errors in the library code for CI builds. 2019-04-15 13:18:02 -07:00
yumaoka
f508bc491e ICU-20554 Disabled current date sensitive Japanese era test cases for now. 2019-04-15 09:49:04 -04:00
Shane F. Carr
be25c277fd
ICU-20511 Merge release-64-2-rc to master 2019-04-12 16:57:29 -07:00
Andy Heninger
bdb1806580 ICU-20544 Regex, Fix assertion failure in positive look-behind 2019-04-12 15:27:40 -07:00
Shane Carr
5a4d26a900 ICU-20511 Merge tag 'release-64-2-rc' into 64-merge-branch
- Rebuilds jar files to resolve merge conflict
2019-04-11 15:29:44 -07:00
Shane F. Carr
cab01e522e
ICU-20511 Merge release-64-1 to master 2019-04-11 15:20:09 -07:00
Andy Heninger
7053363323 ICU-20544 Regex, fix min/max match length computation with negative look-behind patterns. 2019-04-10 22:38:25 -07:00
yumaoka
cc8946607a ICU-20515 Merging tz2019a changes. 2019-04-11 00:45:43 -04:00
Shane F. Carr
a268e3a299 ICU-20511 Merge branch 'master' into 64-merge-branch 2019-04-10 19:13:00 -07:00
Peter Edberg
5b3f1c01ed ICU-20550 jaEra: use all valid eras for calendar calculations (#614) 2019-04-10 19:02:24 -07:00
Shane Carr
ab657778e4 ICU-20543 Fix -Wundef in library and test code. 2019-04-10 18:52:16 -07:00
Peter Edberg
52d192e2b5 ICU-20537 jaEra: fix leak in SimpleDateFormat::applyPattern 2019-04-08 12:27:32 -07:00
Peter Edberg
2f06d1de55 ICU-20537 jaEra: DateIntvFmt load fmts with G, SimpDateFmt.applyPattern update Gannen use, fix tests 2019-04-08 08:35:48 -07:00
Shane Carr
6daab85db4 ICU-20429 Renaming [Number->Formatted]StringBuilder and refactoring.
- StringSegment, ICU4C:
  * Moved to top icu namespace
  * Compilation unit renamed to string_segment.
- NumberStringBuilder, C and J:
  * Moved to main icu namespace
  * Compilation unit renamed to formatted_string_builder
  * Renamed class to FormattedStringBuilder
- Moves nextPosition logic of NumberStringBuilder to helper class
2019-04-05 20:08:07 -05:00
Peter Edberg
c4eef82761 ICU-20515 64.2 BRS, integrate CLDR release-35-1-alpha 2019-04-05 15:59:29 -07:00
Steven R. Loomis
b76cb6517e ICU-20526 fix pkgdata where LD_SONAME has a trailing space
- added PKGDATA_TRAILING_SPACE to all of the pkgdataMakefile.in file.
- NOTE: Users who create their own pkgdata.inc / icupkg.inc files may need
   to recreate this PKGDATA_TRAILING_SPACE behavior.

- used the above variable, normally undefined, in mh-* files that need a trailing space

- Also, fixed use of system() in pkgdata.cpp per ICU-20538
This was causing pkgdata to return a zero status even on clang
failure, masking this issue.

(cherry picked from commit 83a0542b5b)
2019-04-05 10:53:59 -07:00
Markus Scherer
0565894534 ICU-20497 Unicode 12.1 2019-04-04 10:23:24 -07:00
Steven R. Loomis
83a0542b5b ICU-20526 fix pkgdata where LD_SONAME has a trailing space
- added PKGDATA_TRAILING_SPACE to all of the pkgdataMakefile.in file.
- NOTE: Users who create their own pkgdata.inc / icupkg.inc files may need
   to recreate this PKGDATA_TRAILING_SPACE behavior.

- used the above variable, normally undefined, in mh-* files that need a trailing space

- Also, fixed use of system() in pkgdata.cpp per ICU-20538
This was causing pkgdata to return a zero status even on clang
failure, masking this issue.
2019-04-03 16:43:42 -07:00
yumaoka
163793824f ICU-20535 Added Japanese new era Reiwa to cjdict.txt to support the sequence in word segmentation. 2019-04-03 18:46:12 -04:00
Shane F. Carr
732bf71451 ICU-20528 Fill in testdata/rules.mk when there is no Python. 2019-04-03 17:03:26 -05:00
Daniel Ju
d56461f8f0 ICU-20515 Update version numbers, regenerate JARs, regenerate configure 2019-04-03 14:56:46 -07:00
Jeff Genovy
e591af3fba ICU-20475 Japanese Calendar current era calculation should use local time instead of UTC. 2019-04-03 14:42:57 -07:00
Jeff Genovy
5e95b31ad0 ICU-20523 Fix typos in API docs for usearch_getMatchedLength 2019-04-02 11:19:59 -07:00
yumaoka
4aef276b16 ICU-20522 tzdata2019a updates 2019-04-02 11:36:39 -04:00
Jeff Genovy
71ee05ed17 ICU-13456 Build Clean in VS doesn't fully clean everything that it should 2019-03-27 14:16:22 -07:00
Markus Scherer
61c4a728cd ICU-20467 replace the LocaleMatcher implementation, load data from new bundle
- remove the old LocaleMatcher implementation code
- move the XLocaleMatcher code into LocaleMatcher, same for test
- remove unused internal methods
- stop comparing old vs. new performance
- generate langInfo.txt resource bundle file with precomputed likely-subtags and matcher data
- make genrb handle multi-line binary values
- load likely-subtags & distance data from new langInfo.res bundle
- test that built data == loaded data
- move data builders to tools, no more runtime dependency on builder code
2019-03-26 13:27:42 -07:00
Shane Carr
c86028c70c ICU-20439 Fix internal and draft headers. 2019-03-25 07:37:35 -07:00
Shane Carr
e318c0c374 ICU-20494 Fixes to very large magnitude exponents in number parsing.
- Do not depend on ArithmeticException string in ICU4J.
- Return correct string in ICU4C.
- Fix related issue in applyMaxInteger.
2019-03-25 07:17:36 -07:00
Jeff Genovy
b5ad35dda8 ICU-20516 Fix MSVC Warning C4003: not enough arguments for function-like macro invocation 2019-03-22 18:37:48 -07:00
Shane Carr
b596462d5a ICU-20508 Fixing -Wextra-semi in library code. 2019-03-22 15:29:45 -07:00
Shane Carr
f843aff9d2 ICU-20507 Adding virtual destructor to PathFilter 2019-03-22 13:51:19 -07:00
Shane F. Carr
13889bece1
ICU-20511 Merge maint/maint-64 to master 2019-03-22 11:16:43 -07:00
Shane Carr
e57c45c5c6 ICU-20473 Moving collation ucadata option to filter file. 2019-03-20 17:44:48 -07:00
yumaoka
15cb156e56 ICU-20439 Updated currency numeric code for YUD to 890. 2019-03-20 19:02:17 -04:00
Daniel Ju
a5e9e338df ICU-20439 BRS64GA Update urename.h 2019-03-20 10:03:57 -07:00
Daniel Ju
b056b7642a ICU-20439 BRS64GA Update version number and regenerate JAR files 2019-03-19 17:15:10 -07:00
Shane Carr
a5914e1916 ICU-20439 Updating ICU data from CLDR tag release-35-beta2. 2019-03-19 14:32:57 -07:00
Peter Edberg
0ac7104f0a ICU-20439 update config files and instructions for CLDR release-35-beta integration 2019-03-18 21:43:06 -07:00
Shane F. Carr
405129a6dd ICU-20439 Removing ICU patches. 2019-03-18 21:17:22 -07:00
Shane F. Carr
6c86dc108d ICU-20439 Updating double-conversion. 2019-03-18 21:17:22 -07:00
Shane Carr
2e846616c4 ICU-20499 Fixing code path for plural form in MutablePatternModifier. 2019-03-14 02:02:52 -07:00
Shane Carr
56ffae8a0b ICU-20489 Removing resfiles.mk files.
Builds res_index.txt based on directory glob minus aliases read from deprecates XML file.

In ICU 64, please use the ICU Data Build Tool instead of reslocal.mk for locale filtering.
2019-03-14 01:51:52 -07:00
Peter Edberg
2849784108 ICU-13440 replace obsolete TARGET_IPHONE_SIMULATOR conditional 2019-03-13 18:39:20 -07:00
Jeff Genovy
1e86849408 ICU-20491 ICU4C u_getDataDirectory on Windows shouldn't set path to current directory by default.
This change was introduced by the following commit e9946ec98e.

However, there's really no reason why the Windows UWP version should require the icudtl.dat file
to be in the same directory as the icuuc.dll file.
2019-03-13 13:25:33 -07:00
Frank Tang
2232a2b81e ICU-10291 Optimize IDNA toASCII loop 2019-03-13 12:13:42 -07:00
Peter Edberg
84e392e426 ICU-20439 64 BRS, integrate CLDR release-35-alpha4 2019-03-13 09:12:40 -07:00
Markus Scherer
98589d9cc7 ICU-20203 Unicode 12 final data (only trivial changes) 2019-03-13 08:57:05 -07:00
Shane F. Carr
acca4e15a2 ICU-20439 Updating cldr-icu-readme.txt to reflect changes in eac8f4b. 2019-03-13 01:30:29 -07:00
Peter Edberg
8943f89a84 ICU-20471 setFormatWidth to 0 should cause padding to be ignored 2019-03-12 15:17:42 -07:00
Shane Carr
bb4df2223d ICU-20463 Use copybrief for children that are older than parents. 2019-03-12 14:34:02 -07:00
Andy Heninger
bc4bb89af2 ICU-20488 mutex static constructor fixes.
Remove the dependencies from the ICU library code on static constructors
that were introduced by using std::mutex and condition variables. The
mutexes are lazily initialized by embedding them as local static variables
in getter functions, and relying on the C++ compiler/runtime to do thread
safe initialization of them.
2019-03-12 09:52:16 -07:00
Frank Tang
994edfe858 ICU-13709 fix shadow param inside #ifdef 2019-03-11 19:01:49 -07:00
Shane Carr
ffd8baf16d ICU-20484 Narrow currency symbol should fall back to short symbol, C and J.
- Includes fixes to tests.
2019-03-08 17:06:16 -08:00
Shane Carr
cda7ca7e83 ICU-20469 Adding user guide for number skeletons.
Also fixes a minor bug in the syntax and adds tests.
2019-03-08 16:32:47 -08:00
Andy Heninger
f7b36d39bc ICU-11908 NumberingSystem, fix the memory management of static cache of numsys names.
Add thread safe cache initialization.
2019-03-08 15:06:53 -08:00
Steven R. Loomis
3a28fb7216 ICU-20479 don’t leave junk in source directory on configure or make check
- see also ICU-20062
- add a `-B` option to the two python invocations on Windows
- set PYTHONDONTWRITEBYTECODE in configure.ac and icudefs.mk.in

Co-authored-by: Fredrik Roubert <roubert@google.com>
2019-03-08 14:28:27 -08:00
Shane Carr
852b63dd9f ICU-20472 Moving index res file request to tree category.
- Includes other minor cleanup of buildtool.
2019-03-07 20:46:13 -08:00
Shane Carr
c009f42ca1 ICU-20469 Adding userguide for FormattedValue and ICU Data Build Tool.
- Creates new directory structure to store userguide markdown files.
2019-03-07 11:55:40 -08:00
Andy Heninger
e559b30309 ICU-20359 Fix stack overflow in Regex Pattern Compile. 2019-03-07 10:31:30 -08:00
Jeff Genovy
3166381f88 ICU-20474 Shared library ProjectConfiguration Props file ignores command line preprocessor defines with MSBUILD. 2019-03-06 11:33:27 -08:00
Steven R. Loomis
67d218f247 ICU-20470 skip data/rules.mk regen for source tarball
- If icu/source/data/locales/root.txt missing, skip
  python rules.mk generation.
- Also, create build directories properly as needed
- Also includes noise changes to configure
  (configure was probably generated using unreleased
   autoconf 2.70 or 2.69 + patches)
- eac8f4b31a did not
  regen configure properly, so BUILDTOOL_OPTS is now
  ICU_DATA_BUILDTOOL_OPTS
2019-03-04 07:40:40 -08:00
Steven R. Loomis
07df49c9a9 ICU-20470 skip data/rules.mk regen for source tarball
- If icu/source/data/locales/root.txt missing, skip
  python rules.mk generation.
- Also, create build directories properly as needed
- Also includes noise changes to configure
  (configure was probably generated using unreleased
   autoconf 2.70 or 2.69 + patches)
- eac8f4b31a did not
  regen configure properly, so BUILDTOOL_OPTS is now
  ICU_DATA_BUILDTOOL_OPTS
2019-03-01 16:08:42 -08:00
Shane Carr
099ec53635 ICU-20438 Updating index page of C docs with new APIs and fixing links. 2019-02-28 14:48:46 -08:00
Norbert Runge
47ef6175f9 ICU-20438 Fixes issues found during BRS configuration test task. 2019-02-28 12:55:01 -08:00
Norbert Runge
b8364d38ed ICU-20438 Fixes issues found in the no-data testing of ICU4C (BRS health check)
ICU-20438 Review feedback worked in.
2019-02-28 09:59:48 -08:00
Shane Carr
eac8f4b31a ICU-20460 Adding mechanism to build unicore data into dat file. 2019-02-27 18:36:02 -08:00
Andy Heninger
666d1a9d8e ICU-20438 ICU 64 C API promotion and API Change Report generation. 2019-02-27 16:01:05 -08:00
Norbert Runge
513eff5408 ICU-20438 Adds fuzzer directory to testinternalheaders.sh 2019-02-27 14:05:41 -08:00
Jeff Genovy
bf16b12036 ICU-20454 Fix comparison of keyPath with stackPack in uresbund.cpp 2019-02-27 13:31:32 -08:00
Shane Carr
60f4e1ba83 ICU-10923 Fixing dependency graph and filter logic for collation.
- Fixes filterrb.cpp to check for wildcard when at a leaf.
- Adds additional verbose logging to genrb.
- Fixes filtration to add deps to dep_targets instead of dep_files.
- Separates dep_files to common_dep_files and specific_dep_files.
2019-02-26 20:54:04 -06:00
Shane Carr
ae13af0a8e ICU-20438 Adding additional ICU patches to double-conversion. 2019-02-26 20:53:26 -06:00
Shane Carr
93178a836c ICU-20438 Updating double-conversion from upstream master. 2019-02-26 20:53:26 -06:00
Shane Carr
f3be3a9ae5 ICU-20438 Removing old logKnownIssue fixed by ICU-13591 2019-02-26 19:26:59 -06:00
Peter Edberg
74ff0bf1a4 ICU-20438 64rc BRS, update U_HIDE_ conditionals 2019-02-26 16:32:24 -08:00
Jeff Genovy
be3a4d1858 ICU-20438 BRS64RC Update urename.h for ICU 64 2019-02-25 20:57:50 -08:00
Shane F. Carr
92ed50bc2c ICU-20452 Removing extra semicolons from public header files.
(Produced warnings in V8 build system.)
2019-02-25 15:31:17 -06:00
Peter Edberg
30d2034597 ICU-20438 64rc BRS, integrate CLDR alpha2, update MeasureUnit APIs [& resolve conflicts] (#485) 2019-02-24 22:28:51 -08:00
Fredrik Roubert
c3abe48e1c ICU-20447 fix uloc_getName(x) same as Locale(x).getName() etc. for ""/"und"/"root" 2019-02-23 16:21:57 +01:00
Jeff Genovy
ca8eb03f30 ICU-20438 BRS64RC Fix Clang compiler warnings in ICU4C samples 2019-02-22 17:10:39 -08:00
Romain Geissler
f128f75cb8 ICU-20265 Use noexcept instead of throw() in C++ >= 11.
- Adds note directing users of U_NO_THROW to U_NOEXCEPT.
2019-02-22 13:29:20 -06:00
Jeff Genovy
84da7ec0fa ICU-20438 BRS64RC Update ICU4C version numbers 2019-02-22 11:26:41 -08:00
Peter Edberg
a9b26a447d ICU-20441 fix uninitialized fHasHanYearChar 2019-02-21 23:27:33 -08:00
Peter Edberg
9a7bf5cea8 ICU-20441 force Gannen use for ja@calendar=japanese non-numeric formats if no override (#474) 2019-02-21 19:26:52 -08:00
Steven R. Loomis
2159e1fb81 ICU-20229 update make dist to use git, not svn
- use git instead of svn for versioning
- update generated file names to match official downloads

Example filenames:
- icu4c-63_1-c5749aaf94-src.tgz (includes git hash or tag)
- icu4c-63_1-src.tgz (hard link to above)
- icu4c-src.tgz (symlink)

- icu4c-63_1-c5749aaf94-src.zip (includes git hash or tag)
- icu4c-63_1-src.zip (hard link to above)
- icu4c-src.zip (symlink)

- icu4c-63_1-c5749aaf94-data.zip (includes git hash or tag)
- icu4c-63_1-data.zip (hard link to above)
- icu4c-data.zip (symlink)

- icu4c-63_1-c5749aaf94-docs.zip (includes git hash or tag)
- icu4c-63_1-docs.zip (hard link to above)
- icu4c-docs.zip (symlink)
2019-02-21 16:08:46 -08:00
Jerome Gaillard
4b8edfa999 ICU-20356 Fix compilation warnings 'dllimport' attribute ignored
Methods implementead as 'inline' but not declared 'inline' cause clang++
to throw compilation warnings on Windows. This adds 'inline' to the
relevant method declarations.
2019-02-21 12:18:22 -08:00
Peter Edberg
2c1fcb0a96 ICU-20408 Integrate jpanyear support and related "ja" format changes [& resolve conflicts] (#465) 2019-02-21 11:52:33 -08:00
Markus Scherer
4f20fea3ba ICU-20280 PluralRules::forLocale() ignore locale extensions 2019-02-21 11:32:05 -08:00
Fredrik Roubert
09bf9f2845 ICU-20273 Resolve inconsistent behavior of "root", "und", "" in locales 2019-02-21 20:18:35 +01:00
Peter Edberg
ff4cdc0f8b ICU-20252 Update icu-config with more CLDR locales 2019-02-21 11:12:17 -08:00
Jeff Genovy
1188394d74 ICU-13820 ICU4C should use "Etc/Unknown" zone when host TZ detection fails.
Update API docs comments to clarify what is returned in failure cases.
2019-02-21 10:49:00 -08:00
Jeff Genovy
3ebd817504 ICU-20351 A few more MSVC warning cleanups. (Mostly adding static_cast) 2019-02-21 10:43:18 -08:00
yumaoka
4711383bd8 ICU-20398 Updated tzdata build script to use the rearguard data. Deleted local override that used to simulate rearguard version from icuzones. 2019-02-21 13:27:37 -05:00
Fredrik Roubert
01c69cfa85 ICU-20158 Pass ByteSink all the way to _uloc_(addLikely|minimize)Subtags().
This eliminates the need for scratch buffers in any code path that ends
with these functions and also eliminates the need for counting bytes,
something that ByteSink will now handle correctly when needed.

Existing calls to uloc_addLikelySubtags() and uloc_minimizeSubtags()
throughout ICU4C implementation code are also updated to instead use
either the Locale or ulocimp_* functions with the new API.

None of this should have any externally visible effect, it's all about
cleaning up implementation internals.
2019-02-21 12:19:04 +01:00
Shane Carr
b36dbedf34 ICU-20417 Adding parity between NoUnit and MeasureUnit Percent for short forms.
- Use Percent pattern for MeasureUnit Percent instead of the short or narrow form pattern from CLDR.
2019-02-21 02:28:51 -06:00
Shane F. Carr
7d30fc9b46 ICU-20159 Fixing more GCC warnings. 2019-02-21 01:15:58 -06:00
Semun Lee
bdad79b622 ICU-20345 Skip ahead some files in searchForTZFile
Change-Id: I61042ca66f86457768e8fc0315137051013d2820
Signed-off-by: Semun Lee <semun.lee@samsung.com>
2019-02-20 21:09:46 -05:00
Shane Carr
c81d1e94a0 ICU-13591 Refactoring ICU4C MeasureFormat to call NumberFormatter directly.
- Removes redundant data loading in MeasureFormat
2019-02-20 19:15:03 -06:00
Andy Heninger
a03a52782e ICU-20197 ICU4C Multithreaded tests cleanup 2019-02-20 15:30:23 -08:00
Norbert Runge
219730e167 ICU-20217 Interprets fuzzer data as UCHar* instead of UTF-8. The conversion
from assumed UTF-8 resulted in an extremely large percentage of Unicode
replacement characters in the data passed to the API under test.

ICU-20217 Uses fuzzer generated bytes to make random selection of locales, converters,
etc., replacing the random number generator. This way the fuzzer can control
the selections.

ICU-20217 Minor follow-ups from code review.
Removes fuzzer target break_iterator_utf32_fuzzer which does not perform
anything useful what the regular break iterator fuzzer target already performs.

ICU-20217 Fixes for-loop body.

ICU-20217 Uses am allocated buffer to pass head-truncated fuzzer data to the
API under test. The fuzzer may otherwise not detect buffer underflow.
by

ICU-20217 Typing fix.

ICU-20217 Fixing typing.

ICU-20217 Improve fuzzer targets, move truncated fuzzer data into a
new buffer to prevent that buffer underflow goes undetected.

ICU-20217 Fixes buffer management of fuzzer-provided data.

ICU-20217 Factor in PR review comments.
2019-02-20 15:22:26 -08:00
Peter Edberg
ba100f21b5 ICU-12902 make create/getInstanceForSkeleton use correct calendar; don't try to capitalize empty field 2019-02-20 13:50:34 -08:00
Peter Edberg
641326d7b8 ICU-20078 Add JP_ERA_2019 constants, export enableTentativeEra(), add intervalFmt tests with eras 2019-02-20 10:42:49 -08:00
Jeff Genovy
9f87d2d4be ICU-20413 ICU4C: OOM not handled in initStaticTimeZones() in timezone.cpp.
-Use static allocated memory and placement new to avoid OOM failures.
2019-02-20 10:41:40 -08:00
Shane F. Carr
7791a58a83 ICU-10923 Adding wildcard resource matching. 2019-02-20 12:20:38 -06:00
Shane F. Carr
8db0321f54 ICU-10923 Adding file replacement mechanism to buildtool. 2019-02-20 12:20:25 -06:00
Jeff Genovy
4509ab7d96 ICU-20419 Export internal StackUResourceBundle helper, so it can be used in the i18n library.
Replace all current usages of ures_initStackObject() in the i18n library with the StackUResourceBundle helper.
2019-02-20 09:24:24 -08:00
Fredrik Roubert
168c97f32a ICU-20431 Both und_XX and _XX should fall back to the default locale 2019-02-20 13:06:51 +01:00
Jeff Genovy
8858da9b7f ICU-20414 Add internal ures_openDirectFillIn API, use in getTZDataVersion to avoid memory allocation for UResourceBundle. 2019-02-19 16:58:38 -08:00
Andy Heninger
719d4fd3b5 ICU-20415 uregex_start64() and end64() truncation. 2019-02-19 15:59:21 -08:00
Jeff Genovy
cc7f16941d ICU-20210 ICU-20211 Cherry-pick fixes from CLDR to unblock exhaustive tests.
Cherry-pick cldrbug 11492: Bad symbols for NaN in sv, ksh, kl, se locales.
Cherry-pick cldrbug 11491: sd, month name for July uses character not in exemplars.
Updated the various ICU4J *.jar files as well.
2019-02-18 21:56:28 -08:00
Shane Carr
06ec8f531e ICU-20254 Handling OOM in AffixTokenMatcherWarehouse. 2019-02-18 21:38:17 -08:00
Shane Carr
7a4d70c634 ICU-20284 Updating docs on mutability of currency fraction digits. 2019-02-18 21:32:37 -08:00
Shane Carr
68168a6067 ICU-13731 Adding test for default currency symbol. 2019-02-18 21:29:51 -08:00
Shane Carr
9cdb660b5e ICU-20144 Implementing numsys-dependent range pattern loading. 2019-02-18 01:32:11 -08:00
Peter Edberg
2b82c096e0 ICU-20383 DateTimePatternGen should map 'j' using timeData, not short time cycle (#419) 2019-02-17 19:55:52 -08:00
Mihai Nita
f78e1a53d6 ICU-10675 Documentation wrong on ICU4C ListFormatter 2019-02-15 17:21:33 -08:00
Shane Carr
06a8de0f0a ICU-10923 Configure should fail when Python fails. 2019-02-15 17:10:59 -08:00
Shane Carr
588210417c ICU-20313 Adding more docs about thread-safety of Number[Range]Formatter. 2019-02-15 17:08:51 -08:00
Frank Tang
94ff6b1024 ICU-20410 Fix grandfathered tag w/ extensions 2019-02-15 16:51:31 -08:00
Shane Carr
0ef0629736 ICU-20108 Adding new parseLenients from CLDR 34 to ICU. 2019-02-15 16:51:17 -08:00
Shane Carr
35b182767f ICU-20409 Additional refactoring of FormattedValue implementations.
- Migrates Number[Range] formatter to helper macros.
- Adds additional macros.
- Syncs docstrings between subclasses.
2019-02-15 16:50:22 -08:00
Shane Carr
8c2de1401e ICU-20144 Adding better documentation and behavior testing on NumberingSystem. 2019-02-15 15:12:29 -08:00
Shane Carr
8c196b6f89 ICU-20380 Adding error code to DecimalFormat::toNumberFormatter(). 2019-02-15 14:37:12 -08:00
Frank Tang
736757aced ICU-20407 hy-arevela/hy-arevmda can. into hy / hyw 2019-02-15 12:40:47 -08:00
Markus Scherer
ac4387a374 ICU-20203 Unicode 12 data 20190214 2019-02-15 11:37:34 -08:00
Nebojsa Ciric
a9d2196913 ICU-12584 Fix memory allocation for getFormats.
Also:
  Add a test case for inner message, other small cleanup.
  Style fixes, using better test methods
2019-02-14 18:39:49 -08:00
Peter Edberg
162aaf9aa5 ICU-20365 if roundingIncrement significance smaller than maxFrac, do not use it 2019-02-14 17:23:23 -08:00
Shane F. Carr
a0f02b12d0 ICU-20121 Adding span field for FormattedList. 2019-02-14 16:05:51 -08:00
Romain Geissler
6f59c29ebc ICU-20244 Fix gcc stringop-overflow warning/error in uloc.cpp. 2019-02-14 13:55:54 -08:00
Shane Carr
01a24ff78f ICU-11725 Promoting tech-previews in DecimalFormat to @draft.
- Changes Java DecimalFormat boolean get* methods to is*.
- Makes the new draft methods non-virtual.
- Removes obsolete template class in header file.
- Adds proper U_HIDE tags in unum.h and decimfmt.h
2019-02-14 13:50:03 -08:00
Shane Carr
f8d8500f7c ICU-20121 Fixing docs tags in FormattedList. 2019-02-14 13:48:19 -08:00
Shane Carr
d243867c11 ICU-20138 Adding matchesField as draft and removing getConstraintType. 2019-02-14 13:45:49 -08:00
Shane F. Carr
c05eee688c ICU-10923 Remove unused variable AVAILABLE_FEATURES. 2019-02-14 13:44:48 -08:00
Markus Scherer
1afef30549 ICU-20187 drop support for long-obsolete locale ID variants 2019-02-14 12:27:42 -08:00
Markus Scherer
d2e3a8847d ICU-20111 move text layout properties data into a new ulayout.icu data file 2019-02-14 08:30:57 -08:00
Frank Tang
6942013a38 ICU-20328 Implement LocaleBuilder
Design Doc: https://goo.gl/Qf12p3
2019-02-13 17:24:38 -08:00
Jeff Genovy
0e6a6f6fff ICU-20416 Various OOM fixes for calendar.cpp 2019-02-13 13:10:28 -08:00
Jeff Genovy
1f17beb8eb ICU-20100 Change the name of the TimeZone::getDisplayName daylight parameter.
The TimeZone::getDisplayName "daylight" parameter conflicts with an existing macro in the CRT "time.h" header.
2019-02-13 10:55:43 -08:00
Tobias Stoeckmann
7369eff4ed ICU-20362 segfault/leftover files with long lines
If a file with an input line larger than INT32_MAX (i.e. 2 GB) contains
an UTF8 character after that limit, escapesrc crashes on 64 bit systems
or does not remove incomplete files on 32 bit systems.

The issue is that an unchecked cast from size_t to int32_t can turn
negative, which results in negative offsets during array access.

This will eventually lead to an out of boundary read, which most likely
crashes the tool.

This patch sets a fixed limit on 1 GB to make sure that no side effects
occur if the line is exactly INT32_MAX or a few bytes less. It should
still be way more than anyone would really need.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2019-02-13 10:23:19 -08:00
Tobias Stoeckmann
c04f9f1c01 ICU-20363 Out of boundary write on empty file.
If gencnval encounters an empty input file the function resolveAlias
triggers an out of boundary write due to uniqueAliasArr pointing to
a 0 byte reserved memory address.

This patch protects the code in question with a check for
knownAliasesCount being not 0.

Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org>
2019-02-13 10:22:56 -08:00
Nebojsa Ciric
d2d8f0ec8f ICU-11991 Fixed memory leak in parse.cpp
Squashed commits for merge.
2019-02-12 12:53:35 -08:00
Shane Carr
e2ad4f8113 ICU-20342 Adding FormattedDateInterval in C and C++.
- Adds first "span" field category
- Re-implements DateIntervalFormat#fallbackFormat to use FieldPositionHandler
- New temporary wiring in SimpleFormatter
2019-02-11 16:12:03 -08:00
Daniel Ju
f4f899a63b ICU-13789 ICU-20387 ICU4C PerfTest does not build, Upgrade various *.vcxproj files 2019-02-11 14:22:58 -08:00
Jeff Genovy
4ebb3cebf5 ICU-20382 ICU4C: pkgdata and genccode support ARM32 but not ARM64 on Windows platforms. 2019-02-11 12:31:29 -08:00
Shane Carr
249e03ccd6 ICU-13256 Implementing FormattedRelativeDateTime in C, C++, and Java.
- Adds additional logic to NumberStringBuilder.
- Extends logic of number::impl::Field type.
- Adds tests for RBNF support.
- Adds tests from ftang's original PR.
2019-02-11 11:35:51 -08:00
Shane F. Carr
c70a9db818 ICU-20332 Adding duration-person unit data and APIs to C and J.
- Rebuilds ICU4J data jars.
- Includes a workaround in data loading to be fixed with ICU-20400.
2019-02-08 16:55:20 -08:00
Shane F. Carr
30396f4dd0 ICU-20378 Changing APIs for UFieldCategory to int32_t. 2019-02-08 16:45:55 -08:00
Andy Heninger
64f4dd64e2 ICU-12017 Improve line break around numbers. 2019-02-08 13:54:14 -08:00
Andy Heninger
1130b9c087 ICU-20385 Regex, fix pattern compile problem with look-behind patterns that cannot match. 2019-02-08 12:57:06 -08:00
Andy Heninger
b50f97a58a ICU-20401 rbbi break rules, update comments to match current UAX versions. 2019-02-08 12:53:58 -08:00
Shane Carr
026095ddc3 ICU-20138 Copy fErrorCode in FormattedValue subclass macro. 2019-02-07 23:03:56 -08:00
Shane Carr
8a56b89b03 ICU-20360 Testing and fixing stack overflow in numparse. 2019-02-07 23:03:41 -08:00
Shane F. Carr
78ac6ca3dc ICU-20121 Changing C API method name to ulistfmt_formatStringsToResult. 2019-02-07 22:52:49 -08:00
Shane F. Carr
37e589fb3a ICU-20121 Initial UFormattedList implementation, C. 2019-02-07 22:52:49 -08:00
Shane F. Carr
5c1e3b8aaf ICU-20121 Initial FormattedList implementation, C++. 2019-02-07 22:52:49 -08:00
Frank Tang
f46605a437 ICU-20320 Fix the missing digit singleton extension
Add space

add test cases for Java and fix Java code
2019-02-07 11:35:55 -08:00
Frank Tang
9453dcfc19 ICU-20321 Fix ultag_isUnicodeLocaleKey
Returns false when passingin alphanum digit.
Sync with UTS35
https://www.unicode.org/reports/tr35/#Unicode_locale_identifier

address review feedback add unit tests.

Fix Java too

add test cases to c++

Fix format

change test case
2019-02-07 11:32:38 -08:00
Shane Carr
a184153a2c ICU-20337 Adding value getters to C++ MeasureUnit API.
ICU-20337 Restoring comments in MeasureUnitTest.java
2019-02-06 21:00:34 -08:00
Peter Edberg
9a27ba01ef ICU-20306 Remove incorrect #ifndef U_HIDE_INTERNAL_API around UTEXT_MAGIC 2019-02-06 19:26:38 -08:00
Shane Carr
96556c2d4c ICU-10923 Fixing warning in testdata build file. 2019-02-06 18:59:31 -08:00
Markus Scherer
2982d6c233 ICU-13081 test self-move without clang warning 2019-02-06 18:11:00 -08:00
Markus Scherer
6277c9c4d7 ICU-20213 deprecate BreakIterator::createTitleInstance() 2019-02-06 15:29:24 -08:00
Markus Scherer
0f7c4c8ed9 ICU-13081 remove C++ moveFrom() functions: still draft, but obsolete since we require C++11 which has std::move() 2019-02-06 13:36:53 -08:00
Steven R. Loomis
b6f72c10c9 ICU-20395 Fix cldr-icu-readme.txt to not mention whitelist 2019-02-06 10:45:43 -08:00
Markus Scherer
f5d2c560a0 ICU-20376 makeconv prepend relative sourcedir to args; only ignore if nothing but a single dot 2019-02-06 08:45:18 -08:00
Peter Edberg
e8bcc60d6f ICU-20347 In ICU4J, parsing emoty string should set PARSE_ERROR as before; check ICU4J behavior 2019-02-06 00:22:47 -08:00
Shane F. Carr
57d07d3ec3 ICU-20138 Macros for C and C++ FormattedValue subclass boilerplate.
- Includes macros for implementation only. Headers should be spelled out.
2019-02-05 22:54:13 -08:00
Shane F. Carr
1624176dd9 ICU-20138 Adding FormattedValue helper implementation for FPI handlers.
- Changes FieldPositionIterator (FPI) to use tetrads in the UVector32.
2019-02-05 22:54:13 -08:00