Skip to content

Commit a57e09e

Browse files
authored
Create notes-2024-09-09.md
1 parent 45ca7e3 commit a57e09e

File tree

1 file changed

+167
-0
lines changed

1 file changed

+167
-0
lines changed

meetings/2024/notes-2024-09-09.md

Lines changed: 167 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,167 @@
1+
# 9 September 2024 | MessageFormat Working Group Teleconference
2+
3+
### Attendees
4+
- Addison Phillips - Unicode (APP) - chair
5+
- Mihai Niță - Google (MIH)
6+
- Eemeli Aro - Mozilla (EAO)
7+
- Mark Davis - Google (MED)
8+
- Tim Chevalier - Igalia (TIM)
9+
- Richard Gibson - OpenJSF (RGN)
10+
- Harmit Goswami - Mozilla (HGO)
11+
12+
Scribe: HGO
13+
14+
## Topic: LDML46 and the end of Technical Preview
15+
_The v46 release is upcoming. There is also a desire to finish the 2.0 release (exit technical preview). Let’s discuss the practical considerations for doing both, including the possibility of a 46.1. This is also the section of the meeting in which we’ll set out the goals for the next 2-3 days._
16+
17+
[APP]: Current plan for #46 is to bookmark where we’re at and run the spec out. We still call it a technical preview but release out to-date work
18+
19+
[MED]: Deadline is 25th for tech preview, we need time for back-and-forth and review, I don’t see time for that so we should target end of November to be done in this community
20+
21+
[EAO]: Why do we need to complete this in this calendar year?
22+
23+
[MED]: Funding issues, also without a forcing factor, this group might take ages. A deadline helps us to get done
24+
25+
[EAO]: My concern with finishing the tech preview is that we will need to await on external inputs (Although I like the deadline)
26+
27+
[MED]: If this is done properly, we can fix problems later (if it’s done properly). Trying to perfect it now is risky.
28+
29+
[APP]: I think we can do enough to go ask the larger community prior to finishing the core issues remaining. We can run off a copy of #46 as a ‘stake in the ground’
30+
31+
[MED]: Sounds good, we don't want to force things into the tech preview since there’s only a week.
32+
33+
[EAO]: Wanted to clarify the parts of the spec that are not able to be complete within the week. If people outside this group have different thoughts, I’m concerned the balance between opinions and decisions we can make will get out of hand, and worst-case can lead to a v3 release
34+
35+
[APP]: Most of the concerns are regarding syntax. I agree, but people who don’t like the syntax will either have to live with it or create their own standard. We’ve reached our goals with what we wanted to accomplish with the syntax, other people can discuss whitespace, etc., but that won’t be in MF2. We can’t keep opening that box.
36+
37+
[APP]: On monday, we’ll finalize what to add in, and submit on wednesday.
38+
39+
## Topic: PR Review
40+
Timeboxed review of items ready for merge.
41+
42+
43+
## Topic: … (#879)
44+
[Merged]
45+
46+
## Topic: … (#878)
47+
[MED and EAO approve, merged]
48+
49+
50+
## Topic: Selection-declaration (#824, #873, #872)
51+
_Discuss the design options seeking WG consensus. Timeboxed to 15 minutes._
52+
53+
- https://github.com/unicode-org/message-format-wg/blob/main/exploration/selection-declaration.md
54+
- https://github.com/unicode-org/message-format-wg/issues/873
55+
- https://github.com/unicode-org/message-format-wg/issues/872
56+
57+
[APP]: There wasn’t a consensus on #873, but solution F seems to be getting an emergent consensus. I think that’s the proposal on the table, any challenges?
58+
59+
[MED]: I think it’s suboptimal, but can be extensively modified in the future (see solution E). I think it’s good for release 46.
60+
61+
[APP]: I’m also unhappy with it currently
62+
63+
[EAO]: If there’s a desire to make this backwards extensible, then we need to reserve the space in the syntax, opposed to what we currently do
64+
65+
[APP]: Or we look at our stability guarantee to see if we can make that change
66+
67+
[MED]: The key thing people want is backwards compatibility
68+
69+
[EAO]: In our current stability policy, the 2.0 parser should parse without syntax error a message made in 2.1 … 2.n version. So then I feel we must reserve the space
70+
71+
[MED]: I think it’s a mistake to promise the syntax is forwards and backwards compatible, since that ties our hands for the future. Changing forward compatibility needs a good reason, but tying our hands now can be bad, as I’ve seen in my career
72+
73+
[EAO]: I’d be okay with no forwards compatibility. This also lets us drop all the reserved structures from the syntax.
74+
75+
[MIH]: I have mixed feelings about dropping. L10n tools would work, which is the main benefit. On the other hand, currently having reserved structures is clunky, so I’m okay with removing forwards compatibility
76+
77+
[APP]: I think it’s a reasonable evil. I doubt we’ll use the structure but I could be wrong.
78+
79+
[EAO]: I’d be okay with losing forwards compatibility, partly due to this, but also because it’ll help us simplify a lot, and can get rid of all the reserved stuff. Effectively, everything that’s an error can be fixed later. It’d also make me less unhappy about rushing this out of the tech preview, since we have more options in the future
80+
81+
[APP]: We’re suggesting that we can make additions to the syntax that won’t break your compatibility? [All: yes]
82+
83+
[APP]: Okay so we need to rework our guarantee (MED: to guarantee backwards compat, but not forwards), remove reserved structures, and move forward with solution F? [MED]: Yup [APP]: EAO, we should do a PR for solution F first, then make 2 additional PRs
84+
85+
## Topic: Disallow “whitespace or special char” prefixed `.` in reserved-statement’s body (#840)
86+
_Discuss making this technical change in the reserved-statement syntax._
87+
88+
[APP]: Now out of scope!
89+
90+
## Topic: Bidi design (#811)
91+
_Bidi and whitespace options need to be discussed in light of the design document._
92+
93+
https://github.com/unicode-org/message-format-wg/blob/main/exploration/bidi-usability.md
94+
95+
96+
[APP]: A piece of homework for this topic was to review the ALM mark, which has an effect when used BEFORE a sequence of characters, but not when you add it to the end of a token. The way we use strong characters in the syntax, there’s not many ways you can incorporate ALM into it.
97+
98+
[EAO]: So you propose we drop ALM from the allowed things?
99+
100+
[APP]: It’s an allowed character but not allowed in the syntax
101+
102+
103+
104+
105+
## Topic: Standard, Optional, and Unicode Namespace Function Set maintenance (#634) [was “registry maintenance”]
106+
_This is the function registry maintenance procedure design. Let’s review with an eye towards using as a template for other work._
107+
108+
[APP]: Should I add this in as proposed and we iterate later? [No objections]
109+
110+
## Topic: Uniqueness (#869, #847)
111+
_String equality (used in key matching or operand uniqueness) is affected by Unicode Normalization concerns. We need to decide whether to require a specific normalization form (typically NFC) or whether we warn users about the consequences of using denormalized values._
112+
113+
[APP]: We should address string equality, given the nature of Unicode.
114+
115+
[EAO]: Mentioning that we have option and attribute names checking for uniqueness
116+
117+
[MIH]: My take is that I strongly favor comparing strings as they are without normalization. If you want to normalize, you are free to do it outside, but in terms of preprocessing, what gets to MF2 is processed as is.
118+
119+
[MED]: Almost every process nowadays has access to NFC normalization, if the dataset is small. You can do a very quick check to see if a text looks suspicious or not. I’m more worried about odd errors hitting people, since one implementation normalizes and another does not. This won’t affect European languages as much, but it’ll hit other languages a lot
120+
121+
[APP]: I’ve always wanted people to check for normalization. If we want broad adoption, not insisting on normalization will help, but then we have to warn people that naming variables “options” and “operand”, etc. is a bad idea.
122+
123+
[MED]: I see two issues. One, if all comparisons are within MF2 itself, and the second, if it depends on parameters and whether or not the parameters are normalized. I think it’s a mistake not to have a ‘SHOULD’ that comparisons should be done with normalization if possible.
124+
125+
[EAO]: Agree with MED, SHOULD is good but MUST is too much of a fight
126+
127+
[APP]: Should is hard to test though
128+
129+
[MED]: I don’t think it’s too hard, you can easily provide such test cases. You can mark the test cases as they’re SHOULD
130+
131+
[APP]: If we give authoring guidance that you should use normalized values, but the implementation doesn’t require normalization, then you can get yourself into trouble since it may sometimes work and other times won't. If you write a normalization-sensitive message, then it’s liable to cause problems, and there should be a warning
132+
133+
[EAO]: I still think we should have a SHOULD. In the spec, you can get noticeable differences in behavior between normalized and non-normalized messages.
134+
135+
[APP]: Agreed, it should be given to the author.
136+
137+
[MED]: If we don’t go for MUST, then we should go with ‘MF2 text should be normalized with NFC, and parameters should be compared with normalization’. There can also be a section of the site that talks about implementation features, and this isn’t as formal so can be modified easily over time.
138+
139+
[APP]: Normalizing the whole message is a bad idea since we have quoted text pieces that we promise as verbatim. That’s why I say it should be inside the comparison. I understand EAOs point, but if some messages behave differently in different environments, then I think it’s okay to just put a warning sticker there.
140+
141+
[EAO]: It’s either we enforce with a MUST, or recommend with SHOULD, and handle the diverging corner cases
142+
143+
[MED]: Agreed. The SHOULD should be put on building the message and comparisons.
144+
145+
[MIH]: We still have to say the comparison should be normalized away. The comparison should be there no matter what. As an implementer, I don't really care since I implement on top of ICU. I’m still reluctant to ask for normalization behavior at runtime, but whatever
146+
147+
[EAO]: Comparisons is the only place we should put the SHOULD, since that’s the only thing we control [All agree]
148+
149+
[EAO]: We might also want to include a definition for ‘unique’ and ‘duplicate’, so we can point to those definitions in the PR
150+
151+
[MIH]: I’m reluctant to claim a user should normalize an ArgMap, it’s just not that obvious. There might be use-cases where I want the denormalized form, and I can imagine a use-case
152+
153+
[EAO]: My implementation plan won’t include normalizing the ArgMap, since it’ll be ASCII only.
154+
155+
156+
## Topic: Issue review
157+
https://github.com/unicode-org/message-format-wg/issues
158+
Currently we have 56 open (was 60 last time).
159+
- 14 are Preview-Feedback
160+
- 1 is resolve-candidate and proposed for close.
161+
- 3 are Agenda+ and proposed for discussion.
162+
- 1 is a ballot
163+
164+
165+
166+
## Topic: AOB?
167+

0 commit comments

Comments
 (0)