FreeBSD Bugzilla – Attachment 184285 Details for
Bug 219963
www/firefox: update to 55.0
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
beta8
ff55.diff (text/plain), 139.67 KB, created by
Jan Beich
on 2017-07-11 19:36:25 UTC
(
hide
)
Description:
beta8
Filename:
MIME Type:
Creator:
Jan Beich
Created:
2017-07-11 19:36:25 UTC
Size:
139.67 KB
patch
obsolete
>From a900841a15ef2d378a18c01abd42b2597ce8ea3f Mon Sep 17 00:00:00 2001 >From: Jan Beich <jbeich@FreeBSD.org> >Date: Tue, 11 Apr 2017 14:17:57 +0000 >Subject: [PATCH] www/firefox: update to 55.0 > >Changes: https://www.mozilla.org/firefox/55.0/releasenotes/ >PR: 216541 219963 >Tested by: ? >Security: 555b244e-6b20-4546-851f-d8eb7d6c1ffa >MFH: 2017Q3 >--- > Mk/Uses/gecko.mk | 4 +- > www/firefox-i18n/Makefile | 4 +- > www/firefox-i18n/Makefile.lang | 5 +- > www/firefox-i18n/Makefile.option | 1 + > www/firefox-i18n/distinfo | 380 +++++++------- > www/firefox/Makefile | 12 +- > www/firefox/distinfo | 6 +- > www/firefox/files/patch-bug1021761 | 40 +- > www/firefox/files/patch-bug1312182 | 376 ++++++++++++++ > www/firefox/files/patch-bug1356709 | 170 ------ > www/firefox/files/patch-bug1357874 | 43 -- > www/firefox/files/patch-bug1360321 | 49 -- > www/firefox/files/patch-bug1376411 | 435 ++++++++++------ > www/firefox/files/patch-bug1379430 | 65 +++ > www/firefox/files/patch-bug702179 | 17 +- > www/firefox/files/patch-bug826985 | 12 - > www/firefox/files/patch-bug847568 | 2 +- > www/firefox/files/patch-bug981348 | 61 --- > ...ch-python_futures_concurrent_futures_process.py | 15 - > www/firefox/files/patch-rust-option | 569 +++++++++++++++++++-- > ...ty_python_futures_concurrent_futures_process.py | 15 + > 21 files changed, 1477 insertions(+), 804 deletions(-) > create mode 100644 www/firefox/files/patch-bug1312182 > delete mode 100644 www/firefox/files/patch-bug1356709 > delete mode 100644 www/firefox/files/patch-bug1357874 > delete mode 100644 www/firefox/files/patch-bug1360321 > create mode 100644 www/firefox/files/patch-bug1379430 > delete mode 100644 www/firefox/files/patch-bug981348 > delete mode 100644 www/firefox/files/patch-python_futures_concurrent_futures_process.py > create mode 100644 www/firefox/files/patch-third__party_python_futures_concurrent_futures_process.py > >diff --git a/Mk/Uses/gecko.mk b/Mk/Uses/gecko.mk >index c895b04979de..0fbc2d3e4bf2 100644 >--- a/Mk/Uses/gecko.mk >+++ b/Mk/Uses/gecko.mk >@@ -37,12 +37,12 @@ RUN_DEPENDS+= libxul>=45:www/libxul > .elif ${gecko_ARGS:Mfirefox} > > _GECKO_DEFAULT_VERSION= 52 >-_GECKO_VERSIONS= 52 54 >+_GECKO_VERSIONS= 52 55 > _GECKO_TYPE= firefox > > # Dependence lines for different Firefox versions > 52_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox-esr >-54_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox >+55_DEPENDS= ${LOCALBASE}/lib/firefox/firefox:www/firefox > > .if exists(${LOCALBASE}/bin/firefox) > _GECKO_INSTALLED_VER!= ${LOCALBASE}/bin/firefox --version 2>/dev/null >diff --git a/www/firefox-i18n/Makefile b/www/firefox-i18n/Makefile >index e9036082b6fa..d49ea6ea8442 100644 >--- a/www/firefox-i18n/Makefile >+++ b/www/firefox-i18n/Makefile >@@ -2,7 +2,7 @@ > # $FreeBSD$ > > PORTNAME= firefox-i18n >-PORTVERSION= 54.0.1 >+PORTVERSION= 55.0b8 > CATEGORIES= www > MASTER_SITES= MOZILLA/${PORTNAME:S|-i18n||}/releases/${DISTVERSION}/linux-i686/xpi \ > MOZILLA/${PORTNAME:S|-i18n||}/candidates/${DISTVERSION}-candidates/build1/linux-i686/xpi >@@ -15,7 +15,7 @@ COMMENT= Localized interface for Firefox > > EXTRACT_DEPENDS= zip:archivers/zip > >-USES= zip:infozip gecko:firefox,54,build >+USES= zip:infozip gecko:firefox,55,build > USE_XPI= firefox > > NO_ARCH= yes >diff --git a/www/firefox-i18n/Makefile.lang b/www/firefox-i18n/Makefile.lang >index dd9c4962df11..20d45f4ce03e 100644 >--- a/www/firefox-i18n/Makefile.lang >+++ b/www/firefox-i18n/Makefile.lang >@@ -1,7 +1,7 @@ > # Created by: Koji Yokota <yokota@res.otaru-uc.ac.jp> > # $FreeBSD$ > >-FIREFOX_I18N_ALL_= ach af an ar as ast az bg bn-BD bn-IN br bs ca cak \ >+FIREFOX_I18N_ALL_= ach af an ar as ast az be bg bn-BD bn-IN br bs ca cak \ > cs cy da de dsb el en-GB en-US en-ZA eo es-AR es-CL \ > es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gn \ > gu-IN he hi-IN hr hsb hu hy-AM id is it ja ka kab \ >@@ -33,6 +33,9 @@ FIREFOX_I18N+= ast > .if ${PORT_OPTIONS:MLANG_AZ} > FIREFOX_I18N+= az > .endif >+.if ${PORT_OPTIONS:MLANG_BE} >+FIREFOX_I18N+= be >+.endif > .if ${PORT_OPTIONS:MLANG_BG} > FIREFOX_I18N+= bg > .endif >diff --git a/www/firefox-i18n/Makefile.option b/www/firefox-i18n/Makefile.option >index 16f86ebc6c3e..bc2035278e9d 100644 >--- a/www/firefox-i18n/Makefile.option >+++ b/www/firefox-i18n/Makefile.option >@@ -9,6 +9,7 @@ OPTIONS_DEFINE= LANG_ACH \ > LANG_AS \ > LANG_AST \ > LANG_AZ \ >+ LANG_BE \ > LANG_BG \ > LANG_BB \ > LANG_BN \ >diff --git a/www/firefox-i18n/distinfo b/www/firefox-i18n/distinfo >index ac77e1448b28..507a0c5b5e85 100644 >--- a/www/firefox-i18n/distinfo >+++ b/www/firefox-i18n/distinfo >@@ -1,189 +1,191 @@ >-TIMESTAMP = 1498670356 >-SHA256 (xpi/firefox-i18n-54.0.1/ach.xpi) = 2ac6571fee99dbb0886e6b4d75d9ed9b793b5a2551413d0969c4b443e797b9a8 >-SIZE (xpi/firefox-i18n-54.0.1/ach.xpi) = 426785 >-SHA256 (xpi/firefox-i18n-54.0.1/af.xpi) = 86e4a12e511e7a88b7eb762b0755984e72b8774c77398481609237e9ca44b4a5 >-SIZE (xpi/firefox-i18n-54.0.1/af.xpi) = 436585 >-SHA256 (xpi/firefox-i18n-54.0.1/an.xpi) = a925947a8d77450357b2e85454c8b02b71f2553a6abc373d6ef865a098acef6a >-SIZE (xpi/firefox-i18n-54.0.1/an.xpi) = 445344 >-SHA256 (xpi/firefox-i18n-54.0.1/ar.xpi) = 8e7d0af2143a5df4f93fb70d0e240180b897320234d9e0f17274f996c9e7ca29 >-SIZE (xpi/firefox-i18n-54.0.1/ar.xpi) = 473124 >-SHA256 (xpi/firefox-i18n-54.0.1/as.xpi) = 3f4f218ce4da291d008630f20b29d032182f8c5356c387be81a55616881585d3 >-SIZE (xpi/firefox-i18n-54.0.1/as.xpi) = 484171 >-SHA256 (xpi/firefox-i18n-54.0.1/ast.xpi) = b215e69042c029156b8e787c03f9504beb5e056ea71f0e8e6eb706205f8eee1f >-SIZE (xpi/firefox-i18n-54.0.1/ast.xpi) = 440269 >-SHA256 (xpi/firefox-i18n-54.0.1/az.xpi) = a092eb7b69b97e44a375ac1244a8f1bfc48acfd7d99051350803632273164e68 >-SIZE (xpi/firefox-i18n-54.0.1/az.xpi) = 454243 >-SHA256 (xpi/firefox-i18n-54.0.1/bg.xpi) = 2d12828369f44e8c805e2825946cec5ef040585a92b35c89ff17aceac8a0a83d >-SIZE (xpi/firefox-i18n-54.0.1/bg.xpi) = 485835 >-SHA256 (xpi/firefox-i18n-54.0.1/bn-BD.xpi) = ab3a823e662776edf0aeaf9c4535f451ebe4e8ad5811023377ca88eebef56306 >-SIZE (xpi/firefox-i18n-54.0.1/bn-BD.xpi) = 508867 >-SHA256 (xpi/firefox-i18n-54.0.1/bn-IN.xpi) = 0acff03ac54f2a4609c626d4e5b461c0abacb8b24d6df4dc1b3f2cffc6baffa7 >-SIZE (xpi/firefox-i18n-54.0.1/bn-IN.xpi) = 506168 >-SHA256 (xpi/firefox-i18n-54.0.1/br.xpi) = e164f7ba23ce3fac8240f9f3cb3b44dd0555c558550d0f9fc98cbfa5eb05de8d >-SIZE (xpi/firefox-i18n-54.0.1/br.xpi) = 434372 >-SHA256 (xpi/firefox-i18n-54.0.1/bs.xpi) = 7b74a68b66b6763922cfa08ed8c2dab8dad64fe4b8cd8e51f3b023c635d0dddc >-SIZE (xpi/firefox-i18n-54.0.1/bs.xpi) = 441131 >-SHA256 (xpi/firefox-i18n-54.0.1/ca.xpi) = 104ae2cc9b629669005648e5fb2e7cad06965eb700c6246bacc8874c48180b82 >-SIZE (xpi/firefox-i18n-54.0.1/ca.xpi) = 443027 >-SHA256 (xpi/firefox-i18n-54.0.1/cak.xpi) = aced374c69e3cd85800b685bd1003b290b58f0a37c870e42badce50c740a0a36 >-SIZE (xpi/firefox-i18n-54.0.1/cak.xpi) = 458232 >-SHA256 (xpi/firefox-i18n-54.0.1/cs.xpi) = 937ab90c522119406605eb0051f81dbe0a0c716826cf222cee532bbaeeb049ac >-SIZE (xpi/firefox-i18n-54.0.1/cs.xpi) = 443929 >-SHA256 (xpi/firefox-i18n-54.0.1/cy.xpi) = 6a095bdbe2c274da1772c87914aad3ca4a788f6f3a0d3a10d9432cfdf646a6a3 >-SIZE (xpi/firefox-i18n-54.0.1/cy.xpi) = 436310 >-SHA256 (xpi/firefox-i18n-54.0.1/da.xpi) = 1a0d5e22c79b0f558031b14edc8aa8a4dd1ce0a5c418549c68c8223c5ab7a7f9 >-SIZE (xpi/firefox-i18n-54.0.1/da.xpi) = 423766 >-SHA256 (xpi/firefox-i18n-54.0.1/de.xpi) = 1bc9004a9aa4f41245c610ab0c239496cd649157e8ad7bbb89feb83585889b60 >-SIZE (xpi/firefox-i18n-54.0.1/de.xpi) = 442814 >-SHA256 (xpi/firefox-i18n-54.0.1/dsb.xpi) = 0946b957ff6765bd30171477394ed5e0345cc3c6dadf1fee07b85a57d789515d >-SIZE (xpi/firefox-i18n-54.0.1/dsb.xpi) = 458691 >-SHA256 (xpi/firefox-i18n-54.0.1/el.xpi) = 60f7e95db941c2c2b9bdbbb7b4c601badd2cc92f59c716e3ea82294fb7078e63 >-SIZE (xpi/firefox-i18n-54.0.1/el.xpi) = 511228 >-SHA256 (xpi/firefox-i18n-54.0.1/en-GB.xpi) = 50b09222acad38c4d2a878850905b55cd399f5923fa9aa2b2fa118a48560883e >-SIZE (xpi/firefox-i18n-54.0.1/en-GB.xpi) = 419545 >-SHA256 (xpi/firefox-i18n-54.0.1/en-US.xpi) = 14e0d08ce9fd79cd1b9ade2c19d92b255b758384c7e7e608d573beed36f639a3 >-SIZE (xpi/firefox-i18n-54.0.1/en-US.xpi) = 425757 >-SHA256 (xpi/firefox-i18n-54.0.1/en-ZA.xpi) = 1fcea8c4bd696913c4d93fdd8dc3569707de035e6b5ed4808892e85a8945b58f >-SIZE (xpi/firefox-i18n-54.0.1/en-ZA.xpi) = 413431 >-SHA256 (xpi/firefox-i18n-54.0.1/eo.xpi) = d32c2f771aea465c62c4b9d782fccc1d22969be3ea827027d7acdb592ee66e19 >-SIZE (xpi/firefox-i18n-54.0.1/eo.xpi) = 437027 >-SHA256 (xpi/firefox-i18n-54.0.1/es-AR.xpi) = c1b6a6ffdf9f74d653f72cf3157b820b95eddf26fabc72be3d2bae84457f5d78 >-SIZE (xpi/firefox-i18n-54.0.1/es-AR.xpi) = 445558 >-SHA256 (xpi/firefox-i18n-54.0.1/es-CL.xpi) = 222dd573b6f877926bee2d58963366b670a4d5176c839663073da1bb6ff51eb5 >-SIZE (xpi/firefox-i18n-54.0.1/es-CL.xpi) = 445585 >-SHA256 (xpi/firefox-i18n-54.0.1/es-ES.xpi) = 494983532ee064521a37d90cbfbef46d0fab37fe82d4d72b3ade3c539db3585b >-SIZE (xpi/firefox-i18n-54.0.1/es-ES.xpi) = 341281 >-SHA256 (xpi/firefox-i18n-54.0.1/es-MX.xpi) = 3a74d108671f717c3bb5954298eb396c861aa902cf7c426cc2cc02ecc15f6dbf >-SIZE (xpi/firefox-i18n-54.0.1/es-MX.xpi) = 447976 >-SHA256 (xpi/firefox-i18n-54.0.1/et.xpi) = 4a926107e99dd4bd6a8b6089f08fc53a33f5fb7d55dab8197121558bfc8df1d8 >-SIZE (xpi/firefox-i18n-54.0.1/et.xpi) = 423855 >-SHA256 (xpi/firefox-i18n-54.0.1/eu.xpi) = 17fc4a655d72a25ed1acc41276fcdd22f5c3662c87b61bca48195345d45f5a3a >-SIZE (xpi/firefox-i18n-54.0.1/eu.xpi) = 438025 >-SHA256 (xpi/firefox-i18n-54.0.1/fa.xpi) = 325b3a51f4e5adb0fad02fe050d43d6bfd3b0f6f8bcec24eeccc93df4e2a61da >-SIZE (xpi/firefox-i18n-54.0.1/fa.xpi) = 490360 >-SHA256 (xpi/firefox-i18n-54.0.1/ff.xpi) = 7f3616ce409ef5a709321b230541236c0654848b943f7f08e538d8f9606290c5 >-SIZE (xpi/firefox-i18n-54.0.1/ff.xpi) = 441539 >-SHA256 (xpi/firefox-i18n-54.0.1/fi.xpi) = 1e124737d0d1a51f8edfa2452e39db0da28068fa0a8ba1de97d8a5a8fceac5d2 >-SIZE (xpi/firefox-i18n-54.0.1/fi.xpi) = 428998 >-SHA256 (xpi/firefox-i18n-54.0.1/fr.xpi) = a77a3ff17a868e64fa45f3543a43a7a35b7c2a8b63a83a9f3ab25ade74252c81 >-SIZE (xpi/firefox-i18n-54.0.1/fr.xpi) = 451596 >-SHA256 (xpi/firefox-i18n-54.0.1/fy-NL.xpi) = c604b47608caaef2101a1465efdbd70519ceef08d06a7527934a5b612a0af65c >-SIZE (xpi/firefox-i18n-54.0.1/fy-NL.xpi) = 444473 >-SHA256 (xpi/firefox-i18n-54.0.1/ga-IE.xpi) = 78e5c09e43ae6c8f0ce17e16c26a50e64a5ec6c71f942c3c3fd78c3087ea6dd5 >-SIZE (xpi/firefox-i18n-54.0.1/ga-IE.xpi) = 457484 >-SHA256 (xpi/firefox-i18n-54.0.1/gd.xpi) = 8ee562188ed70c78e997215c4c00d9a1f97360dcee5ea430cf6830405c69d40f >-SIZE (xpi/firefox-i18n-54.0.1/gd.xpi) = 446084 >-SHA256 (xpi/firefox-i18n-54.0.1/gl.xpi) = d1b440764c3a50c5e69369d459e2ec1be1bded24096d6c33fe09af12b74e0b47 >-SIZE (xpi/firefox-i18n-54.0.1/gl.xpi) = 443277 >-SHA256 (xpi/firefox-i18n-54.0.1/gn.xpi) = 1c43832720ff7355b5edc8d95e112395abc18c810840de5c2b768a1756b9a981 >-SIZE (xpi/firefox-i18n-54.0.1/gn.xpi) = 456068 >-SHA256 (xpi/firefox-i18n-54.0.1/gu-IN.xpi) = ddcda3eaf8c04d3eccde0a86e3a95642377d9881849599c8150a9751ee129a93 >-SIZE (xpi/firefox-i18n-54.0.1/gu-IN.xpi) = 487118 >-SHA256 (xpi/firefox-i18n-54.0.1/he.xpi) = 99b4ea64591e975b5207418812e8b178f1d139fec32d1042d86f69563ca182ae >-SIZE (xpi/firefox-i18n-54.0.1/he.xpi) = 454287 >-SHA256 (xpi/firefox-i18n-54.0.1/hi-IN.xpi) = 4031a32ad3f54f38aac8748839404e3ac9da1c2c46ecfe80c59ed31d5a2dd3ff >-SIZE (xpi/firefox-i18n-54.0.1/hi-IN.xpi) = 504632 >-SHA256 (xpi/firefox-i18n-54.0.1/hr.xpi) = 9e9c3133951e1af4c71aa3f0583102a78420aec89c6b5ba270b5695b554d5578 >-SIZE (xpi/firefox-i18n-54.0.1/hr.xpi) = 447780 >-SHA256 (xpi/firefox-i18n-54.0.1/hsb.xpi) = 3e1756b6ebd88994d14cd46bd93bb83041f2da4e33df22a21c27fcd158dd70a8 >-SIZE (xpi/firefox-i18n-54.0.1/hsb.xpi) = 456528 >-SHA256 (xpi/firefox-i18n-54.0.1/hu.xpi) = 5050f78682cf02e180005fa305751bf65dc12b76e1b0d15178d553a1ab8aae25 >-SIZE (xpi/firefox-i18n-54.0.1/hu.xpi) = 451123 >-SHA256 (xpi/firefox-i18n-54.0.1/hy-AM.xpi) = eef38f7bbaf2f6d3ec282931eeb0032951e44db39469cbf532ae8883c887217f >-SIZE (xpi/firefox-i18n-54.0.1/hy-AM.xpi) = 496020 >-SHA256 (xpi/firefox-i18n-54.0.1/id.xpi) = b5c619719efee4a36e2b5008f6ce2cb4251faa9308f59502909933e14836f36f >-SIZE (xpi/firefox-i18n-54.0.1/id.xpi) = 425284 >-SHA256 (xpi/firefox-i18n-54.0.1/is.xpi) = d4a28ac291cd5e6649800b1babd39ec3e7dd808da15b608b16ac15e4548cd256 >-SIZE (xpi/firefox-i18n-54.0.1/is.xpi) = 441708 >-SHA256 (xpi/firefox-i18n-54.0.1/it.xpi) = ccadf76ba443e1ee2ce80db7a895dae99b0a7670736b78eb21cd75788b97e278 >-SIZE (xpi/firefox-i18n-54.0.1/it.xpi) = 335501 >-SHA256 (xpi/firefox-i18n-54.0.1/ja.xpi) = 820b33c1c4675fe59f8bc73328da8718bddcec6fd3b7ceeb171ff1994322dcb3 >-SIZE (xpi/firefox-i18n-54.0.1/ja.xpi) = 486807 >-SHA256 (xpi/firefox-i18n-54.0.1/ka.xpi) = 2d596db623a85e87c45fa698e18ad9e66733f29534be8297ef4c52e7288db8a7 >-SIZE (xpi/firefox-i18n-54.0.1/ka.xpi) = 473231 >-SHA256 (xpi/firefox-i18n-54.0.1/kab.xpi) = a0611e7f5bebefb65a7de1b0b80b921ae01a5448c65c7218eabdd31ee292d7e6 >-SIZE (xpi/firefox-i18n-54.0.1/kab.xpi) = 443917 >-SHA256 (xpi/firefox-i18n-54.0.1/kk.xpi) = 9f2d4fb392830db601a650ec0a86860a99647150d65f2a3f58d3ca5f86c667bf >-SIZE (xpi/firefox-i18n-54.0.1/kk.xpi) = 493048 >-SHA256 (xpi/firefox-i18n-54.0.1/km.xpi) = 9ba58f2ad59b02905f39ab52e10c967555f4e9d4efde5832d4fed9d9acbdba06 >-SIZE (xpi/firefox-i18n-54.0.1/km.xpi) = 517240 >-SHA256 (xpi/firefox-i18n-54.0.1/kn.xpi) = e4ee165edd2accef0b75e7ac373be81bac94be182d9184477cee7ba72a9eefb0 >-SIZE (xpi/firefox-i18n-54.0.1/kn.xpi) = 516492 >-SHA256 (xpi/firefox-i18n-54.0.1/ko.xpi) = 34258d81a65b8e8d82992c359c2c864208f9cbe775b6d8503bff73639a4f38de >-SIZE (xpi/firefox-i18n-54.0.1/ko.xpi) = 460422 >-SHA256 (xpi/firefox-i18n-54.0.1/lij.xpi) = 5175475d43dad7033fc3d5ff29bf2ef4b6b7c7c78aa5772494e9e0b076a83b88 >-SIZE (xpi/firefox-i18n-54.0.1/lij.xpi) = 431675 >-SHA256 (xpi/firefox-i18n-54.0.1/lt.xpi) = 965dac8a258b3f1fa95408f7bb1e4778a4935b0c5259f4b4cadc261a2202b9b0 >-SIZE (xpi/firefox-i18n-54.0.1/lt.xpi) = 451195 >-SHA256 (xpi/firefox-i18n-54.0.1/lv.xpi) = 28fa09ca2dfa0e35fa939b1e404b38d247b921fbae83d12e84a75a3fe2d506d9 >-SIZE (xpi/firefox-i18n-54.0.1/lv.xpi) = 447753 >-SHA256 (xpi/firefox-i18n-54.0.1/mai.xpi) = 549b205729fda9ac5b518e4fd14e482cdf53330195cac9aa5abd7a5960e6bd94 >-SIZE (xpi/firefox-i18n-54.0.1/mai.xpi) = 497012 >-SHA256 (xpi/firefox-i18n-54.0.1/mk.xpi) = bb71fa5d9de5b7f22e9a61846a9712039307d82e410c283ec4c5646eb1722dfc >-SIZE (xpi/firefox-i18n-54.0.1/mk.xpi) = 493118 >-SHA256 (xpi/firefox-i18n-54.0.1/ml.xpi) = cf8fd4617b462f10014b56d058526afe5a21c5d27437e6e7bd2d3972d6a80f5f >-SIZE (xpi/firefox-i18n-54.0.1/ml.xpi) = 512264 >-SHA256 (xpi/firefox-i18n-54.0.1/mr.xpi) = 5721566ae1bb2aab7bcd10ab5d6461d4828c0665e778694bfc41f7dcda7ec46b >-SIZE (xpi/firefox-i18n-54.0.1/mr.xpi) = 501035 >-SHA256 (xpi/firefox-i18n-54.0.1/ms.xpi) = 1ae16e71b6fc08b3eb7bd3db4f356300e33a8eb4093587e7c553109774378541 >-SIZE (xpi/firefox-i18n-54.0.1/ms.xpi) = 435502 >-SHA256 (xpi/firefox-i18n-54.0.1/my.xpi) = f634472bbd81089fdcf675d4c05078b6a380b5b32f35efcfd2549ae322062ee5 >-SIZE (xpi/firefox-i18n-54.0.1/my.xpi) = 511255 >-SHA256 (xpi/firefox-i18n-54.0.1/nb-NO.xpi) = 64b19a30823f1ceca9790f91d663569da7e3559f56c91af6d52fe3cb12b42685 >-SIZE (xpi/firefox-i18n-54.0.1/nb-NO.xpi) = 433681 >-SHA256 (xpi/firefox-i18n-54.0.1/nl.xpi) = 3a42e931b4f4504e7459f5e976cbb6b23d2660d98751a2307fca4da5bf600579 >-SIZE (xpi/firefox-i18n-54.0.1/nl.xpi) = 431501 >-SHA256 (xpi/firefox-i18n-54.0.1/nn-NO.xpi) = e423caf98330b9655476c5c6181b5390caccdb73c6c1260788d7d854ce2135d3 >-SIZE (xpi/firefox-i18n-54.0.1/nn-NO.xpi) = 427871 >-SHA256 (xpi/firefox-i18n-54.0.1/or.xpi) = 21542c795149a5014c762ab5b0d80758228d520fbb29d5da3575bac319efcc20 >-SIZE (xpi/firefox-i18n-54.0.1/or.xpi) = 494082 >-SHA256 (xpi/firefox-i18n-54.0.1/pa-IN.xpi) = ff23be5a0183b9ab0f508e0454363ccb4d4ea787e234f47f506a59a53b823900 >-SIZE (xpi/firefox-i18n-54.0.1/pa-IN.xpi) = 473517 >-SHA256 (xpi/firefox-i18n-54.0.1/pl.xpi) = f5b54399bde33a78e26ed608a541641cbbd455d6f615ebadaf51a1d4a070c49b >-SIZE (xpi/firefox-i18n-54.0.1/pl.xpi) = 347205 >-SHA256 (xpi/firefox-i18n-54.0.1/pt-BR.xpi) = d2fec0d257a63098d1815c19cfda9485898671b05cbd04d405d7aea37bab0da6 >-SIZE (xpi/firefox-i18n-54.0.1/pt-BR.xpi) = 437173 >-SHA256 (xpi/firefox-i18n-54.0.1/pt-PT.xpi) = 81ab31f6e804bb4000e82d8e5c0f1a523a06017b5c70702080b3d37e69a0cddc >-SIZE (xpi/firefox-i18n-54.0.1/pt-PT.xpi) = 436178 >-SHA256 (xpi/firefox-i18n-54.0.1/rm.xpi) = 1f97345a398a8debe697c52c1c9470e8e372b27358f03b97c362936961075c42 >-SIZE (xpi/firefox-i18n-54.0.1/rm.xpi) = 433406 >-SHA256 (xpi/firefox-i18n-54.0.1/ro.xpi) = a240485bcc277196ff5d9dc83b0ca3682bdb28eea348de9675d076a0cda90252 >-SIZE (xpi/firefox-i18n-54.0.1/ro.xpi) = 449474 >-SHA256 (xpi/firefox-i18n-54.0.1/ru.xpi) = ed18d1fdb2e0f71bf08a272e80d8954e3cbb67e47656f3c37d94f3368f9d5013 >-SIZE (xpi/firefox-i18n-54.0.1/ru.xpi) = 487731 >-SHA256 (xpi/firefox-i18n-54.0.1/si.xpi) = 4dce9708ecdd61c82621d97eb88476a4c13212efa136e1cf2db0f7df7e0c4271 >-SIZE (xpi/firefox-i18n-54.0.1/si.xpi) = 491069 >-SHA256 (xpi/firefox-i18n-54.0.1/sk.xpi) = fa7d3fdf5448c1fde3d875b1897207e129b04e3338d8e20eb050b65d6db1a383 >-SIZE (xpi/firefox-i18n-54.0.1/sk.xpi) = 455015 >-SHA256 (xpi/firefox-i18n-54.0.1/sl.xpi) = 31795653987c7dc1a1968006b3c8068f6e1089b0f2311d9d53c08cb73d2d3617 >-SIZE (xpi/firefox-i18n-54.0.1/sl.xpi) = 433176 >-SHA256 (xpi/firefox-i18n-54.0.1/son.xpi) = f1ee7a8fe539071cd78361d40f1e547ee25d0a5e10a72e040ff56d9f20bc297a >-SIZE (xpi/firefox-i18n-54.0.1/son.xpi) = 435053 >-SHA256 (xpi/firefox-i18n-54.0.1/sq.xpi) = 4310b19b43b5cd4c841ded13a62c621cf3eea4391e516b08bb70a4ea3e008a9a >-SIZE (xpi/firefox-i18n-54.0.1/sq.xpi) = 448158 >-SHA256 (xpi/firefox-i18n-54.0.1/sr.xpi) = 22a1101556894ea99607cc9e447bf6e54705a906e476245e3f599fd7ffc24484 >-SIZE (xpi/firefox-i18n-54.0.1/sr.xpi) = 461355 >-SHA256 (xpi/firefox-i18n-54.0.1/sv-SE.xpi) = 6fbaa53965beac50102a130257e3703ceddc4621744941beace41d172ab8d559 >-SIZE (xpi/firefox-i18n-54.0.1/sv-SE.xpi) = 440479 >-SHA256 (xpi/firefox-i18n-54.0.1/ta.xpi) = 192fe9dcf242ff01da8e51c216f04d32fe4a91170dbce22e5e40ecfa7f5e0759 >-SIZE (xpi/firefox-i18n-54.0.1/ta.xpi) = 493957 >-SHA256 (xpi/firefox-i18n-54.0.1/te.xpi) = c4e2bef212d4fbc5c250808f92318165db9f3bb0936be28b2517f43f213a3010 >-SIZE (xpi/firefox-i18n-54.0.1/te.xpi) = 513339 >-SHA256 (xpi/firefox-i18n-54.0.1/th.xpi) = be7902e644099d01405198a7f3a7c651494012c26e9729aa63f103a58adb28ba >-SIZE (xpi/firefox-i18n-54.0.1/th.xpi) = 487219 >-SHA256 (xpi/firefox-i18n-54.0.1/tr.xpi) = 4460fb3b0c3419ccc67de5b81709337e3990bd0f3753e66cbed467b468e58aff >-SIZE (xpi/firefox-i18n-54.0.1/tr.xpi) = 440413 >-SHA256 (xpi/firefox-i18n-54.0.1/uk.xpi) = 9009a1ff5f9e53b2041dd58a47b377d73e0e9dc59d257b49c2ce0f4fe9e15471 >-SIZE (xpi/firefox-i18n-54.0.1/uk.xpi) = 490758 >-SHA256 (xpi/firefox-i18n-54.0.1/ur.xpi) = efa36df7c6ccda5551d3be4a0beaff1069310607afb99040b7d586a9abd422e4 >-SIZE (xpi/firefox-i18n-54.0.1/ur.xpi) = 496584 >-SHA256 (xpi/firefox-i18n-54.0.1/uz.xpi) = 90b31da2151bbf9c89766074afec716c4cd05bfbae3d30bac1ccf14a0eb1db62 >-SIZE (xpi/firefox-i18n-54.0.1/uz.xpi) = 448113 >-SHA256 (xpi/firefox-i18n-54.0.1/vi.xpi) = b971ef91795039963a35e59ab7d653d7f0568760c3a0e2c95dccaf5052fd3750 >-SIZE (xpi/firefox-i18n-54.0.1/vi.xpi) = 449655 >-SHA256 (xpi/firefox-i18n-54.0.1/xh.xpi) = dbb7ca463660d3bf1fc2c079551b6380dc8d238be1a34cd2426cae4b74382bb9 >-SIZE (xpi/firefox-i18n-54.0.1/xh.xpi) = 440803 >-SHA256 (xpi/firefox-i18n-54.0.1/zh-CN.xpi) = 0acf841d128b347c85ceb8fa34dd2dcdb3177b1c4cb9fa2a97666ba0912dd16b >-SIZE (xpi/firefox-i18n-54.0.1/zh-CN.xpi) = 458333 >-SHA256 (xpi/firefox-i18n-54.0.1/zh-TW.xpi) = bebd2c45d83ba97ebafc3fd463385d3a75d3818bae33bf71e3430594f5f5abbc >-SIZE (xpi/firefox-i18n-54.0.1/zh-TW.xpi) = 469166 >+TIMESTAMP = 1499712007 >+SHA256 (xpi/firefox-i18n-55.0b8/ach.xpi) = d9e3383b8e2f45491f3b429c51810f7b89961d1c73d8c7f5522e87e273b28b36 >+SIZE (xpi/firefox-i18n-55.0b8/ach.xpi) = 447506 >+SHA256 (xpi/firefox-i18n-55.0b8/af.xpi) = 9cee3e9c6fe77c2449018f1c2ff210b9308ad6b02d4acf5a4afc15869bd70070 >+SIZE (xpi/firefox-i18n-55.0b8/af.xpi) = 448927 >+SHA256 (xpi/firefox-i18n-55.0b8/an.xpi) = 743aa0d3b4900b0d3fbf9424811079bba083113e7fa5c3069da8d929d1112248 >+SIZE (xpi/firefox-i18n-55.0b8/an.xpi) = 468639 >+SHA256 (xpi/firefox-i18n-55.0b8/ar.xpi) = 9227408f03b1bf73aacf225a23c48cdc94edeaf0e074fd999853c57f4f8d70bd >+SIZE (xpi/firefox-i18n-55.0b8/ar.xpi) = 492762 >+SHA256 (xpi/firefox-i18n-55.0b8/as.xpi) = 9ae1c0a2681a42412b1939e3ae78bc49fd00c45be07ae94fce1fd5e5c6fbf8c4 >+SIZE (xpi/firefox-i18n-55.0b8/as.xpi) = 501510 >+SHA256 (xpi/firefox-i18n-55.0b8/ast.xpi) = 7b81e42d5cd8924aa6633da2d6c1090a2975794907dc23254d7a94364e2312b1 >+SIZE (xpi/firefox-i18n-55.0b8/ast.xpi) = 460843 >+SHA256 (xpi/firefox-i18n-55.0b8/az.xpi) = 196bfd443e2ed7b16d507abce0a6b3fb2969d1ce0c0c479b1a51332af2b36011 >+SIZE (xpi/firefox-i18n-55.0b8/az.xpi) = 475369 >+SHA256 (xpi/firefox-i18n-55.0b8/be.xpi) = 3bf65a2e19618cd53085a9530619d10f8df44cd94ba87ca230f97aa3c8fd9ccd >+SIZE (xpi/firefox-i18n-55.0b8/be.xpi) = 522577 >+SHA256 (xpi/firefox-i18n-55.0b8/bg.xpi) = f0c33195d12d746b8c49d82a3fae540ea8ae65af4994662d80f9bb13ce5b8d39 >+SIZE (xpi/firefox-i18n-55.0b8/bg.xpi) = 520013 >+SHA256 (xpi/firefox-i18n-55.0b8/bn-BD.xpi) = c30f7104d0e015eb9741d11dc280bbc176526d03e657f0f290362a3075a52416 >+SIZE (xpi/firefox-i18n-55.0b8/bn-BD.xpi) = 535118 >+SHA256 (xpi/firefox-i18n-55.0b8/bn-IN.xpi) = 9da03fc9aef3722c6be39c16f486a7f8d65bdc5e64df4839689659c3305ce372 >+SIZE (xpi/firefox-i18n-55.0b8/bn-IN.xpi) = 526356 >+SHA256 (xpi/firefox-i18n-55.0b8/br.xpi) = 6a9477a9f87743ace82bd3228c0ba151ac5f89dabd5b061f293f7ac8891729c8 >+SIZE (xpi/firefox-i18n-55.0b8/br.xpi) = 456857 >+SHA256 (xpi/firefox-i18n-55.0b8/bs.xpi) = c60d2e21621be1b1cf671100b16746f3f18216055c2c823ac9db76684b511a1f >+SIZE (xpi/firefox-i18n-55.0b8/bs.xpi) = 465027 >+SHA256 (xpi/firefox-i18n-55.0b8/ca.xpi) = 7a66adfe912d8a424bc58c67d34b085ebfa75a6610bbefe1ace4a72692d45911 >+SIZE (xpi/firefox-i18n-55.0b8/ca.xpi) = 473001 >+SHA256 (xpi/firefox-i18n-55.0b8/cak.xpi) = e080ed820ac5d124c1d6f662ab0428c475e6829d5ae87a21f3e2228992ab146c >+SIZE (xpi/firefox-i18n-55.0b8/cak.xpi) = 481772 >+SHA256 (xpi/firefox-i18n-55.0b8/cs.xpi) = 1c4645945579f5fb689dd10919abac5931e32833c62ea3cde998a8cde6bd876a >+SIZE (xpi/firefox-i18n-55.0b8/cs.xpi) = 476812 >+SHA256 (xpi/firefox-i18n-55.0b8/cy.xpi) = 5cb9a6c6cd21ef78a8522742fa4cee9ca408514e1d0ed703bf138ed4a85f644b >+SIZE (xpi/firefox-i18n-55.0b8/cy.xpi) = 458732 >+SHA256 (xpi/firefox-i18n-55.0b8/da.xpi) = f59ce3f901112b1bac2c4e8c69568b50e2a7a46dfbc13d4c73606bad009defb4 >+SIZE (xpi/firefox-i18n-55.0b8/da.xpi) = 452520 >+SHA256 (xpi/firefox-i18n-55.0b8/de.xpi) = 794306d7daf232c0a3fff16c087aebd43a8371f821a9173875a7d5e9085757d6 >+SIZE (xpi/firefox-i18n-55.0b8/de.xpi) = 465458 >+SHA256 (xpi/firefox-i18n-55.0b8/dsb.xpi) = 3e024740c3fbac5e926333f1de69fb80d6094c229ea244fef69bac156c4bdcf7 >+SIZE (xpi/firefox-i18n-55.0b8/dsb.xpi) = 482082 >+SHA256 (xpi/firefox-i18n-55.0b8/el.xpi) = 70a800178d02af136d01078671f881ff0ac894e70d2e41ca79b614a75c56452e >+SIZE (xpi/firefox-i18n-55.0b8/el.xpi) = 539781 >+SHA256 (xpi/firefox-i18n-55.0b8/en-GB.xpi) = 9c6cd3d0b09169250795ae6a40efbe65ec703be37e0a8ffd67550d82721688bf >+SIZE (xpi/firefox-i18n-55.0b8/en-GB.xpi) = 439573 >+SHA256 (xpi/firefox-i18n-55.0b8/en-US.xpi) = 5caf8ec0abed31549af6d2033d47af428898c3d45d31bc7d1d7968f3a8a2c150 >+SIZE (xpi/firefox-i18n-55.0b8/en-US.xpi) = 439815 >+SHA256 (xpi/firefox-i18n-55.0b8/en-ZA.xpi) = 3712d5010c2294bed961182777aa9b710381ccd18a8689d9c9ca47070469fc26 >+SIZE (xpi/firefox-i18n-55.0b8/en-ZA.xpi) = 438623 >+SHA256 (xpi/firefox-i18n-55.0b8/eo.xpi) = f37150f3d4a32f6dd295d956bd9b00f49d7ef9e50d7dad5d2bf2cf14345a1177 >+SIZE (xpi/firefox-i18n-55.0b8/eo.xpi) = 459159 >+SHA256 (xpi/firefox-i18n-55.0b8/es-AR.xpi) = 61357d88d81cb738cffbb0a2b0661ab098366c3d195706b98ea96dc3427ddda2 >+SIZE (xpi/firefox-i18n-55.0b8/es-AR.xpi) = 467584 >+SHA256 (xpi/firefox-i18n-55.0b8/es-CL.xpi) = 4886dadb81e24257b418f2439b54959b139dac4296549fbbeb0ea7828b12e04d >+SIZE (xpi/firefox-i18n-55.0b8/es-CL.xpi) = 471602 >+SHA256 (xpi/firefox-i18n-55.0b8/es-ES.xpi) = ea9719950f42b7fbc62d24158388d12f4eafa335ac1d4f67706d101123eb72bd >+SIZE (xpi/firefox-i18n-55.0b8/es-ES.xpi) = 359825 >+SHA256 (xpi/firefox-i18n-55.0b8/es-MX.xpi) = 879dd25a93c0d4eaa52add7337cb1a6805da3b626b5500137f2824e03d7bf7fd >+SIZE (xpi/firefox-i18n-55.0b8/es-MX.xpi) = 474246 >+SHA256 (xpi/firefox-i18n-55.0b8/et.xpi) = 7e4bf4cee9dc632b6de4f390c93c16e5991c75077cec343a7601b109ba8d3727 >+SIZE (xpi/firefox-i18n-55.0b8/et.xpi) = 454473 >+SHA256 (xpi/firefox-i18n-55.0b8/eu.xpi) = 1c22b8f512572f01617cc674024d23820f2e8f1751001ab3073b1bd20fcc7641 >+SIZE (xpi/firefox-i18n-55.0b8/eu.xpi) = 460417 >+SHA256 (xpi/firefox-i18n-55.0b8/fa.xpi) = ef7ec2f65f39197e94655a45e5131046a4fe261e04f2dcaadf4ea79359fdfa6a >+SIZE (xpi/firefox-i18n-55.0b8/fa.xpi) = 511562 >+SHA256 (xpi/firefox-i18n-55.0b8/ff.xpi) = ee965329780e7360da73575f87029fd15dd25f41db7de3a4898c991e4bab6c30 >+SIZE (xpi/firefox-i18n-55.0b8/ff.xpi) = 455297 >+SHA256 (xpi/firefox-i18n-55.0b8/fi.xpi) = 2b841b56abda7a38fe7e6087844796b226cb43e0619bae0cd35afae63d054a10 >+SIZE (xpi/firefox-i18n-55.0b8/fi.xpi) = 453948 >+SHA256 (xpi/firefox-i18n-55.0b8/fr.xpi) = 1f5fb2631956d2ac91b2b14782d833a45e3f50ccb015b5aa93780aeced47509c >+SIZE (xpi/firefox-i18n-55.0b8/fr.xpi) = 476671 >+SHA256 (xpi/firefox-i18n-55.0b8/fy-NL.xpi) = 3a866da87ca7d1e419afb94863eed6209897b748f6844d57ed707f6afbfb526a >+SIZE (xpi/firefox-i18n-55.0b8/fy-NL.xpi) = 469969 >+SHA256 (xpi/firefox-i18n-55.0b8/ga-IE.xpi) = a863a5b57745a229523ab0deec6eb0af318196c6bb58aae18f67b050a006758d >+SIZE (xpi/firefox-i18n-55.0b8/ga-IE.xpi) = 481442 >+SHA256 (xpi/firefox-i18n-55.0b8/gd.xpi) = ec27bdb0129d14ea21249cb80f46e6bf639cd6a7b0ebd09b4c20e9064a2ebced >+SIZE (xpi/firefox-i18n-55.0b8/gd.xpi) = 469057 >+SHA256 (xpi/firefox-i18n-55.0b8/gl.xpi) = 8597d98d51774bcd81c8f22b4edfbf9fee8e76e18c0695892a7f858fa2815f45 >+SIZE (xpi/firefox-i18n-55.0b8/gl.xpi) = 459113 >+SHA256 (xpi/firefox-i18n-55.0b8/gn.xpi) = d23208ec658adfbae1694050cf9b2f134a5d710035b5d5cf858ea3fe918cf595 >+SIZE (xpi/firefox-i18n-55.0b8/gn.xpi) = 476202 >+SHA256 (xpi/firefox-i18n-55.0b8/gu-IN.xpi) = edc5e17fd0853fe3765b5e1e035fd7d9b09c711faf19f7feffd7ad5d5364b6c4 >+SIZE (xpi/firefox-i18n-55.0b8/gu-IN.xpi) = 498983 >+SHA256 (xpi/firefox-i18n-55.0b8/he.xpi) = b729f53c7ed86fdc65ad700d70eee0da8674558b13ce809c43b319c05f385160 >+SIZE (xpi/firefox-i18n-55.0b8/he.xpi) = 479884 >+SHA256 (xpi/firefox-i18n-55.0b8/hi-IN.xpi) = e0f60f1adf0c649e1f7703efd0bbf50c292fe4a1e50b5bb7f3cc0f7a1564be35 >+SIZE (xpi/firefox-i18n-55.0b8/hi-IN.xpi) = 530573 >+SHA256 (xpi/firefox-i18n-55.0b8/hr.xpi) = cf723a591824833db35d3c7982589d56d54b3948f52080d9b3e508694d1cafba >+SIZE (xpi/firefox-i18n-55.0b8/hr.xpi) = 467994 >+SHA256 (xpi/firefox-i18n-55.0b8/hsb.xpi) = c3fe484e5c44cbe3e984a07f5128276a6d5a09eae6afb15a234ae8957327d0c2 >+SIZE (xpi/firefox-i18n-55.0b8/hsb.xpi) = 479801 >+SHA256 (xpi/firefox-i18n-55.0b8/hu.xpi) = 9ed57541dc657311b58b13de8bc76d245d54f895469d9ca5928c8d3876579c3e >+SIZE (xpi/firefox-i18n-55.0b8/hu.xpi) = 481406 >+SHA256 (xpi/firefox-i18n-55.0b8/hy-AM.xpi) = ec2fab1b89512d6d202a6b4e0dd03a4533ed65a275aac04d8e02e2c49130df29 >+SIZE (xpi/firefox-i18n-55.0b8/hy-AM.xpi) = 520884 >+SHA256 (xpi/firefox-i18n-55.0b8/id.xpi) = 024a10512561c126a761295e1384b570318b683594225bc5d04d9ac77af10fd4 >+SIZE (xpi/firefox-i18n-55.0b8/id.xpi) = 450293 >+SHA256 (xpi/firefox-i18n-55.0b8/is.xpi) = b0114504fbe48b2221538060946c8aa397b479e810c7cf6ec8ebd61bb3fea83a >+SIZE (xpi/firefox-i18n-55.0b8/is.xpi) = 464372 >+SHA256 (xpi/firefox-i18n-55.0b8/it.xpi) = e40ffbf29cebe5e06ca149773a992e3c79dbf3eb4a7735218964a03a2487a3cc >+SIZE (xpi/firefox-i18n-55.0b8/it.xpi) = 352943 >+SHA256 (xpi/firefox-i18n-55.0b8/ja.xpi) = 84fe2aec484ba82c286691a1725ede8f7757acc097f67ac396fae12a8ad35d75 >+SIZE (xpi/firefox-i18n-55.0b8/ja.xpi) = 522437 >+SHA256 (xpi/firefox-i18n-55.0b8/ka.xpi) = 1128cd506ea8271e86ac3a005b8364dbb0b8d8e9280aa89ed1023c4455c0eb3b >+SIZE (xpi/firefox-i18n-55.0b8/ka.xpi) = 493539 >+SHA256 (xpi/firefox-i18n-55.0b8/kab.xpi) = 28154778e4b8c091d6c3c70c7400b9241259c67a612c4b82e5eb5381c299dd83 >+SIZE (xpi/firefox-i18n-55.0b8/kab.xpi) = 470045 >+SHA256 (xpi/firefox-i18n-55.0b8/kk.xpi) = e5dc46a33527849630b2fd470d8fececc1d5821f9f642417e632eae479d910a0 >+SIZE (xpi/firefox-i18n-55.0b8/kk.xpi) = 526710 >+SHA256 (xpi/firefox-i18n-55.0b8/km.xpi) = 6c2c5cb9a92900b88b7dccc8cdfa02a6e8122cf652153887a335d7ef4d3cf6de >+SIZE (xpi/firefox-i18n-55.0b8/km.xpi) = 540650 >+SHA256 (xpi/firefox-i18n-55.0b8/kn.xpi) = 3af51007d753bb58d202a48e50845e240abe20634bb75c658f503adad5ebe28b >+SIZE (xpi/firefox-i18n-55.0b8/kn.xpi) = 538863 >+SHA256 (xpi/firefox-i18n-55.0b8/ko.xpi) = e7ef5a6d1d1fea439c012e0ea39179357a20c09a07de26c7eb2ce0c13594bc7b >+SIZE (xpi/firefox-i18n-55.0b8/ko.xpi) = 494549 >+SHA256 (xpi/firefox-i18n-55.0b8/lij.xpi) = 4e93b68af7f1540fdf0eebce9990ec7f57c7ba2e1a2fb6777727aa9793c203c2 >+SIZE (xpi/firefox-i18n-55.0b8/lij.xpi) = 458701 >+SHA256 (xpi/firefox-i18n-55.0b8/lt.xpi) = 19dcf321eeb4e69197b5f1d23d2e30a2ee12aae74a737a1a32cfd2a5b72c25dd >+SIZE (xpi/firefox-i18n-55.0b8/lt.xpi) = 481083 >+SHA256 (xpi/firefox-i18n-55.0b8/lv.xpi) = 671a58601ccdf455e5515364694f024a33b12d307c9fd06cf7430c1a2c2f2f19 >+SIZE (xpi/firefox-i18n-55.0b8/lv.xpi) = 473738 >+SHA256 (xpi/firefox-i18n-55.0b8/mai.xpi) = 06a22bd790edb768363b2f446c626b0674f4067f9bc8b0ceb973a832b104a06b >+SIZE (xpi/firefox-i18n-55.0b8/mai.xpi) = 517897 >+SHA256 (xpi/firefox-i18n-55.0b8/mk.xpi) = c46db01460f3bde0b2d2421dd8640a10f70548107172e6ee1b981ed95fa53a04 >+SIZE (xpi/firefox-i18n-55.0b8/mk.xpi) = 500209 >+SHA256 (xpi/firefox-i18n-55.0b8/ml.xpi) = 98c3bf1f1c851fd9a46fc2bef602f6de4b75197f21b79e5da23cab2c436fdc70 >+SIZE (xpi/firefox-i18n-55.0b8/ml.xpi) = 540984 >+SHA256 (xpi/firefox-i18n-55.0b8/mr.xpi) = c065099916792c3d463f90e3bbe2d3dc761d80267e624b36ca1bf05f7823a8d6 >+SIZE (xpi/firefox-i18n-55.0b8/mr.xpi) = 528251 >+SHA256 (xpi/firefox-i18n-55.0b8/ms.xpi) = c1d9de2123b82f4420daded17f164f56eaaff9dd739bd66f88cd3b6e60f49174 >+SIZE (xpi/firefox-i18n-55.0b8/ms.xpi) = 459507 >+SHA256 (xpi/firefox-i18n-55.0b8/my.xpi) = 04e0ff8a32e4a62006aa924251d67aecb7296fd7c016a36fdcc295cd9c0d5b55 >+SIZE (xpi/firefox-i18n-55.0b8/my.xpi) = 528101 >+SHA256 (xpi/firefox-i18n-55.0b8/nb-NO.xpi) = 9e8841bf9461349a758083c92a29af905cb4cc9b6b3b96ba43ad2e36808fac78 >+SIZE (xpi/firefox-i18n-55.0b8/nb-NO.xpi) = 457649 >+SHA256 (xpi/firefox-i18n-55.0b8/nl.xpi) = 2584e4557f075f8f26ae2eaea9ed0de8e63f6b942467501f32b875d3123ca06e >+SIZE (xpi/firefox-i18n-55.0b8/nl.xpi) = 461513 >+SHA256 (xpi/firefox-i18n-55.0b8/nn-NO.xpi) = fe1649ccd3f90035fba24b4dea0adda0246dcd984bcb16868f946a579f05d554 >+SIZE (xpi/firefox-i18n-55.0b8/nn-NO.xpi) = 458459 >+SHA256 (xpi/firefox-i18n-55.0b8/or.xpi) = 384ce93c67a564813688ac981040c3deaae9cd5f13729c4d27f86445287d144d >+SIZE (xpi/firefox-i18n-55.0b8/or.xpi) = 511357 >+SHA256 (xpi/firefox-i18n-55.0b8/pa-IN.xpi) = 74f89d6c7868b55503cd8e3ec0dac561ac86a08676f650d80a486e58709c38f8 >+SIZE (xpi/firefox-i18n-55.0b8/pa-IN.xpi) = 498455 >+SHA256 (xpi/firefox-i18n-55.0b8/pl.xpi) = 93a388be9de45e6fa2ccb42147eb0bd42021f96fc9c7b2b73b828441f02237fa >+SIZE (xpi/firefox-i18n-55.0b8/pl.xpi) = 372764 >+SHA256 (xpi/firefox-i18n-55.0b8/pt-BR.xpi) = 9566eca306c31c5e96ceb88e485636f3c8af94b103f9c710fe6bcf1f279dbb4c >+SIZE (xpi/firefox-i18n-55.0b8/pt-BR.xpi) = 462719 >+SHA256 (xpi/firefox-i18n-55.0b8/pt-PT.xpi) = bebef12cf71b7de15493b926e94209e1936ea4287684c6c08a1cf5c5a9c55a2b >+SIZE (xpi/firefox-i18n-55.0b8/pt-PT.xpi) = 465262 >+SHA256 (xpi/firefox-i18n-55.0b8/rm.xpi) = 5011a71d8f5d42412a94427bdd07094c280c4143c0c86cd345f48fbd737f41c0 >+SIZE (xpi/firefox-i18n-55.0b8/rm.xpi) = 458267 >+SHA256 (xpi/firefox-i18n-55.0b8/ro.xpi) = 90dfdf557b113788141a65fc0f6ae72d8cad178835c9b6a2a38adca771fd3a0b >+SIZE (xpi/firefox-i18n-55.0b8/ro.xpi) = 463019 >+SHA256 (xpi/firefox-i18n-55.0b8/ru.xpi) = a98adcef40783b35a4859f48552df0de226d4f7e3bdec7991ee855f865757879 >+SIZE (xpi/firefox-i18n-55.0b8/ru.xpi) = 530903 >+SHA256 (xpi/firefox-i18n-55.0b8/si.xpi) = 44f834eb59d09f1c6dec2afa092a3540023273eb941eb19d2eb0b34a1224c2ec >+SIZE (xpi/firefox-i18n-55.0b8/si.xpi) = 508354 >+SHA256 (xpi/firefox-i18n-55.0b8/sk.xpi) = 97266fbf956f98c8e7e9d6d66252c2bf442655feca38bce6fc864f4ebd92d79b >+SIZE (xpi/firefox-i18n-55.0b8/sk.xpi) = 487570 >+SHA256 (xpi/firefox-i18n-55.0b8/sl.xpi) = be3a710c017af33f76efdbb2e1389131fc0a938dd76ee71220a9883bca74464c >+SIZE (xpi/firefox-i18n-55.0b8/sl.xpi) = 465769 >+SHA256 (xpi/firefox-i18n-55.0b8/son.xpi) = 801217151d6c1fb14875435be1404643a9ebd9aba86066792d9421b94e33284c >+SIZE (xpi/firefox-i18n-55.0b8/son.xpi) = 456961 >+SHA256 (xpi/firefox-i18n-55.0b8/sq.xpi) = 8b3364c04114fe2726856fdb25e0a2e6e11b9f7d78154e33221b9622794ff5c5 >+SIZE (xpi/firefox-i18n-55.0b8/sq.xpi) = 470634 >+SHA256 (xpi/firefox-i18n-55.0b8/sr.xpi) = 4aa34cf8cbf8afad6c431372be3fb45139a064ebc9a284a80154b750ac0769ba >+SIZE (xpi/firefox-i18n-55.0b8/sr.xpi) = 494881 >+SHA256 (xpi/firefox-i18n-55.0b8/sv-SE.xpi) = 2cb7ddd298a99cad6486a6147c93ef511af24ecce5b2e6670b9b427d01c2e32e >+SIZE (xpi/firefox-i18n-55.0b8/sv-SE.xpi) = 466011 >+SHA256 (xpi/firefox-i18n-55.0b8/ta.xpi) = cf6fe253e8fb321b018818163d07b77ecf1e8cb9f881e3ad7dd652f872bf5d70 >+SIZE (xpi/firefox-i18n-55.0b8/ta.xpi) = 519965 >+SHA256 (xpi/firefox-i18n-55.0b8/te.xpi) = 35da6b32f10eb6d42f56aad639c1fe7ddd86c4f4da38dcb5cb48b44c5eb9fc18 >+SIZE (xpi/firefox-i18n-55.0b8/te.xpi) = 540338 >+SHA256 (xpi/firefox-i18n-55.0b8/th.xpi) = f566fa675c3b1198bcf02bb476081dc0dad93741511ca714112790f3596ff697 >+SIZE (xpi/firefox-i18n-55.0b8/th.xpi) = 511879 >+SHA256 (xpi/firefox-i18n-55.0b8/tr.xpi) = a9a0321da699b8e096194c9865fa92ddc83e1dc2d0b9b2c692ff6e285c587b46 >+SIZE (xpi/firefox-i18n-55.0b8/tr.xpi) = 472163 >+SHA256 (xpi/firefox-i18n-55.0b8/uk.xpi) = 2ca922162673551507ef938dc6e9c5f6c8026c702207e76c75de8839f9e03c4d >+SIZE (xpi/firefox-i18n-55.0b8/uk.xpi) = 526439 >+SHA256 (xpi/firefox-i18n-55.0b8/ur.xpi) = 68512194641db6bf7ceb34a387ada41a791a89166edd34502bd28e8d27b97985 >+SIZE (xpi/firefox-i18n-55.0b8/ur.xpi) = 520737 >+SHA256 (xpi/firefox-i18n-55.0b8/uz.xpi) = ac1e4d70587334dadb1dc5bd876c0cd0b0ae9db313e70981fe808be0f91d05ba >+SIZE (xpi/firefox-i18n-55.0b8/uz.xpi) = 467673 >+SHA256 (xpi/firefox-i18n-55.0b8/vi.xpi) = 7fd4dc72ab78a13c43cd5c4a5172c7b7529dc2927872e2f77f1ce68d7393ad46 >+SIZE (xpi/firefox-i18n-55.0b8/vi.xpi) = 474773 >+SHA256 (xpi/firefox-i18n-55.0b8/xh.xpi) = 990cfea918c879b0dfb465fcc7d74ed1094e9dc0b1eba9e1a8fe9ba58d65d820 >+SIZE (xpi/firefox-i18n-55.0b8/xh.xpi) = 470722 >+SHA256 (xpi/firefox-i18n-55.0b8/zh-CN.xpi) = a58a883827be06aeb5bb73b909c75a163e3e40fc30e3fa8c5f993d5fdedeaf7b >+SIZE (xpi/firefox-i18n-55.0b8/zh-CN.xpi) = 490381 >+SHA256 (xpi/firefox-i18n-55.0b8/zh-TW.xpi) = 102be0c4f6cedbf8ce003d91c64df82d2d53abe9af47a9ffc505c7285f7731e8 >+SIZE (xpi/firefox-i18n-55.0b8/zh-TW.xpi) = 489349 >diff --git a/www/firefox/Makefile b/www/firefox/Makefile >index 5bca600e7a7e..e51409b11731 100644 >--- a/www/firefox/Makefile >+++ b/www/firefox/Makefile >@@ -2,9 +2,8 @@ > # $FreeBSD$ > > PORTNAME= firefox >-DISTVERSION= 54.0.1 >+DISTVERSION= 55.0b8 > DISTVERSIONSUFFIX=.source >-PORTREVISION= 1 > PORTEPOCH= 1 > CATEGORIES= www ipv6 > MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ >@@ -13,15 +12,15 @@ MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ > MAINTAINER= gecko@FreeBSD.org > COMMENT= Web browser based on the browser portion of Mozilla > >-BUILD_DEPENDS= nspr>=4.14:devel/nspr \ >- nss>=3.30.2:security/nss \ >+BUILD_DEPENDS= nspr>=4.15:devel/nspr \ >+ nss>=3.31:security/nss \ > libevent>=2.0.22:devel/libevent \ >- harfbuzz>=1.4.3:print/harfbuzz \ >+ harfbuzz>=1.4.6:print/harfbuzz \ > graphite2>=1.3.10:graphics/graphite2 \ > png>=1.6.28:graphics/png \ > libvorbis>=1.3.5,3:audio/libvorbis \ > libvpx>=1.5.0:multimedia/libvpx \ >- sqlite3>=3.17.0:databases/sqlite3 \ >+ sqlite3>=3.19.2:databases/sqlite3 \ > ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3 \ > v4l_compat>0:multimedia/v4l_compat \ > autoconf-2.13:devel/autoconf213 \ >@@ -47,6 +46,7 @@ MOZ_OPTIONS= --enable-application=browser \ > > OPTIONS_DEFINE= RUST > OPTIONS_DEFAULT= BUNDLED_CAIRO >+OPTIONS_EXCLUDE= GNOMEUI > # XXX lang/rust and devel/cargo currently build only on these platforms > OPTIONS_DEFAULT_aarch64=RUST > OPTIONS_DEFAULT_amd64= RUST >diff --git a/www/firefox/distinfo b/www/firefox/distinfo >index 59fb3cb34dac..92855f00e209 100644 >--- a/www/firefox/distinfo >+++ b/www/firefox/distinfo >@@ -1,3 +1,3 @@ >-TIMESTAMP = 1498670356 >-SHA256 (firefox-54.0.1.source.tar.xz) = 07843e68f2f64842bb230b7fe821e45c82944e64dc3f2a3a90d3ea9f1efa7f77 >-SIZE (firefox-54.0.1.source.tar.xz) = 229935420 >+TIMESTAMP = 1499712007 >+SHA256 (firefox-55.0b8.source.tar.xz) = 8da48add999579728e9a91f82185e5c556751320c4127272f625835d56b23236 >+SIZE (firefox-55.0b8.source.tar.xz) = 236326924 >diff --git a/www/firefox/files/patch-bug1021761 b/www/firefox/files/patch-bug1021761 >index e59fce618f00..f0764a8c4b22 100644 >--- a/www/firefox/files/patch-bug1021761 >+++ b/www/firefox/files/patch-bug1021761 >@@ -122,7 +122,18 @@ index 57bcb4c13652..68be024f4a68 100644 > > static int > validate_stream_params(cubeb_stream_params * input_stream_params, >-@@ -138,6 +141,9 @@ cubeb_init(cubeb ** context, char const * context_name) >+@@ -155,6 +158,10 @@ cubeb_init(cubeb ** context, char const * context_name, char const * backend_nam >+ #if defined(USE_KAI) >+ init_oneshot = kai_init; >+ #endif >++ } else if (!strcmp(backend_name, "oss")) { >++#if defined(USE_OSS) >++ init_oneshot = oss_init; >++#endif >+ } else { >+ /* Already set */ >+ } >+@@ -196,6 +203,9 @@ cubeb_init(cubeb ** context, char const * context_name, char const * backend_nam > #if defined(USE_KAI) > kai_init, > #endif >@@ -246,7 +257,7 @@ index 05ad27fef53b..3ea78e994f59 100644 > + char * buftail = stm->buffer + WRAP(snd_pcm_frames_to_bytes)(stm->pcm, stm->bufframes); > > /* Correct read size to the other stream available frames */ >- if (stm->other_stream && got > stm->other_stream->bufframes) { >+ if (stm->other_stream && got > (snd_pcm_sframes_t) stm->other_stream->bufframes) { > @@ -372,8 +421,8 @@ alsa_process_stream(cubeb_stream * stm) > long drain_frames = avail - stm->bufframes; > double drain_time = (double) drain_frames / stm->params.rate; >@@ -579,7 +590,7 @@ index 05ad27fef53b..3ea78e994f59 100644 > + r = WRAP(snd_pcm_poll_descriptors)(stm->pcm, stm->saved_fds, stm->nfds); > assert((nfds_t) r == stm->nfds); > >- r = pthread_cond_init(&stm->cond, NULL); >+ if (alsa_register_stream(ctx, stm) != 0) { > @@ -1048,7 +1156,7 @@ alsa_stream_destroy(cubeb_stream * stm) > pthread_mutex_lock(&stm->mutex); > if (stm->pcm) { >@@ -1182,29 +1193,14 @@ diff --git media/libcubeb/update.sh media/libcubeb/update.sh > index b139b8f497fd..d1f8a223c6d8 100755 > --- media/libcubeb/update.sh > +++ media/libcubeb/update.sh >-@@ -17,6 +17,7 @@ cp $1/src/cubeb_audiounit.cpp src >- cp $1/src/cubeb_osx_run_loop.h src >- cp $1/src/cubeb_jack.cpp src >+@@ -20,6 +20,7 @@ cp $1/src/cubeb_log.h src >+ cp $1/src/cubeb_mixer.cpp src >+ cp $1/src/cubeb_mixer.h src > cp $1/src/cubeb_opensl.c src > +cp $1/src/cubeb_oss.c src >- cp $1/src/cubeb_array_queue.h src >+ cp $1/src/cubeb_osx_run_loop.h src > cp $1/src/cubeb_panner.cpp src > cp $1/src/cubeb_panner.h src >-diff --git media/webrtc/signaling/test/common.build media/webrtc/signaling/test/common.build >-index 3e5450f5d63a..dd45427f655a 100644 >---- media/webrtc/signaling/test/common.build >-+++ media/webrtc/signaling/test/common.build >-@@ -99,8 +99,8 @@ USE_LIBS += ['mozglue'] >- OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] >- OS_LIBS += CONFIG['REALTIME_LIBS'] >- >--if CONFIG['MOZ_ALSA']: >-- OS_LIBS += CONFIG['MOZ_ALSA_LIBS'] >-+if CONFIG['MOZ_OSS']: >-+ OS_LIBS += CONFIG['MOZ_OSS_LIBS'] >- >- if CONFIG['MOZ_SYSTEM_JPEG']: >- OS_LIBS += CONFIG['MOZ_JPEG_LIBS'] > diff --git toolkit/library/moz.build toolkit/library/moz.build > index a61c689c83c3..7764df6f8a6b 100644 > --- toolkit/library/moz.build >diff --git a/www/firefox/files/patch-bug1312182 b/www/firefox/files/patch-bug1312182 >new file mode 100644 >index 000000000000..9c2b65f06d65 >--- /dev/null >+++ b/www/firefox/files/patch-bug1312182 >@@ -0,0 +1,376 @@ >+commit 0d02dac1638ad >+Author: Alessio Placitelli <alessio.placitelli@gmail.com> >+Date: Tue May 30 10:42:42 2017 +0200 >+ >+ Bug 1312182 - Consolidate the uses of MOZ_TELEMETRY_REPORTING in the code. r=flod,gfritzsche,jaws >+ >+ The MOZ_TELEMETRY_REPORTING define does not control whether or not Telemetry is enabled >+ but rather if it will send the gathered data to Mozilla servers. We still want to >+ display the about:preferences options and let developers know about this behaviour. >+ Please note that this patch is not changing any behaviour: it's only making it explicit >+ by showing the options as disabled rather than hiding them. >+ >+ MozReview-Commit-ID: 7A0y0E0hm0Q >+ >+ --HG-- >+ extra : rebase_source : 36d1a7f5ec5c05b43731daf9507d3068fe7674ee >+--- >+ browser/base/content/baseMenuOverlay.xul | 2 +- >+ browser/components/nsBrowserGlue.js | 8 +-- >+ .../components/preferences/in-content-new/main.xul | 2 - >+ .../preferences/in-content-new/privacy.js | 32 +++++------ >+ .../preferences/in-content-new/privacy.xul | 14 ++--- >+ .../components/preferences/in-content/advanced.js | 63 +++++++++++----------- >+ .../components/preferences/in-content/advanced.xul | 7 ++- >+ .../chrome/browser/preferences-old/advanced.dtd | 5 ++ >+ .../en-US/chrome/browser/preferences/advanced.dtd | 5 ++ >+ 9 files changed, 67 insertions(+), 71 deletions(-) >+ >+diff --git browser/base/content/baseMenuOverlay.xul browser/base/content/baseMenuOverlay.xul >+index 1befa2bb66cc..804bbdebb797 100644 >+--- browser/base/content/baseMenuOverlay.xul >++++ browser/base/content/baseMenuOverlay.xul >+@@ -61,7 +61,7 @@ >+ onclick="checkForMiddleClick(this, event);" >+ label="&helpKeyboardShortcuts.label;" >+ accesskey="&helpKeyboardShortcuts.accesskey;"/> >+-#ifdef MOZ_TELEMETRY_REPORTING >++#ifdef MOZ_SERVICES_HEALTHREPORT >+ <menuitem id="healthReport" >+ label="&healthReport2.label;" >+ accesskey="&healthReport2.accesskey;" >+diff --git browser/components/nsBrowserGlue.js browser/components/nsBrowserGlue.js >+index 554c279356b9..1c21bf4c4323 100644 >+--- browser/components/nsBrowserGlue.js >++++ browser/components/nsBrowserGlue.js >+@@ -528,9 +528,7 @@ BrowserGlue.prototype = { >+ os.addObserver(this, "distribution-customization-complete"); >+ os.addObserver(this, "handle-xul-text-link"); >+ os.addObserver(this, "profile-before-change"); >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- os.addObserver(this, "keyword-search"); >+- } >++ os.addObserver(this, "keyword-search"); >+ os.addObserver(this, "browser-search-engine-modified"); >+ os.addObserver(this, "restart-in-safe-mode"); >+ os.addObserver(this, "flash-plugin-hang"); >+@@ -583,9 +581,7 @@ BrowserGlue.prototype = { >+ os.removeObserver(this, "places-database-locked"); >+ os.removeObserver(this, "handle-xul-text-link"); >+ os.removeObserver(this, "profile-before-change"); >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- os.removeObserver(this, "keyword-search"); >+- } >++ os.removeObserver(this, "keyword-search"); >+ os.removeObserver(this, "browser-search-engine-modified"); >+ os.removeObserver(this, "flash-plugin-hang"); >+ os.removeObserver(this, "xpi-signature-changed"); >+diff --git browser/components/preferences/in-content-new/main.xul browser/components/preferences/in-content-new/main.xul >+index e89ee1891c91..8672557bede2 100644 >+--- browser/components/preferences/in-content-new/main.xul >++++ browser/components/preferences/in-content-new/main.xul >+@@ -183,11 +183,9 @@ >+ name="layout.spellcheckDefault" >+ type="int"/> >+ >+-#ifdef MOZ_TELEMETRY_REPORTING >+ <preference id="toolkit.telemetry.enabled" >+ name="toolkit.telemetry.enabled" >+ type="bool"/> >+-#endif >+ >+ <preference id="browser.preferences.defaultPerformanceSettings.enabled" >+ name="browser.preferences.defaultPerformanceSettings.enabled" >+diff --git browser/components/preferences/in-content-new/privacy.js browser/components/preferences/in-content-new/privacy.js >+index be057bfad611..73f72391b991 100644 >+--- browser/components/preferences/in-content-new/privacy.js >++++ browser/components/preferences/in-content-new/privacy.js >+@@ -321,11 +321,9 @@ var gPrivacyPane = { >+ this.initSubmitCrashes(); >+ } >+ this.initTelemetry(); >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- this.initSubmitHealthReport(); >+- setEventListener("submitHealthReportBox", "command", >+- gPrivacyPane.updateSubmitHealthReport); >+- } >++ this.initSubmitHealthReport(); >++ setEventListener("submitHealthReportBox", "command", >++ gPrivacyPane.updateSubmitHealthReport); >+ >+ // Append search keywords into the elements could open subdialogs. >+ let bundlePrefs = document.getElementById("bundlePreferences"); >+@@ -1414,8 +1412,10 @@ var gPrivacyPane = { >+ * In all cases, set up the Learn More link sanely. >+ */ >+ initTelemetry() { >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >++ this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >++ // If we're not sending any Telemetry, disable the telemetry upload checkbox as well. >++ if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >++ document.getElementById("submitTelemetryBox").setAttribute("disabled", "true"); >+ } >+ }, >+ >+@@ -1439,9 +1439,6 @@ var gPrivacyPane = { >+ * @param {Boolean} aEnabled False disables the controls, true enables them. >+ */ >+ setTelemetrySectionEnabled(aEnabled) { >+- if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >+- return; >+- } >+ // If FHR is disabled, additional data sharing should be disabled as well. >+ let disabled = !aEnabled; >+ document.getElementById("submitTelemetryBox").disabled = disabled; >+@@ -1456,19 +1453,21 @@ var gPrivacyPane = { >+ * Initialize the health report service reference and checkbox. >+ */ >+ initSubmitHealthReport() { >+- if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >+- return; >+- } >+ this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore"); >+ >+ let checkbox = document.getElementById("submitHealthReportBox"); >+ >+- if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED)) { >++ // Telemetry is only sending data if MOZ_TELEMETRY_REPORTING is defined. >++ // We still want to display the preferences panel if that's not the case, but >++ // we want it to be disabled and unchecked. >++ if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED) || >++ !AppConstants.MOZ_TELEMETRY_REPORTING) { >+ checkbox.setAttribute("disabled", "true"); >+ return; >+ } >+ >+- checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED); >++ checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED) && >++ AppConstants.MOZ_TELEMETRY_REPORTING; >+ this.setTelemetrySectionEnabled(checkbox.checked); >+ }, >+ >+@@ -1476,9 +1475,6 @@ var gPrivacyPane = { >+ * Update the health report preference with state from checkbox. >+ */ >+ updateSubmitHealthReport() { >+- if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >+- return; >+- } >+ let checkbox = document.getElementById("submitHealthReportBox"); >+ Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked); >+ this.setTelemetrySectionEnabled(checkbox.checked); >+diff --git browser/components/preferences/in-content-new/privacy.xul browser/components/preferences/in-content-new/privacy.xul >+index 9d531bd8274b..8030567573f8 100644 >+--- browser/components/preferences/in-content-new/privacy.xul >++++ browser/components/preferences/in-content-new/privacy.xul >+@@ -760,9 +760,14 @@ >+ </groupbox> >+ >+ <!-- Data Choices --> >+-#ifdef MOZ_TELEMETRY_REPORTING >+-<groupbox id="historyGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true"> >++#ifdef MOZ_DATA_REPORTING >++ >++<groupbox id="telemetryGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true"> >+ <caption><label>&reports.label;</label></caption> >++#ifndef MOZ_TELEMETRY_REPORTING >++ <description id="TelemetryDisabledDesc" control="telemetryGroup">&healthReportingDisabled.label;</description> >++#endif >++ >+ <hbox align="center"> >+ <checkbox id="submitHealthReportBox" label="&enableHealthReport.label;" >+ accesskey="&enableHealthReport.accesskey;"/> >+@@ -782,14 +787,9 @@ >+ class="indent">&telemetryDesc.label;</description> >+ </vbox> >+ </groupbox> >+-#endif >+ >+-#ifdef MOZ_DATA_REPORTING >+ #ifdef MOZ_CRASHREPORTER >+ <groupbox id="crashReporterGroup" data-category="panePrivacy" data-subcategory="reports" hidden="true"> >+-#ifndef MOZ_TELEMETRY_REPORTING >+-<caption><label>&reports.label;</label></caption> >+-#endif >+ <hbox align="center"> >+ <checkbox id="automaticallySubmitCrashesBox" >+ preference="browser.crashReports.unsubmittedCheck.autoSubmit" >+diff --git browser/components/preferences/in-content/advanced.js browser/components/preferences/in-content/advanced.js >+index a6a2abaad9cf..9c7a2e716403 100644 >+--- browser/components/preferences/in-content/advanced.js >++++ browser/components/preferences/in-content/advanced.js >+@@ -46,9 +46,7 @@ var gAdvancedPane = { >+ this.initSubmitCrashes(); >+ } >+ this.initTelemetry(); >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- this.initSubmitHealthReport(); >+- } >++ this.initSubmitHealthReport(); >+ this.updateOnScreenKeyboardVisibility(); >+ this.updateCacheSizeInputField(); >+ this.updateActualCacheSize(); >+@@ -78,10 +76,8 @@ var gAdvancedPane = { >+ gAdvancedPane.updateHardwareAcceleration); >+ setEventListener("advancedPrefs", "select", >+ gAdvancedPane.tabSelectionChanged); >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- setEventListener("submitHealthReportBox", "command", >+- gAdvancedPane.updateSubmitHealthReport); >+- } >++ setEventListener("submitHealthReportBox", "command", >++ gAdvancedPane.updateSubmitHealthReport); >+ >+ setEventListener("connectionSettings", "command", >+ gAdvancedPane.showConnections); >+@@ -293,8 +289,10 @@ var gAdvancedPane = { >+ * In all cases, set up the Learn More link sanely. >+ */ >+ initTelemetry() { >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >++ this._setupLearnMoreLink("toolkit.telemetry.infoURL", "telemetryLearnMore"); >++ // If we're not sending any Telemetry, disable the telemetry upload checkbox as well. >++ if (!AppConstants.MOZ_TELEMETRY_REPORTING) { >++ document.getElementById("submitTelemetryBox").setAttribute("disabled", "true"); >+ } >+ }, >+ >+@@ -303,46 +301,45 @@ var gAdvancedPane = { >+ * @param {Boolean} aEnabled False disables the controls, true enables them. >+ */ >+ setTelemetrySectionEnabled(aEnabled) { >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- // If FHR is disabled, additional data sharing should be disabled as well. >+- let disabled = !aEnabled; >+- document.getElementById("submitTelemetryBox").disabled = disabled; >+- if (disabled) { >+- // If we disable FHR, untick the telemetry checkbox. >+- Services.prefs.setBoolPref("toolkit.telemetry.enabled", false); >+- } >+- document.getElementById("telemetryDataDesc").disabled = disabled; >++ // If FHR is disabled, additional data sharing should be disabled as well. >++ let disabled = !aEnabled; >++ document.getElementById("submitTelemetryBox").disabled = disabled; >++ if (disabled) { >++ // If we disable FHR, untick the telemetry checkbox. >++ Services.prefs.setBoolPref("toolkit.telemetry.enabled", false); >+ } >++ document.getElementById("telemetryDataDesc").disabled = disabled; >+ }, >+ >+ /** >+ * Initialize the health report service reference and checkbox. >+ */ >+ initSubmitHealthReport() { >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore"); >+- >+- let checkbox = document.getElementById("submitHealthReportBox"); >++ this._setupLearnMoreLink("datareporting.healthreport.infoURL", "FHRLearnMore"); >+ >+- if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED)) { >+- checkbox.setAttribute("disabled", "true"); >+- return; >+- } >++ let checkbox = document.getElementById("submitHealthReportBox"); >+ >+- checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED); >+- this.setTelemetrySectionEnabled(checkbox.checked); >++ // Telemetry is only sending data if MOZ_TELEMETRY_REPORTING is defined. >++ // We still want to display the preferences panel if that's not the case, but >++ // we want it to be disabled and unchecked. >++ if (Services.prefs.prefIsLocked(PREF_UPLOAD_ENABLED) || >++ !AppConstants.MOZ_TELEMETRY_REPORTING) { >++ checkbox.setAttribute("disabled", "true"); >++ return; >+ } >++ >++ checkbox.checked = Services.prefs.getBoolPref(PREF_UPLOAD_ENABLED) && >++ AppConstants.MOZ_TELEMETRY_REPORTING; >++ this.setTelemetrySectionEnabled(checkbox.checked); >+ }, >+ >+ /** >+ * Update the health report preference with state from checkbox. >+ */ >+ updateSubmitHealthReport() { >+- if (AppConstants.MOZ_TELEMETRY_REPORTING) { >+- let checkbox = document.getElementById("submitHealthReportBox"); >+- Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked); >+- this.setTelemetrySectionEnabled(checkbox.checked); >+- } >++ let checkbox = document.getElementById("submitHealthReportBox"); >++ Services.prefs.setBoolPref(PREF_UPLOAD_ENABLED, checkbox.checked); >++ this.setTelemetrySectionEnabled(checkbox.checked); >+ }, >+ >+ updateOnScreenKeyboardVisibility() { >+diff --git browser/components/preferences/in-content/advanced.xul browser/components/preferences/in-content/advanced.xul >+index f2330223fb18..1b2c62168a59 100644 >+--- browser/components/preferences/in-content/advanced.xul >++++ browser/components/preferences/in-content/advanced.xul >+@@ -37,12 +37,9 @@ >+ <preference id="layout.spellcheckDefault" >+ name="layout.spellcheckDefault" >+ type="int"/> >+- >+-#ifdef MOZ_TELEMETRY_REPORTING >+ <preference id="toolkit.telemetry.enabled" >+ name="toolkit.telemetry.enabled" >+ type="bool"/> >+-#endif >+ >+ <!-- Data Choices tab --> >+ #ifdef MOZ_CRASHREPORTER >+@@ -189,6 +186,9 @@ >+ <!-- Data Choices --> >+ <tabpanel id="dataChoicesPanel" orient="vertical"> >+ #ifdef MOZ_TELEMETRY_REPORTING >++ <description>&healthReportingDisabled.label;</description> >++ <separator class="thin"/> >++#endif >+ <groupbox> >+ <caption> >+ <checkbox id="submitHealthReportBox" label="&enableHealthReport.label;" >+@@ -216,7 +216,6 @@ >+ </hbox> >+ </vbox> >+ </groupbox> >+-#endif >+ #ifdef MOZ_CRASHREPORTER >+ <groupbox> >+ <caption> >+diff --git browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd >+index 215b800d3385..bf23c4fd251f 100644 >+--- browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd >++++ browser/locales/en-US/chrome/browser/preferences-old/advanced.dtd >+@@ -28,6 +28,11 @@ >+ >+ <!ENTITY dataChoicesTab.label "Data Choices"> >+ >++<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above >++disabled data sharing options in developer builds or builds with no Telemetry support >++available. --> >++<!ENTITY healthReportingDisabled.label "Data reporting is disabled for this build configuration"> >++ >+ <!ENTITY healthReportDesc.label "Helps you understand your browser performance and shares data with &vendorShortName; about your browser health"> >+ <!ENTITY enableHealthReport.label "Enable &brandShortName; Health Report"> >+ <!ENTITY enableHealthReport.accesskey "R"> >+diff --git browser/locales/en-US/chrome/browser/preferences/advanced.dtd browser/locales/en-US/chrome/browser/preferences/advanced.dtd >+index 58a6b38630cf..6c478e48244a 100644 >+--- browser/locales/en-US/chrome/browser/preferences/advanced.dtd >++++ browser/locales/en-US/chrome/browser/preferences/advanced.dtd >+@@ -28,6 +28,11 @@ >+ >+ <!ENTITY dataChoicesTab.label "Data Choices"> >+ >++<!-- LOCALIZATION NOTE (healthReportingDisabled.label): This message is displayed above >++disabled data sharing options in developer builds or builds with no Telemetry support >++available. --> >++<!ENTITY healthReportingDisabled.label "Data reporting is disabled for this build configuration"> >++ >+ <!ENTITY healthReportDesc.label "Helps you understand your browser performance and shares data with &vendorShortName; about your browser health"> >+ <!ENTITY enableHealthReport.label "Enable &brandShortName; Health Report"> >+ <!ENTITY enableHealthReport.accesskey "R"> >diff --git a/www/firefox/files/patch-bug1356709 b/www/firefox/files/patch-bug1356709 >deleted file mode 100644 >index b795836a4ad4..000000000000 >--- a/www/firefox/files/patch-bug1356709 >+++ /dev/null >@@ -1,170 +0,0 @@ >-commit acc36099bfc1 >-Author: Steve Fink <sfink@mozilla.com> >-Date: Mon Apr 17 21:04:08 2017 -0700 >- >- Bug 1356709 - Fix uses of uninitialized values in arm64 code, r=sstangl >- >- --HG-- >- extra : rebase_source : 2f9a59c88f21dd467fbc4232e2f6b20850fd53ed >- extra : histedit_source : b5110806cf04a3ca056ea89709bcc707368a2e57 >---- >- js/src/jit/arm64/MacroAssembler-arm64.cpp | 4 +++- >- js/src/jit/arm64/vixl/Debugger-vixl.cpp | 10 ++++++---- >- js/src/jit/arm64/vixl/Decoder-vixl.cpp | 12 ++++++------ >- js/src/jit/arm64/vixl/Instrument-vixl.cpp | 4 +++- >- js/src/jit/arm64/vixl/MozSimulator-vixl.cpp | 8 ++++++-- >- 5 files changed, 24 insertions(+), 14 deletions(-) >- >-diff --git js/src/jit/arm64/MacroAssembler-arm64.cpp js/src/jit/arm64/MacroAssembler-arm64.cpp >-index 013fefd85e9b..f1704c622cb6 100644 >---- js/src/jit/arm64/MacroAssembler-arm64.cpp >-+++ js/src/jit/arm64/MacroAssembler-arm64.cpp >-@@ -682,7 +682,9 @@ MacroAssembler::callWithABIPre(uint32_t* stackAdjust, bool callFromWasm) >- *stackAdjust = stackForCall; >- reserveStack(*stackAdjust); >- { >-- moveResolver_.resolve(); >-+ enoughMemory_ &= moveResolver_.resolve(); >-+ if (!enoughMemory_) >-+ return; >- MoveEmitter emitter(*this); >- emitter.emit(moveResolver_); >- emitter.finish(); >-diff --git js/src/jit/arm64/vixl/Debugger-vixl.cpp js/src/jit/arm64/vixl/Debugger-vixl.cpp >-index 85097ed5a086..2f4966fbef15 100644 >---- js/src/jit/arm64/vixl/Debugger-vixl.cpp >-+++ js/src/jit/arm64/vixl/Debugger-vixl.cpp >-@@ -30,6 +30,7 @@ >- >- #include "jit/arm64/vixl/Debugger-vixl.h" >- >-+#include "mozilla/Unused.h" >- #include "mozilla/Vector.h" >- >- #include "jsalloc.h" >-@@ -1109,6 +1110,7 @@ bool DebugCommand::Match(const char* name, const char** aliases) { >- >- >- DebugCommand* DebugCommand::Parse(char* line) { >-+ using mozilla::Unused; >- TokenVector args; >- >- for (char* chunk = strtok(line, " \t"); >-@@ -1120,15 +1122,15 @@ DebugCommand* DebugCommand::Parse(char* line) { >- Token* format = FormatToken::Tokenize(dot + 1); >- if (format != NULL) { >- *dot = '\0'; >-- args.append(Token::Tokenize(chunk)); >-- args.append(format); >-+ Unused << args.append(Token::Tokenize(chunk)); >-+ Unused << args.append(format); >- } else { >- // Error while parsing the format, push the UnknownToken so an error >- // can be accurately reported. >-- args.append(Token::Tokenize(chunk)); >-+ Unused << args.append(Token::Tokenize(chunk)); >- } >- } else { >-- args.append(Token::Tokenize(chunk)); >-+ Unused << args.append(Token::Tokenize(chunk)); >- } >- } >- >-diff --git js/src/jit/arm64/vixl/Decoder-vixl.cpp js/src/jit/arm64/vixl/Decoder-vixl.cpp >-index 5865689ae6fa..c74f71a11b24 100644 >---- js/src/jit/arm64/vixl/Decoder-vixl.cpp >-+++ js/src/jit/arm64/vixl/Decoder-vixl.cpp >-@@ -112,12 +112,12 @@ void Decoder::DecodeInstruction(const Instruction *instr) { >- } >- >- void Decoder::AppendVisitor(DecoderVisitor* new_visitor) { >-- visitors_.append(new_visitor); >-+ MOZ_ALWAYS_TRUE(visitors_.append(new_visitor)); >- } >- >- >- void Decoder::PrependVisitor(DecoderVisitor* new_visitor) { >-- visitors_.insert(visitors_.begin(), new_visitor); >-+ MOZ_ALWAYS_TRUE(visitors_.insert(visitors_.begin(), new_visitor)); >- } >- >- >-@@ -125,12 +125,12 @@ void Decoder::InsertVisitorBefore(DecoderVisitor* new_visitor, >- DecoderVisitor* registered_visitor) { >- for (auto it = visitors_.begin(); it != visitors_.end(); it++) { >- if (*it == registered_visitor) { >-- visitors_.insert(it, new_visitor); >-+ MOZ_ALWAYS_TRUE(visitors_.insert(it, new_visitor)); >- return; >- } >- } >- // We reached the end of the list without finding registered_visitor. >-- visitors_.append(new_visitor); >-+ MOZ_ALWAYS_TRUE(visitors_.append(new_visitor)); >- } >- >- >-@@ -139,12 +139,12 @@ void Decoder::InsertVisitorAfter(DecoderVisitor* new_visitor, >- for (auto it = visitors_.begin(); it != visitors_.end(); it++) { >- if (*it == registered_visitor) { >- it++; >-- visitors_.insert(it, new_visitor); >-+ MOZ_ALWAYS_TRUE(visitors_.insert(it, new_visitor)); >- return; >- } >- } >- // We reached the end of the list without finding registered_visitor. >-- visitors_.append(new_visitor); >-+ MOZ_ALWAYS_TRUE(visitors_.append(new_visitor)); >- } >- >- >-diff --git js/src/jit/arm64/vixl/Instrument-vixl.cpp js/src/jit/arm64/vixl/Instrument-vixl.cpp >-index 7653e0856281..15d143c8ec13 100644 >---- js/src/jit/arm64/vixl/Instrument-vixl.cpp >-+++ js/src/jit/arm64/vixl/Instrument-vixl.cpp >-@@ -26,6 +26,8 @@ >- >- #include "jit/arm64/vixl/Instrument-vixl.h" >- >-+#include "mozilla/Unused.h" >-+ >- namespace vixl { >- >- Counter::Counter(const char* name, CounterType type) >-@@ -139,7 +141,7 @@ Instrument::Instrument(const char* datafile, uint64_t sample_period) >- // Construct Counter objects from counter description array. >- for (int i = 0; i < num_counters; i++) { >- if (Counter* counter = js_new<Counter>(kCounterList[i].name, kCounterList[i].type)) >-- counters_.append(counter); >-+ mozilla::Unused << counters_.append(counter); >- } >- >- DumpCounterNames(); >-diff --git js/src/jit/arm64/vixl/MozSimulator-vixl.cpp js/src/jit/arm64/vixl/MozSimulator-vixl.cpp >-index 0f8acebf9de6..284413bc5875 100644 >---- js/src/jit/arm64/vixl/MozSimulator-vixl.cpp >-+++ js/src/jit/arm64/vixl/MozSimulator-vixl.cpp >-@@ -29,6 +29,7 @@ >- #include "jit/arm64/vixl/Debugger-vixl.h" >- #include "jit/arm64/vixl/Simulator-vixl.h" >- #include "jit/IonTypes.h" >-+#include "js/Utility.h" >- #include "threading/LockGuard.h" >- #include "vm/Runtime.h" >- #include "wasm/WasmCode.h" >-@@ -427,9 +428,12 @@ void Simulator::VisitException(const Instruction* instr) { >- case kCallRtRedirected: >- VisitCallRedirection(instr); >- return; >-- case kMarkStackPointer: >-- spStack_.append(xreg(31, Reg31IsStackPointer)); >-+ case kMarkStackPointer: { >-+ js::AutoEnterOOMUnsafeRegion oomUnsafe; >-+ if (!spStack_.append(xreg(31, Reg31IsStackPointer))) >-+ oomUnsafe.crash("tracking stack for ARM64 simulator"); >- return; >-+ } >- case kCheckStackPointer: { >- int64_t current = xreg(31, Reg31IsStackPointer); >- int64_t expected = spStack_.popCopy(); >diff --git a/www/firefox/files/patch-bug1357874 b/www/firefox/files/patch-bug1357874 >deleted file mode 100644 >index a4c69d2571dd..000000000000 >--- a/www/firefox/files/patch-bug1357874 >+++ /dev/null >@@ -1,43 +0,0 @@ >-commit 50d30e203b35 >-Author: Jim Chen <nchen@mozilla.com> >-Date: Mon May 1 14:46:00 2017 -0400 >- >- Bug 1357874 - Add more AArch64 support to JS code; r=luke >- >- * Fix a parentheses warning when compiling testGCAllocator.cpp. >- >- * Enable trace logging in TraceLogging.cpp. >---- >- js/src/jsapi-tests/testGCAllocator.cpp | 2 +- >- js/src/jsmath.cpp | 2 ++ >- js/src/jsnativestack.cpp | 10 +++++----- >- js/src/vm/TraceLogging.cpp | 2 +- >- js/src/wasm/WasmSignalHandlers.cpp | 2 ++ >- 5 files changed, 11 insertions(+), 7 deletions(-) >- >-diff --git js/src/jsapi-tests/testGCAllocator.cpp js/src/jsapi-tests/testGCAllocator.cpp >-index 229e56422fdf..ec5407e8cca1 100644 >---- js/src/jsapi-tests/testGCAllocator.cpp >-+++ js/src/jsapi-tests/testGCAllocator.cpp >-@@ -315,7 +315,7 @@ mapMemoryAt(void* desired, size_t length) >- >- #if defined(__ia64__) || defined(__aarch64__) || \ >- (defined(__sparc__) && defined(__arch64__) && (defined(__NetBSD__) || defined(__linux__))) >-- MOZ_RELEASE_ASSERT(0xffff800000000000ULL & (uintptr_t(desired) + length - 1) == 0); >-+ MOZ_RELEASE_ASSERT((0xffff800000000000ULL & (uintptr_t(desired) + length - 1)) == 0); >- #endif >- void* region = mmap(desired, length, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANON, -1, 0); >- if (region == MAP_FAILED) >-diff --git js/src/vm/TraceLogging.cpp js/src/vm/TraceLogging.cpp >-index c7bc6a84b2e9..82fdf7c77e8a 100644 >---- js/src/vm/TraceLogging.cpp >-+++ js/src/vm/TraceLogging.cpp >-@@ -61,7 +61,7 @@ rdtsc(void) >- return result; >- >- } >--#elif defined(__arm__) >-+#elif defined(__arm__) || defined(__aarch64__) >- >- #include <sys/time.h> >- >diff --git a/www/firefox/files/patch-bug1360321 b/www/firefox/files/patch-bug1360321 >deleted file mode 100644 >index b9989ef7c099..000000000000 >--- a/www/firefox/files/patch-bug1360321 >+++ /dev/null >@@ -1,49 +0,0 @@ >-commit a2dff5ad917b >-Author: Jim Chen <nchen@mozilla.com> >-Date: Wed May 17 13:06:23 2017 -0400 >- >- Bug 1360321 - 10. Fix opt build warnings in VIXL; r=me >- >- Fix an unused variable warning for `visitor` because it's only used in >- the assertion macro. >- >- Fix several no-return-value errors because the compiler cannot assume >- the VIXL_UNREACHABLE() macro is actually unreachable. >- >- r=me for trivial patch. >- >- MozReview-Commit-ID: 13IlMyUsXUN >---- >- js/src/jit/arm64/vixl/Decoder-vixl.h | 2 ++ >- js/src/jit/arm64/vixl/Globals-vixl.h | 2 +- >- 2 files changed, 3 insertions(+), 1 deletion(-) >- >-diff --git js/src/jit/arm64/vixl/Decoder-vixl.h js/src/jit/arm64/vixl/Decoder-vixl.h >-index 95dd589e8ab0..742c6f954c72 100644 >---- js/src/jit/arm64/vixl/Decoder-vixl.h >-+++ js/src/jit/arm64/vixl/Decoder-vixl.h >-@@ -151,9 +151,11 @@ class Decoder { >- >- // Top-level wrappers around the actual decoding function. >- void Decode(const Instruction* instr) { >-+#ifdef DEBUG >- for (auto visitor : visitors_) { >- VIXL_ASSERT(visitor->IsConstVisitor()); >- } >-+#endif >- DecodeInstruction(instr); >- } >- void Decode(Instruction* instr) { >-diff --git js/src/jit/arm64/vixl/Globals-vixl.h js/src/jit/arm64/vixl/Globals-vixl.h >-index 8a7418eb8c47..39d9c1d3f37d 100644 >---- js/src/jit/arm64/vixl/Globals-vixl.h >-+++ js/src/jit/arm64/vixl/Globals-vixl.h >-@@ -76,7 +76,7 @@ const int MBytes = 1024 * KBytes; >- #define VIXL_ASSERT(condition) ((void) 0) >- #define VIXL_CHECK(condition) ((void) 0) >- #define VIXL_UNIMPLEMENTED() ((void) 0) >-- #define VIXL_UNREACHABLE() ((void) 0) >-+ #define VIXL_UNREACHABLE() MOZ_MAKE_COMPILER_ASSUME_IS_UNREACHABLE() >- #endif >- // This is not as powerful as template based assertions, but it is simple. >- // It assumes that the descriptions are unique. If this starts being a problem, >diff --git a/www/firefox/files/patch-bug1376411 b/www/firefox/files/patch-bug1376411 >index fe4d6ab7b44d..a4138e42fce5 100644 >--- a/www/firefox/files/patch-bug1376411 >+++ b/www/firefox/files/patch-bug1376411 >@@ -11,9 +11,9 @@ index 8466b5f1a9e5..438516496682 100644 > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "libz-sys 1.0.12 (registry+https://github.com/rust-lang/crates.io-index)", >+ "num_cpus 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", > ] >- >-@@ -13,7 +13,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -14,7 +14,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > > [[package]] > name = "libc" >@@ -22,7 +22,7 @@ index 8466b5f1a9e5..438516496682 100644 > source = "registry+https://github.com/rust-lang/crates.io-index" > > [[package]] >-@@ -22,7 +22,7 @@ version = "1.0.12" >+@@ -23,7 +23,7 @@ version = "1.0.12" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "gcc 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -31,14 +31,163 @@ index 8466b5f1a9e5..438516496682 100644 > "pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -33,6 +33,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -32,7 +32,7 @@ name = "num_cpus" >+ version = "1.2.1" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -42,7 +42,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > > [metadata] > "checksum gcc 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)" = "291055c78f59ca3d84c99026c9501c469413d386bb46be1e1cf1d285cd1db3b0" > -"checksum libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)" = "684f330624d8c3784fb9558ca46c4ce488073a8d22450415c5eb4f4cfb0d11b5" > +"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" > "checksum libz-sys 1.0.12 (registry+https://github.com/rust-lang/crates.io-index)" = "7616099a575493da60cddc1174b686fcfb00ece89dc6f61f31ff47c35f07bbe8" >+ "checksum num_cpus 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a225d1e2717567599c24f88e49f00856c6e825a12125181ee42c4257e3688d39" > "checksum pkg-config 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "3a8b4c6b8165cd1a1cd4b9b120978131389f64bdaf456435caa41e630edba903" >+diff --git testing/geckodriver/Cargo.lock testing/geckodriver/Cargo.lock >+index 1fb7f412fff8..71ba5daa6658 100644 >+--- testing/geckodriver/Cargo.lock >++++ testing/geckodriver/Cargo.lock >+@@ -47,7 +47,7 @@ dependencies = [ >+ "cfg-if 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", >+ "dbghelp-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "rustc-demangle 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+@@ -58,7 +58,7 @@ version = "0.1.10" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "gcc 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -85,7 +85,7 @@ version = "0.3.2" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "bzip2-sys 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -94,7 +94,7 @@ version = "0.1.5" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "gcc 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -151,7 +151,7 @@ name = "flate2" >+ version = "0.2.19" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "miniz-sys 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+@@ -200,7 +200,7 @@ version = "0.1.3" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+@@ -248,7 +248,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+ >+ [[package]] >+ name = "libc" >+-version = "0.2.20" >++version = "0.2.24" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ >+ [[package]] >+@@ -266,7 +266,7 @@ name = "memchr" >+ version = "1.0.1" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -283,7 +283,7 @@ version = "0.1.9" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "gcc 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -361,7 +361,7 @@ name = "num_cpus" >+ version = "1.2.1" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -374,7 +374,7 @@ name = "rand" >+ version = "0.3.15" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -519,7 +519,7 @@ version = "0.3.0" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+@@ -529,7 +529,7 @@ version = "3.0.0" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -547,7 +547,7 @@ version = "0.1.36" >+ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "redox_syscall 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+@@ -711,7 +711,7 @@ dependencies = [ >+ "checksum language-tags 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" >+ "checksum lazy_static 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)" = "cf186d1a8aa5f5bee5fd662bc9c1b949e0259e1bcc379d1f006847b0080c7417" >+ "checksum lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6abe0ee2e758cd6bc8a2cd56726359007748fbf4128da998b65d0b70f881e19b" >+-"checksum libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)" = "684f330624d8c3784fb9558ca46c4ce488073a8d22450415c5eb4f4cfb0d11b5" >++"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" >+ "checksum log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ab83497bf8bf4ed2a74259c1c802351fcd67a65baa86394b6ba73c36f4838054" >+ "checksum matches 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "efd7622e3022e1a6eaa602c4cea8912254e5582c9c692e9167714182244801b1" >+ "checksum memchr 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "1dbccc0e46f1ea47b9f17e6d67c5a96bd27030519c519c9c91327e31275a47b4" > diff --git third_party/rust/libc/.cargo-checksum.json third_party/rust/libc/.cargo-checksum.json > index e1e2ea34c5e4..3514e55b4293 100644 > --- third_party/rust/libc/.cargo-checksum.json >@@ -9231,34 +9380,25 @@ diff --git toolkit/library/gtest/rust/Cargo.lock toolkit/library/gtest/rust/Carg > index 2561f3856303..ab148dfb5e13 100644 > --- toolkit/library/gtest/rust/Cargo.lock > +++ toolkit/library/gtest/rust/Cargo.lock >-@@ -121,7 +121,7 @@ version = "0.1.5" >+@@ -68,7 +68,7 @@ version = "0.2.2" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >- "gleam 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >- [[package]] >-@@ -132,7 +132,7 @@ dependencies = [ >- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -160,7 +160,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", > "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "libloading 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", >+ "libloading 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -143,7 +143,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >- "ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "strsim 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "term_size 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", >- "unicode-segmentation 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -157,7 +157,7 @@ version = "0.3.0" >+@@ -185,7 +185,7 @@ version = "0.3.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "core-foundation-sys 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9267,7 +9407,7 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -165,7 +165,7 @@ name = "core-foundation-sys" >+@@ -193,7 +193,7 @@ name = "core-foundation-sys" > version = "0.3.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9276,7 +9416,7 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -174,7 +174,7 @@ version = "0.7.0" >+@@ -202,7 +202,7 @@ version = "0.7.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "core-foundation 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9285,7 +9425,7 @@ index 2561f3856303..ab148dfb5e13 100644 > "serde 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -185,7 +185,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -213,7 +213,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "core-foundation 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", > "core-graphics 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9294,7 +9434,16 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -318,7 +318,7 @@ name = "freetype" >+@@ -272,7 +272,7 @@ dependencies = [ >+ "gdi32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+ "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "serde 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", >+ "serde_derive 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -309,7 +309,7 @@ name = "freetype" > version = "0.2.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9303,16 +9452,16 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -348,7 +348,7 @@ dependencies = [ >+@@ -341,7 +341,7 @@ dependencies = [ >+ "atomic_refcell 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", >+ "cssparser 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", > "env_logger 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", >- "euclid 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", >- "num_cpus 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", >+ "nsstring_vendor 0.1.0", > "parking_lot 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -443,7 +443,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -439,7 +439,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > > [[package]] > name = "libc" >@@ -9321,7 +9470,7 @@ index 2561f3856303..ab148dfb5e13 100644 > source = "registry+https://github.com/rust-lang/crates.io-index" > > [[package]] >-@@ -472,7 +472,7 @@ name = "memchr" >+@@ -467,7 +467,7 @@ name = "memchr" > version = "1.0.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9330,7 +9479,7 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -543,7 +543,7 @@ name = "num_cpus" >+@@ -545,7 +545,7 @@ name = "num_cpus" > version = "1.2.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9339,79 +9488,61 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -605,7 +605,7 @@ version = "0.2.0" >+@@ -583,7 +583,7 @@ version = "0.2.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", >- "smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", >+ "smallvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", > "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -690,7 +690,7 @@ name = "rand" >- version = "0.3.15" >- source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -663,7 +663,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+ name = "pulse-ffi" >+ version = "0.1.0" > dependencies = [ > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > ] > > [[package]] >-@@ -699,7 +699,7 @@ version = "0.6.0" >+@@ -696,7 +696,7 @@ name = "rand" >+ version = "0.3.15" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -715,7 +715,7 @@ dependencies = [ > "deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", >+ "futures 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", >+ "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "num_cpus 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", > "rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", > ] >-@@ -730,7 +730,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -746,7 +746,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > name = "rust_url_capi" > version = "0.0.1" > dependencies = [ > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "nserror 0.1.0", > "nsstring 0.1.0", >- "url 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", >- ] >-@@ -803,7 +803,7 @@ dependencies = [ >- "gdi32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "serde 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", >- "serde_codegen 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -858,7 +858,7 @@ version = "0.1.5" >+ "url 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -948,7 +948,7 @@ name = "syntex_errors" >+ version = "0.58.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- ] >- >- [[package]] >-@@ -963,7 +963,7 @@ name = "syntex_errors" >- version = "0.54.0" >- source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", >- "rustc-serialize 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", >- "syntex_pos 0.54.0 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -985,7 +985,7 @@ version = "0.54.0" >- source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", > "rustc-serialize 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", >- "syntex_errors 0.54.0 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -1019,7 +1019,7 @@ version = "0.2.3" >+ "syntex_pos 0.58.1 (registry+https://github.com/rust-lang/crates.io-index)", >+ "term 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -991,7 +991,7 @@ version = "0.3.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9420,7 +9551,7 @@ index 2561f3856303..ab148dfb5e13 100644 > "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -1029,7 +1029,7 @@ version = "3.0.0" >+@@ -1001,7 +1001,7 @@ version = "3.0.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9429,7 +9560,7 @@ index 2561f3856303..ab148dfb5e13 100644 > ] > > [[package]] >-@@ -1057,7 +1057,7 @@ version = "0.1.36" >+@@ -1024,7 +1024,7 @@ version = "0.1.36" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9438,56 +9569,38 @@ index 2561f3856303..ab148dfb5e13 100644 > "redox_syscall 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", > "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", > ] >-@@ -1223,7 +1223,7 @@ name = "x11" >- version = "2.12.1" >- source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "metadeps 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", >- ] >- >-@@ -1290,7 +1290,7 @@ dependencies = [ >+@@ -1225,7 +1225,7 @@ dependencies = [ > "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" >- "checksum khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "09c9d3760673c427d46f91a0350f0a84a52e6bc5a84adf26dc610b6c52436630" >+ "checksum khronos_api 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d5a08e2a31d665af8f1ca437eab6d00a93c9d62a549f73f9ed8fc2e55b5a91a7" > "checksum lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6abe0ee2e758cd6bc8a2cd56726359007748fbf4128da998b65d0b70f881e19b" > -"checksum libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)" = "684f330624d8c3784fb9558ca46c4ce488073a8d22450415c5eb4f4cfb0d11b5" > +"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" >- "checksum libloading 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fd1835a714c1f67ba073a493493c23686a480e2614e208c921834808b1f19d8f" >+ "checksum libloading 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "be99f814beb3e9503a786a592c909692bb6d4fc5a695f6ed7987223acfbd5194" > "checksum log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ab83497bf8bf4ed2a74259c1c802351fcd67a65baa86394b6ba73c36f4838054" > "checksum matches 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "efd7622e3022e1a6eaa602c4cea8912254e5582c9c692e9167714182244801b1" > diff --git toolkit/library/rust/Cargo.lock toolkit/library/rust/Cargo.lock > index d69359a9a640..99443b59f1af 100644 > --- toolkit/library/rust/Cargo.lock > +++ toolkit/library/rust/Cargo.lock >-@@ -119,7 +119,7 @@ version = "0.1.5" >+@@ -66,7 +66,7 @@ version = "0.2.2" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >- "gleam 0.2.32 (registry+https://github.com/rust-lang/crates.io-index)", >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >- [[package]] >-@@ -130,7 +130,7 @@ dependencies = [ >- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -158,7 +158,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+ dependencies = [ >+ "bitflags 0.8.2 (registry+https://github.com/rust-lang/crates.io-index)", > "glob 0.2.11 (registry+https://github.com/rust-lang/crates.io-index)", >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "libloading 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", >+ "libloading 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -141,7 +141,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >- "ansi_term 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "strsim 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "term_size 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)", >- "unicode-segmentation 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -155,7 +155,7 @@ version = "0.3.0" >+@@ -183,7 +183,7 @@ version = "0.3.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "core-foundation-sys 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9496,7 +9609,7 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -163,7 +163,7 @@ name = "core-foundation-sys" >+@@ -191,7 +191,7 @@ name = "core-foundation-sys" > version = "0.3.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9505,7 +9618,7 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -172,7 +172,7 @@ version = "0.7.0" >+@@ -200,7 +200,7 @@ version = "0.7.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "core-foundation 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9514,7 +9627,7 @@ index d69359a9a640..99443b59f1af 100644 > "serde 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -183,7 +183,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -211,7 +211,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "core-foundation 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)", > "core-graphics 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9523,7 +9636,16 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -316,7 +316,7 @@ name = "freetype" >+@@ -270,7 +270,7 @@ dependencies = [ >+ "gdi32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", >+ "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+ "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "serde 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", >+ "serde_derive 0.9.11 (registry+https://github.com/rust-lang/crates.io-index)", >+ "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -307,7 +307,7 @@ name = "freetype" > version = "0.2.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9532,16 +9654,16 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -346,7 +346,7 @@ dependencies = [ >+@@ -339,7 +339,7 @@ dependencies = [ >+ "atomic_refcell 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", >+ "cssparser 0.14.0 (registry+https://github.com/rust-lang/crates.io-index)", > "env_logger 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)", >- "euclid 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", >- "num_cpus 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", >+ "nsstring_vendor 0.1.0", > "parking_lot 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -441,7 +441,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -437,7 +437,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > > [[package]] > name = "libc" >@@ -9550,7 +9672,7 @@ index d69359a9a640..99443b59f1af 100644 > source = "registry+https://github.com/rust-lang/crates.io-index" > > [[package]] >-@@ -470,7 +470,7 @@ name = "memchr" >+@@ -465,7 +465,7 @@ name = "memchr" > version = "1.0.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9559,7 +9681,7 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -530,7 +530,7 @@ name = "num_cpus" >+@@ -532,7 +532,7 @@ name = "num_cpus" > version = "1.2.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >@@ -9568,79 +9690,61 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -592,7 +592,7 @@ version = "0.2.0" >+@@ -570,7 +570,7 @@ version = "0.2.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", >- "smallvec 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)", >+ "smallvec 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)", > "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -677,7 +677,7 @@ name = "rand" >- version = "0.3.15" >- source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -650,7 +650,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+ name = "pulse-ffi" >+ version = "0.1.0" > dependencies = [ > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > ] > > [[package]] >-@@ -686,7 +686,7 @@ version = "0.6.0" >+@@ -683,7 +683,7 @@ name = "rand" >+ version = "0.3.15" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >+- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >++ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ ] >+ >+ [[package]] >+@@ -702,7 +702,7 @@ dependencies = [ > "deque 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", >+ "futures 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)", >+ "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", > "num_cpus 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", > "rand 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)", > ] >-@@ -717,7 +717,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" >+@@ -733,7 +733,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" > name = "rust_url_capi" > version = "0.0.1" > dependencies = [ > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >+ "nserror 0.1.0", > "nsstring 0.1.0", >- "url 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", >- ] >-@@ -790,7 +790,7 @@ dependencies = [ >- "gdi32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "serde 0.9.9 (registry+https://github.com/rust-lang/crates.io-index)", >- "serde_codegen 0.9.0 (registry+https://github.com/rust-lang/crates.io-index)", >- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -845,7 +845,7 @@ version = "0.1.5" >- source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >- "lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- ] >- >- [[package]] >-@@ -950,7 +950,7 @@ name = "syntex_errors" >- version = "0.54.0" >- source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", >- "rustc-serialize 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", >- "syntex_pos 0.54.0 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -972,7 +972,7 @@ version = "0.54.0" >+ "url 1.4.1 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -935,7 +935,7 @@ name = "syntex_errors" >+ version = "0.58.1" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ >- "bitflags 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", > - "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", > + "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)", > "rustc-serialize 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)", >- "syntex_errors 0.54.0 (registry+https://github.com/rust-lang/crates.io-index)", >-@@ -1006,7 +1006,7 @@ version = "0.2.3" >+ "syntex_pos 0.58.1 (registry+https://github.com/rust-lang/crates.io-index)", >+ "term 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", >+@@ -978,7 +978,7 @@ version = "0.3.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9649,7 +9753,7 @@ index d69359a9a640..99443b59f1af 100644 > "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", > ] > >-@@ -1016,7 +1016,7 @@ version = "3.0.0" >+@@ -988,7 +988,7 @@ version = "3.0.0" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9658,7 +9762,7 @@ index d69359a9a640..99443b59f1af 100644 > ] > > [[package]] >-@@ -1044,7 +1044,7 @@ version = "0.1.36" >+@@ -1011,7 +1011,7 @@ version = "0.1.36" > source = "registry+https://github.com/rust-lang/crates.io-index" > dependencies = [ > "kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)", >@@ -9667,21 +9771,12 @@ index d69359a9a640..99443b59f1af 100644 > "redox_syscall 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", > "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", > ] >-@@ -1210,7 +1210,7 @@ name = "x11" >- version = "2.12.1" >- source = "registry+https://github.com/rust-lang/crates.io-index" >- dependencies = [ >-- "libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)", >-+ "libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)", >- "metadeps 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)", >- ] >- >-@@ -1277,7 +1277,7 @@ dependencies = [ >+@@ -1212,7 +1212,7 @@ dependencies = [ > "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" >- "checksum khronos_api 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "09c9d3760673c427d46f91a0350f0a84a52e6bc5a84adf26dc610b6c52436630" >+ "checksum khronos_api 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "d5a08e2a31d665af8f1ca437eab6d00a93c9d62a549f73f9ed8fc2e55b5a91a7" > "checksum lazy_static 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6abe0ee2e758cd6bc8a2cd56726359007748fbf4128da998b65d0b70f881e19b" > -"checksum libc 0.2.20 (registry+https://github.com/rust-lang/crates.io-index)" = "684f330624d8c3784fb9558ca46c4ce488073a8d22450415c5eb4f4cfb0d11b5" > +"checksum libc 0.2.24 (registry+https://github.com/rust-lang/crates.io-index)" = "38f5c2b18a287cf78b4097db62e20f43cace381dc76ae5c0a3073067f78b7ddc" >- "checksum libloading 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "fd1835a714c1f67ba073a493493c23686a480e2614e208c921834808b1f19d8f" >+ "checksum libloading 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "be99f814beb3e9503a786a592c909692bb6d4fc5a695f6ed7987223acfbd5194" > "checksum log 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ab83497bf8bf4ed2a74259c1c802351fcd67a65baa86394b6ba73c36f4838054" > "checksum matches 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "efd7622e3022e1a6eaa602c4cea8912254e5582c9c692e9167714182244801b1" >diff --git a/www/firefox/files/patch-bug1379430 b/www/firefox/files/patch-bug1379430 >new file mode 100644 >index 000000000000..61de0079f412 >--- /dev/null >+++ b/www/firefox/files/patch-bug1379430 >@@ -0,0 +1,65 @@ >+diff --git js/src/wasm/WasmSignalHandlers.cpp js/src/wasm/WasmSignalHandlers.cpp >+index b05054ecc470..fe634536f3f6 100755 >+--- js/src/wasm/WasmSignalHandlers.cpp >++++ js/src/wasm/WasmSignalHandlers.cpp >+@@ -108,17 +108,20 @@ class AutoSetHandlingSegFault >+ # define R10_sig(p) ((p)->sc_r10) >+ # define R11_sig(p) ((p)->sc_r11) >+ # define R12_sig(p) ((p)->sc_r12) >+-# define R13_sig(p) ((p)->sc_r13) >+-# define R14_sig(p) ((p)->sc_r14) >+ # if defined(__arm__) >++# define R13_sig(p) ((p)->sc_usr_sp) >++# define R14_sig(p) ((p)->sc_usr_lr) >+ # define R15_sig(p) ((p)->sc_pc) >+ # else >++# define R13_sig(p) ((p)->sc_r13) >++# define R14_sig(p) ((p)->sc_r14) >+ # define R15_sig(p) ((p)->sc_r15) >+ # endif >+ # if defined(__aarch64__) >+ # define EPC_sig(p) ((p)->sc_elr) >+ # define RFP_sig(p) ((p)->sc_x[29]) >+-# define RLR_sig(p) ((p)->sc_x[30]) >++# define RLR_sig(p) ((p)->sc_lr) >++# define R31_sig(p) ((p)->sc_sp) >+ # endif >+ # if defined(__mips__) >+ # define EPC_sig(p) ((p)->sc_pc) >+@@ -196,7 +199,7 @@ class AutoSetHandlingSegFault >+ # define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_PC]) >+ # define RFP_sig(p) ((p)->uc_mcontext.__gregs[_REG_X29]) >+ # define RLR_sig(p) ((p)->uc_mcontext.__gregs[_REG_X30]) >+-# define RSP_sig(p) ((p)->uc_mcontext.__gregs[_REG_X31]) >++# define R31_sig(p) ((p)->uc_mcontext.__gregs[_REG_SP]) >+ # endif >+ # if defined(__mips__) >+ # define EPC_sig(p) ((p)->uc_mcontext.__gregs[_REG_EPC]) >+@@ -223,19 +226,23 @@ class AutoSetHandlingSegFault >+ # define R8_sig(p) ((p)->uc_mcontext.mc_r8) >+ # define R9_sig(p) ((p)->uc_mcontext.mc_r9) >+ # define R10_sig(p) ((p)->uc_mcontext.mc_r10) >+-# define R11_sig(p) ((p)->uc_mcontext.mc_r11) >+ # define R12_sig(p) ((p)->uc_mcontext.mc_r12) >+-# define R13_sig(p) ((p)->uc_mcontext.mc_r13) >+-# define R14_sig(p) ((p)->uc_mcontext.mc_r14) >+ # if defined(__FreeBSD__) && defined(__arm__) >++# define R11_sig(p) ((p)->uc_mcontext.__gregs[_REG_R11]) >++# define R13_sig(p) ((p)->uc_mcontext.__gregs[_REG_R13]) >++# define R14_sig(p) ((p)->uc_mcontext.__gregs[_REG_R14]) >+ # define R15_sig(p) ((p)->uc_mcontext.__gregs[_REG_R15]) >+ # else >++# define R11_sig(p) ((p)->uc_mcontext.mc_r11) >++# define R13_sig(p) ((p)->uc_mcontext.mc_r13) >++# define R14_sig(p) ((p)->uc_mcontext.mc_r14) >+ # define R15_sig(p) ((p)->uc_mcontext.mc_r15) >+ # endif >+ # if defined(__FreeBSD__) && defined(__aarch64__) >+ # define EPC_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_elr) >+ # define RFP_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_x[29]) >+-# define RLR_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_x[30]) >++# define RLR_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_lr) >++# define R31_sig(p) ((p)->uc_mcontext.mc_gpregs.gp_sp) >+ # endif >+ # if defined(__FreeBSD__) && defined(__mips__) >+ # define EPC_sig(p) ((p)->uc_mcontext.mc_pc) >diff --git a/www/firefox/files/patch-bug702179 b/www/firefox/files/patch-bug702179 >index bb642382dfd8..0c998526736e 100644 >--- a/www/firefox/files/patch-bug702179 >+++ b/www/firefox/files/patch-bug702179 >@@ -1,13 +1,12 @@ >---- js/src/moz.build.orig 2015-12-16 12:32:04.574425000 +0100 >-+++ js/src/moz.build 2015-12-16 12:32:09.032032000 +0100 >-@@ -671,10 +671,6 @@ CFLAGS += CONFIG['MOZ_ICU_CFLAGS'] >- CXXFLAGS += CONFIG['MOZ_ICU_CFLAGS'] >- LOCAL_INCLUDES += CONFIG['MOZ_ICU_INCLUDES'] >+Don't build static JS lib to make sure DTrace probes are picked up. >+ >+--- js/src/build/moz.build.orig 2017-04-16 18:00:50 UTC >++++ js/src/build/moz.build >+@@ -71,7 +71,3 @@ if CONFIG['OS_ARCH'] == 'SunOS': >+ ] > >+ OS_LIBS += CONFIG['REALTIME_LIBS'] >+- > -NO_EXPAND_LIBS = True > - > -DIST_INSTALL = True >-- >- # Prepare self-hosted JS code for embedding >- GENERATED_FILES += ['selfhosted.out.h'] >- selfhosted = GENERATED_FILES['selfhosted.out.h'] >diff --git a/www/firefox/files/patch-bug826985 b/www/firefox/files/patch-bug826985 >index 1f21f8f960cd..8e23b9382748 100644 >--- a/www/firefox/files/patch-bug826985 >+++ b/www/firefox/files/patch-bug826985 >@@ -51,18 +51,6 @@ index b483cd1..f1dd1f0 100644 > # basic stuff for everything > 'include_internal_video_render': 0, > 'clang_use_chrome_plugins': 0, >-diff --git media/webrtc/signaling/test/common.build media/webrtc/signaling/test/common.build >-index b483cd1..f1dd1f0 100644 >---- media/webrtc/signaling/test/common.build >-+++ media/webrtc/signaling/test/common.build >-@@ -99,6 +99,7 @@ if CONFIG['JS_SHARED_LIBRARY']: >- >- USE_LIBS += ['mozglue'] >- >-+OS_LIBS += CONFIG['MOZ_LIBV4L2_LIBS'] >- OS_LIBS += CONFIG['MOZ_WEBRTC_X11_LIBS'] >- OS_LIBS += CONFIG['REALTIME_LIBS'] >- > diff --git media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc > index 239a292..bab496c 100644 > --- media/webrtc/trunk/webrtc/modules/video_capture/linux/device_info_linux.cc >diff --git a/www/firefox/files/patch-bug847568 b/www/firefox/files/patch-bug847568 >index 9ef2dbadd362..0deb5a504f56 100644 >--- a/www/firefox/files/patch-bug847568 >+++ b/www/firefox/files/patch-bug847568 >@@ -261,7 +261,7 @@ index 9297e4d6f501..d8e273887e4b 100644 > +option('--with-system-harfbuzz', > + help="Use system harfbuzz (located with pkgconfig)") > + >-+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.3', >++system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.4.6', > + when='--with-system-harfbuzz') > + > +set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True)) >diff --git a/www/firefox/files/patch-bug981348 b/www/firefox/files/patch-bug981348 >deleted file mode 100644 >index 0c2ffea1ef7b..000000000000 >--- a/www/firefox/files/patch-bug981348 >+++ /dev/null >@@ -1,61 +0,0 @@ >-diff --git dom/system/OSFileConstants.cpp dom/system/OSFileConstants.cpp >-index 88bba9baa401..99f240952dfe 100644 >---- dom/system/OSFileConstants.cpp >-+++ dom/system/OSFileConstants.cpp >-@@ -16,14 +16,17 @@ >- #include "dirent.h" >- #include "poll.h" >- #include "sys/stat.h" >--#if defined(ANDROID) >-+#if defined(XP_LINUX) >- #include <sys/vfs.h> >- #define statvfs statfs >-+#define f_frsize f_bsize >- #else >- #include "sys/statvfs.h" >-+#endif // defined(XP_LINUX) >-+#if !defined(ANDROID) >- #include "sys/wait.h" >- #include <spawn.h> >--#endif // defined(ANDROID) >-+#endif // !defined(ANDROID) >- #endif // defined(XP_UNIX) >- >- #if defined(XP_LINUX) >-@@ -699,7 +702,7 @@ static const dom::ConstantSpec gLibcProperties[] = >- >- { "OSFILE_SIZEOF_STATVFS", JS::Int32Value(sizeof (struct statvfs)) }, >- >-- { "OSFILE_OFFSETOF_STATVFS_F_BSIZE", JS::Int32Value(offsetof (struct statvfs, f_bsize)) }, >-+ { "OSFILE_OFFSETOF_STATVFS_F_FRSIZE", JS::Int32Value(offsetof (struct statvfs, f_frsize)) }, >- { "OSFILE_OFFSETOF_STATVFS_F_BAVAIL", JS::Int32Value(offsetof (struct statvfs, f_bavail)) }, >- >- #endif // defined(XP_UNIX) >-diff --git toolkit/components/osfile/modules/osfile_unix_back.jsm toolkit/components/osfile/modules/osfile_unix_back.jsm >-index a028dda7d5ec..f5c632e3d7e5 100644 >---- toolkit/components/osfile/modules/osfile_unix_back.jsm >-+++ toolkit/components/osfile/modules/osfile_unix_back.jsm >-@@ -228,8 +228,8 @@ >- let statvfs = new SharedAll.HollowStructure("statvfs", >- Const.OSFILE_SIZEOF_STATVFS); >- >-- statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BSIZE, >-- "f_bsize", Type.unsigned_long.implementation); >-+ statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_FRSIZE, >-+ "f_frsize", Type.unsigned_long.implementation); >- statvfs.add_field_at(Const.OSFILE_OFFSETOF_STATVFS_F_BAVAIL, >- "f_bavail", Type.fsblkcnt_t.implementation); >- >-diff --git toolkit/components/osfile/modules/osfile_unix_front.jsm toolkit/components/osfile/modules/osfile_unix_front.jsm >-index bd60d4d8419c..a8cd6b546b0e 100644 >---- toolkit/components/osfile/modules/osfile_unix_front.jsm >-+++ toolkit/components/osfile/modules/osfile_unix_front.jsm >-@@ -399,7 +399,7 @@ >- throw_on_negative("statvfs", (UnixFile.statvfs || UnixFile.statfs)(sourcePath, fileSystemInfoPtr)); >- >- let bytes = new Type.uint64_t.implementation( >-- fileSystemInfo.f_bsize * fileSystemInfo.f_bavail); >-+ fileSystemInfo.f_frsize * fileSystemInfo.f_bavail); >- >- return bytes.value; >- }; >diff --git a/www/firefox/files/patch-python_futures_concurrent_futures_process.py b/www/firefox/files/patch-python_futures_concurrent_futures_process.py >deleted file mode 100644 >index 5327af944b8b..000000000000 >--- a/www/firefox/files/patch-python_futures_concurrent_futures_process.py >+++ /dev/null >@@ -1,15 +0,0 @@ >---- python/futures/concurrent/futures/process.py.orig 2017-04-11 04:15:19 UTC >-+++ python/futures/concurrent/futures/process.py >-@@ -247,7 +247,11 @@ def _check_system_limits(): >- _system_limits_checked = True >- try: >- import os >-- nsems_max = os.sysconf("SC_SEM_NSEMS_MAX") >-+ if sys.platform.startswith('freebsd'): >-+ # sem(4) confuses sysconf(3) on FreeBSD < 11.1 >-+ nsems_max = -1 >-+ else: >-+ nsems_max = os.sysconf("SC_SEM_NSEMS_MAX") >- except (AttributeError, ValueError): >- # sysconf not available or setting not available >- return >diff --git a/www/firefox/files/patch-rust-option b/www/firefox/files/patch-rust-option >index 57da0de6038e..e60e11b111ee 100644 >--- a/www/firefox/files/patch-rust-option >+++ b/www/firefox/files/patch-rust-option >@@ -1,4 +1,4 @@ >-Revert bug 1284816 and bug 1341967 to postpone bustage on non-x86 archs. >+Revert bug 1284816, bug 1341967, bug 1336153 to postpone bustage on non-x86 archs. > > diff --git browser/confvars.sh browser/confvars.sh > index d8dcd99c2757..740d9d3e5fcf 100755 >@@ -56,11 +56,58 @@ index 267d989f1597..f709820e60ae 100644 > if not rustc_info: > die(dedent('''\ > Rust compiler not found. >+@@ -97,6 +110,9 @@ def rust_compiler(rustc_info, cargo_info): >+ >+ return True >+ >++set_define('MOZ_RUST', rust_compiler) >++set_config('MOZ_RUST', rust_compiler) >++ >+ @template >+ def rust_triple_alias(host_or_target): >+ """Template defining the alias used for rustc's --target flag. >+@@ -227,7 +243,8 @@ set_config('RUST_HOST_TARGET', rust_host_triple) >+ >+ @depends(rust_target_triple) >+ def rust_target_env_name(triple): >+- return triple.upper().replace('-','_') >++ if triple: >++ return triple.upper().replace('-','_') >+ >+ # We need this to form various Cargo environment variables, as there is no >+ # uppercase function in make, and we don't want to shell out just for >+@@ -235,5 +252,6 @@ def rust_target_env_name(triple): >+ set_config('RUST_TARGET_ENV_NAME', rust_target_env_name) >+ >+ # Until we remove all the other Rust checks in old-configure. >++add_old_configure_assignment('MOZ_RUST', rust_compiler) >+ add_old_configure_assignment('RUSTC', rustc) >+ add_old_configure_assignment('RUST_TARGET', rust_target_triple) >+diff --git config/rules.mk config/rules.mk >+index 94cc5556e3d0..7b143ebc5146 100644 >+--- config/rules.mk >++++ config/rules.mk >+@@ -900,6 +900,7 @@ endif >+ >+ $(foreach file,$(DUMP_SYMS_TARGETS),$(eval $(call syms_template,$(file),$(file)_syms.track))) >+ >++ifdef MOZ_RUST >+ cargo_host_flag := --target=$(RUST_HOST_TARGET) >+ cargo_target_flag := --target=$(RUST_TARGET) >+ >+@@ -1055,6 +1056,7 @@ force-cargo-host-program-build: >+ >+ $(HOST_RUST_PROGRAMS): force-cargo-host-program-build >+ endif # HOST_RUST_PROGRAMS >++endif # MOZ_RUST >+ >+ $(SOBJS): >+ $(REPORT_BUILD) > diff --git dom/media/MediaPrefs.h dom/media/MediaPrefs.h > index 4dcc659222a4..559334d89fd1 100644 > --- dom/media/MediaPrefs.h > +++ dom/media/MediaPrefs.h >-@@ -165,7 +165,7 @@ private: >+@@ -183,7 +183,7 @@ private: > DECL_MEDIA_PREF("media.ogg.flac.enabled", FlacInOgg, bool, false); > DECL_MEDIA_PREF("media.flac.enabled", FlacEnabled, bool, true); > >@@ -69,6 +116,42 @@ index 4dcc659222a4..559334d89fd1 100644 > DECL_MEDIA_PREF("media.rust.test_mode", RustTestMode, bool, false); > #endif > >+diff --git dom/media/gtest/moz.build dom/media/gtest/moz.build >+index c66ac4a9437f..e2203c0a4321 100644 >+--- dom/media/gtest/moz.build >++++ dom/media/gtest/moz.build >+@@ -22,7 +22,6 @@ UNIFIED_SOURCES += [ >+ 'TestMozPromise.cpp', >+ 'TestMP3Demuxer.cpp', >+ 'TestMP4Demuxer.cpp', >+- 'TestRust.cpp', >+ 'TestTrackEncoder.cpp', >+ 'TestVideoSegment.cpp', >+ 'TestVideoUtils.cpp', >+@@ -36,6 +35,9 @@ if CONFIG['MOZ_WEBM_ENCODER']: >+ 'TestWebMWriter.cpp', >+ ] >+ >++if CONFIG['MOZ_RUST']: >++ UNIFIED_SOURCES += ['TestRust.cpp',] >++ >+ TEST_HARNESS_FILES.gtest += [ >+ '../test/gizmo-frag.mp4', >+ '../test/gizmo.mp4', >+diff --git media/libcubeb/src/moz.build media/libcubeb/src/moz.build >+index c65b53b80f63..8953f646e831 100644 >+--- media/libcubeb/src/moz.build >++++ media/libcubeb/src/moz.build >+@@ -32,7 +32,8 @@ if CONFIG['MOZ_PULSEAUDIO']: >+ 'cubeb_pulse.c', >+ ] >+ DEFINES['USE_PULSE'] = True >+- DEFINES['USE_PULSE_RUST'] = True >++ if CONFIG['MOZ_RUST']: >++ DEFINES['USE_PULSE_RUST'] = True >+ >+ if CONFIG['MOZ_JACK']: >+ SOURCES += [ > diff --git media/libstagefright/binding/DecoderData.cpp media/libstagefright/binding/DecoderData.cpp > index 109ea329d154..a06e533b1e62 100644 > --- media/libstagefright/binding/DecoderData.cpp >@@ -84,16 +167,16 @@ index 109ea329d154..a06e533b1e62 100644 > +#endif // MOZ_RUST_MP4PARSE > > using namespace stagefright; >- >-@@ -187,6 +189,7 @@ MP4VideoInfo::Update(const MetaData* aMetaData, const char* aMimeType) >- >+ using mozilla::media::TimeUnit; >+@@ -177,6 +179,7 @@ MP4VideoInfo::Update(const MetaData* aMetaData, const char* aMimeType) >+ FindData(aMetaData, kKeyAVCC, mExtraData); > } > > +#ifdef MOZ_RUST_MP4PARSE > static void > UpdateTrackProtectedInfo(mozilla::TrackInfo& aConfig, > const mp4parse_sinf_info& aSinf) >-@@ -266,6 +269,7 @@ MP4VideoInfo::Update(const mp4parse_track_info* track, >+@@ -263,6 +266,7 @@ MP4VideoInfo::Update(const mp4parse_track_info* track, > mExtraData->AppendElements(video->extra_data.data, video->extra_data.length); > } > } >@@ -105,7 +188,7 @@ diff --git media/libstagefright/binding/MP4Metadata.cpp media/libstagefright/bin > index 5c3810d99a38..5d14dfd8b8a9 100644 > --- media/libstagefright/binding/MP4Metadata.cpp > +++ media/libstagefright/binding/MP4Metadata.cpp >-@@ -19,14 +19,18 @@ >+@@ -20,14 +20,18 @@ > #include "mp4_demuxer/MP4Metadata.h" > #include "mp4_demuxer/Stream.h" > #include "MediaPrefs.h" >@@ -123,8 +206,8 @@ index 5c3810d99a38..5d14dfd8b8a9 100644 > +#endif // MOZ_RUST_MP4PARSE > > using namespace stagefright; >- >-@@ -101,6 +103,7 @@ private: >+ using mozilla::media::TimeUnit; >+@@ -105,6 +109,7 @@ private: > bool mCanSeek; > }; > >@@ -132,19 +215,35 @@ index 5c3810d99a38..5d14dfd8b8a9 100644 > // Wrap an mp4_demuxer::Stream to remember the read offset. > > class RustStreamAdaptor { >-@@ -145,9 +149,11 @@ private: >+@@ -151,6 +156,7 @@ private: > RustStreamAdaptor mRustSource; > mozilla::UniquePtr<mp4parse_parser, FreeMP4Parser> mRustParser; > }; > +#endif // MOZ_RUST_MP4PARSE > >+ class IndiceWrapperStagefright : public IndiceWrapper { >+ public: >+@@ -187,6 +193,7 @@ IndiceWrapperStagefright::GetIndice(size_t aIndex, Index::Indice& aIndice) const >+ return true; >+ } >+ >++#ifdef MOZ_RUST_MP4PARSE >+ // the owner of mIndice is rust mp4 paser, so lifetime of this class >+ // SHOULD NOT longer than rust parser. >+ class IndiceWrapperRust : public IndiceWrapper >+@@ -232,9 +239,11 @@ IndiceWrapperRust::GetIndice(size_t aIndex, Index::Indice& aIndice) const >+ aIndice.sync = indice->sync; >+ return true; >+ } >++#endif // MOZ_RUST_MP4PARSE >+ > MP4Metadata::MP4Metadata(Stream* aSource) > : mStagefright(MakeUnique<MP4MetadataStagefright>(aSource)) > +#ifdef MOZ_RUST_MP4PARSE > , mRust(MakeUnique<MP4MetadataRust>(aSource)) >- , mPreferRust(false) >+ , mPreferRust(MediaPrefs::EnableRustMP4Parser()) > , mReportedAudioTrackTelemetry(false) >-@@ -155,6 +161,7 @@ MP4Metadata::MP4Metadata(Stream* aSource) >+@@ -242,6 +251,7 @@ MP4Metadata::MP4Metadata(Stream* aSource) > #ifndef RELEASE_OR_BETA > , mRustTestMode(MediaPrefs::RustTestMode()) > #endif >@@ -152,44 +251,46 @@ index 5c3810d99a38..5d14dfd8b8a9 100644 > { > } > >-@@ -186,6 +193,7 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const >- { >- uint32_t numTracks = mStagefright->GetNumberTracks(aType); >+@@ -274,8 +284,11 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const >+ MP4Metadata::ResultAndTrackCount numTracks = >+ mStagefright->GetNumberTracks(aType); > > +#ifdef MOZ_RUST_MP4PARSE > if (!mRust) { >++#endif // MOZ_RUST_MP4PARSE > return numTracks; >++#ifdef MOZ_RUST_MP4PARSE > } >-@@ -211,10 +219,12 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const >- mPreferRust = true; >- return numTracksRust; >- } >-+#endif // MOZ_RUST_MP4PARSE > >- return numTracks; >+ MP4Metadata::ResultAndTrackCount numTracksRust = >+@@ -350,8 +363,10 @@ MP4Metadata::GetNumberTracks(mozilla::TrackInfo::TrackType aType) const >+ // Same non-error numbers, just return any. >+ // (Choosing Rust here, in case it carries a warning, we'd want to know that.) >+ return numTracksRust; >++#endif // MOZ_RUST_MP4PARSE > } > > +#ifdef MOZ_RUST_MP4PARSE > bool MP4Metadata::ShouldPreferRust() const { > if (!mRust) { > return false; >-@@ -245,6 +255,7 @@ bool MP4Metadata::ShouldPreferRust() const { >+@@ -389,6 +404,7 @@ bool MP4Metadata::ShouldPreferRust() const { > // Otherwise, fall back. > return false; > } > +#endif // MOZ_RUST_MP4PARSE > >- mozilla::UniquePtr<mozilla::TrackInfo> >- MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, >-@@ -253,6 +264,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, >- mozilla::UniquePtr<mozilla::TrackInfo> info = >- mStagefright->GetTrackInfo(aType, aTrackNumber); >+ static const char* >+ GetDifferentField(const mozilla::TrackInfo& info, >+@@ -443,6 +459,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, >+ MP4Metadata::ResultAndTrackInfo info = >+ mStagefright->GetTrackInfo(aType, aTrackNumber); > > +#ifdef MOZ_RUST_MP4PARSE > if (!mRust) { > return info; > } >-@@ -305,6 +317,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackTyp >+@@ -514,6 +531,7 @@ MP4Metadata::GetTrackInfo(mozilla::TrackInfo::TrackType aType, > if (mPreferRust) { > return infoRust; > } >@@ -197,15 +298,15 @@ index 5c3810d99a38..5d14dfd8b8a9 100644 > > return info; > } >-@@ -319,6 +334,7 @@ const CryptoFile& >+@@ -528,6 +546,7 @@ MP4Metadata::ResultAndCryptoFile > MP4Metadata::Crypto() const > { >- const CryptoFile& crypto = mStagefright->Crypto(); >+ MP4Metadata::ResultAndCryptoFile crypto = mStagefright->Crypto(); > +#ifdef MOZ_RUST_MP4PARSE >- const CryptoFile& rustCrypto = mRust->Crypto(); >+ MP4Metadata::ResultAndCryptoFile rustCrypto = mRust->Crypto(); > > #ifndef RELEASE_OR_BETA >-@@ -330,6 +347,7 @@ MP4Metadata::Crypto() const >+@@ -548,6 +567,7 @@ MP4Metadata::Crypto() const > if (mPreferRust) { > return rustCrypto; > } >@@ -213,17 +314,59 @@ index 5c3810d99a38..5d14dfd8b8a9 100644 > > return crypto; > } >-@@ -594,6 +612,7 @@ MP4MetadataStagefright::Metadata(Stream* aSource) >- return parser->Metadata(); >+@@ -556,17 +576,22 @@ MP4Metadata::ResultAndIndice >+ MP4Metadata::GetTrackIndice(mozilla::TrackID aTrackID) >+ { >+ FallibleTArray<Index::Indice> indiceSF; >++#ifdef MOZ_RUST_MP4PARSE >+ if (!mPreferRust >+ #ifndef RELEASE_OR_BETA >+ || mRustTestMode >+ #endif >+ ) { >++#endif // MOZ_RUST_MP4PARSE >+ MediaResult rv = mStagefright->ReadTrackIndex(indiceSF, aTrackID); >+ if (NS_FAILED(rv)) { >+ return {Move(rv), nullptr}; >+ } >++#ifdef MOZ_RUST_MP4PARSE >+ } >++#endif // MOZ_RUST_MP4PARSE >+ >++#ifdef MOZ_RUST_MP4PARSE >+ mp4parse_byte_data indiceRust = {}; >+ if (mPreferRust >+ #ifndef RELEASE_OR_BETA >+@@ -592,13 +617,18 @@ MP4Metadata::GetTrackIndice(mozilla::TrackID aTrackID) >+ } >+ } >+ #endif >++#endif // MOZ_RUST_MP4PARSE >+ >+ UniquePtr<IndiceWrapper> indice; >++#ifdef MOZ_RUST_MP4PARSE >+ if (mPreferRust) { >+ indice = mozilla::MakeUnique<IndiceWrapperRust>(indiceRust); >+ } else { >++#endif // MOZ_RUST_MP4PARSE >+ indice = mozilla::MakeUnique<IndiceWrapperStagefright>(indiceSF); >++#ifdef MOZ_RUST_MP4PARSE >+ } >++#endif // MOZ_RUST_MP4PARSE >+ >+ return {NS_OK, Move(indice)}; >+ } >+@@ -856,6 +886,7 @@ MP4MetadataStagefright::Metadata(Stream* aSource) >+ return {NS_OK, Move(buffer)}; > } > > +#ifdef MOZ_RUST_MP4PARSE > bool > RustStreamAdaptor::Read(uint8_t* buffer, uintptr_t size, size_t* bytes_read) > { >-@@ -859,5 +878,6 @@ MP4MetadataRust::Metadata(Stream* aSource) >+@@ -1152,5 +1183,6 @@ MP4MetadataRust::Metadata(Stream* aSource) > MOZ_ASSERT(false, "Not yet implemented"); >- return nullptr; >+ return {NS_ERROR_NOT_IMPLEMENTED, nullptr}; > } > +#endif // MOZ_RUST_MP4PARSE > >@@ -272,7 +415,17 @@ diff --git media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h media/ > index 492c9c1c1bc3..e16dbbd1155e 100644 > --- media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h > +++ media/libstagefright/binding/include/mp4_demuxer/MP4Metadata.h >-@@ -36,6 +36,7 @@ public: >+@@ -13,7 +13,9 @@ >+ #include "MediaInfo.h" >+ #include "MediaResult.h" >+ #include "Stream.h" >++#ifdef MOZ_RUST_MP4PARSE >+ #include "mp4parse.h" >++#endif // MOZ_RUST_MP4PARSE >+ >+ namespace mp4_demuxer { >+ >+@@ -82,6 +84,7 @@ public: > > private: > UniquePtr<MP4MetadataStagefright> mStagefright; >@@ -280,7 +433,7 @@ index 492c9c1c1bc3..e16dbbd1155e 100644 > UniquePtr<MP4MetadataRust> mRust; > mutable bool mPreferRust; > mutable bool mReportedAudioTrackTelemetry; >-@@ -44,6 +45,7 @@ private: >+@@ -90,6 +93,7 @@ private: > mutable bool mRustTestMode; > #endif > bool ShouldPreferRust() const; >@@ -288,6 +441,49 @@ index 492c9c1c1bc3..e16dbbd1155e 100644 > }; > > } // namespace mp4_demuxer >+diff --git media/libstagefright/gtest/moz.build media/libstagefright/gtest/moz.build >+index be4d56fc93f7..66fdd365f8f3 100644 >+--- media/libstagefright/gtest/moz.build >++++ media/libstagefright/gtest/moz.build >+@@ -38,12 +38,13 @@ TEST_HARNESS_FILES.gtest += [ >+ 'test_case_1351094.mp4', >+ ] >+ >+-UNIFIED_SOURCES += ['TestMP4Rust.cpp',] >+-TEST_HARNESS_FILES.gtest += [ >+- '../../../dom/media/test/street.mp4', >+-] >+-LOCAL_INCLUDES += [ >+- '../binding/include', >+-] >++if CONFIG['MOZ_RUST']: >++ UNIFIED_SOURCES += ['TestMP4Rust.cpp',] >++ TEST_HARNESS_FILES.gtest += [ >++ '../../../dom/media/test/street.mp4', >++ ] >++ LOCAL_INCLUDES += [ >++ '../binding/include', >++ ] >+ >+ FINAL_LIBRARY = 'xul-gtest' >+diff --git media/libstagefright/moz.build media/libstagefright/moz.build >+index af5d1194d621..6725a0179989 100644 >+--- media/libstagefright/moz.build >++++ media/libstagefright/moz.build >+@@ -83,9 +83,10 @@ SOURCES += [ >+ 'system/core/libutils/VectorImpl.cpp', >+ ] >+ >+-EXPORTS += [ >+- 'binding/include/mp4parse.h', >+-] >++if CONFIG['MOZ_RUST']: >++ EXPORTS += [ >++ 'binding/include/mp4parse.h', >++ ] >+ >+ UNIFIED_SOURCES += [ >+ 'binding/Adts.cpp', > diff --git mobile/android/confvars.sh mobile/android/confvars.sh > index e79b6f5c0707..eb62763acaf7 100644 > --- mobile/android/confvars.sh >@@ -301,21 +497,98 @@ index e79b6f5c0707..eb62763acaf7 100644 > # use custom widget for html:select > MOZ_USE_NATIVE_POPUP_WINDOWS=1 > >+diff --git netwerk/base/moz.build netwerk/base/moz.build >+index 61d022a9660e..e5ca1d77d859 100644 >+--- netwerk/base/moz.build >++++ netwerk/base/moz.build >+@@ -256,7 +256,7 @@ UNIFIED_SOURCES += [ >+ 'TLSServerSocket.cpp', >+ ] >+ >+-if CONFIG['MOZ_RUST_URLPARSE']: >++if CONFIG['MOZ_RUST'] and CONFIG['MOZ_RUST_URLPARSE']: >+ EXPORTS.mozilla.net += [ 'RustURL.h' ] >+ UNIFIED_SOURCES += [ 'RustURL.cpp' ] >+ >+diff --git netwerk/base/nsStandardURL.cpp netwerk/base/nsStandardURL.cpp >+index 608b918a4ecf..20bcdeb34ab8 100644 >+--- netwerk/base/nsStandardURL.cpp >++++ netwerk/base/nsStandardURL.cpp >+@@ -858,6 +858,7 @@ nsStandardURL::BuildNormalizedSpec(const char *spec) >+ if (!SegmentIs(spec, mScheme, "resource") && >+ !SegmentIs(spec, mScheme, "chrome")) { >+ nsAutoCString ipString; >++#ifdef MOZ_RUST >+ if (encHost.Length() > 0 && >+ encHost.First() == '[' && encHost.Last() == ']' && >+ ValidIPv6orHostname(encHost.get(), encHost.Length())) { >+@@ -866,7 +867,9 @@ nsStandardURL::BuildNormalizedSpec(const char *spec) >+ return rv; >+ } >+ encHost = ipString; >+- } else if (NS_SUCCEEDED(NormalizeIPv4(encHost, ipString))) { >++ } else >++#endif >++ if (NS_SUCCEEDED(NormalizeIPv4(encHost, ipString))) { >+ encHost = ipString; >+ } >+ } >+@@ -2112,6 +2115,7 @@ nsStandardURL::SetHost(const nsACString &input) >+ >+ if (!SegmentIs(mScheme, "resource") && !SegmentIs(mScheme, "chrome")) { >+ nsAutoCString ipString; >++#ifdef MOZ_RUST >+ if (hostBuf.Length() > 0 && >+ hostBuf.First() == '[' && hostBuf.Last() == ']' && >+ ValidIPv6orHostname(hostBuf.get(), hostBuf.Length())) { >+@@ -2120,7 +2124,9 @@ nsStandardURL::SetHost(const nsACString &input) >+ return rv; >+ } >+ hostBuf = ipString; >+- } else if (NS_SUCCEEDED(NormalizeIPv4(hostBuf, ipString))) { >++ } else >++#endif >++ if (NS_SUCCEEDED(NormalizeIPv4(hostBuf, ipString))) { >+ hostBuf = ipString; >+ } >+ } >+diff --git old-configure.in old-configure.in >+index 717a94fcc692..54b29d737cc1 100644 >+--- old-configure.in >++++ old-configure.in >+@@ -2330,9 +2330,14 @@ if test -n "$MOZ_MULET"; then >+ fi >+ >+ # Propagate feature switches for code written in rust from confvars.sh >+-if test -n "$MOZ_RUST_URLPARSE"; then >+- AC_DEFINE(MOZ_RUST_URLPARSE) >+- AC_SUBST(MOZ_RUST_URLPARSE) >++if test -n "$MOZ_RUST"; then >++ if test -n "$MOZ_RUST_MP4PARSE"; then >++ AC_DEFINE(MOZ_RUST_MP4PARSE) >++ fi >++ if test -n "$MOZ_RUST_URLPARSE"; then >++ AC_DEFINE(MOZ_RUST_URLPARSE) >++ AC_SUBST(MOZ_RUST_URLPARSE) >++ fi >+ fi >+ >+ AC_SUBST(MOZ_PHOENIX) > diff --git toolkit/components/telemetry/Histograms.json toolkit/components/telemetry/Histograms.json > index 061c55f6a5b6..e49dfd176952 100644 > --- toolkit/components/telemetry/Histograms.json > +++ toolkit/components/telemetry/Histograms.json >-@@ -6996,7 +6996,8 @@ >- "expires_in_version": "55", >+@@ -8320,7 +8320,8 @@ >+ "expires_in_version": "60", > "kind": "boolean", > "bug_numbers": [1220885], >-- "description": "(Bug 1220885) Whether the rust mp4 demuxer successfully parsed a stream segment." >-+ "description": "(Bug 1220885) Whether the rust mp4 demuxer successfully parsed a stream segment.", >+- "description": "Whether the rust mp4 demuxer successfully parsed a stream segment." >++ "description": "Whether the rust mp4 demuxer successfully parsed a stream segment.", > + "cpp_guard": "MOZ_RUST_MP4PARSE" > }, > "MEDIA_RUST_MP4PARSE_ERROR_CODE": { >- "alert_emails": ["giles@mozilla.com", "kinetik@flim.org"], >-@@ -7004,21 +7005,24 @@ >+ "record_in_processes": ["main", "content"], >+@@ -8329,7 +8330,8 @@ > "kind": "enumerated", > "n_values": 32, > "bug_numbers": [1238420], >@@ -324,8 +597,9 @@ index 061c55f6a5b6..e49dfd176952 100644 > + "cpp_guard": "MOZ_RUST_MP4PARSE" > }, > "MEDIA_RUST_MP4PARSE_TRACK_MATCH_AUDIO": { >- "alert_emails": ["giles@mozilla.com", "kinetik@flim.org"], >- "expires_in_version": "55", >+ "record_in_processes": ["main", "content"], >+@@ -8337,7 +8339,8 @@ >+ "expires_in_version": "60", > "kind": "boolean", > "bug_numbers": [1231169], > - "description": "Whether rust and stagefight mp4 parser audio track results match." >@@ -333,8 +607,9 @@ index 061c55f6a5b6..e49dfd176952 100644 > + "cpp_guard": "MOZ_RUST_MP4PARSE" > }, > "MEDIA_RUST_MP4PARSE_TRACK_MATCH_VIDEO": { >- "alert_emails": ["giles@mozilla.com", "kinetik@flim.org"], >- "expires_in_version": "55", >+ "record_in_processes": ["main", "content"], >+@@ -8345,7 +8348,8 @@ >+ "expires_in_version": "60", > "kind": "boolean", > "bug_numbers": [1231169], > - "description": "Whether rust and stagefight mp4 parser video track results match." >@@ -342,4 +617,200 @@ index 061c55f6a5b6..e49dfd176952 100644 > + "cpp_guard": "MOZ_RUST_MP4PARSE" > }, > "MEDIA_WMF_DECODE_ERROR": { >- "expires_in_version": "55", >+ "record_in_processes": ["main", "content", "gpu"], >+diff --git toolkit/library/gtest/moz.build toolkit/library/gtest/moz.build >+index 69a8fb1f4893..c684f48e456e 100644 >+--- toolkit/library/gtest/moz.build >++++ toolkit/library/gtest/moz.build >+@@ -7,7 +7,6 @@ >+ FINAL_TARGET = 'dist/bin/gtest' >+ >+ USE_LIBS += [ >+- 'gkrust-gtest', >+ 'static:xul', >+ # xul-gtest is an intermediate static library. It is used as FINAL_TARGET >+ # for gtest code. >+@@ -21,6 +20,11 @@ USE_LIBS += [ >+ # before StaticXULComponentStart. >+ Libxul('xul-gtest-real') >+ >++if CONFIG['MOZ_RUST']: >++ USE_LIBS += [ >++ 'gkrust-gtest', >++ ] >++ >+ DIRS += [ >+ 'static', >+ ] >+diff --git toolkit/library/moz.build toolkit/library/moz.build >+index 650f6eaba980..191e90ceb09a 100644 >+--- toolkit/library/moz.build >++++ toolkit/library/moz.build >+@@ -63,7 +63,7 @@ def Libxul(name): >+ >+ # This option should go away in bug 1290972, but we need to wait until >+ # Rust 1.12 has been released. >+- if CONFIG['OS_ARCH'] == 'Darwin': >++ if CONFIG['MOZ_RUST'] and CONFIG['OS_ARCH'] == 'Darwin': >+ LDFLAGS += ['-Wl,-no_compact_unwind'] >+ >+ Libxul('xul') >+@@ -343,4 +343,5 @@ USE_LIBS += ['StaticXULComponentsEnd'] >+ # The above library needs to be last for C++ purposes. This library, >+ # however, is entirely composed of Rust code, and needs to come after >+ # all the C++ code so any possible C++ -> Rust calls can be resolved. >+-USE_LIBS += ['gkrust'] >++if CONFIG['MOZ_RUST']: >++ USE_LIBS += ['gkrust'] >+diff --git toolkit/moz.configure toolkit/moz.configure >+index ac9d123224ce..e90da70f0fa5 100644 >+--- toolkit/moz.configure >++++ toolkit/moz.configure >+@@ -88,8 +88,7 @@ include('../js/moz.configure') >+ >+ # Rust >+ # ============================================================== >+-include('../build/moz.configure/rust.configure', >+- when='--enable-compile-environment') >++include('../build/moz.configure/rust.configure') >+ >+ >+ # L10N >+@@ -623,13 +622,13 @@ id_and_secret_keyfile('Leanplum SDK') >+ option('--enable-stylo', nargs='?', choices=('build',), >+ help='Include Stylo in the build and/or enable it at runtime') >+ >+-@depends('--enable-stylo') >+-def stylo_config(value): >++@depends('--enable-stylo', '--enable-rust') >++def stylo_config(value, rust_enabled): >+ build_stylo = None >+ enable_stylo = None >+ >+ # The default is to not build Stylo at all. >+- if value.origin == 'default': >++ if not rust_enabled or value.origin == 'default': >+ pass >+ elif value == 'build': >+ build_stylo = True >+@@ -769,12 +768,14 @@ set_config('SERVO_TARGET_DIR', servo_target_dir) >+ option('--enable-webrender', nargs='?', choices=('build',), >+ help='Include WebRender in the build and/or enable it at runtime') >+ >+-@depends('--enable-webrender', milestone) >+-def webrender(value, milestone): >++@depends('--enable-webrender', '--enable-rust', milestone) >++def webrender(value, rust_enabled, milestone): >+ build_webrender = None >+ enable_webrender = None >+ >+- if value.origin == 'default': >++ if not rust_enabled: >++ pass >++ elif value.origin == 'default': >+ # if nothing is specified, default to just building on Nightly >+ build_webrender = milestone.is_nightly >+ elif value == 'build': >+diff --git toolkit/toolkit.mozbuild toolkit/toolkit.mozbuild >+index b845aab48023..9215afc6dd2d 100644 >+--- toolkit/toolkit.mozbuild >++++ toolkit/toolkit.mozbuild >+@@ -133,16 +133,23 @@ if CONFIG['MOZ_PREF_EXTENSIONS']: >+ >+ DIRS += [ >+ '/devtools', >+- '/toolkit/library', >+- '/toolkit/library/gtest/rust', >+- '/toolkit/library/rust', >+- '/toolkit/library/StaticXULComponentsEnd', >+ '/services', >+ '/startupcache', >+ '/js/ductwork/debugger', >+ '/other-licenses/snappy', >+ ] >+ >++if CONFIG['MOZ_RUST']: >++ DIRS += [ >++ '/toolkit/library/gtest/rust', >++ '/toolkit/library/rust', >++ ] >++ >++DIRS += [ >++ '/toolkit/library/StaticXULComponentsEnd', >++ '/toolkit/library', >++] >++ >+ if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']: >+ DIRS += ['/toolkit/system/gnome'] >+ >+diff --git toolkit/xre/nsAppRunner.cpp toolkit/xre/nsAppRunner.cpp >+index 667c2eb1b365..6fb6cf102baa 100644 >+--- toolkit/xre/nsAppRunner.cpp >++++ toolkit/xre/nsAppRunner.cpp >+@@ -227,11 +227,13 @@ >+ extern uint32_t gRestartMode; >+ extern void InstallSignalHandlers(const char *ProgramName); >+ >++#ifdef MOZ_RUST >+ // This workaround is fixed in Rust 1.19. For details, see bug 1358151. >+ // Implementation in toolkit/library/rust/shared/lib.rs >+ extern "C" { >+ void rust_init_please_remove_this_after_updating_rust_1_19(); >+ } >++#endif >+ >+ #define FILE_COMPATIBILITY_INFO NS_LITERAL_CSTRING("compatibility.ini") >+ #define FILE_INVALIDATE_CACHES NS_LITERAL_CSTRING(".purgecaches") >+@@ -3122,8 +3124,10 @@ XREMain::XRE_mainInit(bool* aExitFlag) >+ return 1; >+ *aExitFlag = false; >+ >++#ifdef MOZ_RUST >+ // This workaround is fixed in Rust 1.19. For details, see bug 1358151. >+ rust_init_please_remove_this_after_updating_rust_1_19(); >++#endif >+ >+ atexit(UnexpectedExit); >+ auto expectedShutdown = mozilla::MakeScopeExit([&] { >+diff --git xpcom/base/nsDebugImpl.cpp xpcom/base/nsDebugImpl.cpp >+index e6bb623c258b..c49d61dce605 100644 >+--- xpcom/base/nsDebugImpl.cpp >++++ xpcom/base/nsDebugImpl.cpp >+@@ -148,14 +148,20 @@ nsDebugImpl::Abort(const char* aFile, int32_t aLine) >+ return NS_OK; >+ } >+ >++#ifdef MOZ_RUST >+ // From toolkit/library/rust/lib.rs >+ extern "C" void intentional_panic(const char* message); >++#endif >+ >+ NS_IMETHODIMP >+ nsDebugImpl::RustPanic(const char* aMessage) >+ { >++#ifdef MOZ_RUST >+ intentional_panic(aMessage); >+ return NS_OK; >++#else >++ return NS_ERROR_NOT_IMPLEMENTED; >++#endif >+ } >+ >+ NS_IMETHODIMP >+diff --git xpcom/rust/nsstring/gtest/moz.build xpcom/rust/nsstring/gtest/moz.build >+index 197411678815..5bed9e57e57d 100644 >+--- xpcom/rust/nsstring/gtest/moz.build >++++ xpcom/rust/nsstring/gtest/moz.build >+@@ -4,8 +4,9 @@ >+ # License, v. 2.0. If a copy of the MPL was not distributed with this >+ # file, You can obtain one at http://mozilla.org/MPL/2.0/. >+ >+-UNIFIED_SOURCES += [ >+- 'Test.cpp' >+-] >++if CONFIG['MOZ_RUST']: >++ UNIFIED_SOURCES += [ >++ 'Test.cpp' >++ ] >+ >+ FINAL_LIBRARY = 'xul-gtest' >diff --git a/www/firefox/files/patch-third__party_python_futures_concurrent_futures_process.py b/www/firefox/files/patch-third__party_python_futures_concurrent_futures_process.py >new file mode 100644 >index 000000000000..0f584dbca8e5 >--- /dev/null >+++ b/www/firefox/files/patch-third__party_python_futures_concurrent_futures_process.py >@@ -0,0 +1,15 @@ >+--- third_party/python/futures/concurrent/futures/process.py.orig 2017-04-11 04:15:19 UTC >++++ third_party/python/futures/concurrent/futures/process.py >+@@ -247,7 +247,11 @@ def _check_system_limits(): >+ _system_limits_checked = True >+ try: >+ import os >+- nsems_max = os.sysconf("SC_SEM_NSEMS_MAX") >++ if sys.platform.startswith('freebsd'): >++ # sem(4) confuses sysconf(3) on FreeBSD < 11.1 >++ nsems_max = -1 >++ else: >++ nsems_max = os.sysconf("SC_SEM_NSEMS_MAX") >+ except (AttributeError, ValueError): >+ # sysconf not available or setting not available >+ return
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 219963
:
183457
|
183533
|
183736
|
183737
|
183827
|
183933
|
184163
|
184285
|
184351
|
184692
|
184908
|
185168