Commit graph

33203 commits

Author SHA1 Message Date
Fredrik Roubert
aa724e1e3f ICU-22901 Move calls to uloc_getDefault() out of _canonicalize(). 2025-02-13 15:50:54 +01:00
Fredrik Roubert
83726260ef ICU-23031 Reinstate special case for "-u-va-posix" lost by ICU-22520.
Inside of locimp_forLanguageTag() in _appendKeywords() in uloc_tag.cpp
there's a hardcoded special case for "-u-va-posix" which appends the
"_POSIX" variant but this was missed during the refactoring made for
ICU-22520 (there isn't any test case that covers this).

So the call to locimp_forLanguageTag() did more than previously
understood, but we still don't want to have to call that for every
language tag that has BCP-47 extensions just in order to get to this
special case. Instead, add a special case also to ulocimp_getSubtags().

For this to work nicely, the loop in _getVariant() that copies variants
needs to be refactored so that it easily can break when encountering the
start of any BCP-47 extension (which also has the welcome side-effect of
making it more efficient, being able to append an entire variant at once
to the output sink).

This was broken by commit 678d5c1273.
2025-02-13 08:50:17 +01:00
Frank Tang
59719f09d9 ICU-22934 Fix typo in PR#3230
ICU-22934 Fix error handling while new return nullptr

ICU-22934 Simplfied

ICU-22934 more

ICU-22934 fix leak
2025-02-12 16:56:20 -08:00
David Barts
b81956ebcc ICU-22808 Correct a factually incorrect doc comment. 2025-02-12 16:37:33 -08:00
Younies Mahmoud
e20b71af50 ICU-22781 Add CLDR-18274 failing comments to portion unit formatting tests
See #3393
2025-02-12 23:12:13 +01:00
Younies Mahmoud
35c9778781 ICU-22781 Support Arbitrary Constant Unit Formatting
See #3381
2025-02-12 01:45:16 +01:00
Frank Tang
59af52bb6f ICU-23043 Propogate error in Calendar. 2025-02-11 15:14:27 -08:00
Younies Mahmoud
030c79fe88 ICU-22781 Enhance portion unit formatting tests in NumberFormatTest
- Expanded test cases for portion unit formatting
- Added support for different locales (en-US, de-DE)
- Improved test coverage for portion unit formatting
- Added handling for known CLDR data limitations
2025-02-11 23:38:54 +01:00
Younies Mahmoud
42e3b43c78 ICU-22781 Add test for portion format with parts per billion (C++)
See #3389
2025-02-11 23:37:53 +01:00
Fredrik Roubert
c9ca3cd554 ICU-22920 Migrate from setup-bazelisk to setup-bazel. 2025-02-11 19:27:07 +01:00
yumaoka
03021a98a0 ICU-22922 BRS77 update license file 2025-02-11 11:59:20 -05:00
Younies Mahmoud
b7b2a14e85 ICU-22781 Add tests for portion unit formatting (Java)
See #3386
2025-02-11 10:56:33 +01:00
Mihai Nita
84599e1117 ICU-22781 Comment out the failing tests 2025-02-10 10:46:19 -08:00
Mihai Nita
339ebb368f ICU-22781 Data generated with the concentr/perbillion on, code update
Following the steps in docs/processes/release/tasks/updating-measure-unit.md
2025-02-10 10:46:19 -08:00
Mihai Nita
fe4549dc62 ICU-22781 Data generated with the concentr/perbillion on, tests 2025-02-10 10:46:19 -08:00
Mihai Nita
53e40b1fe8 ICU-22781 Data generated with the concentr/perbillion on, ICU4J 2025-02-10 10:46:19 -08:00
Mihai Nita
19458b75f4 ICU-22781 Data generated with the concentr/perbillion on, ICU4C 2025-02-10 10:46:19 -08:00
Mihai Nita
b2026ecc5b ICU-22781 Bring back the data generation of concentr/perbillion 2025-02-10 10:46:19 -08:00
Mihai Nita
5ae7f068b1 ICU-23042 CLDR-to-ICU, generate rbnf data for Gujarati 2025-02-08 21:55:43 -08:00
Tim Chevalier
7b8110f003 ICU-22907 MF2: Finish updating spec tests and implement required test functions
Implement :test:format, :test:select, and :test:function, which are
required by the new `pattern-selection.json` tests.

Change the internal value representation in the formatter in order to
support some of the test cases (binding the results of selectors to a
variable).
2025-02-08 21:42:03 -06:00
Vladyslav Yeremeichuk
624a26030b ICU-22950 Do not initialize currency redundantly
resolveCurrency() slows down simple number formatting requests like:
for (int i = 0; i < 9999; i++) u_snprintf_u(buff, 100, u"%d", i);
Since we don't use currency here, we can skip its initialization.
2025-02-07 14:45:43 -08:00
Yoshito Umaoka
bbaa68419b ICU-22411 Fixed a ISO currency data file download problem in the currency update checking tool 2025-02-07 14:33:27 -08:00
Burkov Egor
40c325322e ICU-23035 Fix bound check at u_strToPunycode 2025-02-07 13:03:27 -08:00
Fredrik Roubert
db42c87936 ICU-22954 A build test for C++ header-only APIs with C++ APIs disabled. 2025-02-07 20:14:20 +01:00
Fredrik Roubert
ee8806e87c ICU-22954 Make UCollator predicates usable without U_SHOW_CPLUSPLUS_API.
Until now, the implementation of the UCollator predicates has been using
UnicodeString and StringPiece as convenient wrappers for converting from
standard C++ data types to ICU4C data types.

But as that doesn't work when the client uses ICU4C built without
U_SHOW_CPLUSPLUS_API this is now changed to instead perform these
conversions directly.

(It's a bit more code, but does just the same thing in the end.)
2025-02-07 20:14:20 +01:00
Mihai Nita
e8c179dedd ICU-22967 Remove explicit manipultaion of old-xmls.tar.bz2 in workflows 2025-02-07 10:26:01 -08:00
Markus Scherer
c4acc449ff ICU-22922 initial ICU 77 download page; incomplete
Also add known issues to the ICU 76 download page

See #3370
2025-02-06 16:09:06 -08:00
Younies Mahmoud
f495d10a15 ICU-22781 Support Arbitrary Constant Unit Formatting (Java)
- Added support for constant denominators in MeasureUnit and LongNameHandler
- Implemented test cases for formatting units with arbitrary constant denominators
- Updated MeasureUnit serialization and product methods to handle constant denominators
- Added comprehensive test coverage for complex unit formatting scenarios
2025-02-06 23:18:48 +01:00
Mihai Nita
ddabf0faeb ICU-22967 Remove the git lfs support: remove tools/multi 2025-02-06 13:31:45 -08:00
Mihai Nita
d9505ae577 ICU-22967 Remove the git lfs support: recover old-xmls.tar.bz2 2025-02-06 13:31:45 -08:00
Mihai Nita
5d7f0b8100 ICU-23041 Hard-code the code citations and remove jcite 2025-02-06 13:27:28 -08:00
Younies Mahmoud
362a4aa94b ICU-23032 Update MeasureUnit documentation for forIdentifier method
See #3360
2025-02-06 16:37:58 +01:00
Younies Mahmoud
697f7c0e00 ICU-22781 Fix &Improve MeasureUnit identifier generation for constant denominators (C++)
See #3364
2025-02-06 12:06:58 +01:00
Markus Scherer
4a7a4c7521 ICU-22954 USet C++ iter samples no UnicodeString
See #3316
2025-02-05 14:47:48 -08:00
Rich Gillam
f9ee689d7a ICU-22922 Promoted all @draft ICU 75 APIs to @stable ICU 75. 2025-02-05 13:02:56 -08:00
Frank Tang
0112e4292e ICU-22962 Fix int32_t overflow issue when month is large 2025-02-04 15:39:32 -08:00
Younies Mahmoud
bc7ccb0589 ICU-22781 Fix &Improve MeasureUnit identifier generation for constant denominators (Java)
See #3363
2025-02-04 00:59:13 +01:00
Younies Mahmoud
a262e87aa6 ICU-23032 Change appendNumber method to accept long instead of int
See #3365
2025-02-04 00:58:25 +01:00
DraganBesevic
0ceea4bee9 ICU-22922 Integrate CLDR 47 release alpha2, part 3, data files 2025-02-03 09:31:43 -08:00
DraganBesevic
c6e1c09dbd ICU-22922 Integrate CLDR 47 release alpha2, part 2, locale fallback binary files 2025-02-03 09:31:43 -08:00
DraganBesevic
9cbc8d7fe4 ICU-22922 Integrate CLDR 47 release alpha2, part 1, binary files 2025-02-03 09:31:43 -08:00
Manish Goregaokar
bf675e3ba1 ICU-23033 Regenerate scx value array 2025-01-31 15:48:20 -08:00
Almaz Mingaleev
9ad9c03062 ICU-23022 Update ICU data to TZDB 2025a. 2025-01-31 09:43:48 -08:00
Frank Tang
ede201c305 ICU-22994 Use C++ typeid() instead of Calendar::getType() for calendar type comparison
See #3310
2025-01-31 15:19:55 +01:00
Felix Xing
cb4344073b ICU-23026 skip test for QNX 2025-01-30 15:20:26 -08:00
DraganBesevic
95afc45afa ICU-22922 Integrate CLDR 47 release alpha1, part 5, updated unit test, again 2025-01-30 13:45:15 -08:00
DraganBesevic
4e1d9b30a5 ICU-22922 Integrate CLDR 47 release alpha1, part 4, updated unit test 2025-01-30 13:45:15 -08:00
DraganBesevic
d49c1242f9 ICU-22922 Integrate CLDR 47 release alpha1, part 3, source files 2025-01-30 13:45:15 -08:00
DraganBesevic
06c2096fea ICU-22922 Integrate CLDR 47 release alpha1, part 2, data files 2025-01-30 13:45:15 -08:00
DraganBesevic
90e3e1e882 ICU-22922 Integrate CLDR 47 release alpha1, part 1, binary files 2025-01-30 13:45:15 -08:00