Skip to content

Commit 33459fd

Browse files
authored
Merge pull request #602 from w3c/meeting-2024-04-25
Publish minutes of 2024-04-25 meeting
2 parents d99619c + 4b1da53 commit 33459fd

File tree

2 files changed

+183
-1
lines changed

2 files changed

+183
-1
lines changed

_minutes/2024-04-25-wecg.md

Lines changed: 179 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,179 @@
1+
# WECG Meetings 2024, Public Notes, Apr 25
2+
3+
* Chair: Timothy Hatcher
4+
* Scribes: Rob Wu
5+
6+
Time: 8 AM PDT = https://everytimezone.com/?t=66299d00,384
7+
Call-in details: [WebExtensions CG, 25th April 2024](https://www.w3.org/events/meetings/a97adab8-e1ae-4a2b-85cf-e6b6d3d35f00/20240425T080000/)
8+
Zoom issues? Ping @zombie (Tomislav Jovanovic) in [chat](https://github.com/w3c/webextensions/blob/main/CONTRIBUTING.md#joining-chat)
9+
10+
11+
## Agenda: [discussion in #590](https://github.com/w3c/webextensions/issues/590), [github issues](https://github.com/w3c/webextensions/issues)
12+
13+
The meeting will start at 3 minutes after the hour.
14+
15+
See [issue 531](https://github.com/w3c/webextensions/issues/531) for an explanation of this agenda format.
16+
17+
* **Announcements** (2 minutes)
18+
* **Triage** (15 minutes)
19+
* [Issue 583](https://github.com/w3c/webextensions/issues/583): Proposal: Allow globs for the contextMenus API instead of just URL patterns
20+
* [Issue 591](https://github.com/w3c/webextensions/issues/591): Proposal: add new browser.tabs.waitForTab(tabId: number) that will wait for tab to load
21+
* [Issue 592](https://github.com/w3c/webextensions/issues/592): Proposal: Add support for setting the main context menu icon
22+
* **Timely issues** (10 minutes)
23+
* [Issue 584](https://github.com/w3c/webextensions/issues/584): Add change history to charter
24+
* **Check-in on existing issues** (20 minutes)
25+
* [PR 560](https://github.com/w3c/webextensions/pull/560): Proposal: Multiple user script worlds
26+
* [PR 569](https://github.com/w3c/webextensions/pull/569): Add getOSLanguage proposal
27+
* [PR 585](https://github.com/w3c/webextensions/pull/585): Add a proposal for dark mode extension icons
28+
* [PR 587](https://github.com/w3c/webextensions/pull/587): Proposal: downloads.getFileHash()
29+
* [PR 598](https://github.com/w3c/webextensions/pull/598): Proposal: manifest key trial_tokens
30+
* [Issue 489](https://github.com/w3c/webextensions/issues/489): Proposal: Re-evaluate userScript and userStyle API
31+
* [Issue 34](https://github.com/w3c/webextensions/issues/34): Request: high precise timer
32+
33+
34+
## Attendees (sign yourself in)
35+
36+
1. Rob Wu (Mozilla)
37+
2. David Johnson (Apple)
38+
3. Oliver Dunk (Google)
39+
4. Timothy Hatcher (Apple)
40+
5. Carlos Jeurissen (Jeurissen Apps)
41+
6. Solomon Kinard (Google)
42+
7. Anton Bershanskyi
43+
8. Rémi Pujo (Dashlane)
44+
9. Alisa Tikhova (eyeo)
45+
10. Kiara Rose (Apple)
46+
11. Elijah Sawyers (Apple)
47+
12. Simeon Vincent (Mozilla)
48+
13. Jackie Han (no affiliation)
49+
14. Mukul Purohit (Microsoft)
50+
15. Steven McLintock (1Password)
51+
16. Jarek Samic (1Password)
52+
17. Tim Heflin (Keeper)
53+
18. Tomislav Jovanovic (Mozilla)
54+
19. Richard Worth (Capital One)
55+
56+
57+
## Meeting notes
58+
59+
Announcement: San Diego in-person meeting notes published
60+
61+
* [rob] Meeting notes for the San Diego in-person meetup ([#525](https://github.com/w3c/webextensions/issues/525)) have been published. For an overview of the 66 issues, expand the spoiler at the bottom of the PR text at https://github.com/w3c/webextensions/pull/599.
62+
* [2024-03-18-san-diego-meetup.md](https://github.com/w3c/webextensions/blob/main/_minutes/2024-03-18-san-diego-meetup.md)
63+
* [2024-03-19-san-diego-meetup.md](https://github.com/w3c/webextensions/blob/main/_minutes/2024-03-19-san-diego-meetup.md)
64+
* [2024-03-20-san-diego-meetup.md](https://github.com/w3c/webextensions/blob/main/_minutes/2024-03-20-san-diego-meetup.md)
65+
66+
[Issue 583](https://github.com/w3c/webextensions/issues/583): Proposal: Allow globs for the contextMenus API instead of just URL patterns
67+
68+
* [timothy] Supportive of globs even though we don't support globs for anything yet.
69+
* [simeon] What are the globs we're talking about?
70+
* [rob] Match globs, basically wildcards.
71+
* [timothy] Rob provided feedback in the issue.
72+
* [rob] I asked for use cases and questioned the value of this API addition. The provided use case was making it easier for extension users to provide a pattern and it to work automatically. For that use case, I would expect extensions to format the user-provided input as a match pattern.
73+
* [rob] Firefox position is neutral at most, unless there is cross browser implementor interest, we're not going to pursue this.
74+
* [simeon] Wondering whether there is a safe set of matching algorithms (e.g. regexp is expensive) that we should support.
75+
* [rob] Concern over bloating the API, every pattern type would add two more pairs of properties like documentUrlPatterns and targetUrlPatterns.
76+
* [rob] Chrome's perspective?
77+
* [oliver] Need to follow-up, but likely not a priority either.
78+
79+
[Issue 591](https://github.com/w3c/webextensions/issues/591): Proposal: add new browser.tabs.waitForTab(tabId: number) that will wait for tab to load
80+
81+
* [timothy] This could already be implemented with extension APIs today, but having a general way to do this would be useful.
82+
* [rob] Supportive. Common pattern in unit tests and extensions, but concerned about time-of-check to time-of-use (TOCTOU) issues. Integrate tabId/frameId/documentId?
83+
* [oliver] Also supportive, and seen in Chrome's tests. Needs a fleshed out proposal.
84+
* [timothy] Interested in the general concept.
85+
* [simeon] What if the tab does not finish loading?
86+
* [rob] That is already an existing problem with the extension-implemented version of this; The browser can detect this more reliably and reject the API call if needed.
87+
* [rob] or include a timeout parameter.
88+
* [simeon] Talking about timeouts, web APIs have AbortController to enable callers to cancel the API call.
89+
* [oliver] What about redirects?
90+
91+
[Issue 592](https://github.com/w3c/webextensions/issues/592): Proposal: Add support for setting the main context menu icon
92+
93+
* [timothy] Browsers often create a top-level menu item with submenu items if the extension has more than one top-level menu item. This top-level item does not get an icon by default, and there is no way for the extension ton control it.
94+
* [rob] Firefox allows extensions to change icons, but the icon of the top-most menu item is always from the manifest.
95+
* [oliver] Solomon, since you've worked in this area, do you know more?
96+
* [solomon] Is there a standard?
97+
* [timothy] Safari supports same API as Firefox, overlaps with dark icons mode proposal.
98+
* [rob] contextMenus.create and contextMenus.update accept an icons property - https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/menus/create#icons
99+
* [rob] The top-level icon cannot be modified out of caution about extensions dynamically changing them and confusing the user.
100+
* [oliver] Same concern about the icon, but not as big of a concern.
101+
* [rob] Chrome - there are two questions here: (1) whether Chrome is supportive of a way to update submenu extension icons, and (2) whether to support that even for the top-level menu item. Could you get answer to these questions?
102+
* [oliver] Yes, I'll follow up.
103+
104+
[Issue 584](https://github.com/w3c/webextensions/issues/584): Add change history to charter
105+
106+
* [simeon] I opened it but forgot to update it. I'll assign this to myself.
107+
* [oliver] I'm supportive, go ahead.
108+
109+
[PR 560](https://github.com/w3c/webextensions/pull/560): Proposal: Multiple user script worlds
110+
111+
* [rob] I have approved it, one minor typo.
112+
* [timothy] I'll read over it. I did not have initial concerns; we haven't implemented the API yet so we don't have a lot of feedback.
113+
114+
[PR 569](https://github.com/w3c/webextensions/pull/569): Add getOSLanguage proposal
115+
116+
* [carlos] I raised this in the W3C internationalization WG. There are two use case, list of system languages, and the language used by the system. I'll wait for feedback from the internationalization group so we can move on for now.
117+
118+
[PR 585](https://github.com/w3c/webextensions/pull/585): Add a proposal for dark mode extension icons
119+
120+
* [timothy] Getting pretty close. I took a look yesterday.
121+
* [solomon] Appreciate feedback and robust feedback. I think that I've addressed all feedback so far, and Oliver asked Rob to take a final look. I also need to sign up as a member in order to be able to get the PR merged.
122+
* [simeon] I looked at the PR yesterday, one thing stood out to me - the sketch of JSON with accepted values. I considered adding a TypeScript definition of it. Wondering whether the group is interested in TypeScript or WebIDL?
123+
* [solomon] When I started this proposal, the proposal started with my own dialect, then I switched to IDL, and ultimately to TypeScript. TypeScript seems easy to understand to me.
124+
* [oliver] Unless anyone feels strongly, let's not block this PR on the syntax.
125+
* [timothy] I don't have strong preferences on the syntax.
126+
* [rob] As long as it is understandable, I don't mind the exact syntax.
127+
128+
[PR 587](https://github.com/w3c/webextensions/pull/587): Proposal: downloads.getFileHash()
129+
130+
* [anton] Basically have one approval (from Rob). (inaudible)
131+
* [oliver] Open thread on the PR, if the downloads.getFileHash permission has been requested, can you call the API?
132+
* [anton] (written) Sub-permissions work a bit differently across browsers: Firefox requires both "downloads" and "downloads.open" to call downloads.open() method. I do not have a strong opinion on this. Personally, I would be more happy with the way Chrome does it (since more fine-grained permissions carry greater agency for the user/user-agent). Would be nice to discuss this during the call today.
133+
* [rob] In Firefox you would need permissions for the namespace (downloads) and downloads.getFileHash.
134+
* [oliver] Are you interested in changing this? Would be nice to have scoped permissions.
135+
* [rob] I have no strong opposition to this. Is there a precedent for this?
136+
* [timothy] Maybe DNR?
137+
* [oliver] That is intentional.
138+
* [rob] I'll think about this async and comment on the PR.
139+
* [rob] And other browser vendors, please put an approval on this PR if you approve.
140+
* [timothy] Since we don't support the downloads API, I'll leave the approval to Chrome.
141+
142+
[PR 598](https://github.com/w3c/webextensions/pull/598): Proposal: manifest key trial_tokens
143+
144+
* [anton] I've implemented it in Chrome. Created proposal based on [issue 454](https://github.com/w3c/webextensions/issues/454).
145+
* [tomislav] I'll take a look.
146+
147+
[Issue 489](https://github.com/w3c/webextensions/issues/489): Proposal: Re-evaluate userScript and userStyle API
148+
149+
* [timothy] Re-proposed for the agenda; I personally agree with this, and it would have been nice if the userScripts API was part of the scripting namespace.
150+
* [rob] What was the reason for raising this issue again?
151+
* [timothy] Not sure, no specifics were provided in the request ([comment in agenda](https://github.com/w3c/webextensions/issues/590#issuecomment-2051267561)). But I think that the ship has sailed already.
152+
* [oliver] If there was a more specific ask, then we could consider the request.
153+
* [timothy] Looks like CSS missing from the userScripts API is a big missing thing.
154+
* [simeon] Adding CSS to userScripts is a possibility for the future.
155+
* [rob] In terms of behavioral differences, supporting css in the API could result in the guarantee of the stylesheet being applied before script execution.
156+
157+
[Issue 34](https://github.com/w3c/webextensions/issues/34): Request: high precise timer
158+
159+
* [jackie] alarms API is imprecise. Some use cases don't care about slight inaccuracies, others do care. My proposal is for browsers to provide a way to make the alarm more precise, maybe through a new permission.
160+
* [oliver] I think that this is more of a Chromium issue than an API issue. What timer resolution are you looking at? 1 second? One millisecond?
161+
* [jackie] One second is enough.
162+
* [timothy] I think that there may still be some confusion here. Jackie is mentioning that if multiple timers are set, that the timers may shift. I'm not sure if this could be solved in general, e.g. if event page wakeup takes more time, then the listener fires late.
163+
* [oliver] The shift in Chrome is due to the implementation enforcing a minimum between timers to prevent extensions from scheduling multiple timers. I don't think that there is any throttling in other browsers, is that the case?
164+
* [rob] Yes.
165+
* [timothy] No throttling in Safari either.
166+
* [oliver] We're looking into lowering the timer limit from 30 to 1 second. So basically what you are asking for Jackie, but without requiring permission changes.
167+
* [timothy] When lowering the limit was discussed at the San Diego meetup, I think that Devlin (Chrome) expressed reluctance to lowering it, didn't he?
168+
* See “Issue 34” in the [meeting minutes of 2024-03-20-san-diego-meetup.md](https://github.com/w3c/webextensions/blob/main/_minutes/2024-03-20-san-diego-meetup.md)
169+
* [oliver] We have had more discussions, and the conclusion is probably not that concerning, but we want to collect data first to confirm that it would not have a negative performance impact.
170+
* [anton] I've looked at Chrome's implementation and it serializes all timers and persists it. That could potentially be optimized.
171+
* [rob] Since Chrome hasn't supported short timers before, could you consider changing the default of short timers, to not persist by default? That would reduce the performance concerns.
172+
* [oliver] Haven't discussed before.
173+
* [tomislav] We've discussed non-persistent timers before in TPAC, and that it would be nice to have different persistency through options.
174+
* [rob] Discussed before at [Issue 406](https://github.com/w3c/webextensions/issues/406): Inconsistency: Persistence of alarms in browser.alarms API
175+
* [rob] Since Chrome doesn't support short timers yet, it would not be a breaking change to change the default. Firefox does currently not persist the alarms.
176+
* [timothy] Safari doesn't persist either.
177+
* [oliver] I'll bring it up. We're also definitely supportive of persistAcrossSessions flag in general.
178+
179+
The next meeting will be on [Thursday, May 9th, 8 AM PDT (3 PM UTC)](https://everytimezone.com/?t=663c1200,384)

_minutes/README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,11 +10,13 @@ After the end of each meeting, meeting notes are published here.
1010

1111
## Upcoming meetings
1212

13-
- 2024-04-25 at 8 AM PDT = https://everytimezone.com/?t=66299d00,384
1413
- 2024-05-09 at 8 AM PDT = https://everytimezone.com/?t=663c1200,384
14+
- 2024-05-23 at 8 AM PDT = https://everytimezone.com/?t=664e8700,384
15+
1516

1617
## Past meetings
1718

19+
* 2024-04-25 ([minutes](2024-04-25-wecg.md))
1820
* 2024-04-11 ([minutes](2024-04-11-wecg.md))
1921
* 2024-03-28 ([minutes](2024-03-28-wecg.md))
2022
* 2024-03-20 meetup at San Diego ([minutes](2024-03-20-san-diego-meetup.md))
@@ -32,6 +34,7 @@ After the end of each meeting, meeting notes are published here.
3234

3335
**2024**
3436

37+
* 2024-04-25 ([minutes](2024-04-25-wecg.md))
3538
* 2024-04-11 ([minutes](2024-04-11-wecg.md))
3639
* 2024-03-28 ([minutes](2024-03-28-wecg.md))
3740
* 2024-03-20 meetup at San Diego ([minutes](2024-03-20-san-diego-meetup.md))

0 commit comments

Comments
 (0)