gecko-dev/dom
Kris Maglione 186924219b Bug 1322235: Part 1 - Add native MatchPattern and MatchGlob bindings. r=billm,aswan
Bill, can you please review the binding code, and the general sanity of the
platform code. Andrew and zombie, can you please matching algorithms and
tests.

Change summary:

The existing JavaScript matching code works well overall, but it needs to be
called a lot, particularly from hot code paths. In most cases, the overhead of
the matching code on its own adds up enough to cause a problem. When we have
to call out to JavaScript via XPConnect to make a policy decision, it adds up
even more.

These classes solve both of these problems by a) being very fast, and b) being
accessible directly from C++. They are particularly optimized for the common
cases where only literal or prefix matches are required, and they take special
steps to avoid virtual calls wherever possible, and caching computed URL
values so that they can be reused across many match operations without
additional overhead.

MozReview-Commit-ID: BZzPZDQRnl

--HG--
rename : toolkit/modules/tests/xpcshell/test_MatchPattern.js => toolkit/components/extensions/test/xpcshell/test_MatchPattern.js
extra : rebase_source : c93c4c6c36460eb5ad0fc3aa86ad42a72e76bb6c
2017-05-24 14:57:29 -07:00
..
animation Merge mozilla-central to mozilla-inbound 2017-06-02 14:32:35 +02:00
asmjscache
audiochannel Bug 1367075 - Get rid of AudioChannelService::IsParentProcess, r=me - CLOSED TREE 2017-05-24 09:49:35 +02:00
base Bug 1322235: Part 1 - Add native MatchPattern and MatchGlob bindings. r=billm,aswan 2017-05-24 14:57:29 -07:00
battery
bindings Bug 1322235: Part 1 - Add native MatchPattern and MatchGlob bindings. r=billm,aswan 2017-05-24 14:57:29 -07:00
broadcastchannel Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
browser-element Bug 1368712 - Get rid of nsIBrowserElementAPI.{set,get}Visible, r=kanru 2017-05-31 21:15:23 +02:00
cache Bug 1369316 - Get rid of nsIPrincipal.unknownAppId, r=bholley 2017-06-02 11:05:28 +02:00
canvas Backed out changeset ca6881983573 (bug 1366941) for build bustage 2017-06-01 20:05:48 -07:00
commandhandler Bug 1361745 - Part 2: Avoid a double hashtable lookup for insertions in nsControllerCommandGroup::AddCommandToGroup; r=mystor 2017-05-08 10:02:04 -04:00
console Bug 1368296 - Renaming WorkerProxyToMainThreadRunnable::RunBackOnWorkerThread to RunBackOnWorkerThreadForCleanup and improving the description for this method, r=asuth 2017-06-02 11:05:27 +02:00
crypto Bug 1363560 - Name more runnables (r=mccr8) 2017-05-09 21:53:25 -07:00
encoding Bug 1351548 - Remove reftest-stylo.lists. r=bholley 2017-04-28 11:15:58 +08:00
events Bug 1367683 Optimize initializing nsRange r=smaug 2017-05-30 13:18:25 +09:00
fetch Bug 1312515 - Part 2: Lower the channel's priority if this Fetch is created from tracking script. r=baku 2017-05-19 01:29:00 -04:00
file Bug 1369354 - Avoid deadlock in IPCBlobInputStreamStorage::GetStream when IPCBlobInputStreamChild actor is used on the parent process, r=smaug 2017-06-02 11:05:27 +02:00
filehandle Bug 1359490 - add an event loop spinning abstraction function; r=gerald 2017-05-15 09:34:19 -04:00
filesystem Bug 1361511 - change ownership assertion mechanism for various DOM classes; r=baku 2017-05-03 11:48:54 -04:00
flyweb Bug 1326154 - Fix to prevent FlyWebService from pointing to a URL with a different origin. r=djvj 2017-05-23 15:17:02 -04:00
gamepad Bug 1369419 GetMessage() and PeekMessage() shouldn't be used directly as far as possible r=jimm 2017-06-02 12:02:35 +09:00
geolocation
grid
html Bug 1368712 - Get rid of nsIBrowserElementAPI.{set,get}Visible, r=kanru 2017-05-31 21:15:23 +02:00
imptests Bug 1361645 - Change reftest condition stylo to styloVsGecko r=dbaron 2017-05-25 11:26:12 +08:00
indexedDB Bug 1356824 - Don't clear mWaitingFactoryOp without holding a self reference in (Open|Delete)DatabaseOp::NoteDatabaseClosed(). r=btseng 2017-06-01 13:08:52 -04:00
interfaces Backed out 2 changesets (bug 1347270) for browser_toolbariconcolor_restyles.js permafail on a CLOSED TREE. 2017-05-30 18:11:02 -04:00
ipc Bug 1369859 - Add MOZ_GECKO_PROFILER ifdefs around #includes of ProfilerParent.h. r=njn 2017-06-02 16:03:39 -04:00
json
jsurl Bug 1363560 - Name more runnables (r=mccr8) 2017-05-09 21:53:25 -07:00
locales Backed out 4 changesets (bug 1365419) for android mochitest failures in test_bug583533.html a=backout 2017-06-01 18:39:21 -07:00
manifest Bug 1362993 - Rewrite gBrowser.addTab() to use BrowserTestUtils.addTab(). r=florian 2017-05-15 21:49:50 +02:00
mathml
media Merge m-c to inbound, a=merge 2017-06-02 17:31:31 -07:00
messagechannel Bug 1359718 - Get rid of PBlob - part 2 - PBlob, r=smaug, r=kanru 2017-05-23 18:05:19 +02:00
network Bug 1359005 - Cleanup the use of PBlob in StructuredCloneHolder - part 1 - protocols, r=smaug 2017-05-23 07:49:40 +02:00
notification Bug 1351034 - Remove WEB_NOTIFICATION_PERMISSION_REMOVED. f=chutten; r=kitcambridge 2017-05-09 09:24:01 -07:00
offline
payments Backed out changeset 437d6df1859c (bug 1345361) for ESLint failures. 2017-05-25 18:05:15 -04:00
performance Bug 1123754 (part 1) - Rename ProfilerMarkers.{h,cpp} as ProfilerMarkerPayload.{h,cpp}. r=mstange. 2017-04-27 07:36:19 +10:00
permission
plugins merge mozilla-inbound to mozilla-central. r=merge a=merge 2017-06-03 20:15:27 +02:00
power Bug 1362993 - Rewrite gBrowser.addTab() to use BrowserTestUtils.addTab(). r=florian 2017-05-15 21:49:50 +02:00
presentation Bug 1367150 - Do not attempt to create PresentationChild if ContentChild is shutting down. r=ehsan 2017-05-25 06:43:59 -04:00
promise Bug 1358879 - Optimize handling of internally-created Promise objects. r=bz 2017-05-03 12:46:00 +02:00
push Bug 1369314 - Get rid of nsScriptSecurityManager::GetAppCodebasePrincipal, r=bholley 2017-06-02 11:05:28 +02:00
quota Bug 1362993 - Rewrite gBrowser.addTab() to use BrowserTestUtils.addTab(). r=florian 2017-05-15 21:49:50 +02:00
res
script Bug 1364117 - Encode JS bytecode of scripts which are parsed on the main thread. r=mrbkap 2017-05-29 16:01:37 +00:00
secureelement
security Bug 1363634 - rewrite test_style_crossdomain.html. r=ckerschb 2017-05-23 09:02:06 +08:00
smil Bug 1367293 - Don't get parent style for GetComputedKeyframeValuesFor. r=birtles 2017-06-02 09:38:54 +09:00
storage Bug 1366101 - Remove extra warnings in SessionStorageManage, r=smaug 2017-05-19 17:26:42 +02:00
svg Bug 1240275 - Support SVG 2 radialGradient fr attribute. r=cam r=peterv (see comment 16) 2017-05-23 07:15:02 +01:00
system Bug 1363966 - Cleanup network geo provider: removed unneeded listener function wrapper and the call to non-existent listener.locationUpdatePending(). r=jdm 2017-05-24 07:22:00 -04:00
tests Bug 1368364 - backout bug 1242505 as it causes browser/modules/ intermittent failures. r=paolo 2017-06-03 10:34:14 +02:00
time
u2f
url Bug 1368955 - Split URL.cpp in URLMainThread.{cpp,h} and URLWorker.{cpp,h}, r=qdot 2017-05-31 21:18:56 +02:00
vr Bug 1362213 - Implement chrome-only API to manage VR sessions r=daoshengmu,kanru,smaug 2017-05-08 16:01:36 -07:00
webauthn Bug 1364991 - Make U2FTokenManager use const where possible r=qdot 2017-05-22 16:40:29 -07:00
webbrowserpersist Bug 1352958 - Use UNIFIED_SOURCES into dom/webbrowserpersist. r=overholt 2017-05-17 18:19:53 +09:00
webidl Bug 1322235: Part 1 - Add native MatchPattern and MatchGlob bindings. r=billm,aswan 2017-05-24 14:57:29 -07:00
workers Bug 1368296 - Renaming WorkerProxyToMainThreadRunnable::RunBackOnWorkerThread to RunBackOnWorkerThreadForCleanup and improving the description for this method, r=asuth 2017-06-02 11:05:27 +02:00
worklet Bug 1362119 - part 1 - Moving dom/base/Script{Loader,Element}.* in dom/script, r=ehsan 2017-05-08 08:24:22 +02:00
xbl Bug 1367286 - Remove loading user html binding via "dom.userHTMLBindings.uri". r=bz 2017-05-24 13:10:12 -04:00
xhr Bug 1367110 - Expose XHRMT's ErrorCode to chrome JS. r=baku 2017-05-24 08:52:15 -04:00
xml Bug 1365506 - fix XHTML/XUL tests that use data: URI. r=smaug 2017-05-23 09:02:06 +08:00
xslt Bug 1362119 - part 1 - Moving dom/base/Script{Loader,Element}.* in dom/script, r=ehsan 2017-05-08 08:24:22 +02:00
xul Bug 1363640 Part 5 - Add a table in nsXULPrototypeCache to cache XBL documents with servo backend. r=bz,heycam 2017-05-19 15:18:00 -07:00
jar.mn
moz.build Backed out changeset 437d6df1859c (bug 1345361) for ESLint failures. 2017-05-25 18:05:15 -04:00