Commit graph

21942 commits

Author SHA1 Message Date
gnrunge
5caea1a58d
ICU-20119 Fixes for run-without-data BRS test. In all cases an error (#177)
check was needed in the test cases to prevent a segmentation fault.
2018-09-26 16:23:35 -07:00
gnrunge
c01e304265
ICU-20168 Fix memory leak in error path, add a free statement. (#175) 2018-09-26 16:04:29 -07:00
Steven R. Loomis
8dddb3a880
ICU-13685: Revert c: add @preview (retry) (#172)
This reverts commit 25f1589466 from  #8
2018-09-26 11:52:49 -07:00
Jungshik Shin
c291193776 ICU-9562 Update language tag mapping per the latest IANA registry
uloc_forLanguageTag has a few mapping tables to map grandfathered
language tags and deprecated language subtags to their preferred or
modern values.

Update them based on the latest version of the IANA
language subtag registry. [1]

Five grandfathered tags without a preferred value are still mapped to
what ICU has mapped them to for backward compatibility until the
wisdom of continuing to do so is reviewed.

In addition, map redundant language tags to their preferred values
regardless of whether they're followed by other subtags or not. (e.g.
zh-yue vs zh-yue-u-co-pinyin) .

Similary, ja-latn-hepburn-heploc is mapped to ja-latn-alaic97 (the
variant subtag 'hepburn-helploc' with the prefix 'ja-latn' has the
preferred value, 'alaic97') .

Update the mapping for deprecated language subtags (e.g. 'jw' to
'jv' and a bunch of 3-letter language codes).

Add a new table for deprecated region subtags to map them to their
modern values. (e.g. 'DD' to 'DE').

Add a new test case for deprecated language and region mapping and
a few more cases for updated grandfathered and redundant tag mapping.

[1]
https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry
2018-09-26 15:43:43 +02:00
Markus Scherer
c75e0aba01
ICU-20119 pool bundles for ICU 63/CLDR 34 (#173) 2018-09-25 16:58:26 -07:00
Markus Scherer
b89c8aea8b
ICU-20119 update C++ dependencies, fix bugs (#171) 2018-09-25 13:20:09 -07:00
gnrunge
f670292c2f
ICU-20119 Remove C linkage declaration; urename.h BRS-update script (#169)
otherwise includes entry points that should not be included.
2018-09-25 12:03:25 -07:00
gnrunge
e10f1dc727
ICU-20119 urename.h update, header test fixes for icu 63 (#165)
* ICU-20119 Update and fixes for the following BRS tasks:
 - Update urename.h
 - Test uconfig.h variations

* ICU-20119 Updates copyright scanner script exclusions: don't scan ./git/*.

* ICU-20119 Changes in reply to comments for pull requst #165.
2018-09-24 13:11:40 -07:00
pedberg-icu
e8159dee5b
Merge pull request #162 from pedberg-icu/cldr34a-integration
ICU-20119 Integrate CLDR release-34-alpha2, adjust code & test, update MeasureUnit
2018-09-21 18:29:38 -07:00
Shane F. Carr
15c750d714
ICU-11319 Add tests for compact decimal in zh-Hant and zh-Hant-HK. (#166) 2018-09-21 18:18:48 -07:00
Markus Scherer
881c504f89
ICU-20125 numeric values of level constants will not change; fix/update some docs (#159) 2018-09-21 16:53:20 -07:00
Shane F. Carr
95c9c90a6b
ICU-11276 Using atomics for thread safety in NumberRangeFormatter. (#130)
See discussions on pull request.
2018-09-21 16:31:47 -07:00
Shane F. Carr
d16724e4b0
ICU-11276 Apply the approximately pattern inside of the unit string. (#148) 2018-09-21 15:19:16 -07:00
Shane F. Carr
9fc064c321
ICU-20160 Add check for Python 3 in autoconf and nmake. (#157) 2018-09-21 15:06:57 -07:00
Peter Edberg
68abfe9efa ICU-20119 63rc BRS, update ICU4C numberformattestspecification.txt for J versions 2018-09-21 14:31:25 -07:00
Shane F. Carr
f8a2f2ab67
ICU-13707 Make UnicodeString safe when appended or inserted into itself. (#147) 2018-09-21 13:44:21 -07:00
Peter Edberg
c087b6f123 ICU-20119 63rc BRS, merge current unicode-icu master (Sep 21) into cldr34a-integration branch 2018-09-21 11:20:50 -07:00
Jeff Genovy
028839ea1f ICU-20157 Fix MSVC C4251: Need to export explicit template instantiation, plus some more warning fixes. (#154)
* Fix MSVC C4251: Need to export explicit template instantiation for std::atomic<int32_t> when building DLLs

* Some more warning fixes for MSVC as well.

* Can't use static_cast in C file.
2018-09-21 07:59:31 -07:00
Shane F. Carr
80b037ab4d
ICU-20154 Renaming UGroupingStrategy to UNumberGroupingStrategy. (#142) 2018-09-20 18:15:22 -07:00
Shane F. Carr
364bf74695
ICU-13833 Fixing doxygen warnings in numberformatter.h and other files. (#140) 2018-09-20 18:11:38 -07:00
Mihai Nita
5a6660a060 ICU-20142 Document the skeleton for MessageFormat number arguments (#121) 2018-09-20 18:11:01 -07:00
Shane
26b82e0f64
ICU-20073 Do not parse stray percent sign in strict mode. (#145) 2018-09-20 14:47:25 -07:00
Shane
851d393380
ICU-13850 Make CurrencyUnit safe with 1-length and 2-length strings. (#133)
Also adds expectError to IcuTestErrorCode.
2018-09-20 14:44:48 -07:00
gnrunge
fb06f2c1b0
Merge pull request #152 from gnrunge/icu63_1
ICU-20119 Smalles fixes for public and internal header test failures.
2018-09-20 12:39:45 -07:00
Markus Scherer
dc09f55963
ICU-20081 ucase_swap add parens, avoid warning (#156) 2018-09-20 11:33:14 -07:00
Norbert Runge
3303624a27 Merge github.com:unicode-org/icu into icu63_1 2018-09-20 09:03:58 -07:00
Peter Edberg
45509ed8bc ICU-20119 63rc BRS, cldr 34-alpha2 part 2: 10 locales, MeasUnit updates, icu4j tests with serialization fails 2018-09-19 23:37:10 -07:00
Markus Scherer
8a2d66d5f6
ICU-13832 Transliterator: move rule syntax docs from internal class to public (#150) 2018-09-19 21:51:49 -07:00
Fredrik Roubert
259fe0e4ac
ICU-13417 Replace fixed buffers in uloc_tag.cpp with CharString.
This gets rid of those fixed buffers that caused ICU-13417 to be filed
in the first place, those that prevent handling language tags with very
large amounts of keywords.

A number of fixed buffers will still remain in uloc_tag.cpp (and
elsewhere in the locale handling code) for the time being, but this
change is a necessary first step in cleaning up this code and will
alleviate the most pressing problem encountered by ICU4C users.

An off-by-one error in _getKeywords() caused uloc_canonicalize() to not
write out the final keyword value in case the result would fill up the
buffer exactly, resulting in U_STRING_NOT_TERMINATED_WARNING.
2018-09-19 17:52:37 -07:00
Norbert Runge
8fffa4366d ICU-20119 Adds comment to change that fixes a header test failure. 2018-09-19 13:55:50 -07:00
Norbert Runge
acac24169a ICU-20119 Smalles fixes for public and internal header test failures. 2018-09-19 12:49:00 -07:00
Markus Scherer
6f9116e4fc
ICU-20081 ucase_swap() fix version range check (#151) 2018-09-19 12:04:17 -07:00
Jeff Genovy
f6c813f6f4
ICU-20119 BRS63rc Update version number for ICU4C and ICU4J. Update readme files. (#144)
BRS: Update version number for ICU 63 RC for ICU4J and ICU4C, also update readme files.
2018-09-19 11:36:48 -07:00
Jeff Genovy
85c7e61b3e
ICU-20147 Fix MSVC warning C4251, and fix a few other warnings too. (#134) 2018-09-19 10:05:27 -07:00
Jeff Genovy
8b93468d5b
ICU-20076 MSVC Warning clean up. Define _HAS_EXCEPTIONS=0 in ICU library code (#128)
In an effort to reduce the number of warnings that building ICU emits, we should set the following define for ICU4C library code when building using MSVC/VisualStudio: _HAS_EXCEPTIONS=0
This tells the MSVC implementation of the STL that exceptions should not be used - which is fine for ICU4C library code, as the library code does not make use of exceptions at all.
2018-09-19 01:21:57 -07:00
Jeff Genovy
9385223d5a
ICU-13827 Clean up ICU4C "wintz.cpp" time zone detection code.
- Use stack allocated UResouceBundle to reduce number of calls to malloc (in a method that can't report back an error if Out-Of-Memory [OOM] happens).
- Use LocalUResourcePointer for automatic clean-up of UResouceBundle.
- Use uprv_strdup instead of calloc + strcpy.
- Changes comments, formatting, etc.
2018-09-19 00:48:16 -07:00
Peter Edberg
2f2442c1ab ICU-20119 63rc BRS, merge current unicode-icu master into cldr34a-integration branch 2018-09-18 23:18:27 -07:00
Peter Edberg
da70c34b62 ICU-20119 63rc BRS, integrate cldr 34-alpha2, part 1 icu4c 2018-09-18 23:09:04 -07:00
Shane
4ce6db875a
ICU-20037 Fixing ScientificMatcher integer overflow. (#138)
Also restricts parsing to read only one exponent per string.
2018-09-18 18:10:38 -07:00
Fredrik Roubert
c7ed1033a9
ICU-13417 Pass length from Locale::forLanguageTag() to ultag_parse().
If not passed a length, ultag_parse() will call uprv_strlen(), requiring
the input buffer to be NUL terminated. This is unnecessary.
2018-09-18 16:53:22 -07:00
Norbert Runge
340f630b12 ICU-20119 Review changes. 2018-09-18 16:44:39 -07:00
Norbert Runge
ca35846a9a Merge github.com:unicode-org/icu into icu63_1 2018-09-18 16:32:58 -07:00
Norbert Runge
03ec8d4889 ICU-20119 Delete script, was renamed to icu-file-utf8-check.py. 2018-09-18 16:02:35 -07:00
Norbert Runge
3a60a463c6 ICU-20119 Additional changes to UTF-8 checking script. 2018-09-18 15:57:51 -07:00
Shane Carr
e1722ae821 ICU-20063 Make setSignificantDigitsUsed more friendly. 2018-09-18 15:48:25 -07:00
Shane Carr
08b3291a6e ICU-20050 Fixing memory leaks in move and copy assignment in Number*Formatter. 2018-09-18 15:05:46 -07:00
Andy Heninger
df05da9ca4
ICU-20104 Fix lazy init in Indian Calendar. Now matches other calendars. (#108)
* ICU-20104 Fix lazy init in Indian Calendar. Now matches other calendars.

* ICU-20104 export class IndianCalendar for testing.

* ICU-20104 shot-in-the-dark Windows build experiment.

* ICU-20104 fix memory leak in added test.
2018-09-18 13:04:15 -07:00
Jeff Genovy
abd88226c1
ICU-20145 Allow passing locale in ICU4C "date" sample program for testing without using the environment variable "LC_ALL". (#125)
The ICU4C sample "date" program just uses the "default" ICU locale. This change lets you pass in an explicit locale argument for testing on platforms like Windows that don't have/use the environment variable "LC_ALL".
2018-09-18 12:24:58 -07:00
jungshik
1ad1ce7921 ICU-20140 Allow duplicated keys in U-extension per RFC 6067 (#136)
* ICU-20140 Allow duplicated keys in U-extension per RFC 6067

RFC 6067 [1] does allow duplicate keywords, but ICU4C's
uloc_forLanguageCode rejects it as invalid.

Change it to accept duplicate keywords and honor only the
1st one while ignoring subsequent ones per RFC 6067.

[1] Unicode extension to BCP 47:
    https://tools.ietf.org/html/rfc6067

* ICU-20140 Add ICU4J test and tweak ICU4C test

ICU4J test diverges from ICU4C tests:

1. Handling of duplicate variants in ICU4J seem to be wrong:
   https://unicode-org.atlassian.net/browse/ICU-20148
2. ULocale.forLanguageTag only throws NullPointException so
   that ICU4C's test for duplicate attributes cannot be ported.
2018-09-18 13:23:12 -04:00
Don
83063ed8cf ICU-20136 Check U_HAVE_TZ* values (#114)
* Add check for U_HAVE_TZSET

* Add check for U_HAVE_TZNAME
2018-09-18 13:18:25 -04:00