Skip to content

Commit 13a3be9

Browse files
committed
Merge branch 'main' into 204_siebzehn_leibnizsche-Zeichen
2 parents b26ffe1 + f9e6e80 commit 13a3be9

File tree

1,245 files changed

+3680137
-332754
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,245 files changed

+3680137
-332754
lines changed

.github/workflows/build-jsp.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
name: Build JSP
22

33
env:
4-
CURRENT_UVERSION: 17.0.0 # FIX_FOR_NEW_VERSION
5-
PREVIOUS_UVERSION: 16.0.0 # not used at present
4+
CURRENT_UVERSION: 18.0.0 # FIX_FOR_NEW_VERSION
5+
PREVIOUS_UVERSION: 17.0.0 # not used at present
66
REGISTRY: ghcr.io
77
IMAGE_NAME: ${{ github.repository }}
88

.github/workflows/cli-build-instructions.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ on:
99
- '*'
1010

1111
env:
12-
CURRENT_UVERSION: 17.0.0 # FIX_FOR_NEW_VERSION
13-
PREVIOUS_UVERSION: 16.0.0
12+
CURRENT_UVERSION: 18.0.0 # FIX_FOR_NEW_VERSION
13+
PREVIOUS_UVERSION: 17.0.0
1414

1515
jobs:
1616

UnicodeJsps/src/main/java/org/unicode/jsp/UBAVersion.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ public class UBAVersion {
1919
Age_Values.V14_0,
2020
Age_Values.V15_0,
2121
Age_Values.V15_1,
22-
Age_Values.V16_0
22+
Age_Values.V16_0,
23+
Age_Values.V17_0
2324
// FIX_FOR_NEW_VERSION
2425
/* Current version is always last */
2526
);

UnicodeJsps/src/test/java/org/unicode/jsptest/TestAll.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
package org.unicode.jsptest;
44

5-
import com.ibm.icu.dev.test.TestFmwk.TestGroup;
5+
import org.unicode.cldr.icu.dev.test.TestFmwk.TestGroup;
66

77
/** Top level test used to run all other tests as a batch. */
88
public class TestAll extends TestGroup {

UnicodeJsps/src/test/java/org/unicode/jsptest/TestGenerate.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.unicode.jsptest;
22

3-
import com.ibm.icu.dev.test.TestFmwk;
43
import com.ibm.icu.impl.UnicodeMap;
54
import com.ibm.icu.impl.Utility;
65
import com.ibm.icu.lang.UCharacter;
@@ -15,6 +14,7 @@
1514
import java.io.IOException;
1615
import java.util.Comparator;
1716
import java.util.TreeSet;
17+
import org.unicode.cldr.icu.dev.test.TestFmwk;
1818
import org.unicode.cldr.util.props.BagFormatter;
1919
import org.unicode.cldr.util.props.UnicodeLabel;
2020
import org.unicode.idna.Idna;

UnicodeJsps/src/test/java/org/unicode/jsptest/TestMultivalued.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -96,21 +96,21 @@ public void TestEmpty() {
9696
assertEquals("exemplar(0x0000)", "", exemplarProp.getValue(0x0000));
9797
assertEquals("exemplar(α)", "el", exemplarProp.getValue('α'));
9898

99-
UnicodeSet exem = UnicodeSetUtilities.parseUnicodeSet("\\p{exem}");
100-
assertTrue("\\p{exem} contains 0", exem.contains(0x0000));
101-
assertFalse("\\p{exem} contains α", exem.contains('α'));
99+
UnicodeSet exem = UnicodeSetUtilities.parseUnicodeSet("\\p{exem=}");
100+
assertTrue("\\p{exem=} contains 0", exem.contains(0x0000));
101+
assertFalse("\\p{exem=} contains α", exem.contains('α'));
102102
UnicodeSet exem3 = UnicodeSetUtilities.parseUnicodeSet("\\p{exem=el}");
103103
assertFalse("\\p{exem=el} contains 0", exem3.contains(0x0000));
104104
assertTrue("\\p{exem=el} contains α", exem3.contains('α'));
105105

106-
String unicodeSetString = "[\\p{Greek}&\\p{exem}]";
106+
String unicodeSetString = "[\\p{Greek}&\\p{exem=}]";
107107
UnicodeSet parsed = UnicodeSetUtilities.parseUnicodeSet(unicodeSetString);
108108

109109
String first = parsed.iterator().next();
110110
String firstValue = exemplarProp.getValue(first.codePointAt(0));
111111
assertEquals(unicodeSetString, "", firstValue);
112112

113-
String unicodeSetString2 = "[\\p{Greek}&\\P{exem}]";
113+
String unicodeSetString2 = "[\\p{Greek}&\\P{exem=}]";
114114
UnicodeSet parsed2 = UnicodeSetUtilities.parseUnicodeSet(unicodeSetString2);
115115

116116
String first2 = parsed2.iterator().next();

UnicodeJsps/src/test/java/org/unicode/jsptest/TestTypology.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package org.unicode.jsptest;
22

3-
import com.ibm.icu.dev.test.TestFmwk;
43
import com.ibm.icu.impl.Row;
54
import com.ibm.icu.impl.Row.R2;
65
import com.ibm.icu.impl.Row.R3;
@@ -23,6 +22,7 @@
2322
import java.util.TreeSet;
2423
import java.util.regex.Pattern;
2524
import org.unicode.cldr.draft.FileUtilities;
25+
import org.unicode.cldr.icu.dev.test.TestFmwk;
2626
import org.unicode.cldr.util.MultiComparator;
2727
import org.unicode.cldr.util.UnicodeSetPrettyPrinter;
2828
import org.unicode.jsp.Typology;

docs/build.md

Lines changed: 38 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,19 @@ can be used to:
1010
* build 4 chart folders on the unicode site.
1111
* build files for ICU (collation, NFSkippable)
1212

13-
**WARNING!!**
14-
15-
* This is NOT production level code, and should never be used in programs.
16-
* The API is subject to change without notice, and will not be maintained.
17-
* The source is uncommented, and has many warts; since it is not production
18-
code, it has not been worth the time to clean it up.
19-
* It will probably need some adjustments on Unix or Windows, such as changing
20-
the file separator.
21-
* Currently it uses hard-coded directory names.
22-
* The contents of multiple versions of the UCD must be copied to a local
23-
directory, as described below.
24-
* ***It will be useful to look at the history of the files in git to see the
25-
kinds of rule changes that are made!***
26-
* Unfortunately, we lost some change history of about 1.5 years(?) leading up to April 2020.
13+
> [!CAUTION]
14+
> * This is NOT production level code, and should never be used in programs.
15+
> * The API is subject to change without notice, and will not be maintained.
16+
> * The source is uncommented, and has many warts; since it is not production
17+
> code, it has not been worth the time to clean it up.
18+
> * It will probably need some adjustments on Unix or Windows, such as changing
19+
> the file separator.
20+
> * Currently it uses hard-coded directory names.
21+
> * The contents of multiple versions of the UCD must be copied to a local
22+
> directory, as described below.
23+
> * ***It will be useful to look at the history of the files in git to see the
24+
> kinds of rule changes that are made!***
25+
> * Unfortunately, we lost some change history of about 1.5 years(?) leading up to April 2020.
2726
2827
## Instructions
2928

@@ -86,6 +85,31 @@ Currently, some tests run on the generated output files of a tool (ex: in order
8685
| UNICODETOOLS_GEN_DIR | /usr/local/google/home/mscherer/unitools/mine/Generated |
8786
| UVERSION | 14.0.0 |
8887

88+
#### Github Maven artifacts and authentication
89+
90+
If you have not correctly configured your local settings file according to <http://cldr.unicode.org/development/maven>,
91+
then you will likely see error messages when your Maven build tries to access (including just reading)
92+
the Maven dependency artifacts such as:
93+
94+
```
95+
[ERROR] Failed to execute goal on project unicodetools-testutils: Could not collect dependencies for project org.unicode.unicodetools:unicodetools-testutils:jar:1.0.0
96+
[ERROR] Failed to read artifact descriptor for com.ibm.icu:icu4j:jar:78.0.1-SNAPSHOT
97+
[ERROR] Caused by: The following artifacts could not be resolved: com.ibm.icu:icu4j:pom:78.0.1-20250916.173842-8 (present, but unavailable): Could not transfer artifact com.ibm.icu:icu4j:pom:78.0.1-20250916.173842-8 from/to github (https://maven.pkg.github.com/unicode-org/cldr): authentication failed for https://maven.pkg.github.com/unicode-org/cldr/com/ibm/icu/icu4j/78.0.1-SNAPSHOT/icu4j-78.0.1-20250916.173842-8.pom, status: 401 Unauthorized
98+
[ERROR] Failed to read artifact descriptor for org.unicode.cldr:cldr-code:jar:0.0.0-SNAPSHOT-3404124632
99+
[ERROR] Caused by: The following artifacts could not be resolved: org.unicode.cldr:cldr-code:pom:0.0.0-SNAPSHOT-3404124632 (present, but unavailable): Could not transfer artifact org.unicode.cldr:cldr-code:pom:0.0.0-SNAPSHOT-3404124632 from/to github (https://maven.pkg.github.com/unicode-org/cldr): authentication failed for https://maven.pkg.github.com/unicode-org/cldr/org/unicode/cldr/cldr-code/0.0.0-SNAPSHOT-3404124632/cldr-code-0.0.0-SNAPSHOT-3404124632.pom, status: 401 Unauthorized
100+
```
101+
102+
This happens because [Github's Maven artifact registry requires authentication](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry),
103+
via a Github token, even when you are only reading artifacts.
104+
105+
> [!IMPORTANT]
106+
> If you run into this issue, then:
107+
>
108+
> 1. revisit the [CLDR Maven setup link](http://cldr.unicode.org/development/maven)
109+
to ensure that you have created the correct type of Github access token: classic, _not_ fine-grained—with a fine-grained token, you will get a 403 rather than a 401—; and that you have granted the correct permissions to it.
110+
> 2. if you are copy-and-pasting any of the example Unicode Tools task Maven commands from the instructions below and/or from the CI workflow files,
111+
then you must *remove* the `-s .github/workflows/mvn-settings.xml` that is needed only for CI.
112+
Removing the `-s` option will use the settings in your default local settings file at `~/.m2/settings.xml`.
89113

90114
### Editing and tool execution setup
91115

docs/egg.md

Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
This is the procedure used by eggrobin to build and deploy the JSPs from his
2+
Windows machines. Some of the commands must be run in PowerShell, others in the
3+
wsl bash.
4+
5+
WSL:
6+
```bash
7+
pushd UnicodeJsps
8+
./update-bidic-ucd.sh
9+
popd
10+
wget https://github.com/unicode-org/last-resort-font/releases/latest/download/LastResort-Regular.ttf
11+
mv ./LastResort-Regular.ttf ./UnicodeJsps/src/main/webapp/
12+
```
13+
Powershell:
14+
```powershell
15+
mvn -B package -am -pl UnicodeJsps -DskipTests=true
16+
$CLDR_REF = $(mvn help:evaluate "-Dexpression=cldr.version" -q -DforceStdout).Split("-")[2]
17+
if (-not (Test-Path cldr)) {
18+
git clone https://github.com/unicode-org/cldr.git "--reference=..\cldr"
19+
}
20+
Push-Location cldr
21+
git fetch
22+
git reset --hard $CLDR_REF
23+
Pop-Location
24+
```
25+
WSL:
26+
```bash
27+
mkdir -p UnicodeJsps/target && tar -cpz --exclude=.git -f UnicodeJsps/target/cldr-unicodetools.tgz ./cldr/ ./unicodetools/
28+
```
29+
Powershell:
30+
```powershell
31+
rm .\Generated\* -recurse -force;
32+
mvn compile exec:java '-Dexec.mainClass="org.unicode.jsp.RebuildPropertyCache"' -am -pl unicodetools "-DUNICODETOOLS_GEN_DIR=Generated" "-DUNICODETOOLS_REPO_DIR=." "-DCLDR_DIR=..\cldr\"
33+
```
34+
WSL:
35+
```bash
36+
tar -cpz -f UnicodeJsps/target/generated.tgz ./Generated/
37+
docker build -t us-central1-docker.pkg.dev/goog-unicode-dev/unicode-jsps/unicode-jsps:latest UnicodeJsps/
38+
```
39+
Powershell:
40+
```powershell
41+
docker push us-central1-docker.pkg.dev/goog-unicode-dev/unicode-jsps/unicode-jsps:latest
42+
```

docs/pipeline.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -164,13 +164,13 @@ git merge main
164164
git checkout main unicodetools/data/ucd/dev/Derived*
165165
git checkout main unicodetools/data/ucd/dev/extracted/*
166166
git checkout main unicodetools/data/ucd/dev/auxiliary/*
167-
rm -r ../Generated/BIN/17.0.0.0/
168-
rm -r ../Generated/BIN/UCD_Data17.0.0.bin
169-
mvn -s ~/.m2/settings.xml compile exec:java -Dexec.mainClass="org.unicode.text.UCD.Main" -Dexec.args="version 17.0.0 build MakeUnicodeFiles" -am -pl unicodetools -DCLDR_DIR=$(cd ../../../cldr/mine/src ; pwd) -DUNICODETOOLS_GEN_DIR=$(cd ../Generated ; pwd) -DUNICODETOOLS_REPO_DIR=$(pwd) -DUVERSION=17.0.0
167+
rm -r ../Generated/BIN/18.0.0.0/
168+
rm -r ../Generated/BIN/UCD_Data18.0.0.bin
169+
mvn -s ~/.m2/settings.xml compile exec:java -Dexec.mainClass="org.unicode.text.UCD.Main" -Dexec.args="version 18.0.0 build MakeUnicodeFiles" -am -pl unicodetools -DCLDR_DIR=$(cd ../../../cldr/mine/src ; pwd) -DUNICODETOOLS_GEN_DIR=$(cd ../Generated ; pwd) -DUNICODETOOLS_REPO_DIR=$(pwd) -DUVERSION=18.0.0
170170
# fix merge conflicts in unicodetools/src/main/java/org/unicode/text/UCD/UCD_Types.java
171171
# and in UCD_Names.java
172172
# rerun mvn
173-
cp -r ../Generated/UCD/17.0.0/* unicodetools/data/ucd/dev
173+
cp -r ../Generated/UCD/18.0.0/* unicodetools/data/ucd/dev
174174
rm unicodetools/data/ucd/dev/ZZZ-UNCHANGED-*
175175
rm unicodetools/data/ucd/dev/*/ZZZ-UNCHANGED-*
176176
rm unicodetools/data/ucd/dev/extra/*
@@ -195,7 +195,7 @@ eggrobin (Windows, in-source).
195195
```powershell
196196
rm .\Generated\* -recurse -force
197197
mvn compile exec:java '-Dexec.mainClass="org.unicode.text.UCD.Main"' '-Dexec.args="build MakeUnicodeFiles"' -am -pl unicodetools "-DCLDR_DIR=..\cldr\" "-DUNICODETOOLS_GEN_DIR=Generated" "-DUNICODETOOLS_REPO_DIR=."
198-
cp .\Generated\UCD\17.0.0\* .\unicodetools\data\ucd\dev -recurse -force
198+
cp .\Generated\UCD\18.0.0\* .\unicodetools\data\ucd\dev -recurse -force
199199
rm unicodetools\data\ucd\dev\zzz-unchanged-*
200200
rm unicodetools\data\ucd\dev\*\zzz-unchanged-*
201201
rm .\unicodetools\data\ucd\dev\extra\*
@@ -211,7 +211,7 @@ eggrobin (Windows, in-source).
211211
```powershell
212212
rm .\Generated\* -recurse -force
213213
mvn compile exec:java '-Dexec.mainClass="org.unicode.text.UCD.Main"' '-Dexec.args="build MakeUnicodeFiles"' -am -pl unicodetools "-DCLDR_DIR=..\cldr\" "-DUNICODETOOLS_GEN_DIR=Generated" "-DUNICODETOOLS_REPO_DIR=."
214-
cp .\Generated\UCD\17.0.0\LineBreak.txt .\unicodetools\data\ucd\dev
214+
cp .\Generated\UCD\18.0.0\LineBreak.txt .\unicodetools\data\ucd\dev
215215
```
216216

217217
### GenerateEnums
@@ -229,6 +229,6 @@ git commit -m GenerateEnums
229229

230230
eggrobin (Windows, in-source).
231231
```powershell
232-
mvn test -am -pl unicodetools "-DCLDR_DIR=$(gl|split-path -parent)\cldr\" "-DUNICODETOOLS_GEN_DIR=$(gl|split-path -parent)\unicodetools\Generated\" "-DUNICODETOOLS_REPO_DIR=$(gl|split-path -parent)\unicodetools\" "-DUVERSION=17.0.0" "-Dtest=TestTestUnicodeInvariants#testAdditionComparisons" -DfailIfNoTests=false -DtrimStackTrace=false
232+
mvn test -am -pl unicodetools "-DCLDR_DIR=$(gl|split-path -parent)\cldr\" "-DUNICODETOOLS_GEN_DIR=$(gl|split-path -parent)\unicodetools\Generated\" "-DUNICODETOOLS_REPO_DIR=$(gl|split-path -parent)\unicodetools\" "-DUVERSION=18.0.0" "-Dtest=TestTestUnicodeInvariants#testAdditionComparisons" -DfailIfNoTests=false -DtrimStackTrace=false
233233
```
234234
Results are in Generated\UnicodeTestResults-addition-comparisons-[RMG issue number].html.

0 commit comments

Comments
 (0)