Some background:

   - The *filesystem:* URL scheme was introduced to the *File API:
   Directories and System* specification
   <https://dev.w3.org/2009/dap/file-system/file-dir-sys.html>, which I
   generally refer to as *the old FileSystem API*. This API is only
   implemented in Blink (maybe it was in the pre-fork WebKit?). To the best of
   my knowledge, it was never shipped in Safari, Firefox, IE, or EdgeHTML.
   - The main benefit (for developers) of *filesystem:* URLs over *blob:*
   is their indefinite lifetime. Blob URLs only live as long as the frame that
   created them. This property made them very attractive for serving
   sub-resources stored locally, at a time when we didn't have Service Workers.
   - We intentionally left the *filesystem:* URL scheme out of the File
   System Access API <https://wicg.github.io/file-system-access/>. Service
   Workers have a clear model that works well for both top-level navigation
   and sub-resources.

We (the folks maintaining storage APIs in Chromium) would very much like to
deprecate the entire old FileSystem API, beginning with the *filesystem:*
URL scheme. We want to be cognizant of introducing too much stress on the
ecosystem, though -- we just finished removing AppCache from Blink, and
we're planning to focus on WebSQL next. Though, maybe you're saying that
*filesystem:* URLs are worse, and we should tackle them first?

I hope this helps!
    Victor





On Tue, Feb 1, 2022 at 1:32 AM Mike West <mk...@chromium.org> wrote:

> I worry that removing `filesystem:` for media elements on Android, while
> maintaining support for other platforms, will end up causing some developer
> confusion without much value for the codebase as a whole (since we need to
> maintain all the exciting bits and pieces of infrastructure). Are the
> numbers you quoted for media elements on those other platforms, or all
> element types? Perhaps we could remove support for media elements on all
> platforms if there's substantial benefit to doing so.
>
> Honestly, I'd prefer that we outline a plan to fully remove `filesystem:`
> if we're not going to support it going forward (+Josh and +Victor). It has
> some pretty complicated effects on the security state of navigations, and
> while we have a reasonable plan for PolicyContainer integration with
> `blob:` URLs, we're still a ways away from doing the same for
> `filesystem:`. Is there a path towards deprecating and dropping support on
> other platforms? The large ChromeOS usage makes me somewhat suspicious that
> this is wrapped up in one Google property or another... have y'all done
> that analysis?
>
> -mike
> On Wednesday, January 26, 2022 at 7:48:54 PM UTC+1 Brianna Goldstein wrote:
>
>> Additionally to follow up on @Chris Harrelson <chris...@chromium.org>'s
>> question on usage - Chrome OS usage is 1.38%, Mac OSX is at 0.12% and
>> Windows is 0.05%. We propose to only remove support for Android here.
>>
>> On Tue, Jan 25, 2022 at 7:13 PM Chris Harrelson <chris...@chromium.org>
>> wrote:
>>
>>> Hi, could you outline the use counter values for other platforms? Also,
>>> is there something special about Android that leads you to want to disable
>>> only there?
>>>
>>> On Tue, Jan 25, 2022 at 1:58 PM Brianna Goldstein <
>>> brgoldst...@chromium.org> wrote:
>>>
>>>> Primary eng (and PM) emails
>>>>
>>>> brgoldst...@google.com, m...@chromium.com <m...@google.com>,
>>>> jadekess...@chromium.com
>>>>
>>>> Explainer
>>>>
>>>> Storage partitioning explainer
>>>> <https://github.com/wanderview/quota-storage-partitioning/blob/main/explainer.md#storage-apis>
>>>>
>>>> Summary
>>>>
>>>> We propose to remove support for loading media via filesystem:// URLs
>>>> on Android.
>>>>
>>>>
>>>> Motivation
>>>>
>>>> As part of our storage partitioning efforts, we will need to update
>>>> Filesystem URLs to be partitioned by StorageKey rather than by Origin.
>>>> Doing this will add complexity since the entire current codepath on Android
>>>> is not dependent on Blink where StorageKey currently lives. On Android only
>>>> 0.0000001% of URLs loaded by <audio> or <video> use the filesystem:// URL
>>>> scheme and we consider this low enough usage to remove support, rather than
>>>> do the work of partitioning. Note that this removal is only for Android. On
>>>> other platforms there will be no effect and media playback of filesystem://
>>>> URLs will continue to work.
>>>>
>>>> Blink component
>>>>
>>>> Blink>Storage
>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EStorage>
>>>>
>>>> Initial public proposal
>>>>
>>>> None
>>>>
>>>> TAG review
>>>>
>>>> None
>>>>
>>>> TAG review status
>>>>
>>>> N/A
>>>>
>>>> Interoperability and Compatibility RiskInteroperability risk:
>>>>
>>>> The filesystem:// URL scheme was never widely adopted and is only
>>>> implemented by Chrome. Therefore there should be no interoperability risks
>>>> associated with this feature depreciation.
>>>>
>>>> Compatibility risk:
>>>>
>>>> This feature is very low usage as only 0.0000001% of URLs loaded by
>>>> <audio> or <video> use the filesystem:// URL scheme. Therefore the expected
>>>> compatibility risk is very low.
>>>>
>>>> Alternative implementation suggestion for web developers
>>>>
>>>> Developers can continue to load media from other schemes (http, https,
>>>> blob, file, etc.).
>>>>
>>>> Usage information from UMA
>>>>
>>>> Android Chrome (Browser App): 0.0000001%
>>>>
>>>> Android Webview: 0.0%
>>>>
>>>> Tracking Bug
>>>>
>>>> https://bugs.chromium.org/p/chromium/issues/detail?id=1258029
>>>>
>>>> Entry on the feature dashboard
>>>>
>>>> https://chromestatus.com/feature/5632429577469952
>>>>
>>>> --
>>>> You received this message because you are subscribed to the Google
>>>> Groups "blink-dev" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>> an email to blink-dev+unsubscr...@chromium.org.
>>>> To view this discussion on the web visit
>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALDP-vS2KA47PGLh3YkxqAr9z24nP1_u%2BtvY6eWzqSQgq987cQ%40mail.gmail.com
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CALDP-vS2KA47PGLh3YkxqAr9z24nP1_u%2BtvY6eWzqSQgq987cQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>> .
>>>>
>>>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAP_mGKrEhMzfwrzz1DqaCusAcErOiMA3G0X8ufE%3DNNdJtqWg_A%40mail.gmail.com.

Reply via email to