Commit Graph

8456 Commits

Author SHA1 Message Date
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
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
Markus Scherer
8335adc310 ICU-20330 simplify LocaleMatcher code:
- widen API from LocalePriorityList to Iterable
- merge getBestMatch(multiple locales) and getBestMatch(single locale) into one function
- process desired locales incrementally, create fewer objects
- reject poor matches early: use bestDistance-demotion for threshold
- add API for java.util.Locale, convert incrementally
- new feature: tracks indexes of supported and desired locales which eliminates conversion of result objects in wrappers around getBestMatch() as shown by the java.util.Locale API here
- simpler data structures, more serialization-friendly (easier to port to C++)
  - e.g., use a BytesTrie each for likelySubtags & locale distance, instead of layers of TreeMap
- un-hardcode locale matcher data; use modern resource bundle functions
- split builder code & runtime code into separate classes
- move LSR to simple top-level value class, cache regionIndex in LSR
- simpler handling of private use languages and pseudolocales
- simplify RegionMapper
- LocaleDistance builder: move the node distance into the DistanceTable, remove DistanceNode
- support distance rules with region codes, not just with variables
- enforce & use distance rule constraints:
  - no rule with *,supported or desired,*
  - no rule with language * and script/region non-*
- distance trie collapse a (desired, supported)=(ANY, ANY) pair into a single *
- look up each desired language only once for all supported LSRs
- remove layers-of-Maps compaction (trie builder compacts)
- remove unused XML printing
- remove other unused code
- make XLocaleMatcherTest.testPerf() exercise locale distance lookup code
2019-02-08 10:35:48 -08:00
Shane Carr
8a56b89b03 ICU-20360 Testing and fixing stack overflow in numparse. 2019-02-07 23:03:41 -08:00
Markus Scherer
ecd0591521 ICU-20373 simpler state saving for Java string tries via long not object 2019-02-07 13:35:46 -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
Markus Scherer
65852f1a74 ICU-20375 string tries: covariant clone() return types, and copy constructors 2019-02-06 18:21:07 -08:00
Markus Scherer
6277c9c4d7 ICU-20213 deprecate BreakIterator::createTitleInstance() 2019-02-06 15:29:24 -08:00
Peter Edberg
01ecea2df0 ICU-20347 Update ICU4J test to reflect expected behavior 2019-02-06 00:22:47 -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
9bb910b8d0 ICU-20138 Implementing ufmtval_nextPosition and additional test infra.
- Adds test infra for multi-category formatted values.
- Adds helper method ConstrainedFieldPosition#matchesField, currently internal.
2019-02-05 22:54:13 -08:00
Peter Edberg
67461d80dc ICU-20253 ICU4C RelativeDateTimeFormatter should fall back to OTHER case, as in ICU4J 2019-02-05 19:19:28 -08:00
Mihai Nita
108ea4af94 ICU-9622 Update documentation for MessageFormat and skeletons (#361) 2019-01-30 13:09:47 -08:00
Shane Carr
1f85e94068 ICU-13839 Adding FormattedNumber API to PluralRules.
- Makes new dependency class for PluralRules+FormattedNumber.
2019-01-28 11:46:00 -08:00
Victor Chang
a424372b7b ICU-20350 Fix DecimalFormatSymbols.setPatternForCurrencySpacing affecting the value across instances 2019-01-25 13:04:49 -08:00
Frank Tang
4104d33501 ICU-20355 Fixing Java currency long name field.
- Adds test in ICU4C and ICU4J.
2019-01-24 17:33:27 -08:00
Shane Carr
e10bdb96a7 ICU-20283 Updating docs of old FormattedNumber field position methods.
Most users can use the new method, but these methods may still be useful when needing to interact with the FieldPosition-based APIs.
2019-01-24 16:47:42 -08:00
Shane Carr
7507f5322f ICU-13657 Adding NumberFormatter skeleton factory method with UParseError.
- Includes small fixes to StringSegment and to tests.
2019-01-24 16:33:00 -08:00
Shane Carr
c31fec6b14 ICU-13746 Removing number formatting APIs deprecated in ICU 62.
Includes both ICU4C and ICU4J.
2019-01-24 14:50:03 -08:00
Shane Carr
1f7d8ababe ICU-20358 Clean up grouping resolution in DecimalFormat#toPattern(). 2019-01-18 17:40:49 -08:00
Shane F. Carr
ac359112a1 ICU-20348 Fixing DecimalFormat set affix currency behavior.
- Includes minor changes to tests.
2019-01-17 11:32:38 -08:00
Shane Carr
e7645ff25c ICU-13701 Removing obsolete logKnownIssue since bug is fixed. 2019-01-11 18:45:39 -06:00
Shane Carr
01bd502a95 ICU-13701 Use exact string-to-double conversion in Java. 2019-01-11 15:50:39 -06:00
Shane Carr
768b577e6a ICU-20138 Adding FormattedValue APIs in C, C++, and Java.
- Wires up FormattedNumber[Range] in applicable languages.
- Adds new header files and tests, with minor cleanup to old tests.
- Adds code to guarantee terminating NUL in FormattedNumber[Range].
- Cleanup of API docs for inherited methods in FormattedNumber[Range].
2019-01-10 17:02:49 -06:00
Markus Scherer
4840a9cedd ICU-20329 XLocaleMatcher new test data format, parameterized test, more test cases 2019-01-09 14:20:27 -08:00
Yoshito Umaoka
6cc883775b ICU-20331 time zone data updates for tzdata2018i 2019-01-03 14:37:58 -05:00
Andy Heninger
58786f5cbe ICU-12079 Full width digits become numeric for word break. 2018-12-18 16:36:06 -08:00
Markus Scherer
471d834efc ICU-20305 XLikelySubtags avoid illegal type conversion, fix some linter warnings 2018-12-14 12:25:56 -08:00
Mihai Nita
2666d18e54 ICU-9622 Adding support for date/time skeletons 2018-12-13 13:20:33 -08:00
Markus Scherer
3b16ae86c6 ICU-20292 u_charFromName() prevent code point integer overflow, and limit to at most 8 hex digits 2018-12-12 14:08:37 -08:00
Victor Chang
6caa276083 ICU-20295 Fix wrong java doc of "{#link" in TimeZoneFormat 2018-12-12 06:45:37 -08:00
Shane Carr
bb2b390b87 ICU-20186 Adding test for leading and trailing spaces in DecimalFormat. 2018-12-05 15:37:38 -08:00
Mat Booth
02d2f0dcf3 ICU-20287 ICU4J source tarball does not contain maven pom templates 2018-12-05 12:54:20 -05:00
Andy Heninger
e1e5f363a0 ICU-20288 add line_cj.txt to RBBI Monkey test. 2018-11-30 10:57:21 -08:00
Andy Heninger
11da8d646d ICU-11919 OlsonTimeZone, fix for Thread Sanitizer failure in cloneAsThawed(). 2018-11-29 11:09:50 -08:00
Markus Scherer
ea7c030961 ICU-20203 update ICU to Unicode 12 beta
- data as of 2018-nov-26
- API constants for new blocks & scripts
- sync RBBIMonkeyTest.java test data with C++
2018-11-28 23:13:07 +01:00
Shane Carr
1e4a8d3c29 ICU-20186 Adding test for semicolon behavior and spacing in DecimalFormat. 2018-11-26 18:49:32 -06:00
Shane Carr
c0799c141b ICU-20230 Implementing COMPACT field.
Adds some plumbing to allow MutablePatternModifier to set fields, and otherwise builds upon the infrastructure from the previous commit to add the MEASURE_UNIT field.
2018-11-19 16:21:36 -07:00
Shane Carr
74bbf9e381 ICU-13267 Implementing MEASURE_UNIT field.
Adds plumbing to trim whitespace near the FormattedNumber API boundary.
That plumbing requires a change to dependencies.txt.
2018-11-15 21:37:32 -07:00
Markus Scherer
98f9170004 ICU-20250 make UnicodeSet(intprop=value) faster
- fastpath for UnicodeSet.add(new last range)
- fewer UnicodeSet memory allocations:
  initial internal list array, exponential array growth,
  allocate strings list/set only when first one is added
- faster CodePointTrie.getRange(): fewer calls to filter function
- revert UnicodeSet(intprop=value) from trie ranges to range starts + lookup
- cache per-int-prop range starts: fewer lookups
2018-11-12 16:05:57 -08:00
Shane Carr
11a559f319 ICU-13267 Refactoring field position testing logic into helper function.
Makes future field position logic easier to test.
2018-11-08 17:13:29 -07:00
Shane Carr
ba21ff79c4 ICU-13701 Syncs C and J increment rounding. Checks for nickel sooner. 2018-11-08 17:13:17 -07:00
Shane Carr
a1cc16ccd3 ICU-13701 Refactoring DecimalQuantity: removing lOptPos/rOptPos.
Combined ICU4C and ICU4J.
2018-11-08 02:43:31 -07:00
Markus Scherer
59006770ed ICU-20250 faster MutableCodePointTrie.build(): use a hashtable to find equal blocks in earlier parts of the compacted data & index arrays 2018-11-07 14:29:24 -08:00
Markus Scherer
cee3c150ab ICU-20255 revert to reflection for methods not yet in Android API level 21..23 2018-11-06 08:05:37 -08:00
Shane Carr
53d8c8f3d1 ICU-20246 Fixing another integer overflow in number parsing. 2018-10-31 13:37:09 -07:00
Yoshito Umaoka
12a71c7dcb ICU-20245 tzdata2018g updates 2018-10-30 18:14:03 -04:00
Shane Carr
f8c09f776a ICU-20231 Adding tests for accounting with variable currency widths. 2018-10-29 16:29:06 -07:00
Shane Carr
8018eb84e7 ICU-13701 Adding custom logic for nickel rounding, C and J.
Avoids expensive arithmetic when performing nickel rounding for currencies such as CAD, CHF, and DKK.
2018-10-29 16:28:42 -07:00
Fredrik Roubert
10e79698d7 ICU-20228 Fix common typos for "language". 2018-10-24 20:54:10 +02:00
Shane Carr
aa898cc042 ICU-11511 Adding tests for CLDR-10103 scientific notation spec changes. 2018-10-23 17:46:33 -07:00
Yoshito Umaoka
48d3ad0d39 ICU-20224 tzdata2018f updates. 2018-10-19 22:15:18 -04:00
Frank Tang
fa3ab39671 ICU-20109 Upgrade Java RelativeDateTimeFormatter QUARTER to @draft
(#221)

add tests for AbsoluteUnit.QUARTER
2018-10-19 15:38:36 -07:00
Andy Heninger
e509105c9b
ICU-20205 RelativeDateTimeFormatter pt data fix, improved error handling and test. (#210)
* ICU-20205 Add locale test for RelativeDateTimeFormatter.

* ICU-20205 Fix error in pt relative date data. Improve error handling in code.

* ICU-20205 Add instantiation test & regen data from ICU4C

* ICU-20205 Added DateFormatSymbols error check per jefgen's comments.
2018-10-12 16:19:14 -07:00
Yoshito Umaoka
35e3ba8530
ICU-20120 BRS63GA Updating ICU4J 63 readme.html (#203)
Just updating API change report link from svn to local.
2018-10-10 13:03:05 -04:00
Jeff Genovy
1af92cd3e7
ICU-20120 BRS63GA: Update version numbers/readme for ICU 63 GA. (#199) 2018-10-08 10:56:42 -07:00
leadpony
2e580c0504 ICU-20192 Add Automatic-Module-Name to META-INF/MANIFEST.MF (#193)
* Add Automatic-Module-Name to META-INF/MANIFEST.MF

* Added com.ibm.icu.number in Export-Package list

* Add Automatic-Module-Name to charset and localespi
2018-10-08 11:41:02 -04:00
Yoshito Umaoka
31d40cc5ee
ICU-20182 Updated ICU4J pom to reflect the repository migration from svn to git. (#196) 2018-10-08 11:37:28 -04:00
pedberg-icu
b098078ab8
ICU-20120 63 BRS, integrate cldr release-34-beta with various fixes (#186) 2018-10-05 11:01:15 -07:00
pedberg-icu
bac4c96020
ICU-20119 cldr release-34-alpha3 integration (#181)
ICU-20119 cldr release-34-alpha3 integration (PR #181):
* ICU-20119 63rc BRS, cldr 34-alpha3: add ku,xh; fixes for de/it CompactDec, availFmts yw amd MW patterns
* ICU-20119 Skip & log_knownIssue for Windows LCID mapping problem with ckb/ku
2018-09-28 16:09:15 -07:00
Yoshito Umaoka
0f99b318f6
ICU-20119 BRS63RC Fixed ICU4J plugin build issue (#182)
ICU4J plugin build configuration still used 1.6 as java source version. It must be changed to 1.7.
2018-09-28 15:22:55 -04:00
Yoshito Umaoka
cc6cb3659d
ICU-20119 BRS63RC Updated ICU4J README for 63RC (#180) 2018-09-28 13:28:08 -04:00
Yoshito Umaoka
8fb353c749
ICU-20119 BRS63RC Add ICU4J serialization test data (#178)
Added serialized test data with ICU4J 63.1, removed one for ICU 58.1.
2018-09-28 10:26:04 -04:00
Yoshito Umaoka
0e334f341f ICU-20119 BRS63RC Add ICU4J API signature file
Added ICU4J 63 API signature file, removed one for ICU4J 53
2018-09-28 15:45:07 +02:00
Shane F. Carr
038c0e167c
ICU-20119 ICU4J API promotion, @draft 60 → @stable 60 (#174)
* ICU-20119 ICU4J API promotion, @draft 60 → @stable 60

* ICU-20119 Updating ICU4J API Change Report.

* ICU-20119 FilteredBreakIteratorBuilder and NumberingSystem to @stable (ICU4J).
2018-09-27 18:31:53 -07:00
Markus Scherer
ff9876421e
ICU-20119 pool bundles for ICU 63/CLDR 34 (#173) 2018-09-27 14:27:42 -07:00
Fredrik Roubert
7326277ce3
ICU-20085 Revert workaround for pseudolocale region codes for display names.
This reverts commit 1dccd7472e9f2db4830293b9d33500ea4b4ce082.
2018-09-27 14:27:41 -07:00
pedberg-icu
4a139a3f91
ICU-20119 Merge pull request #162 from pedberg-icu/cldr34a-integration
ICU-20119 Integrate CLDR release-34-alpha2, adjust code & test, update MeasureUnit
2018-09-27 14:27:41 -07:00
Shane F. Carr
b9b6cfebd8
ICU-11319 Add tests for compact decimal in zh-Hant and zh-Hant-HK. (#166) 2018-09-27 14:27:41 -07:00
Markus Scherer
5148a38143
ICU-20125 numeric values of level constants will not change; fix/update some docs (#159) 2018-09-27 14:27:41 -07:00
Andy Heninger
4d82d71927
ICU-20119 Fix NumberFormat failures (by shane) 2018-09-27 14:27:41 -07:00
Shane F. Carr
5cfb733249
ICU-11276 Apply the approximately pattern inside of the unit string. (#148) 2018-09-27 14:27:41 -07:00
Peter Edberg
0185883ba5
ICU-20119 63rc BRS, merge current unicode-icu master (Sep 21) into cldr34a-integration branch 2018-09-27 14:27:41 -07:00
Peter Edberg
68eeb0c01f
ICU-20119 63rc BRS, cldr 34-alpha2 part 3: icu4j code for region,pluralRange; tests for pluralRange,serialization 2018-09-27 14:27:41 -07:00
Peter Edberg
54a35e43ee
ICU-20119 63rc BRS, cldr 34-alpha2 part 2: 10 locales, MeasUnit updates, icu4j tests with serialization fails 2018-09-27 14:27:41 -07:00
Shane
a8a6ffdb92
ICU-20037 Fixing ScientificMatcher integer overflow. (#138)
Also restricts parsing to read only one exponent per string.
2018-09-27 14:27:41 -07:00
Mihai Nita
531bc76ed5
ICU-20142 Document the skeleton for MessageFormat number arguments (#121) 2018-09-27 14:27:41 -07:00
Shane
e5bca0c9f7
ICU-20073 Do not parse stray percent sign in strict mode. (#145) 2018-09-27 14:27:41 -07:00
Shane
05d8814c2b
ICU-13266 Clarifying documentation for NumberFormat#equals(). (#146) 2018-09-27 14:27:41 -07:00
Shane
5adce9ad30
ICU-13824 Fixing MeasureFormat#getWidth() to not return @internal value. (#143) 2018-09-27 14:27:41 -07:00
Shane
9774394291
ICU-13830 Fixing CurrencyDisplayNames boolean attribute behavior. (#141) 2018-09-27 14:27:41 -07:00
Yoshito Umaoka
35e63d4ade
ICU-20153 Make ICU4J JapaneseCalendar constants non-inlineable. (#155) 2018-09-27 14:27:41 -07:00
Markus Scherer
a075ac9cf8
ICU-13832 Transliterator: move rule syntax docs from internal class to public (#150) 2018-09-27 14:27:41 -07:00
Yoshito Umaoka
24b490dc02
ICU-20150 API status of equals()/hashCode() should match the ICU class's status (#153)
- Updated API status of java.lang.Object method overrides (equals/hashCode/toString/clone) to match status of declaring class. There are some API comments that is insufficient, or incorrect, or not appropriate after the change. Most of these issues were fixed.

- APIStatusConsistencyChecker and ant tasks invoking the check, designed for checking this requirement. For now, Normalizer#clone() does not satisfy the requirement, but unchanged on purpose. The tool can accept exception.

- DeprecatedAPIChecker had a problem for handling non-static inner class's constructor. CodePointMap$StringIterator is the very first instance of such class in ICU4J. The problem was fixed by removing the implicit param scanned by reflection.

- This commit includes a lot of changes made by Eclipse project configuration - removing spaces in blank lines/end of statement, and removeal of redundant generics type declaration.
2018-09-27 14:27:41 -07:00
Jeff Genovy
c3f576710b
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-27 14:27:41 -07:00
Shane Carr
068ef1c265
ICU-20063 Make setSignificantDigitsUsed more friendly. 2018-09-27 14:27:40 -07:00
jungshik
4ed35d7bb5
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-27 14:27:40 -07:00
Yoshito Umaoka
61c42a598b
ICU-20119 BRS63 Currency numeric code data update - VES and UYW (#126) 2018-09-27 14:27:40 -07:00
Victor Chang
b62200061c
ICU-20058 Fix mimimum significant digits in engineering notation
- Follow the spec to calculate the mimimum significant digits in engineering notation
- The bug is regression since ICU 58. The new test still passes on
ICU58-based DecimalFormat
- Maximum significant digits is not changed
2018-09-27 14:27:40 -07:00
gvictor
d461a0e49c
ICU-20133 Undeprecate Transliterator.Position#hashCode (#119)
Create a preper hash code with Objects.hash instead of returning 42
2018-09-27 14:27:40 -07:00
Yoshito Umaoka
cc6b107513
ICU-20119 BRS63RC Fix javac/javadoc/Eclipse errors/warnings (#132)
* ICU-20119 BRS63RC Fixing java compiler warnings

* ICU-20119 BRS63RC Fixing JavaDoc errors
2018-09-27 14:27:40 -07:00
Shane Carr
abb6ed034a
ICU-11276 Adding more test cases. Fixing minor issues with extended locales. 2018-09-27 14:27:40 -07:00
Shane Carr
4f2604655a
ICU-11276 Replying to Mark review feedback. 2018-09-27 14:27:40 -07:00
Shane Carr
d4e8ed7ed0
ICU-11276 Replying to Andy review feedback. 2018-09-27 14:27:40 -07:00
Shane Carr
b59ffcf1ca
ICU-11276 Porting pluralRanges support to Java. 2018-09-27 14:27:40 -07:00
Shane Carr
ec40c16957
ICU-11276 Fixing ICU4J number range test failures. 2018-09-27 14:27:40 -07:00
Shane Carr
af091cc15a
ICU-11276 One more attempt at fixing test failure. 2018-09-27 14:27:40 -07:00
Shane Carr
d717184948
ICU-11276 Fixing test failure related to number range. 2018-09-27 14:27:40 -07:00
Shane Carr
55974b2fb6
ICU-11276 Adding Java NumberRangeFormatter implementation. 2018-09-27 14:27:40 -07:00
Shane Carr
8210f9e7d3
ICU-11276 Replying to code review comments. 2018-09-27 14:27:39 -07:00
Shane Carr
0c5b7c2232
ICU-11276 Fixing Javadoc warnings in NumberRangeFormatter. 2018-09-27 14:27:39 -07:00
Shane Carr
92a86dfcf5
ICU-11276 Feedback from ICU-TC. Fixing doxygen warnings. 2018-09-27 14:27:39 -07:00
Shane Carr
9109a388f4
ICU-11276 Adding C++ base implementation of NumberRangeFormatter, including unit test. 2018-09-27 14:27:39 -07:00
Shane Carr
cc842512fa
ICU-11276 Assorted Java NumberRangeFormatter API improvements. 2018-09-27 14:27:39 -07:00
Shane Carr
fc0e6258db
ICU-11276 Adding enums and more API docs. 2018-09-27 14:27:39 -07:00
Shane Carr
37a40b31ed
ICU-11276 Adding placeholder implementation and more API functions. 2018-09-27 14:27:39 -07:00
Shane Carr
553f22585d
ICU-11276 Adding initial Java NumberRangeFormatter boilerplate. 2018-09-27 14:27:39 -07:00
Andy Heninger
b54702b7de
ICU-13801 Clarify Javadoc for BreakIterator.setText() (#69) 2018-09-27 14:27:39 -07:00
Markus Scherer
f779761bff
ICU-20116 remove @deprecated from Edits.Iterator.toString() (#98)
but keep @internal
2018-09-27 14:27:39 -07:00
Yoshito Umaoka
45cdda61a6
ICU-12973 CLDR Japanese Era data and tentative Japanese new era support (#111)
* Updated era data format in supplementalData.

* Include tentative era names in data. Implemented Japanese era loaded from CLDR data in ICU4J.

* ICU4C implementation, ICU4C refactoring. WIP.

* VS project updates and some bug fixes

Also added API comments.

* Review feedback and bug fixes

- NULL to nullptr
- use of LocalUResourceBundlePointer
- TYPO "name" to "named"
- env var checking stricmp() == 0

* API comment correction based on feedback

* Duplicate the comment in ucal.h to calendar.h

* Fixed spelling errors in API comment
2018-09-27 14:27:39 -07:00
jungshik
5cfdf4a519
ICU-20098 Fix BCP47 validity check for extlang and privateuse singleton (#102)
* ICU-20098 Fix the validty check for extlang in uloc_forLanguageTag

BCP 47 has the following for language. extlang subtag can only be
preceded by 2*3ALPHA. Add a check for the length of language subtag
before extlang subtag.

language      = 2*3ALPHA            ; shortest ISO 639 code
                 ["-" extlang]       ; sometimes followed by
                                     ; extended language subtags
               / 4ALPHA              ; or reserved for future use
               / 5*8ALPHA            ; or registered language subtag

 extlang       = 3ALPHA              ; selected ISO 639 codes
                 *2("-" 3ALPHA)      ; permanently reserved}}

With this change, 'hant-cmn-CN' would drop '-cmn-CN' keeping only
'hant'.

* ICU-20098 Fix the validty check for extlang for ICU4J

* ICU-20098 Fix the compiler failure for ICU4J

* ICU-20098 Fix a compile error and test.

* ICU-20098 Add a test for invalid private use  singleton

ICU4C's check for private use singleton subtag ('x') is wrong and
treats invalid language tags as valid.

ICU4J's check is correct and does not require any change.

Fix that and add tests to both ICU4C and ICU4J.
2018-09-27 14:27:39 -07:00
David Corbett
378b04c1b2
ICU-12979 Fix \Q...\E in UnicodeRegex#transform (#23) 2018-09-27 14:27:39 -07:00
Markus Scherer
82f0f480d4
ICU-20086 C++ sets & maps for Unicode properties (#93)
also create ucpmap.h from renamed parts of ucptrie.h
2018-09-27 14:27:39 -07:00
Andy Heninger
740b24118f
ICU-8151 Simplify Finnish Line Break Tailoring, move to root. (#99) 2018-09-27 14:27:39 -07:00
Victor Chang
ac0c7bbe3c
ICU-13808 Document ArithmeticException thrown by DecimalFormat
- Document the exception in the following methods
setMultiplier, setMathContext, setMathContextICU
- Add test to check the documented behavior
2018-09-27 14:27:39 -07:00
Markus Scherer
d2ec8987a7
ICU-8966 ICU-12850 add API/data/code for text layout properties InPC, InSC, vo (#92)
ICU-8966: Indic_Positional_Category & Indic_Syllabic_Category

ICU-12850: Vertical_Orientation
2018-09-27 14:27:39 -07:00
gnrunge
82cad0d03c
ICU-20092 Merge pull request #75 from gnrunge/langmatcher
ICU-20092 Integrates new languagematcher enhancements into ICU4J.
2018-09-27 14:27:39 -07:00
Fredrik Roubert
d2b2d2409a
ICU-20006 Parameterize the TestSourceTargetSet2 test case.
By extracting this test case into a separate class and separating the
complex and time consuming building of the UnicodeSet disorderedMarks
data structure into an @BeforeClass shared setup method it becomes
possible to test the 18 different transliteration rules as a
parameterized test case.

This will lower the running time per test case and also aid in debugging
as it will make it immediately obvious which transliteration rules cause
test failures (and which don't).
2018-09-27 14:27:39 -07:00
Norbert Runge
c854dd0d54
ICU-20092 Integrates new languagematcher enhancements into ICU4J. 2018-09-27 14:27:39 -07:00
Fredrik Roubert
f71ecc6b18
ICU-13483 Use a real time zone to make tests work in Android.
When running in Android, java.util.TimeZone.getDefault() will only
return a TimeZone object for a time zone that actually exists, so when
passing a bogus test TimeZone object to setDefault() and afterwards
calling getDefault() it won't return that same time zone.

Changing our tests to instead use a real existing (but otherwise unused)
time zone instead makes the tests work in Android as well.

Neither of these tests was testing the ability to set an arbitrarily
made up time zone as the default, so no test coverage is lost.
2018-09-27 14:27:39 -07:00
Andy Heninger
03c6e86c6c
ICU-13334 add test for reported word break behavior issue, not reproducable. (#74) 2018-09-27 14:27:38 -07:00
Markus Scherer
000c266045
ICU-13530 fix bugs, add tests, clarify docs (#83)
* ICU-13530 test & fix cptrie.getRange() when small null data block matches the start of a non-null fast data block

* ICU-13530 fix test bug

* ICU-13530 test & fix bug calculating worst-case data array capacity at start of compaction

* ICU-13530 docs: clarify buildImmutable() discards upper bits, trie then returns unsigned ints; range iteration slower than if ranges were stored directly

* ICU-13530 accept feedback on docs
2018-09-27 14:27:38 -07:00
Markus Scherer
852fb5b51f
ICU-13530 CodePointMap docs fix s/trie/map/ (#73) 2018-09-27 14:27:38 -07:00
Shane
8cad57b56c
ICU-13696 Parse local currency ISO codes as case-insensitive. (#62) 2018-09-27 14:27:38 -07:00
Andy Heninger
c34984bd6f
ICU-13664 RBBI, add regression test for reported problem (already fixed.) 2018-09-27 14:27:38 -07:00
Fredrik Roubert
da7bd533ab
ICU-20000 Workaround for BigDecimal.stripTrailingZeros() differences. (#57)
Different implementations of BigDecimal.stripTrailingZeros(), in
different versions of the JDK (and different versions of Android), have
differences in their handling of zero. To avoid this, ICU4J can return
BigDecimal.ZERO for any value that is equal to zero, instead of calling
BigDecimal.stripTrailingZeros() in this problematic case.
2018-09-27 14:27:38 -07:00
Andy Heninger
ffedbf99cb
ICU-13413 Java 7 for Javadoc build. (#68) 2018-09-27 14:27:38 -07:00
Fredrik Roubert
acfc55d0a5
ICU-13776 Use OpenType.DIRECT for loading the keyTypeData resources. 2018-09-27 14:27:38 -07:00
Markus Scherer
fe3eb3ed5c
ICU-13530 add UCPTrie/CodePointTrie, switch normalization to use it (#48)
* ICU-13530 copy C/C++ files UTrie2 -> UTrie3

X-SVN-Rev: 40754

* ICU-13530 UTrie3 new files copied from UTrie2: rename types/functions/macros

X-SVN-Rev: 40755

* ICU-13530 debug-print building each UTrie2

X-SVN-Rev: 40756

* ICU-13530 remove two-byte-UTF-8 errorValue block; move highValue from end of data array into header; add errorValue to header

X-SVN-Rev: 40762

* ICU-13530 UTrie3 U16_NEXT/PREV: errorValue for unpaired surrogates

X-SVN-Rev: 40763

* ICU-13530 no more separate values for lead surrogate code units

X-SVN-Rev: 40764

* ICU-13530 change from 11:5 trie bits to 10:6 for simpler UTF-8 code

X-SVN-Rev: 40766

* ICU-13530 UTrie2 build UTrie3 as well, print sizes

X-SVN-Rev: 40767

* ICU-13530 debug-print countSame, sumOverlaps, countInitial

X-SVN-Rev: 40768

* ICU-13530 debug-print whether trie is for CanonIterData

X-SVN-Rev: 40769

* ICU-13530 no index-shift for BMP data, no separate index-2 for 2-byte UTF-8; builder changes incomplete

X-SVN-Rev: 40777

* ICU-13530 remove errorValue and highStart from UNewTrie3

X-SVN-Rev: 40778

* ICU-13530 rewrite UTrie3 builder code

X-SVN-Rev: 40783

* ICU-13530 UTrie3 bug fixes

X-SVN-Rev: 40788

* ICU-13530 fully re-inline _UTRIE3_U8_NEXT()

X-SVN-Rev: 40790

* ICU-13530 find most common all-same data block for dataNullBlock and initialValue

X-SVN-Rev: 40792

* ICU-13530 UTrie3 iterator functions take start and return the end of a range, rather than callback call for each range

X-SVN-Rev: 40800

* ICU-13530 mask off unused data value bits before building a UTrie3 with values less than 32 bits wide

X-SVN-Rev: 40803

* ICU-13530 split utrie3builder.h out of utrie3.h

X-SVN-Rev: 40804

* ICU-13530 separate types UTrie3 vs. UTrie3Builder, implement builder as wrapper over C++ class Trie3Builder in .cpp

X-SVN-Rev: 40809

* ICU-13530 function to make a UTrie3Builder from a UTrie3

X-SVN-Rev: 40810

* ICU-13530 debug-print some data; some cleanup

X-SVN-Rev: 40865

* ICU-13530 BMP 10:6 but supplementary 10:6:4

X-SVN-Rev: 40984

* ICU-13530 move errorValue & highValue to the end of the data table, minimal padding to 4 bytes

X-SVN-Rev: 41011

* ICU-13530 index-1 table gap of index-2 null blocks

X-SVN-Rev: 41018

* ICU-13530 test with more than 128k compacted data

X-SVN-Rev: 41034

* ICU-13530 supplementary bits 11:5:4 saves a little space

X-SVN-Rev: 41039

* ICU-13530 supplementary bits 6:5:5:4 instead of gap: about same size but simpler

X-SVN-Rev: 41050

* ICU-13530 remove unnecessary utrie3_clone(built trie)

X-SVN-Rev: 41058

* ICU-13530 remove unnecessary UTrie3StringIterator

X-SVN-Rev: 41059

* ICU-13530 back to UTRIE3_GET...() macros *returning* data values

X-SVN-Rev: 41060

* ICU-13530 fast vs. small

X-SVN-Rev: 41066

* ICU-13530 always load NFC data, add simple normalization performance test

X-SVN-Rev: 41110

* ICU-13530 change normalization main trie to UTrie3 with special values for lead surrogates; forbid non-inert surrogate code *points* because unable to store values different from code *units*; runtime code work around that for code point lookup and iteration; adjust UTS 46 for normalization no longer mapping unpaired surrogates to U+FFFD

X-SVN-Rev: 41122

* ICU-13530 simplenormperf bug fix and NFC base line

X-SVN-Rev: 41126

* ICU-13530 move normalization getRange skipping lead surrogates to API getRangeSkipLead()

X-SVN-Rev: 41182

* ICU-13530 switch CanonIterData and gennorm2 Norms to UTrie3

X-SVN-Rev: 41183

* ICU-13530 remove unused overwrite parameter from setRange()

X-SVN-Rev: 41184

* ICU-13530 getRange skip lead -> fixed surrogates

X-SVN-Rev: 41219

* ICU-13530 minor cleanup

X-SVN-Rev: 41221

* ICU-13530 UTS 46 code map unpaired surrogates to U+FFFD before normalization

X-SVN-Rev: 41224

* ICU-13530 minor internal-docs cleanup

X-SVN-Rev: 41225

* ICU-13530 rename UTrie3 to UCPTrie, and other name changes

X-SVN-Rev: 41226

* ICU-13530 add 8-bit data option; add type-any & valueBits-any for fromBinary(); macros consistently source type then data width

X-SVN-Rev: 41234

* ICU-13530 scrub the API docs for the proposal

X-SVN-Rev: 41319

* ICU-13530 tag internal definitions as such, or move them to an internal header

X-SVN-Rev: 41320

* ICU-13530 Java API skeleton

X-SVN-Rev: 41326

* ICU-13530 API feedback: ValueWidth, MutableCodePointTrie, base CodePointMap, ...

X-SVN-Rev: 41382

* ICU-13530 add UCPTrie valueWidth field and padding, and combine data pointers into a union

X-SVN-Rev: 41408

* ICU-13530 switch some macros to using dataAccess parameter: separate index vs. data lookups, no macro variant for each value width

X-SVN-Rev: 41409

* ICU-13530 StringIterator is no longer a java.util.Iterator (bad fit)

X-SVN-Rev: 41455

* ICU-13530 CodePointTrie.java code complete

X-SVN-Rev: 41518

* ICU-13530 finish Java port incl test; keep C++ parallel

* ICU-13530 adjust API for feedback: rename HandleValue to FilterValue, change getRange+getRangeFixedSurr(bool allSurr) to enum RangeOption+getRange(enum option); change remaining C macros to use dataAccess for 16/32/8-bit value widths; fix/clarify some API docs

* ICU-13530 add javadoc

* ICU-13530 document UCPTrie binary data format

* ICU-13530 update .nrm formatVersion 3->4, document change in surrogate handling with new trie

* ICU-13530 re-hardcode NFC data

* move trie swapper code into new file; add new files to Windows project files; turn off trie debugging

* ICU-13530 minor cleanup

* ICU-13530 test more range starts; fix a C test leak

* ICU-13530 regenerate Java data from scratch

* ICU-13530 review feedback changes: API docs typos, more @internal, C++11 field initializers, fix potential leak in MutableCodePointTrie::fromUCPTrie()

* ICU-13530 rename interface FilterValue to ValueFilter
2018-09-27 14:27:38 -07:00
Yoshito Umaoka
8a52f44951
ICU-13413 Merge pull request #43 from yumaoka/icu4j-java7
ICU-13413 Update the minimum Java runtime version to 7
2018-09-27 14:27:38 -07:00
Yoshito Umaoka
a4fc56f382
ICU-13413 More clean-ups for code redundant/unnecessary for Java 7 and up
Simplified redundant code and removed unnecessary code path for Java 7 and later runtime in various places. Also cleaned up stale comments.

There is one test code change in com.ibm.icu.dev.test.localespi.NumberFormatTest - number keyword in test case was changed to Arab to arab. This test case was skipped with Java 6 runtime. It looks this code was note tested on Java 7 and later. @number=Arab does not work because it's case sensitive and must be all lower case letters.
2018-09-27 14:27:38 -07:00
Yoshito Umaoka
18789823b2
ICU-13413 Updated eclipse plugin build/project files to use Java 7 as bootstrap java version 2018-09-27 14:27:38 -07:00
Yoshito Umaoka
4159176aa7
ICU-13413 Updated ULocale class to directly calls Java 7 Locale methods
Previously, ULocale had to work on Java 6, therefore, Java 7 specific Locale methods needed to be invoked by reflection. For the next release, we can directly call Java 7 Locale APIs, so rather complicated reflection implementation were replaced with simple API calls.
2018-09-27 14:27:38 -07:00
Yoshito Umaoka
135bb1e380
ICU-13413 Migrating some Utility class methods with Java 7 Objects class method
Previously, some developers accidentally introduced Java 7 Objects class utility methods. At that time, we once added Java 6 compatible implementation in com.ibm.icu.impl.Utility class. Now, we use Java 7 as the minimum supported Java version, so we can use Java 7 Objects class and methods.

There are some extra changes dropping generics type from constructor. For example from `ArrayList<String> output = new ArrayList<String>();` to `ArrayList<String> output = new ArrayList<>();`. The updated syntax is allowed since Java 7. We have eclipse project configured to normalize such expression, therefore, files touched by this commit were automatically updated. These changes are not directly related to Java 7 Objects method replacement.
2018-09-27 14:27:38 -07:00
Andy Heninger
fa5ae3dc45
ICU-7270 Line Break rule LB8 updated for UAX-14 conformance. (#41)
Includes all line break tailorings.
Corresponding updates to monkey test rules.
State table builder, fix missed table optimization, uncovered by new rule.
2018-09-27 14:27:38 -07:00
Yoshito Umaoka
d1c761762a
ICU-13413 Java 7 migration in build scripts and eclipse project files
- Updated javac/javadoc source and target Java version to 1.7.
- Eclipse projects to use execution environment JavaSE-1.7.
- Replaced java6.bootclasspath with java7.bootclasspath.
- Removed pre-Java 7 conditional build targets.
- Deleted stylesheet for JDK6 build.
2018-09-27 14:27:38 -07:00
Victor Chang
b69407ffab
ICU-20007 Remove incorrect ICU4J doc of DecimalFormat.setGroupingUsed
DecimalFormat.setGroupingUsed(true) no longer sets the grouping size to 3.
The java doc should be removed.
2018-09-27 14:27:38 -07:00
Fredrik Roubert
ed5201f293
ICU-20016 Skip testing pseudolocale region codes for display names.
At the moment, CLDR pseudolocale region codes don't have display names.
As long as that is so, ICU must not require them to exist in order to
not cause bogus test failures when building with pseudolocales.
2018-09-27 14:27:37 -07:00
Fredrik Roubert
b24880b19f
ICU-20018 Remove hardcoded expectations on available locales.
Both the number of installed locales and the name of the last locale
change with updates to and customizations of CLDR/ICU data so test
expectations on these values will cause bogus test failures.
2018-09-27 14:27:37 -07:00
Shane Carr
bd1d915c2d
ICU-20056 Adding test for minFrac with maxSig 2018-09-27 14:27:37 -07:00
Norbert Runge
95f7cad6b3
ICU-13829 Removes duplicate import statement. 2018-09-27 14:27:37 -07:00
Norbert Runge
f97507dab2
ICU-13829 Revert order of imports to conform with (almost all of) the other files in this directory. 2018-09-27 14:27:37 -07:00
Norbert Runge
298462e5fe
ICU-13829 Languagematcher: Fixes straightforward code issues. 2018-09-27 14:27:37 -07:00
Markus Scherer
99354ec034 ICU-13851 case mapping data: when fetching delta make sure to read from start of exceptional values
X-SVN-Rev: 41550
2018-06-24 21:12:22 +00:00
Fredrik Roubert
f1d29ce62e ICU-13766 Make UnicodeMapTest#TestUnicodeMapGeneralCategory smaller.
There are 0x10FFFF code points and this test allocates memory for every
code point tested. Testing every single one of them is therefore memory
intensive and slow, without adding any real value to the test.

Instead an equivalent test coverage can be achieved by testing a much
smaller set of ranges of code points that cover all categories.

X-SVN-Rev: 41547
2018-06-21 20:17:22 +00:00
Shane Carr
3f7a4aa202 ICU-13840 Fixing memory overflow issue in number_decimalquantity.cpp and adding tests.
X-SVN-Rev: 41541
2018-06-19 21:52:52 +00:00
Peter Edberg
7c28a58b1f ICU-13823 Integrate data from cldr/tags/release-33-1-d03 to ICU trunk for ICU62 final
X-SVN-Rev: 41525
2018-06-14 22:33:37 +00:00
Yoshito Umaoka
08eed14678 ICU-13822 Updated ICU4J data - removing VES.
X-SVN-Rev: 41512
2018-06-06 23:02:35 +00:00
Shane Carr
724e3b4f10 ICU-13804 Fixing test failure from r41497.
X-SVN-Rev: 41498
2018-06-01 00:48:18 +00:00
Shane Carr
dd7667d330 ICU-13804 Making number parsing code more robust when given empty symbol strings.
X-SVN-Rev: 41497
2018-06-01 00:31:54 +00:00
Shane Carr
29937704cd ICU-8610 Responding to number skeleton code review feedback.
X-SVN-Rev: 41483
2018-05-30 03:34:41 +00:00
Peter Edberg
8d17fb0e1b ICU-13667 ICU 62rc BRS, update measurement unit constants
X-SVN-Rev: 41481
2018-05-30 01:22:52 +00:00
Peter Edberg
4e6358240c ICU-13792 Integrate data from cldr/tags/release-33-1-d02 to ICU trunk for ICU62rc
X-SVN-Rev: 41479
2018-05-29 22:33:10 +00:00
Yoshito Umaoka
97011814e0 ICU-13667 BRS62 - Added ICU 62 serialization test data, removed ICU 57.
X-SVN-Rev: 41478
2018-05-29 21:26:24 +00:00
Yoshito Umaoka
eaa25479e1 ICU-13667 BRS62 - added ICU4J 62 API signature file (and deleted ICU4J 52 API signature file).
X-SVN-Rev: 41477
2018-05-29 21:12:48 +00:00
Yoshito Umaoka
a12265d749 ICU-13667 Updated API change report, fixed API report tool to handle 5 letter sub-package (number) properly.
X-SVN-Rev: 41476
2018-05-29 21:07:31 +00:00
Yoshito Umaoka
2076cee7d8 ICU-13667 BRS62 Clean up import statements.
X-SVN-Rev: 41475
2018-05-29 19:34:43 +00:00
Yoshito Umaoka
f4c892c6c4 ICU-13667 Fixing compiler warnings and API doc issues.
X-SVN-Rev: 41473
2018-05-29 17:06:21 +00:00
Jeff Genovy
70e173a4a2 ICU-13667 Update ICU4J version number for 62.1 release candidate, and readme file.
X-SVN-Rev: 41467
2018-05-25 23:39:14 +00:00
Markus Scherer
c6c8b7201a ICU-13630 update spoof checker inclusion/recommended sets from Unicode 9 to Unicode 11
X-SVN-Rev: 41466
2018-05-25 23:39:01 +00:00
Markus Scherer
eecb1a94fc ICU-13630 script metadata: Mongolian -> exclusion
X-SVN-Rev: 41462
2018-05-25 18:18:15 +00:00
Shane Carr
79b8248092 ICU-13677 Fixing up apidoc strings for precision setting.
X-SVN-Rev: 41456
2018-05-24 21:28:11 +00:00
Peter Edberg
5b3c14c29d ICU-12936 Make RelativeDateTimeFormatter handle offset of -0
X-SVN-Rev: 41451
2018-05-24 05:52:01 +00:00
Shane Carr
8e1dc1f3b1 ICU-13736 Change number parsing to require locale currency when using non-currency parse function.
X-SVN-Rev: 41450
2018-05-24 04:35:16 +00:00
Shane Carr
58b7fe2e32 ICU-13777 Adding tests to make sure currency long names round-trip through parsing.
X-SVN-Rev: 41446
2018-05-24 04:16:35 +00:00
Shane Carr
68b2d740d6 ICU-13788 Disabling failing RBNF parse test; to be addressed in #13793
X-SVN-Rev: 41445
2018-05-24 03:36:42 +00:00
Markus Scherer
186cd0a4dc ICU-13630 Unicode 11 zh data, take 2
X-SVN-Rev: 41435
2018-05-22 23:57:25 +00:00
Shane Carr
c2412adb1e ICU-11626 Fixes ICU4C CurrencyPluralInfo unit tests. Also fixes a memory leak in CurrencyPluralInfo implementation.
X-SVN-Rev: 41431
2018-05-22 20:47:19 +00:00
Markus Scherer
768f3f42a9 ICU-13630 IdnaTestV2.txt with bug fixes 20180522
X-SVN-Rev: 41430
2018-05-22 17:46:27 +00:00
Shane Carr
0a2aeb017a ICU-13333 Adding combining dot spoof check.
X-SVN-Rev: 41428
2018-05-22 02:47:31 +00:00
Shane Carr
33a0fa7172 ICU-13783 Re-writing grouping parsing logic. Same behavior but passes more corner cases.
X-SVN-Rev: 41427
2018-05-22 02:46:49 +00:00
Markus Scherer
ebca759ea1 ICU-13630 Unicode 11 update from near-final data 20180521
X-SVN-Rev: 41426
2018-05-22 01:56:20 +00:00
Andy Heninger
fc31932587 ICU-13770 Line Break update for Unicode 11 - revise rule LB8a.
X-SVN-Rev: 41425
2018-05-21 23:47:40 +00:00
Andy Heninger
c85229e1e4 ICU-13770 RBBI LB8a rule update for ICU4J.
X-SVN-Rev: 41424
2018-05-21 22:40:17 +00:00
Yoshito Umaoka
6f34721bf6 ICU-13121 Use ASCII style copyright comment in all properties file.
X-SVN-Rev: 41422
2018-05-21 00:55:46 +00:00
Yoshito Umaoka
ca9ecef96e ICU-13517 Updated TimeZoneAdapter#equals implementation to return false if the given object is not a TimeZoneAdapter.
X-SVN-Rev: 41419
2018-05-20 23:53:41 +00:00
Yoshito Umaoka
ab59a3896c ICU-13601 Added getFirstDayOfWeek() in ICU Calendar wrapper class - CalendarICU.
X-SVN-Rev: 41418
2018-05-20 21:56:37 +00:00
Yoshito Umaoka
19eadbf90d ICU-13703 Fixed TestHoliday/TestEaster test execution issue.
X-SVN-Rev: 41416
2018-05-20 18:47:57 +00:00
Shane Carr
8265a37aa4 ICU-11640 Minor code cleanup
X-SVN-Rev: 41415
2018-05-19 08:04:15 +00:00
Yoshito Umaoka
898f5a6b11 ICU-13740 Java 6 compatibility fix
X-SVN-Rev: 41414
2018-05-19 00:46:19 +00:00
Shane Carr
b1508d753b ICU-11230 Change number parsing to require at least 2 digits in a group after the first group.
X-SVN-Rev: 41407
2018-05-18 00:52:43 +00:00
Fredrik Roubert
9006190a53 ICU-13617 Stop consuming AttributedCharacterIterator instances twice.
X-SVN-Rev: 41405
2018-05-17 18:53:16 +00:00
Shane Carr
54a48fffc3 ICU-13740 Flipping test expectations for some currency parsing cases. ICU4C is the one with unusual behavior, not the others.
X-SVN-Rev: 41403
2018-05-17 06:48:14 +00:00
Shane Carr
12413cde6d ICU-13740 Require "breaks" column to be last; allows for easier searching of the file since all IDs are guaranteed to be at the end of a line.
X-SVN-Rev: 41402
2018-05-17 06:28:27 +00:00
Shane Carr
8ce0b6812b ICU-13740 Merging P, Q, and S into a single case called P.
X-SVN-Rev: 41401
2018-05-17 06:20:43 +00:00
Shane Carr
afa3cb0819 ICU-13740 Enabling proper ICU4J test.
X-SVN-Rev: 41400
2018-05-17 05:54:12 +00:00
Shane Carr
63d22d242f ICU-13740 Refactoring ICU4J test file; adding boilerplate for proper ICU4J test.
X-SVN-Rev: 41399
2018-05-17 05:41:36 +00:00
Shane Carr
a897686732 ICU-13740 Changing ID char for ICU58 test from J to H; frees up J for the new proper ICU4J test.
X-SVN-Rev: 41398
2018-05-17 03:29:37 +00:00
Shane Carr
50bdd810ef ICU-13740 Re-formatting Java NumberFormatDataDrivenTest.java
X-SVN-Rev: 41396
2018-05-17 02:47:29 +00:00
Shane Carr
8eeb57cf98 ICU-13740 Updating expectations in numberformattestspecification.txt
X-SVN-Rev: 41395
2018-05-17 02:37:04 +00:00
Shane Carr
faa334fcee ICU-13740 Syncing numberformattestspecification.txt between C and J
X-SVN-Rev: 41394
2018-05-17 02:26:09 +00:00
Shane Carr
d7f3471733 ICU-13757 Renaming skeleton methods fromSkeleton -> forSkeleton
X-SVN-Rev: 41393
2018-05-17 00:43:12 +00:00
Shane Carr
18263df394 ICU-13373 Adding file change missing from previous commit.
X-SVN-Rev: 41392
2018-05-16 23:56:43 +00:00
Shane Carr
8d3fb63bd2 ICU-13373 Change TestDataDrivenJDK from blacklist to whitelist.
X-SVN-Rev: 41391
2018-05-16 23:55:51 +00:00
Shane Carr
2e2805df9a ICU-13697 Renaming numparse_unisets.h to static_unicode_sets.h and refactoring to guarantee safety in no-data builds.
X-SVN-Rev: 41389
2018-05-16 22:46:40 +00:00
Shane Carr
bebf3c0983 ICU-13629 One more attempt at fixing the flaky UCharacterCaseTest.
X-SVN-Rev: 41388
2018-05-16 21:57:48 +00:00
Shane Carr
a89550fd7a ICU-11897 Fixing testNumberingSystem in C and J.
X-SVN-Rev: 41387
2018-05-16 21:48:35 +00:00
Yoshito Umaoka
cbc23942a7 ICU-13744 Fixed an ICU4J date parsing regression issue causing IndexOutOfBoundsException when pattern has more fields than input date string.
X-SVN-Rev: 41383
2018-05-16 18:59:22 +00:00
Shane Carr
955e0d9319 ICU-11897 Changing kPatternSeparatorSymbol to be a constant ";" and not loaded from data.
X-SVN-Rev: 41380
2018-05-16 01:01:22 +00:00
Andy Heninger
d1507a5a2a ICU-13629 Fix flakey test.
X-SVN-Rev: 41379
2018-05-16 00:29:06 +00:00
Shane Carr
cb34c90168 ICU-13737 Backpedaling on strict mode scientific parsing behavior change (do NOT require an exponent when parsing).
X-SVN-Rev: 41378
2018-05-15 21:14:09 +00:00
Shane Carr
b347a140ec ICU-13742 Implementing number skeletons in MessageFormat.
X-SVN-Rev: 41377
2018-05-15 00:05:04 +00:00
Shane Carr
fb94a3eb76 ICU-13662 Replying to code review feedback.
X-SVN-Rev: 41365
2018-05-09 02:00:22 +00:00
Shane Carr
03f6b1cf92 ICU-13629 Adding comments in replacementIndex getters.
X-SVN-Rev: 41364
2018-05-09 00:14:36 +00:00
Shane Carr
5c969e791f ICU-13629 Improving API docs for Edits and Edits.Iterator.
X-SVN-Rev: 41363
2018-05-09 00:06:53 +00:00
Shane Carr
641c8a1cba ICU-13148 Removing duplicated test in ICU4J.
X-SVN-Rev: 41356
2018-05-08 04:10:40 +00:00
Shane Carr
e27cf9ce39 ICU-13677 Changing NumberFormatter rounding setting to precision and roundingMode.
X-SVN-Rev: 41330
2018-05-05 06:32:29 +00:00
Shane Carr
a4b1517e11 ICU-13328 Adding tests for mixed letter and combining mark.
X-SVN-Rev: 41329
2018-05-05 02:33:21 +00:00
Yoshito Umaoka
d6215a2f34 ICU-13666 Revised tzdata2018e in ICU trunk to replace negative DST (Europe/Prague) rules with updated icuzones override.
X-SVN-Rev: 41325
2018-05-04 22:05:27 +00:00
Yoshito Umaoka
7438138f1d ICU-13666 tzdata2018e updates to ICU4 trunk.
X-SVN-Rev: 41323
2018-05-04 08:19:01 +00:00
Shane Carr
0a0d99ebc8 ICU-13662 Improving NumberFormatter field position method names and behavior.
X-SVN-Rev: 41313
2018-05-03 01:34:19 +00:00
Shane Carr
2e10a5315d ICU-13620 Adding test for uniqueness of MeasureUnit.getAvailable()
X-SVN-Rev: 41303
2018-05-02 03:25:27 +00:00
Shane Carr
e63d20ff62 ICU-13620 Adding more comments on CollectionSet.
X-SVN-Rev: 41302
2018-05-02 03:17:05 +00:00
Andy Heninger
bf329938e8 ICU-13623 Move Java RBBIDataWrapper to from text to impl package.
X-SVN-Rev: 41295
2018-04-30 20:12:14 +00:00
Markus Scherer
a4e66ded6d ICU-13630 switch from IdnaTest.txt to IdnaTestV2.txt new in Unicode 11 see Unicode PRI 375
X-SVN-Rev: 41294
2018-04-30 03:17:11 +00:00
Shane Carr
28e9f69378 ICU-11897 Adding tests for localized pattern separator symbol.
X-SVN-Rev: 41292
2018-04-28 07:27:02 +00:00
Shane Carr
fb8f77b512 ICU-13148 Adding test for grouping separator symbols override.
X-SVN-Rev: 41286
2018-04-28 03:53:35 +00:00
Shane Carr
be466ddec0 ICU-13634 Porting some minor ICU4C performance enhancements to Java.
X-SVN-Rev: 41259
2018-04-21 08:55:58 +00:00
Shane Carr
e59eb48314 ICU-13634 Refactoring getPrefixSuffix methods. In ICU4C, the pattern modifier is now accessed directly. In ICU4J, they use the same detour through the pipeline code path as before with a TODO to improve to be closer to ICU4C. In addition, in both ICU4C and ICU4J, getPrefixSuffix now uses the compiled formatter when available.
X-SVN-Rev: 41258
2018-04-21 08:01:19 +00:00
Shane Carr
f412770e9d ICU-13634 A few more DecimalFormat optimizations.
X-SVN-Rev: 41257
2018-04-21 06:00:56 +00:00
Shane Carr
912f97dace ICU-13634 Merging trunk to branch
X-SVN-Rev: 41254
2018-04-21 02:18:33 +00:00
Shane Carr
f11ca0d363 ICU-13634 Fixing address sanitizer issue involving backwards-compatible UChar* behavior in CurrencyUnit constructor. The string passed to the constructor need not be NUL-terminated.
X-SVN-Rev: 41248
2018-04-19 01:13:17 +00:00
Shane Carr
55080e2804 ICU-13634 Fixing some clang sanitizer issues, including one potentially serious one deep inside DecimalQuantity.
X-SVN-Rev: 41245
2018-04-18 10:52:36 +00:00
Shane Carr
49876dffda ICU-13634 Assorted minor fixes. cnumtst is passing.
X-SVN-Rev: 41240
2018-04-18 06:03:29 +00:00
Shane Carr
3c9b343282 ICU-13634 Adding "formatFailIfMoreThanMaxDigits" property to C++ NumberFormatter. Changing getSecondaryGroupingSize() for backwards compatibility. Other assorted test changes.
X-SVN-Rev: 41239
2018-04-18 03:59:39 +00:00
Shane Carr
597e3287fc ICU-13135 Fixing and optimizing PluralFormat call site into NumberFormat in order to execute the formatting pipeline only once.
X-SVN-Rev: 41237
2018-04-17 10:18:42 +00:00
Shane Carr
12b34e7c9e ICU-13634 A variety of mostly minor changes to fix assorted unit test failures in ICU4C plus a few in ICU4J.
X-SVN-Rev: 41236
2018-04-17 08:05:20 +00:00
Shane Carr
d6c6fa0404 ICU-13634 DecimalQuantity work: Fixing integer overflow behavior in toLong and toFractionLong methods. Adding test for maxInt/maxFrac behavior in toScientificString and related methods. Updating a few test expectations in IntlTestDecimalFormatAPI::TestFixedDecimal, which is now passing.
X-SVN-Rev: 41235
2018-04-17 01:36:18 +00:00
Shane Carr
ce846b6b34 ICU-13678 Renaming Multiplier to Scale.
X-SVN-Rev: 41231
2018-04-14 09:45:39 +00:00
Shane Carr
cbae6dfbaa ICU-13634 Adding groupingUsed as an explicit property in the property bag; see also ICU-13442 .
X-SVN-Rev: 41229
2018-04-14 07:15:19 +00:00
Shane Carr
cd3b2c7d41 ICU-13634 Updating Java test expectations with new behavior for fallback currency display. Other minor ICU4J test updates. All ICU4J tests are passing.
X-SVN-Rev: 41228
2018-04-14 06:17:39 +00:00
Shane Carr
79f4944ecd ICU-13634 Refactoring new percentage parsing code.
X-SVN-Rev: 41227
2018-04-14 05:54:53 +00:00
Shane Carr
354afa4e79 ICU-13697 Adding data-loading logic for parseLenients sets in CLDR. Ties the sets in with number and currency parsing in ICU4C and ICU4J.
X-SVN-Rev: 41223
2018-04-12 10:59:37 +00:00
Shane Carr
af0f8e62e4 ICU-13634 In accordance with ICU-TC meeting, changing percent parsing behavior to be closer to that of ICU 60.
X-SVN-Rev: 41222
2018-04-12 06:49:24 +00:00
Shane Carr
6c1714870f ICU-13634 Updating test expectations for strict currency position in strict mode. Other minor changes. All but one test is now passing in numfmtst.cpp.
X-SVN-Rev: 41220
2018-04-12 05:15:19 +00:00
Shane Carr
5f57f04466 ICU-13634 Updating test expectations for the default currency long name.
X-SVN-Rev: 41218
2018-04-12 04:04:23 +00:00
Shane Carr
a9e8f6d135 ICU-13634 Fixing affix overrides when using CurrencyPluralInfo.
X-SVN-Rev: 41217
2018-04-11 23:14:06 +00:00
Shane Carr
2c6bf0d77e ICU-13634 Refactoring affix-getting code to avoid the need to save the micro-props. Other assorted minor changes.
X-SVN-Rev: 41216
2018-04-11 11:10:52 +00:00
Shane Carr
cd92fa2c88 ICU-13634 Changing DecimalQuantity#toNumberString() to be DecimalQuantity#toScientificString() with slightly friendlier output syntax for better compatibility. More currency tweaks.
X-SVN-Rev: 41215
2018-04-11 05:52:58 +00:00
Shane Carr
a901b5c04a ICU-13634 Fixing more assorted currency parsing issues.
X-SVN-Rev: 41214
2018-04-11 02:18:13 +00:00
Shane Carr
b9925e084e ICU-13634 Fixing various issues in order to make currencies round-trip in strict mode.
X-SVN-Rev: 41212
2018-04-07 11:10:08 +00:00
Andy Heninger
0b8b2750e3 ICU-13194 RBBI safe rule synthesis, merge to trunk.
X-SVN-Rev: 41210
2018-04-07 00:03:36 +00:00
Shane Carr
e74395dce9 ICU-13684 Making DecimalMatcher no longer consume trailing grouping separators, which is consistent with previous behavior.
X-SVN-Rev: 41207
2018-04-06 21:46:18 +00:00
Markus Scherer
813b76c636 ICU-13630 Unicode 11 beta (data from apr03); merged from branches/markus/uni11
X-SVN-Rev: 41206
2018-04-06 18:42:58 +00:00
Andy Heninger
b58e06a604 ICU-13630 WSegSpace, use word property value in rules definitions.
X-SVN-Rev: 41205
2018-04-06 17:31:18 +00:00
Shane Carr
73f93a457a ICU-13634 Fixing DecimalQuantity call sites, first written in r41063, r41064, and r41098. RNBF test is passing again.
X-SVN-Rev: 41204
2018-04-06 09:35:16 +00:00