Skip to content

Commit 81c7770

Browse files
authored
Create notes-2025-04-21.md
1 parent 65f0403 commit 81c7770

File tree

1 file changed

+169
-0
lines changed

1 file changed

+169
-0
lines changed

meetings/2025/notes-2025-04-21.md

Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
# 21 April 2025 | MessageFormat Working Group Teleconference
2+
3+
Attendees:
4+
5+
- Addison Phillips \- Unicode (APP) \- chair
6+
- Mihai Niță \\- Google (MIH)
7+
- Shane Carr \\- Google (SFC)
8+
- Daniel Gleckler (DAG)
9+
- Tim Chevalier \\- Igalia (TIM)
10+
- Richard Gibson \\- OpenJSF (RGN)
11+
12+
13+
-
14+
15+
**Scribe:** MIH
16+
17+
18+
19+
## Topic: Info Share, Project Planning
20+
21+
## Topic: PR Review
22+
23+
*Timeboxed review of items ready for merge.*
24+
25+
| PR | Description | Recommendation |
26+
| ----- | ----- | ----- |
27+
| \#1071 | Currency and unit conformance | Discuss |
28+
| \#1070 | Allow clamping of digit size options | Discuss, Merge? |
29+
| \#1068 | Design document for percent formatting | Discuss |
30+
| \#1067 | Semantic skeletons design | Discuss |
31+
| \#1065 | Draft new charter and goals for v49/v50 and beyond | Discuss |
32+
| | | |
33+
34+
## Topic: Semantic Skeletons
35+
36+
*Reserving time to discuss the design.*
37+
38+
[https://github.com/unicode-org/message-format-wg/pull/1067](https://github.com/unicode-org/message-format-wg/pull/1067)
39+
[https://github.com/unicode-org/message-format-wg/pull/1067/files?short\_path=ee0a5f2\#diff-ee0a5f2b733a9fdd85ab9880271f9f036decc3910f560655df115e939ed168e4](https://github.com/unicode-org/message-format-wg/pull/1067/files?short_path=ee0a5f2#diff-ee0a5f2b733a9fdd85ab9880271f9f036decc3910f560655df115e939ed168e4)
40+
41+
## Topic: Percent Formatting (\#956)
42+
43+
*Reserving time to discuss whether to go with \`:percent\` or whether to use \`:unit unit=percent\` and how to handle percents if unscaled.*
44+
45+
##
46+
47+
## Topic: Issue review
48+
49+
[https://github.com/unicode-org/message-format-wg/issues](https://github.com/unicode-org/message-format-wg/issues)
50+
51+
Currently we have 31 open (was 32 last time).
52+
53+
* 21 are tagged for 48
54+
* 3 are tagged “Future”
55+
* 13 are `Preview-Feedback`
56+
* 2 are tagged Feedback
57+
* 1 is `resolve-candidate` and proposed for close.
58+
* 2 are `Agenda+` and proposed for discussion (see below)
59+
* 0 are ballots
60+
61+
| Issue | Description | Recommendation |
62+
| ----- | ----- | ----- |
63+
| \#1043 | Deployment, development, and maintenance of messageformat.unicode.org | Discuss |
64+
| \#1051 | Plans for v48 | Discuss |
65+
| \#1052 | TAG Review | Resolve (thank TAG) |
66+
| \#1062 | Test for unpaired surrogates is rejected by some JSON parsers | Discuss |
67+
68+
## \#\# PRs
69+
70+
### \#\#\# 1071 Currency and unit conformance
71+
72+
Some comments on it, will continue there
73+
74+
### \#\#\# 1070 Allow clamping of digit size options
75+
76+
Ship it from Eemeli
77+
Comment form SFC
78+
Some comments on some tests
79+
Open comments from people missing here, we will not merge today
80+
81+
### \#\#\# 1065 Draft new charter and goals for v49/v50 and beyond
82+
83+
Discussing with CLDR TC.
84+
Add your comments if you have them
85+
86+
### \#\#\# 1067 Semantic skeletons design
87+
88+
APP: Emergent consensus that we will have several functions, instead of one function with too many options.
89+
We will still have some grab-bag ones, like `` :datetime` ``
90+
91+
MIH: had two takes. Would rather have this in ICU before in MF. Know it can be mapped/implemented on top of existing skeletons. In general, MF only calls the date formatter so date formatter would have to be updated to support skeletons.
92+
93+
Settings for width apply to all buckets of pieces. So I says “day of week,day, month and want full” and I get Thursday and December etc. Cannot say the time zone to be short and day abbrev. Etc We are losing flexibility quite a bit. That’s the main thing.
94+
95+
SFC: (from chat) re implementations: semantic skeletons can be implemented on top of DateTimePatternGenerator
96+
re widths: we have a path for this. Does it block semantic skeletons in v48 for MF2?
97+
98+
MIH: don’t want to put in MF that isn’t in the ICU formatters.
99+
It is just a matter of order.
100+
ICU would need to approve and implement semantic skeletons in DateFormat
101+
102+
APP: individual field widths are an absolute necessity.
103+
If we don’t have them then people will go back to option bags.
104+
105+
APP: Let’s wait for SFC to be back online
106+
107+
## \#\# Issues
108+
109+
### \#\#\# 1062 Test for unpaired surrogates is rejected by some JSON parsers
110+
111+
APP: Steven Loomis suggested a binary form in json
112+
I would even question if we even need these tests, explicitly.
113+
114+
TIM: I think it would be good to have them in the test files, since they are in the spec.
115+
116+
APP: we actually don’t require implementations to support them.
117+
118+
MIH: was pushing strongly for this. Certain frameworks do UTF16 possibly invalid. Could be implementation specific. “Do this in code”, we have this in code. In ICU we have like junits, outside the json space. If you are this sort of implementation write it outside the jsons. I would expect implementations to do this anyway. Result of a date format is you get what you get.
119+
120+
APP: don’t attempt to do that
121+
122+
MIH: point is that you’ll have some tests like that.
123+
To make sure that the plumbing between MF and the real formatters work.
124+
125+
TIM: similar to the java implementation, so supports any utf16. There are tests in code. If we dropped from json, would be fine.
126+
127+
APP: comment instead?
128+
129+
TIM: sure, sounds like a good idea
130+
131+
APP: I’ll do a PR, unless someone else wants to do it
132+
133+
SFC: one can spend time writing all the pros / cons for separate / unique functions
134+
Options on existing functions feel more natural for semantic skeletons
135+
There is pushback for many functions, but only from Mark Davis
136+
I think we should have 6 or 7 functions.
137+
We would have date, time, datetime \+ zoned differences.
138+
139+
People are very picky on how the tz are shown.
140+
Width is about space, but also understanding.
141+
142+
The only 2 fields.
143+
144+
APP: devs and designers will be the ones interacting with semantic skeletons
145+
We allow for 2 / 4 digit years, 0 filled hours, stuff over which we used go give people control
146+
Should we take away these controls?
147+
148+
SFO: 2 digits are already covered
149+
We have 2 options for 2 digits fields that are independent of full / long / medium / short
150+
They are in UTS \#35.
151+
152+
APP: functions that are not zoned have different names (civil times, local times, between JS, Java, others)
153+
154+
SFC: in JS most times are timestamps, sometimes with a tz information (proper tz is or offset)
155+
156+
APP: as a user I want to format the date part of `` `Date` `` I call the `` `:date` `` method.
157+
As a MF user I want to write a message, hand it over, and just show a date.
158+
159+
APP: I understand the temporal argument.
160+
But as one of the zillion new grads, I don’t understand the subtleties.
161+
162+
RGN: JS date has no tz info. And sometimes has an offset, but is taken from the host
163+
164+
MIH: MF is not strongly typed at all.
165+
So having many functions, with strict typing, we will need a way to make MF fallback to something that makes sense and not “explode”
166+
167+
SFC: you don’t pass a hash map to a `` `DateFormat` ``, or an integer.
168+
For me passing an integer is as wrong as passing a hash map.
169+

0 commit comments

Comments
 (0)