Commit Graph

7802 Commits

Author SHA1 Message Date
Shane Carr
d846d72bba ICU-20629 DTPG: Fixing uncaught exception in Java. 2019-06-04 16:10:10 -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
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
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
Markus Scherer
f1d4aa72d1 ICU-20572 build & test with U_NO_DEFAULT_INCLUDE_UTF_HEADERS 2019-05-02 09:10:25 -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
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
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
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
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
Shane F. Carr
13889bece1
ICU-20511 Merge maint/maint-64 to master 2019-03-22 11:16:43 -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
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
Peter Edberg
8943f89a84 ICU-20471 setFormatWidth to 0 should cause padding to be ignored 2019-03-12 15:17:42 -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
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
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
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
Norbert Runge
513eff5408 ICU-20438 Adds fuzzer directory to testinternalheaders.sh 2019-02-27 14:05:41 -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
f3be3a9ae5 ICU-20438 Removing old logKnownIssue fixed by ICU-13591 2019-02-26 19:26:59 -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
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
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
Jeff Genovy
3ebd817504 ICU-20351 A few more MSVC warning cleanups. (Mostly adding static_cast) 2019-02-21 10:43:18 -08: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 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
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
Shane Carr
68168a6067 ICU-13731 Adding test for default currency symbol. 2019-02-18 21:29:51 -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
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
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
d243867c11 ICU-20138 Adding matchesField as draft and removing getConstraintType. 2019-02-14 13:45:49 -08:00
Markus Scherer
1afef30549 ICU-20187 drop support for long-obsolete locale ID variants 2019-02-14 12:27:42 -08:00
Frank Tang
6942013a38 ICU-20328 Implement LocaleBuilder
Design Doc: https://goo.gl/Qf12p3
2019-02-13 17:24:38 -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
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
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
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