Commit graph

8523 commits

Author SHA1 Message Date
Shane F. Carr
6b3a7a64ab ICU-21190 Adding PluralRules select for number ranges
See #1309
2020-09-22 15:49:30 -05:00
Frank Tang
12dc3772b1 ICU-21236 Correct Locale canonicalization
See #1254
2020-09-21 19:35:13 -07:00
Steven R. Loomis
e3a43c7fb8 ICU-21251 release icu4j.jar/utilities.jar to GH Maven
- on a release (created from Github), publish to
<https://github.com/unicode-org/icu/packages> as
    1. icu4j-for-cldr
    2. utilities-for-cldr
- also fix a doc bug in DecimalFormat
- this is intended for CLDR use.
- a tag such as 'cldr/2019-09-15' will turn into a
maven version '68.1-SNAPSHOT-cldr-2019-09-15'
2020-09-21 15:32:30 -05:00
Hugo van der Merwe
e3bb5e5f07 ICU-20568 Add .unit().usage() support to ICU4J NumberFormatter (2/2)
* Throw UnsupportedOperationException for "unsanctioned units"
* Deal with the parent issue for LongNameMultiplexer
* Fix NullPointerException: UnitConversionHandler.processQuantity must
  call fParent.processQuantity
* toSkeleton not supported for not-built-in units
* Add and use interface
  LongNameMultiplexer.ParentlessMicroPropsGenerator
* Match up C++ and Java unit tests in NumberFormatterApiTest.java
* Permit user-override of precision() for usage(), closes icu-units#95
* Use BogusRounder to propagate mathContext.
* Port C++ change from PR #1322, commit c84ded050a, to Java.
* Test the usage-without-unit error. Document it in
  NumberFormatterSettings.java
* General review and corrections.
2020-09-19 01:31:08 +02:00
younies
7ba2b48f7b ICU-20568 Add .unit().usage() support to ICU4J NumberFormatter (1/2) 2020-09-19 01:31:08 +02:00
Frank Tang
5769803253 ICU-21283 Fix Java for calendar bugs
This is the java port of ICU-21043 (for C++)
This PR fixes
ICU-21043 Erroneous date display in indian calendar of all dates prior to 0001-01-01.
ICU-21044 Hebrew Calendar calculation is incorrect when the year < 1
ICU-21045 Erroneous date display in islamic and islamic-rgsa calendars of all dates prior to 0622-07-18.
ICU-21046 Erroneous date display in islamic-umalqura calendar of all dates prior to -195366-07-23.

The problem in the IndianCalendarl is
ICU-21043 the gregorian/julain convesion is wrong. Swith to use the
calculation function in the Calendar class.

The problem in the HebrewCalendar is
ICU-21044 the use of bulit in / is wrong when the year or month could be < 1.

The problem in the IslamicCalendar is

ICU-21045: The math of % negative number for year and month is wrong.
Also add tests to exhaust test 8000 years for all calendar. In quick
mode, only test 2.5 years.

reduce the number of date in quick mode
2020-09-17 12:20:47 -07:00
Steven R. Loomis
6b35e70b68 ICU-20717 move small files out of lfs: .dat, .gz, .gif 2020-09-17 11:09:48 -07:00
Peter Edberg
7888b23e87 ICU-21249 integrate CLDR release-38-alpha2 to ICU trunk 2020-09-16 15:10:05 -07:00
Hugo van der Merwe
48cf3ace11 ICU-21287 Enable asserts for 'ant checkTest' 2020-09-16 23:43:04 +02:00
Shane F. Carr
b41f12065f ICU-21249 Fix TODOs to reference ICU-21284 instead of ICU-20920 2020-09-15 12:27:44 -05:00
younies
24a06cc33b ICU-20568 Implementation of UnitConverter, ComplexUnitConverter and UnitsRouter
See #1279
2020-09-15 18:03:02 +02:00
younies
d149031433 ICU-21010 MeasureUnit extension in Java
See #1275
2020-09-14 21:24:14 +04:00
Peter Edberg
74c66351d8 ICU-20651 add setContext/getContext for [U]DateIntervalFormat 2020-09-11 20:12:44 -07:00
Peter Edberg
b066f65a50 ICU-21249 integrate CLDR release-38-alpha1 to ICU trunk 2020-09-04 15:05:22 -07:00
Markus Scherer
9971c663ff ICU-21257 remove #License fragment from license URLs 2020-09-04 10:02:17 -07:00
Shane F. Carr
4f18ef2ef8 ICU-21258 Refactor code and tests for compact data known issue 2020-09-03 16:17:40 -07:00
Rich Gillam
edaebfa64e ICU-21155 Add support for all hour and day-period skeleton characters to DateIntervalFormat 2020-09-03 16:14:08 -07:00
Shane F. Carr
fcc3bcb43e ICU-21249 Update numberpermutationtest.txt 2020-09-03 00:46:59 +02:00
Peter Edberg
e618a1cc2d ICU-21249 integrate CLDR release 38 alpha0 to ICU trunk 2020-09-02 10:23:14 -07:00
Shane F. Carr
196d5e1182 ICU-20923 Fix compact notation with percent. 2020-09-01 04:36:04 -05:00
Markus Scherer
2f39d33498 ICU-13727 limit length of input for Punycode encode/decode
See #1241
2020-08-31 16:53:07 -07:00
Erik Torres
ba3b6acd5c ICU-21249 BRS68RC Version update and regenerate configure for v68
BRS68RC Updating files for release
2020-08-31 19:35:14 -04:00
Markus Scherer
650bd402fe ICU-13727 add U_INPUT_TOO_LONG_ERROR & ICUInputTooLongException 2020-08-31 10:32:11 -07:00
Markus Scherer
f62693aa02 ICU-13416 change Armenian (hy) uppercase/titlecase of և ligature ech-yiwn 2020-08-30 18:19:10 -07:00
Markus Scherer
36a4e3b5a0 ICU-21036 use StringBuilder(String str) not StringBuilder(int capacity) 2020-08-29 14:43:59 -07:00
Shane F. Carr
0101e2632c ICU-20164 Make NoUnit a zero-cost abstraction over MeasureUnit.
See #1230
2020-08-29 00:01:49 -05:00
Craig Cornelius
408cd128fc ICU-21242 rephrase documentation using term master
See #1255
2020-08-28 12:42:20 -07:00
Hugo van der Merwe
66b2458a26 ICU-21066 Copy includelist of CLDR testData with tools/cldr/build.xml 2020-08-28 01:12:12 +02:00
Shane F. Carr
59cdbe1f53 ICU-21232 Improve performance of DecimalFormat#parse on long numbers 2020-08-27 14:33:05 -05:00
Markus Scherer
39da689d30 ICU-21184 rephrase docs/comments using the term grandfathered 2020-08-21 14:13:03 -07:00
Yoshito Umaoka
9a6a64ce05 ICU-21219 Fix for Java version number overflow problem
Internal API VersionInfo.javaVersion() maps Java version number to  4 integer fields. Each field must be up to 255. However, recent OpenJDK 8 update exceed this range.

Luckily, we have only one reference in our code base for checking Java version. CharsetUTF16 uses maxBytePerChar = 4 for Java 5 and older, maxBytePerChar = 2 for newer Java version. Because we no longer support Java 5 runtime, we don't need this conditional check.

We don't have any other uses of VersionInfo.javaVersion(). Java's version range is not what we can control, so I decided to delete the internal use only API completely.
2020-08-19 16:04:45 -04:00
Markus Scherer
9279e49d2f ICU-21030 validate ACE label edge cases 2020-08-14 14:32:47 -07:00
Markus Scherer
e19d12997b ICU-21212 full range check for Punycode digits 2020-08-14 11:37:40 -07:00
Shane F. Carr
ab086feaa0 ICU-21056 Remove obsolete logKnownIssues in CompactDecimalFormatTest 2020-08-12 16:36:50 -05:00
Shane F. Carr
8625158a7b ICU-21057 Remove obsolete logKnownIssue for ICU-11025 2020-08-12 16:36:18 -05:00
Frank Tang
863582c2a4 ICU-20465 Calendar/DateFormat listen to tz extension
See #1176
2020-08-04 13:33:03 -07:00
Andy Heninger
895aff3bff ICU-21178 Add check for corrupt rbbitst.txt data.
In the test data from rbbitst.txt, two or more adjacent boundary markers with
no intervening test data were accepted, with no indication of a problem.

This situation occurred, as described in bug ICU-21178, with a bad import of
some test cases from CLDR. PR #1194 corrected the problem with the test data
in ICU4C. This PR adds code to flag this situation in the test data, and
also propagates the data fix to ICU4J's copy of rbbitst.txt.
2020-07-24 15:16:12 -07:00
Andy Heninger
003b431540 ICU-13590 RBBI, improve handling of concurrent look-ahead rules.
Change the mapping from rule number to boundary position to use a simple array
instead of a linear search lookup map.

Look-ahead rules have a preceding context, a boundary position, and following context.
In the implementation, when the preceding context matches, the potential boundary
position is saved. Then, if the following context proves to match, the saved boundary is
returned as an actual boundary.

Look-ahead rules are numbered, and the implementation maintains a map from
rule number to the tentative saved boundary position.

In an earlier improvement to the rule builder, the rule numbering was changed to be a
contiguous sequence, from the original sparse numbering. In anticipation of
changing the mapping from number to position to use a simple array.
2020-07-21 14:39:15 -07:00
Markus Scherer
4d428cb8f3 ICU-21176 spoof checker: remove whitelist/blacklist metaphors from API docs 2020-07-01 15:21:05 -07:00
John Wilcock
9219c6ae03 ICU-13733 Added test for mismatching currency format for strict-mode parsing
See #1169
2020-06-30 02:22:57 +02:00
Markus Scherer
ef12882fdb ICU-21144 LocaleMatcher setMaxDistance(), isMatch() 2020-06-23 13:56:49 -07:00
Andy Heninger
1eef362329 ICU-13565 Break Iteration, remove the dictionary bit from the implementation.
For identifying text that needs to be handled by a word dictionary for Break Iteration,
change from using a bit in the character category to sorting all dictionary categories
together, and recording the boundary between the non-dictionary and dictionary ranges.

This is internal to the implementaion. It does not affect behavior.
It does increase the number of character categories that can be handled using a
compact 8 bit Trie, from 127 to 255.
2020-06-17 12:00:14 -07:00
Frank Tang
e7bd5b1cef ICU-21109 minimum grouping digits in DecimalFormat
See #1152
2020-06-11 14:32:52 -07:00
Andy Heninger
f0ad454691 ICU-13565 RBBI, make all state table row data be unsigned. 2020-06-01 20:05:17 -07:00
Frank Tang
ec7e29f2b6 ICU-13786 Fix addLikelySubtags/minimizeSubtags
See #1140
2020-05-27 18:36:36 -07:00
Frank Tang
c5ebb80a73 ICU-13565 Reduce size of BreakIterator brk files
See #1100
2020-05-27 14:26:10 -07:00
Markus Scherer
eaee0b175e ICU-21029 LocaleMatcher: add option to turn off default locale 2020-05-20 15:16:28 -07:00
Frank Tang
943b090160 ICU-21090 Fix private class 2020-05-12 23:27:04 -07:00
yumaoka
a951ab59c7 ICU-21094 tzdata2020a to ICU. 2020-04-25 14:17:28 -04:00
Robert Melo
440cef61a7 ICU-21071 Fix lenient parse rules
- Check non-lenient rules before call lenint parsing
- Remove logKnownIssue 9503 from test code
- Adjust TestAllLocales test on ICU4C
- Add lenient checks on ICU4J
2020-04-24 15:46:48 -03:00