Closed Bug 1694662 Opened 4 years ago Closed 4 years ago

Remove HTTP cache backing for AppCache

Categories

(Core :: Networking: HTTP, task, P2)

task

Tracking

()

RESOLVED FIXED
90 Branch
Iteration:
90.1 - Apr 19 - May 2
Tracking Status
firefox90 --- fixed

People

(Reporter: valentin, Assigned: valentin)

References

Details

(Whiteboard: [necko-triaged])

Attachments

(32 files, 1 obsolete file)

(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details
(deleted), text/x-phabricator-request
Details

Appcache was the last consumer of the old implementation of the HTTP cache.
Now that it's disabled it allows us to remove it with potential benefits to:

  • binary size
  • performance
  • code quality & maintenance.

My plan is to land it in Firefox 89/90 - since ESR branches from Firefox 91 that allows us time to address any potential regressions.

Depends on D106430

Depends on D106433

Without a backing storage we don't need this interface to actually
do something. As such, we can remove the implementation to simplify
the code. We may disable & remove the interface in bug 1677718.

Depends on D106440

Depends on D106441

Depends on D106442

Depends on D106443

Depends on D106444

Depends on D106447

Depends on D106450

Depends on D106453

Depends on D106454

Depends on D106455

Depends on D106456

Depends on D106458

Depends on D106460

Depends on D106461

Hi Mike,

This bug aims to remove old cache that backs the appcache implementation.
The appcache DOM API is still available on release and late beta - we aim to remove it in bug 1677718 at a later time.
As metioned in comment 0 this removal improves:

  • binary size
  • performance
  • code quality & maintenance.
    But after landing this you can't get appcache to actually provide any offline capabilities.
    Do we know of any blockers to landing this? I would like to land it in or before Firefox 90 to make sure we don't have any regressions in ESR 91 - but I am very happy to land it earlier if possible. I'm also available to chat if you have any concerns about this topic.

Thanks!

Flags: needinfo?(mconca)

(In reply to Valentin Gosu [:valentin] (he/him) from comment #33)

First things first - that is an impressive stack of patches. Wow.

Do we know of any blockers to landing this? I would like to land it in or before Firefox 90 to make sure we don't have any regressions in ESR 91 - but I am very happy to land it earlier if possible. I'm also available to chat if you have any concerns about this topic.

I'm not aware of any blockers. Google has had AppCache disabled by default in Chrome since August of 2020, available only via reverse origin trial. That mitigates a lot of the risk of removing it in Firefox. Chrome will stop the ROT in October of 2021. I also agree that getting this in before the next ESR is important, so landing this in Fx90 makes sense.

Flags: needinfo?(mconca)
Attachment #9205386 - Attachment description: Bug 1694662 - Remove appcache implementations from public API methods → Bug 1694662 - Remove appcache implementations from public API methods r=#necko
Attachment #9205387 - Attachment description: Bug 1694662 - Remove uses of nsIOfflineCacheUpdate → Bug 1694662 - Remove uses of nsIOfflineCacheUpdate r=#necko
Attachment #9205388 - Attachment description: Bug 1694662 - Remove OfflineCache update logic → Bug 1694662 - Remove OfflineCache update logic r=#necko
Attachment #9205390 - Attachment description: Bug 1694662 - Remove OfflineAppCacheHelper → Bug 1694662 - Remove OfflineAppCacheHelper r=#necko
Attachment #9205392 - Attachment description: Bug 1694662 - Remove appcache from site data manager → Bug 1694662 - Remove appcache from site data manager r=#necko
Attachment #9205393 - Attachment description: Bug 1694662 - Remove nsIApplicationCacheChannel usage from docshell → Bug 1694662 - Remove nsIApplicationCacheChannel usage from docshell r=#necko
Attachment #9205394 - Attachment description: Bug 1694662 - Remove appcache from document → Bug 1694662 - Remove appcache from document r=#necko
Attachment #9205395 - Attachment description: Bug 1694662 - Remove appcache from imgRequest/imgLoader → Bug 1694662 - Remove appcache from imgRequest/imgLoader r=#necko
Attachment #9205399 - Attachment description: Bug 1694662 - Remove headers from offline resource list → Bug 1694662 - Remove headers from offline resource list r=#necko
Attachment #9205404 - Attachment description: Bug 1694662 - Remove ajax/offline tests → Bug 1694662 - Remove ajax/offline tests r=#necko
Attachment #9205407 - Attachment description: Bug 1694662 - Remove cacheservice from android appshell → Bug 1694662 - Remove cacheservice from android appshell r=#necko

There are some r+ patches which didn't land and no activity in this bug for 2 weeks.
:valentin, could you have a look please?
For more information, please visit auto_nag documentation.

Flags: needinfo?(valentin.gosu)
Flags: needinfo?(dd.mozilla)

I intend to land them this week.

Flags: needinfo?(valentin.gosu)
Flags: needinfo?(dd.mozilla)
Attachment #9205406 - Attachment is obsolete: true
Pushed by valentin.gosu@gmail.com: https://hg.mozilla.org/integration/autoland/rev/0437472eea44 Remove appcache logic from http channels r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/6b58ea3b93fc Remove nsICachingChannel r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/8ec6f4786d29 Remove nsIHttpChannelInternal.setupFallbackChannel r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/7735e20284fc Remove nsHttpChannel::mFallbackKey r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/bbc65671d043 Remove FallbackChannel flag and Fallback* methods r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/4e29dd7df392 Remove nsHttpChannel::mApplicationCacheForWrite r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/07115b2f2607 Remove applicationCache param nsHttpChannel methods r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/7553672cf5d7 Remove appcache arg from nsICacheEntryOpenCallback r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/ce0553f83803 Remove nsICachingChannel.LOAD_CHECK_OFFLINE_CACHE flag r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/a5e4777a05ec Remove appcache logic from content sink r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/aca312af60c5 Remove appcache implementations from public API methods r=dragana https://hg.mozilla.org/integration/autoland/rev/765aff29440d Remove uses of nsIOfflineCacheUpdate r=dragana https://hg.mozilla.org/integration/autoland/rev/d6dee23042bb Remove OfflineCache update logic r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/f261d360bb30 Remove appcache tests r=necko-reviewers,dragana https://hg.mozilla.org/integration/autoland/rev/910dff4b95aa Remove OfflineAppCacheHelper r=preferences-reviewers,Gijs https://hg.mozilla.org/integration/autoland/rev/f11e8439a77f Remove appcache from site data manager r=dragana https://hg.mozilla.org/integration/autoland/rev/cd0df20e15f1 Remove nsIApplicationCacheChannel usage from docshell r=dragana https://hg.mozilla.org/integration/autoland/rev/37a19e282367 Remove appcache from document r=dragana https://hg.mozilla.org/integration/autoland/rev/df8f923b5b8a Remove appcache from imgRequest/imgLoader r=kershaw https://hg.mozilla.org/integration/autoland/rev/5ef130419e1b Remove appcache from viewsource channels r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/655f5f997fb0 Remove header from layoutstatistics r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/717bad383608 Remove nsApplicationCacheService component r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/589ac116df11 Remove headers from offline resource list r=kershaw https://hg.mozilla.org/integration/autoland/rev/2cf95ebcb6b1 Remove appcache storage attribute r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/2b89bfa40c27 Remove Appcachestorage & oldwrappers r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/431a86c270a0 Remove old cache implementation r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/1ac0ae9ba6b4 Remove ajax/offline tests r=kershaw https://hg.mozilla.org/integration/autoland/rev/502bbb8a1e2e Remove nsIApplicationCache interfaces r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/85211abe311f Remove cacheservice from android appshell r=geckoview-reviewers,kershaw,agi https://hg.mozilla.org/integration/autoland/rev/318a4c8f027a Remove Appcache storage pref r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/309c479b86cf Disable WPT tests r=necko-reviewers,kershaw https://hg.mozilla.org/integration/autoland/rev/4e4e5197bd03 Remove unused NS_ShouldCheckAppCache function r=necko-reviewers,dragana

https://hg.mozilla.org/mozilla-central/rev/0437472eea44
https://hg.mozilla.org/mozilla-central/rev/6b58ea3b93fc
https://hg.mozilla.org/mozilla-central/rev/8ec6f4786d29
https://hg.mozilla.org/mozilla-central/rev/7735e20284fc
https://hg.mozilla.org/mozilla-central/rev/bbc65671d043
https://hg.mozilla.org/mozilla-central/rev/4e29dd7df392
https://hg.mozilla.org/mozilla-central/rev/07115b2f2607
https://hg.mozilla.org/mozilla-central/rev/7553672cf5d7
https://hg.mozilla.org/mozilla-central/rev/ce0553f83803
https://hg.mozilla.org/mozilla-central/rev/a5e4777a05ec
https://hg.mozilla.org/mozilla-central/rev/aca312af60c5
https://hg.mozilla.org/mozilla-central/rev/765aff29440d
https://hg.mozilla.org/mozilla-central/rev/d6dee23042bb
https://hg.mozilla.org/mozilla-central/rev/f261d360bb30
https://hg.mozilla.org/mozilla-central/rev/910dff4b95aa
https://hg.mozilla.org/mozilla-central/rev/f11e8439a77f
https://hg.mozilla.org/mozilla-central/rev/cd0df20e15f1
https://hg.mozilla.org/mozilla-central/rev/37a19e282367
https://hg.mozilla.org/mozilla-central/rev/df8f923b5b8a
https://hg.mozilla.org/mozilla-central/rev/5ef130419e1b
https://hg.mozilla.org/mozilla-central/rev/655f5f997fb0
https://hg.mozilla.org/mozilla-central/rev/717bad383608
https://hg.mozilla.org/mozilla-central/rev/589ac116df11
https://hg.mozilla.org/mozilla-central/rev/2cf95ebcb6b1
https://hg.mozilla.org/mozilla-central/rev/2b89bfa40c27
https://hg.mozilla.org/mozilla-central/rev/431a86c270a0
https://hg.mozilla.org/mozilla-central/rev/1ac0ae9ba6b4
https://hg.mozilla.org/mozilla-central/rev/502bbb8a1e2e
https://hg.mozilla.org/mozilla-central/rev/85211abe311f
https://hg.mozilla.org/mozilla-central/rev/318a4c8f027a
https://hg.mozilla.org/mozilla-central/rev/309c479b86cf
https://hg.mozilla.org/mozilla-central/rev/4e4e5197bd03

Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 90 Branch
Pushed by mkmelin@iki.fi: https://hg.mozilla.org/comm-central/rev/d25e46be8dd3 Port "Remove HTTP cache backing for AppCache" to Thunderbird. rs=bustage-fix
Pushed by mkmelin@iki.fi: https://hg.mozilla.org/comm-central/rev/9c680023d1b1 adjust Thunderbird tests for changes in 1694662. rs=bustage-fix
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: