Closed Bug 1291291 Opened 3 years ago Closed 3 years ago

Remove dom/apps

Categories

(Core Graveyard :: DOM: Apps, defect)

defect
Not set

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1318218

People

(Reporter: fabrice, Assigned: ehsan)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

The app runtime won't be used anymore, so it's fine to remove it and all the dependencies.
jst, do you have someone that can tackle that? That will lead to a lot of code removal all over the place, since we won't need the appId and appStatus on the principals.
Flags: needinfo?(jst)
I've got some spare cycles, I'll take care of this.
Assignee: nobody → gsvelto
Status: NEW → ASSIGNED
Flags: needinfo?(jst)
Depends on: 1296579
Work in progress patch... this is *big*, and it's probably like ~20% of the work that needs to be done. I'll try to split it up otherwise keeping it updated and reviewing it will be a nightmare.

Note, with these changes not even desktop Firefox build correctly. This is what's known as "machete programming": you're in the jungle, you cut a path through it removing everything that's in the way and only when you're on the other side you fix up the rest (hopefully).
I propose we do things piecemeal in order to avoid a boil the ocean approach.

Over in bug 1261019, I'm working on removing navigator.mozApps.  That removes a good chunk of code inside dom/apps that either implements mozApps and the APIs attached to it, and the code that purely used to support that implementation.  Currently, that patch leaves the following files/dirs in dom/apps:

AppsService.js           AppsServiceChild.jsm     MessageBroadcaster.jsm   PermissionsInstaller.jsm UserCustomizations.jsm   tests
AppsService.manifest     AppsUtils.jsm            OperatorApps.jsm         PermissionsTable.jsm     moz.build

Some of this code implements the apps service which is used in various parts of the tree.  Eliminating those usages is super helpful (bug 1255046.)

Some of the other JSMs left are stufff that are used one off in some random part of the code which we can remove as well in small patches.

What do you think, Gabriele?  If you agree with this plan, bug 1255046 is a self contained work item while I'm nuking out mozApps.  :-)
Flags: needinfo?(gsvelto)
Depends on: 1261019
(In reply to :Ehsan Akhgari from comment #4)
> Over in bug 1261019, I'm working on removing navigator.mozApps.  That
> removes a good chunk of code inside dom/apps that either implements mozApps
> and the APIs attached to it, and the code that purely used to support that
> implementation.  Currently, that patch leaves the following files/dirs in
> dom/apps:
> 
> AppsService.js           AppsServiceChild.jsm     MessageBroadcaster.jsm  
> PermissionsInstaller.jsm UserCustomizations.jsm   tests
> AppsService.manifest     AppsUtils.jsm            OperatorApps.jsm        
> PermissionsTable.jsm     moz.build
> 
> Some of this code implements the apps service which is used in various parts
> of the tree.  Eliminating those usages is super helpful (bug 1255046.)

I see. I've started cutting deeply here because that's an easy way to spot breakage .and thus be able to fix it. I intend to split this into multiple patches though otherwise it'll be a nightmare.

> Some of the other JSMs left are stufff that are used one off in some random
> part of the code which we can remove as well in small patches.
> 
> What do you think, Gabriele?  If you agree with this plan, bug 1255046 is a
> self contained work item while I'm nuking out mozApps.  :-)

Sounds good to me! Don't be afraid of bit-rotting the stuff I'm doing here since it'll need rebase anyway.
Flags: needinfo?(gsvelto)
Sounds good!  FWIW I'm pretty close to a patch which is landable to remove navigator.mozApps, but this is lagging a bit since I'm fixing up the remaining issues in my free time.  The current state of things on try is at <https://treeherder.mozilla.org/#/jobs?repo=try&revision=201b0ebf20b2e73392a335bbde15767a4f12c1e2>.
Blocks: nukeb2g
Right now I don't have time to work on this due to other deadlines; I'll resume at a later point if nobody picks it up in the meantime.
Assignee: gsvelto → nobody
Status: ASSIGNED → NEW
No longer blocks: 1174239
I've finished removing this directory on inbound in bug 1318218.
Assignee: nobody → ehsan
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → DUPLICATE
Duplicate of bug: 1318218
No longer blocks: 1369194
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.