Skip to content

Commit 950ddc2

Browse files
committed
ICU-22922 ICU 77rc download page
See #3407
1 parent 9f51147 commit 950ddc2

File tree

2 files changed

+28
-64
lines changed

2 files changed

+28
-64
lines changed

docs/download/77.md

Lines changed: 17 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -16,24 +16,22 @@ License & terms of use: http://www.unicode.org/copyright.html
1616
ICU is the [premier library for software internationalization](https://icu.unicode.org/#h.i33fakvpjb7o),
1717
used by a [wide array of companies and organizations](https://icu.unicode.org/#h.f9qwubthqabj).
1818

19-
## Not released yet!
19+
## Release Candidate
2020

21-
**ICU 77 is still under development.
22-
Once we have a release candidate, use it for testing, but do not use it in production!**
21+
**Please use this release candidate for testing, but do not use it in production!**
2322

2423
## Release Overview
2524

26-
* TODO -- below is old
27-
2825
ICU 77 updates to
2926
[CLDR 47](https://cldr.unicode.org/downloads/cldr-47)
30-
(TODO: blog)
27+
([alpha blog](https://blog.unicode.org/2025/02/unicode-cldr-47-alpha-now-available-for.html))
3128
locale data with new locales, and various additions and corrections.
3229

33-
TODO: Highlights
30+
ICU 77 is mostly focused on bug fixes, segmentation conformance, and other refinements.
3431

35-
The Java technology preview implementation of the CLDR MessageFormat 2.0 specification has been updated to match the
36-
[CLDR 46.1 spec](https://www.unicode.org/reports/tr35/tr35-74/tr35-messageFormat.html).
32+
The Java technology preview implementation of the CLDR MessageFormat 2.0 specification has been updated to incorporate the
33+
[CLDR 46.1 spec](https://www.unicode.org/reports/tr35/tr35-74/tr35-messageFormat.html)
34+
plus most but not all of the CLDR 47 changes.
3735

3836
The C++ technology preview implementation of MessageFormat 2.0 is not yet quite up to date with CLDR 46.1.
3937

@@ -55,7 +53,7 @@ Note: There may be additional commits on the [maint/maint-77](https://github.com
5553
## Common Changes
5654

5755
* [CLDR 47](https://cldr.unicode.org/downloads/cldr-47)
58-
(TODO: blog):
56+
([alpha blog](https://blog.unicode.org/2025/02/unicode-cldr-47-alpha-now-available-for.html)):
5957
* No major data collection for existing locales; focus on bug fixes and structural improvements
6058
* New regional variants: English in several European countries, and Cantonese in Macau (`yue_Hant_MO`)
6159
* Improved RBNF (number spellout) and transliteration data
@@ -64,6 +62,9 @@ Note: There may be additional commits on the [maint/maint-77](https://github.com
6462
([ICU-22941](https://unicode-org.atlassian.net/browse/ICU-22941))
6563
* These tailorings were introduced in ICU 72, but feedback has been negative,
6664
and the UTC declined to adopt these changes.
65+
* Line break: Fixed a bug in the line breaking of obscure sequences
66+
⟨no-break space, combining mark, hyphen, alphabetic character⟩
67+
([ICU-22986](https://unicode-org.atlassian.net/browse/ICU-22986)).
6768
* Updated Indic grapheme clusters to use the latest `Indic_Conjunct_Break` data
6869
([ICU-22956](https://unicode-org.atlassian.net/browse/ICU-22956))
6970
* Time zone data (tzdata) version 2025a (2025-jan).
@@ -84,65 +85,17 @@ Note: There may be additional commits on the [maint/maint-77](https://github.com
8485
## ICU4J Specific Changes
8586

8687
* [API Changes since ICU4J 76](https://htmlpreview.github.io/?https://github.com/unicode-org/icu/blob/maint/maint-77/icu4j/APIChangeReport.html)
87-
* The Java technology preview implementation of the CLDR MessageFormat 2.0 specification has been updated to match the
88-
[CLDR 46.1 spec](https://www.unicode.org/reports/tr35/tr35-74/tr35-messageFormat.html).
88+
* The Java technology preview implementation of the CLDR MessageFormat 2.0 specification has been updated to incorporate the
89+
[CLDR 46.1 spec](https://www.unicode.org/reports/tr35/tr35-74/tr35-messageFormat.html)
90+
plus most but not all of the CLDR 47 changes.
8991

9092
## Known Issues
9193

92-
* TODO -- below is old
93-
* One late CLDR 46 bug fix was accidentally omitted from ICU 46:
94-
[CLDR-18002](https://unicode-org.atlassian.net/browse/CLDR-18002) Fix likely subtag inconsistency
95-
([CLDR PR #4105](https://github.com/unicode-org/cldr/pull/4105))
94+
* (none yet)
9695

9796
## Migration Issues
9897

99-
* TODO -- below is old
100-
101-
### C++ Header-Only APIs
102-
ICU 76 is the first version where we add what we call C++ header-only APIs.
103-
These are especially intended for users who rely on only binary stable DLL/library exports of C APIs
104-
(C++ APIs cannot be binary stable).
105-
106-
_Please test these new APIs and let us know if you find problems —
107-
especially if you find a platform/compiler/options combination
108-
where the call site does end up calling into ICU DLL/library exports._
109-
110-
Remember that regular C++ APIs can be hidden by callers defining `U_SHOW_CPLUSPLUS_API=0`.
111-
The new header-only APIs can be separately enabled via `U_SHOW_CPLUSPLUS_HEADER_API=1`.
112-
113-
([GitHub query for `U_SHOW_CPLUSPLUS_HEADER_API` in public header files](https://github.com/search?q=repo%3Aunicode-org%2Ficu+U_SHOW_CPLUSPLUS_HEADER_API+path%3Aunicode%2F*.h&type=code))
114-
115-
These are C++ definitions that are not exported by the ICU DLLs/libraries,
116-
are thus inlined into the calling code,
117-
and which may call ICU C APIs but not into ICU non-header-only C++ APIs.
118-
119-
The header-only APIs are defined in a nested `header` namespace.
120-
If entry point renaming is turned off (the main namespace is `icu` rather than `icu_76` etc.),
121-
then the new `U_HEADER_ONLY_NAMESPACE` is `icu::header`.
122-
123-
([Link to the API proposal which introduced this concept](https://docs.google.com/document/d/1xERVccTYsptzjfbjcj6HDtoKVF_mEKmslPsOiQzzaFg/view#heading=h.cf4bmhjgozry))
124-
125-
For example, for iterating over the code point ranges in a `USet` (excluding the strings):
126-
127-
```c++
128-
U_NAMESPACE_USE
129-
using U_HEADER_NESTED_NAMESPACE::USetRanges;
130-
LocalUSetPointer uset(uset_openPattern(u"[abcçカ🚴]", -1, &errorCode));
131-
for (auto [start, end] : USetRanges(uset.getAlias())) {
132-
printf("uset.range U+%04lx..U+%04lx\n", (long)start, (long)end);
133-
}
134-
for (auto range : USetRanges(uset.getAlias())) {
135-
for (UChar32 c : range) {
136-
printf("uset.range.c U+%04lx\n", (long)c);
137-
}
138-
}
139-
```
140-
141-
(Implementation note: On most platforms, when compiling ICU itself,
142-
the `U_HEADER_ONLY_NAMESPACE` is `icu::internal`,
143-
so that any such symbols that get exported differ from the ones that calling code sees.
144-
On Windows, where DLL exports are explicit,
145-
the namespace is always the same, but these header-only APIs are not marked for export.)
98+
* (none yet)
14699

147100
### Migration Issues Related to CLDR
148101
* See [CLDR 47 migration issues](https://cldr.unicode.org/downloads/cldr-47#migration)
@@ -174,7 +127,7 @@ ICU locale data was generated from CLDR data equivalent to:
174127
* <https://github.com/unicode-org/cldr/releases/tag/release-47-alpha2>
175128
* <https://github.com/unicode-org/cldr-staging/releases/tag/release-47-alpha2>
176129

177-
[Maven dependency](https://central.sonatype.com/artifact/com.ibm.icu/icu4j):
130+
TODO: [Maven dependency](https://central.sonatype.com/artifact/com.ibm.icu/icu4j):
178131
```
179132
<dependency>
180133
<groupId>com.ibm.icu</groupId>

docs/download/index.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,17 @@ License & terms of use: http://www.unicode.org/copyright.html
1414

1515
If you want to use ICU (as opposed to developing it), it is recommended that you download an official packaged version of the ICU source code. These versions are tested more thoroughly than day-to-day development builds of the system, and they are packaged in zip and tar files for convenient download. Here are several recent releases of ICU that are available:
1616

17+
## Release Candidate
18+
19+
***2025-02-21: ICU 77rc is now available.***
20+
It updates to [CLDR 47](https://cldr.unicode.org/downloads/cldr-47)
21+
locale data with new locales, and various additions and corrections.
22+
23+
ICU 77 is mostly focused on bug fixes, segmentation conformance, and other refinements.
24+
The technology preview implementations of the CLDR MessageFormat 2.0 specification have been updated to incorporate some, but not yet all, of the CLDR 47 changes. (Java more than C++)
25+
26+
See [ICU 77](77.md).
27+
1728
## Latest Release
1829

1930
***2024-10-24: ICU 76 is now available.***

0 commit comments

Comments
 (0)