21:01:06 RRSAgent has joined #webapps 21:01:06 logging to https://www.w3.org/2021/10/25-webapps-irc 21:01:10 Zakim has joined #webapps 21:01:12 Meeting: WebApps WG - Web Manifest 21:01:20 Chair: Marcos Cáceres and Léonie Watson 21:01:25 Agenda: https://github.com/w3c/webappswg/wiki/TPAC-2021#agenda-for-web-manifest---monday-meeting 21:01:31 bkardell_ has joined #webapps 21:01:31 Scribe: Marcos Caceres 21:01:36 jsbell has joined #webapps 21:01:37 ScribeNick: marcosc 21:01:45 present+ 21:02:03 present+ 21:02:04 present+ 21:02:22 present+ 21:02:25 present+ 21:02:28 NotWoods has joined #webapps 21:02:32 +present Tiger Oakes 21:02:44 present+ 21:02:59 tink has joined #webapps 21:03:00 msw_google has joined #webapps 21:03:05 present+ 21:03:15 present+ Léonie (tink) 21:03:17 present+ Tiger Oakes 21:03:19 Topic: Introductions 21:03:55 aarongu has joined #webapps 21:04:11 emeyer has joined #webapps 21:04:33 present+ 21:04:33 phillis has joined #webapps 21:04:36 Kenneth has joined #webapps 21:04:41 present+ 21:04:47 Present+ Kenneth_Christiansne 21:04:48 kzms2 has joined #webapps 21:04:49 Present+ Kenneth_Christiansen 21:04:52 jensimmons_ has joined #webapps 21:04:58 present+ 21:06:16 npdoty has joined #webapps 21:06:41 present+ 21:07:18 xenon has joined #webapps 21:12:36 present+ 21:14:55 Topic: agenda bashing 21:15:02 dmurph has joined #webapps 21:15:15 present+ 21:15:25 Topic suggestion - installing from manifest url & simple offline mode 21:15:44 cyns has joined #webapps 21:15:46 topic suggestion - parsing urls in manifest from manifest_url or start_url - known confusion 21:15:57 Topic: Web Extensions joint discussions 21:16:29 https://github.com/w3c/webappswg/wiki/TPAC-2021#web-extensions-joint-discussions-15-mins 21:16:41 Sub-topic: The process used to create the initial drafts of the WebApps Manifest specification. 21:18:22 MC: there is quite a bit of overlap with web extensions 21:18:22 is the suggestion that Web Extensions would just use the same manifest format as WebApps? 21:18:37 like Web Extensions could just be a kind of PWA? 21:19:38 TH: the formats differ in various places, specially in icons, there are a lot of difference... but the rest is very similar. 21:20:49 Simeon: we don't quite fit json-ld and WebIDL... we also need a fault tolerant json. 21:21:09 Marcos: We went down IDL route and rejected it 21:21:24 Marcos: and then went down json lv [sp] and rejected that 21:22:29 Marcos: The processing that we have done works ok. The icons - we have done it in a particular way, not convinced it is the best. Made some assumptions like pixel density would be factored in, and then a wordpress plugin became popular and poisoned the well as it was incorrect. 21:23:23 Marcos: The model that we use for security runs on top of the web security model, so some things may or may not apply 21:24:32 Simeon: How do you add a field and have that work with tooling and user agent support? ( I believe this was the question) 21:25:14 Marcos: When proposing, the proposal tries to implement it while seeking consensus. Bugs are looked for, and feedback is asked for etc. 21:25:25 https://github.com/w3c/manifest/blob/gh-pages/.github/PULL_REQUEST_TEMPLATE.md 21:25:39 mustaq has joined #webapps 21:26:09 Marcos: We use that template to capture what kind of change it is, how should it be reviewed, look for impl commitment, etc before merging it in 21:26:21 Marcos: There is a json schema that is independent of spec work 21:27:06 MC: see ID member for a good example https://github.com/w3c/manifest/pull/988 21:27:31 We had "all of the discussions" for that one :D 21:27:52 Sub-topic: Technical issues related to manifest specification. 21:28:36 Sub-topic: Lessons learned and recommendations to help guide our manifest specification efforts. 21:28:37 queue+ 21:28:52 queue+ 21:29:16 Josh: Localization after-the-fact is painful. Doing that from the beginning helps a lot 21:29:29 Timothy: Thankfully we already have a way to do this 21:29:38 ack jsbell 21:29:39 q+ on install-time and user identification/tracking 21:31:18 dmurph: I also wanted to mention something around updating. Having a way of referencing an app uniquely has been important. Icons too has been interesting, because you need to show what icons are being updated. 21:32:04 ack dmurph 21:32:07 ack npdoty 21:32:07 npdoty, you wanted to comment on install-time and user identification/tracking 21:32:29 npdoty: user specific identifier can end up in manifest. It's best to deal with that as early as possible before deployment. 21:32:40 queue+ 21:32:58 https://github.com/w3c/manifest/issues/399 21:33:10 diekus has joined #webapps 21:33:31 dmurph: relative URLs can be confusing in a manifest can be confusing. 21:34:13 topic: Current work 21:34:23 present+ 21:34:35 MC: main thing is id and updates 21:35:06 MC: only Chrome is currently doing updates 21:36:32 dmurph: I'm happy to describe how it works 21:36:36 present+ 21:38:26 I thought scalable vector graphics were going to fix these issues ;) 21:38:52 Updating thread: https://github.com/w3c/manifest/issues/446 21:39:03 dmurph: icons are different for different OSs... and icons show up in different places across the OS. Chromium tries to create the icons proactively for icons for different OSs. When updating, some things are concerning, like icons are more concerning than name VS shortname. They are seen as security important. 21:40:30 aarongu: in one crawl, I found one manifest that had 250+ icons 21:40:45 https://docs.google.com/document/d/1q5kmxNU7i4eem22LouMaIJ6123jOw5_zuxVQW1wfW8Y/edit 21:40:47 https://iconmap.io/blog 21:41:21 Interesting FavIcons analysis 21:41:27 Some docs from Android Chrome: https://web.dev/manifest-updates/ 21:42:06 Marcos: The id tells the user agent what the manifest applies to 21:42:23 Marcos: So the user agent knows if it needs to update fields 21:42:59 https://github.com/w3c/manifest/pull/1011 21:43:02 cpn has joined #webapps 21:43:12 Marcos: When you navigate to a page, the manifest is processed. If the ID matches an id of an installed app, then an update can occur 21:43:14 https://github.com/w3c/manifest/pull/1013 21:44:04 https://github.com/whatwg/html/pull/7200 21:45:06 Marcos: the above are the changes that handle **some** of the mechanics updating... others will be UI related, which are note covered by the spec. 21:45:10 https://web.dev/building-multiple-pwas-on-the-same-domain/ 21:46:19 dmurph: it would be ideal if we only had one app per origin, unfortunately, the reality is a bit different... sometimes we have nested scopes, etc. 21:50:17 Alex: we could imagine this being a more difficult opt-in, somehow; e.g. the off-root SW script registration? 21:51:03 MC: yes, it might be good to go over some of the SW scope stuff and see if can help in our case. 21:51:30 Topic: Downloading sub-resources 21:52:32 Marcos: you acquire a manifest, you are about to do an install, and you are downloading icons. The CSP policy for downloading this is supposed to be the document that has the manifest link. 21:52:34 https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers 21:53:02 Marcos: Some of the problems that we hit are where the manifest is used outside of the context of a web browser. Stores, things like that. The CSP doesn't really apply. 21:53:30 Marcos: We're trying to basically do two models. We split out stuff just for stores into a different document, and we've kept things that browsers rely on, like downloading icons, into the web manifest spec 21:53:51 Marcos: We've tied the model more and more explicitly to the environment settings object within the browser, so we can rely on browser security policy 21:54:06 Marcos: This isn't super specified, so we probably need to do more work here 21:54:53 Marcos: in the Gecko impl, the icons get downloaded late after the document is gone. So there isn't checked with the content security policy 21:55:51 https://github.com/w3c/manifest-app-info 21:56:29 Rendered: https://www.w3.org/TR/manifest-app-info/ 21:56:46 Phillis: What is the other spec? 21:56:56 (answered above) 21:57:03 https://www.w3.org/TR/manifest-app-info/ 21:57:29 Chrome on Android uses some of the fields in the manifest-app-info for richer install 21:58:17 Marcos: Distinction is - for core spec, these are things that affect the behavior (orientation, name, etc). Other things that are useful for a store are kept in the manifest-app-info spec 21:58:48 Aaron: Screenshots, description get used in richer install on Android. Stores - things like categories, rating, etc are used for store parsing. 21:58:52 description seems potentially similar to name/short-name -- I could imagine my OS showing me the description when I ask for info on the installed app 22:02:07 Topic: What do we do about scope? #539 22:02:12 https://github.com/w3c/manifest/issues/539 22:02:53 Sample rich install/store page: https://www.dropbox.com/s/sgdqk7m7bdm8grx/Screen%20Shot%202021-10-25%20at%203.00.08%20PM.png?dl=0 22:05:12 url handling allows inclusion & exclusion of paths 22:05:23 dmurph: there are some work being done for URL handling. E.g., All MyApp links in the MyApp app. You might get collision where MyApp and MyApp2 handle deep links so they collide 22:05:41 are there more specific use cases for a single pwa that needs to cover the scope of multiple origins? 22:06:00 handling a URL shortener doesn't seem like the most compelling to me 22:06:08 dmurph: login is a common one 22:07:04 dmurph: redirecting to a login page that is not in scope 22:07:35 aarongu: we've talked to partners that nave multiple TLDs, but are all part of the same "app" 22:08:07 mc: those definitely came up early on as well 22:09:00 q+ 22:09:09 I just wasn't sure it was worth investing a lot of engineering work if the main goal was to help companies running URL shortening services on a different domain (and wanting common access to data) 22:09:10 MC: different permissions can apply per origin 22:09:19 ack dmurph 22:09:20 I thought we generally wanted users to make security decisions based on origin 22:09:56 ack aarongu 22:10:43 aarongu: when there is overlap in URL handling with two installed apps, the OS can show a dialog to disambiguate 22:12:55 q+ 22:14:59 phillis: what properties are actually applied when the app is launched in browser mode? 22:15:23 Evan: Run on OS login could open a tab if the webapp was configured to open in tab 22:15:51 queue+ 22:16:00 ack aarongu 22:16:49 aarongu: some apps might want to be installed, but not have things like fullscreen display mode applied 22:19:03 display: browser is more like a traditional “web shortcut" than an “app shortcut” 22:22:29 MC: let's get together and keep hashing out the scope stuff in another setting 22:22:47 queue- 22:22:47 Topic: Getting to CR - Do we need Editor refresh (i.e., new people to step up)? 22:24:12 https://github.com/w3c/manifest/milestone/1 22:26:45 MC: I'm open to doing a reshuffle of editors, if new folks want to step up. 22:27:37 MC: we can also change the way we work - like meeting more regularly (e.g., on Zoom or Meet) or doing things differently 22:28:22 dmurph: is this around what we need to get things finished for CR? Plus triage? 22:28:25 MC: yes 22:30:28 Topic: Future work + proposals 22:30:33 q+ 22:31:09 topic: Client hint for display mode 22:31:20 https://github.com/w3c/webappswg/wiki/TPAC-2021#future-work--proposals 22:31:33 https://github.com/w3c/manifest/pull/977 22:32:48 aarongu: there is also "installed" client hint, which could allow for the removal of install banners 22:33:10 topic: Theme color + media 22:33:16 https://github.com/w3c/manifest/issues/975 22:33:42 https://github.com/w3c/manifest/issues/975#issuecomment-868739333 22:33:44 aarongu: covers light/dark mode for different parts of the manifest 22:35:00 aarongu: this can get very complicated with "translations"... we could use something like "json paths" to help with some of the complexity 22:35:32 aarongu: we are also looking at "translations", which allows you to redefine the language 22:35:42 aarongu: for certain properties 22:36:08 https://github.com/aarongustafson/manifest-incubations/blob/gh-pages/translations-explainer.md 22:36:25 jensimmons has joined #webapps 22:36:34 aarongu: and publishers definitions https://github.com/w3c/manifest-app-info/pull/47 22:37:00 diekus_ has joined #webapps 22:37:52 Protocol Handlers pull request: https://github.com/WICG/manifest-incubations/pull/38 22:37:55 policies: https://github.com/w3c/manifest-app-info/pull/46 22:38:20 file handlers pull request: https://github.com/WICG/file-handling/blob/main/explainer.md 22:38:21 “install” hint: https://github.com/w3c/manifest-app-info/pull/32 22:38:44 oops, file handling pull request: https://github.com/w3c/manifest/pull/1005 22:39:16 Hi, back for Protocol Handlers, sorry had connection probs 22:39:32 Evan: file handlers, is a way of launching an app by associating an installed web app. 22:41:18 Evan: protocol handler is implemented in Chrome, but not in stable yet. 22:41:26 yes. it's on be default in 96 - Nov 15 or so 22:41:32 s/be/by 22:42:12 s/Chrome/Chromium 22:42:35 Evan: file handling also went through origin trial. Protocol handling on Edge is supported on Mac, Windows, and Linux. 22:43:51 Link capturing discussion on default behavior opt-out: https://groups.google.com/a/chromium.org/g/blink-dev/c/fXASFrrFnps 22:44:03 URL Handler explainer: https://github.com/WICG/pwa-url-handler/blob/main/explainer.md 22:44:10 Evan: URL handlers... we had a proposal for the manifest spec, but we are not going forward with. See https://groups.google.com/a/chromium.org/g/blink-dev/c/fXASFrrFnps 22:44:45 See explainer: https://github.com/WICG/pwa-url-handler/blob/main/explainer.md 22:44:49 Handle_Links explainer: https://github.com/WICG/pwa-url-handler/blob/main/handle_links/explainer.md 22:48:26 Multi-apps / sub-apps - this is a way for an app to install nested web apps. https://github.com/ivansandrk/multi-apps/blob/main/explainer.md 22:49:58 Installed Web Apps video demo: https://www.w3.org/2021/10/TPAC/demos/pwa.html 22:50:56 MC: anything else we should cover? 22:50:59 Protocol Handlers: https://wicg.github.io/manifest-incubations/index.html#protocol_handlers-member 22:53:52 dmurph: we have a lot of things around installations... we have an install process, where the manifest is downloaded for some URL... however, it might be nice if specs could signal if an app can work offline or not in the manifest. 22:55:06 Question was around the packaging proposal Google had and whether it aligned 22:55:43 Daniel: The packages should be somewhat orthoganal to API shape - we would be using the package for resources if they exist in the package 22:56:18 This is the video for some PWA features : https://www.w3.org/2021/10/TPAC/demos/pwa.html 22:56:29 RRSAgent, make log public 22:56:29 emeyer has left #webapps 22:56:31 rrsagent, make log public 22:56:39 rrsagent, draft minutes 22:56:39 I have made the request to generate https://www.w3.org/2021/10/25-webapps-minutes.html marcosc