Closed Bug 1340078 Opened 3 years ago Closed 3 years ago

Old permissions are reposted in interactive webextension update pop-up

Categories

(Toolkit :: Add-ons Manager, defect)

defect
Not set

Tracking

()

VERIFIED FIXED
mozilla54
Tracking Status
firefox51 --- unaffected
firefox52 --- unaffected
firefox53 --- unaffected
firefox54 --- verified

People

(Reporter: vasilica.mihasca, Assigned: aswan)

References

Details

Attachments

(1 file)

[Affected versions]:
Firefox 54.0a1 (2017-02-15)

[Affected platforms]:
Windows 10 64-bit
Ubuntu 16.04 32-bit


[Steps to reproduce]:
1.Launch Firefox with clean profile.
2.Create extensions.webextPermissionPrompts and set it to true.
3.Create xpinstall.signatures.dev-root and set it to true.
4.Change extensions.update.url to point to dev server.
5.Install the first version of the following webextension: https://addons-dev.allizom.org/en-US/firefox/addon/webext111/versions/
6.Go to about:addons -> Extensions and check for updates. 


[Expected Results]:
Only the new permissions are mentioned in update installation pop-up.


[Actual Results]:
- The old permissions, mentioned for version 1 installation are also specified in permission approval doorhanger while performing interactive updates. 
- See screenshots: 
    Version 1: https://www.screencast.com/t/9r0de8a3FtX
    Version 2: https://www.screencast.com/t/EhGQpyPeups
Can you include the full update url to be used in step 4 please
Flags: needinfo?(vasilica.mihasca)
Arg, I did most of the work to show different permissions lists for updates but managed to not quite finish it and then neglected to properly test it.  This patch should fix both of those.
Assignee: nobody → aswan
Attachment #8838223 - Flags: review?(rhelmer)
Comment on attachment 8838223 [details]
Bug 1340078 Show the correct permissions list in webextensions notifications

https://reviewboard.mozilla.org/r/113184/#review115100
Attachment #8838223 - Flags: review?(rhelmer) → review+
Pushed by aswan@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/c73bba5d7bea
Show the correct permissions list in webextensions notifications r=rhelmer
Backed out for failing browser_extension_permissions.js:

https://hg.mozilla.org/integration/autoland/rev/be250556a6cb38d3a32c154bb1cdb169844cac40

Push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=c73bba5d7bea1149ad0d6d797def73ebf37bbd43
Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=78613628&repo=autoland

[task 2017-02-19T04:25:51.919587Z] 04:25:51     INFO - TEST-PASS | browser/base/content/test/general/browser_extension_permissions.js | Found browser_webext_permissions.xpi in search results - 
[task 2017-02-19T04:25:51.921701Z] 04:25:51     INFO - TEST-PASS | browser/base/content/test/general/browser_extension_permissions.js | addon-webext-permissions notification shown - 
[task 2017-02-19T04:25:51.923682Z] 04:25:51     INFO - TEST-PASS | browser/base/content/test/general/browser_extension_permissions.js | notification panel open - 
[task 2017-02-19T04:25:51.925602Z] 04:25:51     INFO - TEST-PASS | browser/base/content/test/general/browser_extension_permissions.js | Icon is a jar url - 
[task 2017-02-19T04:25:51.927551Z] 04:25:51     INFO - TEST-PASS | browser/base/content/test/general/browser_extension_permissions.js | Icon is icon.png inside a jar - 
[task 2017-02-19T04:25:51.929651Z] 04:25:51     INFO - Buffered messages finished
[task 2017-02-19T04:25:51.932617Z] 04:25:51     INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/general/browser_extension_permissions.js | Permission list header is visible - Got true, expected 
[task 2017-02-19T04:25:51.934385Z] 04:25:51     INFO - Stack trace:
[task 2017-02-19T04:25:51.936119Z] 04:25:51     INFO -     chrome://mochikit/content/browser-test.js:test_is:911
[task 2017-02-19T04:25:51.937927Z] 04:25:51     INFO -     chrome://mochitests/content/browser/browser/base/content/test/general/browser_extension_permissions.js:checkNotification:64
[task 2017-02-19T04:25:51.939888Z] 04:25:51     INFO -     chrome://mochitests/content/browser/browser/base/content/test/general/browser_extension_permissions.js:runOnce:205
[task 2017-02-19T04:25:51.941782Z] 04:25:51     INFO -     process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23
[task 2017-02-19T04:25:51.943586Z] 04:25:51     INFO -     walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7
[task 2017-02-19T04:25:51.945371Z] 04:25:51     INFO -     Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11
[task 2017-02-19T04:25:51.947166Z] 04:25:51     INFO -     schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7
[task 2017-02-19T04:25:51.949101Z] 04:25:51     INFO -     completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:707:7
[task 2017-02-19T04:25:51.950837Z] 04:25:51     INFO -     TaskImpl_run@resource://gre/modules/Task.jsm:324:15
[task 2017-02-19T04:25:51.952542Z] 04:25:51     INFO -     promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:396:7
[task 2017-02-19T04:25:51.954270Z] 04:25:51     INFO -     TaskImpl_run@resource://gre/modules/Task.jsm:327:15
[task 2017-02-19T04:25:51.956060Z] 04:25:51     INFO -     process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23
[task 2017-02-19T04:25:51.957847Z] 04:25:51     INFO -     walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7
[task 2017-02-19T04:25:51.959722Z] 04:25:51     INFO -     Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11
[task 2017-02-19T04:25:51.961584Z] 04:25:51     INFO -     schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7
[task 2017-02-19T04:25:51.963436Z] 04:25:51     INFO -     completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:707:7
[task 2017-02-19T04:25:51.965216Z] 04:25:51     INFO -     observe/<@resource://app/modules/ExtensionsUI.jsm:128:11
[task 2017-02-19T04:25:51.966926Z] 04:25:51     INFO -     promise callback*observe@resource://app/modules/ExtensionsUI.jsm:124:7
[task 2017-02-19T04:25:51.968677Z] 04:25:51     INFO -     installRemote/this.mInstall.promptHandler/<@chrome://mozapps/content/extensions/extensions.xml:675:15
[task 2017-02-19T04:25:51.970520Z] 04:25:51     INFO -     Promise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:390:5
[task 2017-02-19T04:25:51.972253Z] 04:25:51     INFO -     installRemote/this.mInstall.promptHandler@chrome://mozapps/content/extensions/extensions.xml:662:51
[task 2017-02-19T04:25:51.973962Z] 04:25:51     INFO -     checkPrompt/<@resource://gre/modules/addons/XPIProvider.jsm:5634:17
[task 2017-02-19T04:25:51.975660Z] 04:25:51     INFO -     TaskImpl_run@resource://gre/modules/Task.jsm:319:42
[task 2017-02-19T04:25:51.977376Z] 04:25:51     INFO -     TaskImpl@resource://gre/modules/Task.jsm:277:3
[task 2017-02-19T04:25:51.979070Z] 04:25:51     INFO -     asyncFunction@resource://gre/modules/Task.jsm:252:14
[task 2017-02-19T04:25:51.980964Z] 04:25:51     INFO -     Task_spawn@resource://gre/modules/Task.jsm:166:12
[task 2017-02-19T04:25:51.982802Z] 04:25:51     INFO -     checkPrompt@resource://gre/modules/addons/XPIProvider.jsm:5625:5
[task 2017-02-19T04:25:51.984510Z] 04:25:51     INFO -     install@resource://gre/modules/addons/XPIProvider.jsm:5356:7
[task 2017-02-19T04:25:51.986218Z] 04:25:51     INFO -     install@resource://gre/modules/addons/XPIProvider.jsm:6132:7
[task 2017-02-19T04:25:51.987914Z] 04:25:51     INFO -     downloadCompleted/<@resource://gre/modules/addons/XPIProvider.jsm:6448:9
[task 2017-02-19T04:25:51.989740Z] 04:25:51     INFO -     makeSafe/<@resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:172:17
[task 2017-02-19T04:25:51.991591Z] 04:25:51     INFO -     getRepositoryAddon@resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:153:5
[task 2017-02-19T04:25:51.993346Z] 04:25:51     INFO -     getAddon/<@resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:1069:9
[task 2017-02-19T04:25:51.995134Z] 04:25:51     INFO -     process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23
[task 2017-02-19T04:25:51.996858Z] 04:25:51     INFO -     walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7
[task 2017-02-19T04:25:51.999088Z] 04:25:51     INFO -     Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11
[task 2017-02-19T04:25:52.000955Z] 04:25:52     INFO -     schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7
[task 2017-02-19T04:25:52.002769Z] 04:25:52     INFO -     completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:707:7
[task 2017-02-19T04:25:52.004520Z] 04:25:52     INFO -     openSignedAppFileFinished@resource://gre/modules/addons/XPIProvider.jsm:1819:9
[task 2017-02-19T04:25:52.006607Z] 04:25:52     INFO - Not taking screenshot here: see the one that was previously logged
[task 2017-02-19T04:25:52.008729Z] 04:25:52     INFO - TEST-UNEXPECTED-FAIL | browser/base/content/test/general/browser_extension_permissions.js | Permissions list has 4 entries - Got 0, expected 4
[task 2017-02-19T04:25:52.010339Z] 04:25:52     INFO - Stack trace:
[task 2017-02-19T04:25:52.012153Z] 04:25:52     INFO -     chrome://mochikit/content/browser-test.js:test_is:911
[task 2017-02-19T04:25:52.013931Z] 04:25:52     INFO -     chrome://mochitests/content/browser/browser/base/content/test/general/browser_extension_permissions.js:checkNotification:65
[task 2017-02-19T04:25:52.015801Z] 04:25:52     INFO -     chrome://mochitests/content/browser/browser/base/content/test/general/browser_extension_permissions.js:runOnce:205
[task 2017-02-19T04:25:52.017592Z] 04:25:52     INFO -     process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23
[task 2017-02-19T04:25:52.019411Z] 04:25:52     INFO -     walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7
[task 2017-02-19T04:25:52.021312Z] 04:25:52     INFO -     Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11
[task 2017-02-19T04:25:52.023191Z] 04:25:52     INFO -     schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7
[task 2017-02-19T04:25:52.024996Z] 04:25:52     INFO -     completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:707:7
[task 2017-02-19T04:25:52.026723Z] 04:25:52     INFO -     TaskImpl_run@resource://gre/modules/Task.jsm:324:15
[task 2017-02-19T04:25:52.028443Z] 04:25:52     INFO -     promise callback*TaskImpl_handleResultValue@resource://gre/modules/Task.jsm:396:7
[task 2017-02-19T04:25:52.033353Z] 04:25:52     INFO -     TaskImpl_run@resource://gre/modules/Task.jsm:327:15
[task 2017-02-19T04:25:52.035469Z] 04:25:52     INFO -     process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23
[task 2017-02-19T04:25:52.038070Z] 04:25:52     INFO -     walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7
[task 2017-02-19T04:25:52.039895Z] 04:25:52     INFO -     Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11
[task 2017-02-19T04:25:52.041899Z] 04:25:52     INFO -     schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7
[task 2017-02-19T04:25:52.044707Z] 04:25:52     INFO -     completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:707:7
[task 2017-02-19T04:25:52.046470Z] 04:25:52     INFO -     observe/<@resource://app/modules/ExtensionsUI.jsm:128:11
[task 2017-02-19T04:25:52.048303Z] 04:25:52     INFO -     promise callback*observe@resource://app/modules/ExtensionsUI.jsm:124:7
[task 2017-02-19T04:25:52.050384Z] 04:25:52     INFO -     installRemote/this.mInstall.promptHandler/<@chrome://mozapps/content/extensions/extensions.xml:675:15
[task 2017-02-19T04:25:52.053570Z] 04:25:52     INFO -     Promise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:390:5
[task 2017-02-19T04:25:52.055346Z] 04:25:52     INFO -     installRemote/this.mInstall.promptHandler@chrome://mozapps/content/extensions/extensions.xml:662:51
[task 2017-02-19T04:25:52.057055Z] 04:25:52     INFO -     checkPrompt/<@resource://gre/modules/addons/XPIProvider.jsm:5634:17
[task 2017-02-19T04:25:52.058821Z] 04:25:52     INFO -     TaskImpl_run@resource://gre/modules/Task.jsm:319:42
[task 2017-02-19T04:25:52.060897Z] 04:25:52     INFO -     TaskImpl@resource://gre/modules/Task.jsm:277:3
[task 2017-02-19T04:25:52.063654Z] 04:25:52     INFO -     asyncFunction@resource://gre/modules/Task.jsm:252:14
[task 2017-02-19T04:25:52.065377Z] 04:25:52     INFO -     Task_spawn@resource://gre/modules/Task.jsm:166:12
[task 2017-02-19T04:25:52.067254Z] 04:25:52     INFO -     checkPrompt@resource://gre/modules/addons/XPIProvider.jsm:5625:5
[task 2017-02-19T04:25:52.069832Z] 04:25:52     INFO -     install@resource://gre/modules/addons/XPIProvider.jsm:5356:7
[task 2017-02-19T04:25:52.071646Z] 04:25:52     INFO -     install@resource://gre/modules/addons/XPIProvider.jsm:6132:7
[task 2017-02-19T04:25:52.073486Z] 04:25:52     INFO -     downloadCompleted/<@resource://gre/modules/addons/XPIProvider.jsm:6448:9
[task 2017-02-19T04:25:52.076197Z] 04:25:52     INFO -     makeSafe/<@resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:172:17
[task 2017-02-19T04:25:52.078010Z] 04:25:52     INFO -     getRepositoryAddon@resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:153:5
[task 2017-02-19T04:25:52.079964Z] 04:25:52     INFO -     getAddon/<@resource://gre/modules/addons/XPIProvider.jsm -> resource://gre/modules/addons/XPIProviderUtils.js:1069:9
[task 2017-02-19T04:25:52.082839Z] 04:25:52     INFO -     process@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:922:23
[task 2017-02-19T04:25:52.084710Z] 04:25:52     INFO -     walkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:806:7
[task 2017-02-19T04:25:52.086693Z] 04:25:52     INFO -     Promise*scheduleWalkerLoop@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:739:11
[task 2017-02-19T04:25:52.089321Z] 04:25:52     INFO -     schedulePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:770:7
[task 2017-02-19T04:25:52.091162Z] 04:25:52     INFO -     completePromise@resource://gre/modules/Promise.jsm -> resource://gre/modules/Promise-backend.js:707:7
[task 2017-02-19T04:25:52.093064Z] 04:25:52     INFO -     openSignedAppFileFinished@resource://gre/modules/addons/XPIProvider.jsm:1819:9
Flags: needinfo?(aswan)
Pushed by aswan@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/8cee574417c0
Show the correct permissions list in webextensions notifications r=rhelmer
Blocks: 1342142
Flags: needinfo?(aswan)
https://hg.mozilla.org/mozilla-central/rev/8cee574417c0
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
Verified fixed on Firefox 54.0a1 (2017-02-26) under Windows 10 64-bit, Ubuntu 16.04 32-bit and Mac OS X 10.12.1. Only the new permissions are listed in update installation pop-up.
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.