mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-30 05:35:31 +00:00
1fe3c441c1
Introduce protocol version levels in the Marionette server. On establishing a connection to a local end, the remote will return a `marionetteProtocol` field indicating which level it speaks. The protocol level can be used by local ends to either fall into compatibility mode or warn the user that the local end is incompatible with the remote. The protocol is currently also more expressive than it needs to be and this expressiveness has previously resulted in subtle inconsistencies in the fields returned. This patch reduces the amount of superfluous fields, reducing the amount of data sent. Aligning the protocol closer to the WebDriver specification's expectations will also reduce the amount of post-processing required in the httpd. Previous to this patch, this is a value response: {"from":"0","value":null,"status":0,"sessionId":"{6b6d68d2-4ac9-4308-9f07-d2e72519c407}"} And this for ok responses: {"from":"0","ok":true} And this for errors: {"from":"0","status":21,"sessionId":"{6b6d68d2-4ac9-4308-9f07-d2e72519c407}","error":{"message":"Error loading page, timed out (onDOMContentLoaded)","stacktrace":null,"status":21}} This patch drops the `from` and `sessionId` fields, and the `status` field from non-error responses. It also drops the `ok` field in non-value responses and flattens the error response to a simple dictionary with the `error` (previously `status`), `message`, and `stacktrace` properties, which are now all required. r=jgriffin --HG-- extra : commitid : FbEkv70rxl9 extra : rebase_source : 3116110a0d197289cc95eba8748be0a33566c5a5
96 lines
1.8 KiB
Plaintext
96 lines
1.8 KiB
Plaintext
# .hgignore - List of filenames hg should ignore
|
|
|
|
# Filenames that should be ignored wherever they appear
|
|
~$
|
|
\.py(c|o)$
|
|
(?i)(^|/)TAGS$
|
|
(^|/)ID$
|
|
(^|/)\.DS_Store$
|
|
.*\.egg-info
|
|
|
|
# Vim swap files.
|
|
^\.sw.$
|
|
.[^/]*\.sw.$
|
|
|
|
# Emacs directory variable files.
|
|
\.dir-locals\.el
|
|
|
|
# User files that may appear at the root
|
|
^\.mozconfig
|
|
^mozconfig*
|
|
^configure$
|
|
^config\.cache$
|
|
^config\.log$
|
|
^\.clang_complete
|
|
^mach.ini$
|
|
|
|
# Empty marker file that's generated when we check out NSS
|
|
^security/manager/\.nss\.checkout$
|
|
|
|
# Build directories
|
|
^obj
|
|
|
|
# Build directories for js shell
|
|
_DBG\.OBJ/
|
|
_OPT\.OBJ/
|
|
^js/src/.*-obj/
|
|
|
|
# SpiderMonkey configury
|
|
^js/src/configure$
|
|
^js/src/autom4te.cache$
|
|
# SpiderMonkey test result logs
|
|
^js/src/tests/results-.*\.(html|txt)$
|
|
|
|
# Java HTML5 parser classes
|
|
^parser/html/java/(html|java)parser/
|
|
|
|
# SVN directories
|
|
\.svn/
|
|
|
|
# Ignore the files and directory that Eclipse IDE creates
|
|
\.project$
|
|
\.cproject$
|
|
\.settings/
|
|
|
|
# Ignore the directory that JetBrains IDEs create
|
|
\.idea/
|
|
|
|
# Python stuff installed at build time.
|
|
^python/psutil/.*\.so
|
|
^python/psutil/.*\.pyd
|
|
^python/psutil/build/
|
|
|
|
# Git repositories
|
|
.git/
|
|
|
|
# Ignore chrome.manifest files from the devtools loader
|
|
^browser/devtools/chrome.manifest$
|
|
^toolkit/devtools/chrome.manifest$
|
|
|
|
# git checkout of libstagefright
|
|
^media/libstagefright/android$
|
|
|
|
# Tag files generated by GNU Global
|
|
GTAGS
|
|
GRTAGS
|
|
GSYMS
|
|
GPATH
|
|
|
|
# Unit tests for Loop
|
|
^browser/components/loop/standalone/content/config\.js$
|
|
^browser/components/loop/standalone/node_modules/
|
|
|
|
# Git clone directory for updating web-platform-tests
|
|
^testing/web-platform/sync/
|
|
|
|
# Android Gradle artifacts.
|
|
^mobile/android/gradle/.gradle
|
|
|
|
# XCode project cruft
|
|
^embedding/ios/GeckoEmbed/GeckoEmbed.xcodeproj/project.xcworkspace/xcuserdata
|
|
^embedding/ios/GeckoEmbed/GeckoEmbed.xcodeproj/xcuserdata
|
|
|
|
# Ignore mozharness execution files
|
|
^testing/mozharness/logs/
|
|
^testing/mozharness/build/
|