Closed Bug 1463750 Opened 6 years ago Closed 6 years ago

Move from services/common/ to services/settings/

Categories

(Firefox :: Remote Settings Client, enhancement)

enhancement
Not set
normal

Tracking

()

RESOLVED FIXED
Firefox 62

People

(Reporter: leplatrem, Assigned: leplatrem)

Details

Attachments

(1 file)

Currently the remote settings is mixed up with services/common/ stuff.

Having a dedicated folder (services/settings) would allow:
- to cut remote-settings.js into smaller source files
- to have a cleaner separation with blocklist clients etc.

Ideally:
- aliased as resource://services-settings/
- no server mocking outside services/settings/ tests
Assignee: nobody → mathieu
I've been stuck on this, and I really don't know what to do.

- xpc-shell raises a NetworkError on fetch("resource://app/defaults/settings/blocklists/addons.json"), which makes a test fail.
- Using ``./mach run`` I can see it in "resource://app/defaults/settings/blocklists/"

Can somebody help me please?
Attachment #8980299 - Flags: review?(mgoodwin)
Comment on attachment 8980299 [details]
Bug 1463750 - Move RemoteSettings to services/settings/

https://reviewboard.mozilla.org/r/246466/#review254056
Attachment #8980299 - Flags: review?(mgoodwin) → review+
Keywords: checkin-needed
Target Milestone: --- → Firefox 62
Version: 57 Branch → Trunk
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/b9bf5db54805
Move RemoteSettings to services/settings/ r=mgoodwin
Keywords: checkin-needed
Backed out changeset b9bf5db54805 (bug 1463750) for ESlint failure at test_remote_settings.js on a CLOSED TREE

Backout: https://hg.mozilla.org/integration/autoland/rev/5e985e187d857338b2ee3c8ade078cc901897450

Failure push: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=b9bf5db54805043c8e35e43f60824cf34c4a061b

Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=181038177&repo=autoland&lineNumber=271

[vcs 2018-05-31T01:40:14.394Z] PERFHERDER_DATA: {"framework": {"name": "vcs"}, "suites": [{"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "clone", "shouldAlert": false, "subtests": [], "value": 136.01453185081482}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "pull", "shouldAlert": false, "subtests": [], "value": 8.988917112350464}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "update", "shouldAlert": false, "subtests": [], "value": 88.24964213371277}, {"extraOptions": ["m3.xlarge"], "lowerIsBetter": true, "name": "overall", "shouldAlert": false, "subtests": [], "value": 234.9203758239746}]}
[vcs 2018-05-31T01:40:14.819Z] TinderboxPrint:<a href=https://hg.mozilla.org/integration/autoland/rev/b9bf5db54805043c8e35e43f60824cf34c4a061b title='Built from autoland revision b9bf5db54805043c8e35e43f60824cf34c4a061b'>b9bf5db54805043c8e35e43f60824cf34c4a061b</a>
[task 2018-05-31T01:40:14.819Z] executing ['bash', '-cx', 'cd /builds/worker/checkouts/gecko/ && cp -r /build/node_modules_eslint node_modules && ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules && ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules && ./mach lint -l eslint -f treeherder --quiet\n']
[task 2018-05-31T01:40:14.822Z] + cd /builds/worker/checkouts/gecko/
[task 2018-05-31T01:40:14.822Z] + cp -r /build/node_modules_eslint node_modules
[task 2018-05-31T01:40:16.314Z] + ln -s ../tools/lint/eslint/eslint-plugin-mozilla node_modules
[task 2018-05-31T01:40:16.316Z] + ln -s ../tools/lint/eslint/eslint-plugin-spidermonkey-js node_modules
[task 2018-05-31T01:40:16.317Z] + ./mach lint -l eslint -f treeherder --quiet
[task 2018-05-31T01:40:16.951Z] New python executable in /builds/worker/checkouts/gecko/obj-x86_64-pc-linux-gnu/_virtualenvs/init/bin/python2.7
[task 2018-05-31T01:40:16.951Z] Also creating executable in /builds/worker/checkouts/gecko/obj-x86_64-pc-linux-gnu/_virtualenvs/init/bin/python
[task 2018-05-31T01:40:18.606Z] Installing setuptools, pip, wheel...done.
[task 2018-05-31T01:40:19.668Z] running build_ext
[task 2018-05-31T01:40:19.668Z] building 'psutil._psutil_linux' extension
[task 2018-05-31T01:40:19.668Z] creating build
[task 2018-05-31T01:40:19.668Z] creating build/temp.linux-x86_64-2.7
[task 2018-05-31T01:40:19.668Z] creating build/temp.linux-x86_64-2.7/psutil
[task 2018-05-31T01:40:19.668Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_common.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_common.o
[task 2018-05-31T01:40:19.668Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o
[task 2018-05-31T01:40:19.668Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_linux.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o
[task 2018-05-31T01:40:19.668Z] creating build/lib.linux-x86_64-2.7
[task 2018-05-31T01:40:19.668Z] creating build/lib.linux-x86_64-2.7/psutil
[task 2018-05-31T01:40:19.669Z] x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/psutil/_psutil_common.o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o build/temp.linux-x86_64-2.7/psutil/_psutil_linux.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so
[task 2018-05-31T01:40:19.669Z] building 'psutil._psutil_posix' extension
[task 2018-05-31T01:40:19.669Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_common.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_common.o
[task 2018-05-31T01:40:19.669Z] x86_64-linux-gnu-gcc -pthread -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -fPIC -DPSUTIL_POSIX=1 -DPSUTIL_VERSION=543 -DPSUTIL_LINUX=1 -I/usr/include/python2.7 -c psutil/_psutil_posix.c -o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o
[task 2018-05-31T01:40:19.669Z] x86_64-linux-gnu-gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions -Wl,-Bsymbolic-functions -Wl,-z,relro -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wl,-Bsymbolic-functions -Wl,-z,relro -Wdate-time -D_FORTIFY_SOURCE=2 -g -fstack-protector-strong -Wformat -Werror=format-security build/temp.linux-x86_64-2.7/psutil/_psutil_common.o build/temp.linux-x86_64-2.7/psutil/_psutil_posix.o -o build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so
[task 2018-05-31T01:40:19.669Z] copying build/lib.linux-x86_64-2.7/psutil/_psutil_linux.so -> psutil
[task 2018-05-31T01:40:19.669Z] copying build/lib.linux-x86_64-2.7/psutil/_psutil_posix.so -> psutil
[task 2018-05-31T01:40:19.669Z] 
[task 2018-05-31T01:40:19.669Z] Error processing command. Ignoring because optional. (optional:packages.txt:comm/build/virtualenv_packages.txt)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:169:26 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:174:24 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:176:3 | 'checkUptakeTelemetry' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:183:26 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:187:24 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:189:3 | 'checkUptakeTelemetry' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:195:26 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:202:24 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:204:3 | 'checkUptakeTelemetry' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:214:26 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:220:24 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:222:3 | 'checkUptakeTelemetry' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:230:26 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:237:24 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings.js:239:3 | 'checkUptakeTelemetry' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings_jexl_filters.js:116:3 | 'Services' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings_poll.js:70:26 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings_poll.js:182:24 | 'getUptakeTelemetrySnapshot' is not defined. (no-undef)
[task 2018-05-31T01:45:24.144Z] TEST-UNEXPECTED-ERROR | /builds/worker/checkouts/gecko/services/settings/test/unit/test_remote_settings_poll.js:192:3 | 'checkUptakeTelemetry' is not defined. (no-undef)
[taskcluster 2018-05-31 01:45:24.451Z] === Task Finished ===
[taskcluster 2018-05-31 01:45:24.452Z] Unsuccessful task run with exit code: 1 completed in 546.252 seconds
Flags: needinfo?(mathieu)
I fixed the linting and packaging errors. Try is green \o/
Flags: needinfo?(mathieu)
Keywords: checkin-needed
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/750295aad764
Move RemoteSettings to services/settings/ r=mgoodwin
Keywords: checkin-needed
Backed out for xpcshell failures on Android on security/manager/ssl/tests/unit/test_cert_blocklist.js

backout: https://hg.mozilla.org/integration/autoland/rev/d44a49e38c6c5aec72593011e9b90504bf7a89b9

push with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&revision=750295aad764cefa0ae1b5972106a12f1b6d69c6&group_state=expanded&selectedJob=181442483

failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=181447754&repo=autoland&lineNumber=1407

[task 2018-06-01T23:13:07.764Z] 23:13:07     INFO -  TEST-START | security/manager/ssl/tests/unit/test_cert_blocklist.js
[task 2018-06-01T23:13:28.716Z] 23:13:28  WARNING -  TEST-UNEXPECTED-FAIL | security/manager/ssl/tests/unit/test_cert_blocklist.js | xpcshell return code: 0
[task 2018-06-01T23:13:28.717Z] 23:13:28     INFO -  TEST-INFO took 20952ms
[task 2018-06-01T23:13:28.717Z] 23:13:28     INFO -  >>>>>>>
[task 2018-06-01T23:13:28.718Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | xpcw: cd /sdcard/tests/xpc/security/manager/ssl/tests/unit
[task 2018-06-01T23:13:28.718Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | xpcw: xpcshell -r /sdcard/tests/xpc/c/httpd.manifest --greomni /data/local/xpcb/target.apk -m -s -e const _HEAD_JS_PATH = "/sdcard/tests/xpc/head.js"; -e const _MOZINFO_JS_PATH = "/sdcard/tests/xpc/p/mozinfo.json"; -e const _TESTING_MODULES_DIR = "/sdcard/tests/xpc/m"; -f /sdcard/tests/xpc/head.js -e const _SERVER_ADDR = "localhost" -e const _HEAD_FILES = ["/sdcard/tests/xpc/security/manager/ssl/tests/unit/head_psm.js"]; -e const _JSDEBUGGER_PORT = 0; -e const _TEST_FILE = ["test_cert_blocklist.js"]; -e const _TEST_NAME = "security/manager/ssl/tests/unit/test_cert_blocklist.js" -e _execute_test(); quit(0);
[task 2018-06-01T23:13:28.719Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | [5391, Unnamed thread 46b0d080] WARNING: XPCOM objects created/destroyed from static ctor/dtor: file /builds/worker/workspace/build/src/xpcom/base/nsTraceRefcnt.cpp, line 195
[task 2018-06-01T23:13:28.720Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | [5391, Main Thread] WARNING: Couldn't get the user appdata directory. Crash events may not be produced.: file /builds/worker/workspace/build/src/toolkit/crashreporter/nsExceptionHandler.cpp, line 2678
[task 2018-06-01T23:13:28.721Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | 1527894796058	addons.xpi	WARN	List of valid built-in add-ons could not be parsed.: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXPCComponents_Utils.readUTF8URI]"  nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)"  location: "JS frame :: resource://gre/modules/addons/XPIProvider.jsm :: startup :: line 2091"  data: no] Stack trace: startup()@resource://gre/modules/addons/XPIProvider.jsm:2091
[task 2018-06-01T23:13:28.721Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | callProvider()@resource://gre/modules/AddonManager.jsm:205
[task 2018-06-01T23:13:28.722Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | _startProvider()@resource://gre/modules/AddonManager.jsm:653
[task 2018-06-01T23:13:28.722Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | startup()@resource://gre/modules/AddonManager.jsm:812
[task 2018-06-01T23:13:28.723Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | startup()@resource://gre/modules/AddonManager.jsm:2833
[task 2018-06-01T23:13:28.724Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | observe()@jar:jar:file:///data/local/xpcb/target.apk!/assets/omni.ja!/components/addonManager.js:66
[task 2018-06-01T23:13:28.724Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | test_cert_blocklist.js:161
[task 2018-06-01T23:13:28.725Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | load_file()@/sdcard/tests/xpc/head.js:626
[task 2018-06-01T23:13:28.725Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | _load_files()@/sdcard/tests/xpc/head.js:638
[task 2018-06-01T23:13:28.726Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | _execute_test()@/sdcard/tests/xpc/head.js:502
[task 2018-06-01T23:13:28.727Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | -e:1
[task 2018-06-01T23:13:28.727Z] 23:13:28     INFO -  security/manager/ssl/tests/unit/test_cert_blocklist.js | JavaScript strict warning: resource://gre/modules/LightweightThemeManager.jsm, line 630: ReferenceError: reference to undefined property "version"
[task 2018-06-01T23:13:28.728Z] 23:13:28     INFO -  (xpcshell/head.js) | test MAIN run_test pending (1)
[task 2018-06-01T23:13:28.729Z] 23:13:28     INFO -  (xpcshell/head.js) | test run_next_test 0 pending (2)
[task 2018-06-01T23:13:28.729Z] 23:13:28     INFO -  (xpcshell/head.js) | test MAIN run_test finished (2)
[task 2018-06-01T23:13:28.730Z] 23:13:28     INFO -  running event loop

TRY PUSH: https://treeherder.mozilla.org/#/jobs?repo=try&revision=9171ce45b6d64c4c5a2d8ccb39773d7a42fdeaaa&group_state=expanded&filter-searchStr=android
Flags: needinfo?(mathieu)
Ok, I added the manifest to the Android install too. Tests are now green on Android too.

JorgK, you might run into similar problem for TB. This should do it:
https://reviewboard.mozilla.org/r/246466/diff/6-7/
Flags: needinfo?(mathieu) → needinfo?(jorgk)
Keywords: checkin-needed
Pushed by ryanvm@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/466387c9cc93
Move RemoteSettings to services/settings/ r=mgoodwin
Keywords: checkin-needed
Thanks for the heads-up, I'll add that to our package manifests.
Flags: needinfo?(jorgk)
Pushed by mozilla@jorgk.com:
https://hg.mozilla.org/comm-central/rev/b99c0c5956c3
Port bug 1463750 to TB/SM: Add servicesSettings.manifest to package-manifests. rs=bustage-fix
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: