Граф коммитов

761 Коммитов

Автор SHA1 Сообщение Дата
J.C. Jones 0b80ebcbcb Bug 1664298 - Upgrade authenticator-rs to v0.3.0 r=kjacobs
https://github.com/mozilla/authenticator-rs/releases/tag/v0.3.0

Major changes:

 * Move to Rust 2018 edition #125
 * Remove dependency on boxfnonce #121
 * Reworked error handling #130
 * Added a higher-level AuthenticatorService that can use multiple backends #123
 * Changed the C API to use the new AuthenticatorService #123
 * Added a Status channel for backends #122
 * Now obtaining HID report sizes from the descriptors #12
 * Add authenticator USB and Firmware details to the C API #93

Differential Revision: https://phabricator.services.mozilla.com/D89823
2020-09-10 23:49:02 +00:00
Zibi Braniecki 51dd2eebad Bug 1662309 - Update fluent-rs to 0.12. r=kamidphish
Differential Revision: https://phabricator.services.mozilla.com/D88942
2020-09-02 20:06:41 +00:00
Jon Bauman 5db1fd1dd5 Bug 1661583 - Update mp4parse-rust to fe90285. r=kinetik
- Enable fallible allocation in mp4parse_capi by default
- Switch from local implementation of fallible allocation to using
  fallible_collections crate
- Return error if any of the primary item data is missing

Differential Revision: https://phabricator.services.mozilla.com/D89091
2020-09-02 14:59:02 +00:00
Butkovits Atila c09561678c Backed out changeset 1ea91616c192 (bug 1662309) for reftest failures. CLOSED TREE 2020-09-01 23:38:36 +03:00
Zibi Braniecki f8a2cef646 Bug 1662309 - Update fluent-rs to 0.12. r=kamidphish
Differential Revision: https://phabricator.services.mozilla.com/D88942
2020-09-01 17:47:26 +00:00
Bogdan Tara 84922363f4 Backed out changeset ad6c81e11152 (bug 1662309) for CheckCapacity assertion failures CLOSED TREE 2020-09-01 09:40:56 +03:00
Zibi Braniecki f16141c258 Bug 1662309 - Update fluent-rs to 0.12. r=kamidphish
Differential Revision: https://phabricator.services.mozilla.com/D88942
2020-09-01 04:15:51 +00:00
Jon Bauman 14a9a05444 Bug 1660551 - Update mp4parse-rust to d5a37fd. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D87931
2020-08-25 17:54:45 +00:00
Mihai Alexandru Michis 1b1ee1c86e Backed out changeset 773188fb9acf (bug 1660551) for causing bustages.
CLOSED TREE
2020-08-24 23:33:44 +03:00
Jon Bauman 66bad9d400 Bug 1660551 - Update mp4parse-rust to 6ebb531. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D87931
2020-08-24 19:52:59 +00:00
Mitchell Hentges d2f1d43e17 Bug 1656403: bump maximum gkrust-shared rust version to 1.47 r=glandium
1.44 is too tight a restriction, and we know that 1.47 will still have
the APIs we depend on.

Differential Revision: https://phabricator.services.mozilla.com/D87650
2020-08-20 00:11:01 +00:00
Chun-Min Chang 7d7fad9888 Bug 1658982 - P1: Update cubeb-coreaudio to 91a7bb5 r=cubeb-reviewers,kinetik
Differential Revision: https://phabricator.services.mozilla.com/D87618
2020-08-19 21:22:20 +00:00
undef1nd bb5ccdc8ff Bug 1631722 - Add wrapper for structured-headers crate,r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D81127
2020-08-12 07:07:33 +00:00
Brindusan Cristian d0499be492 Backed out 2 changesets (bug 1631722) for xpcshell failures at test_trr_cname_chain.js.
Backed out changeset 6c52fb84d5c3 (bug 1631722)
Backed out changeset 24560593473e (bug 1631722)
2020-08-12 06:18:26 +03:00
undef1nd 26766daa23 Bug 1631722 - Add wrapper for structured-headers crate,r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D81127
2020-08-11 13:27:49 +00:00
Luca Greco e4fa86648a Bug 1656947 - Vendor application-services to import fix on webext-storage component. r=markh
Differential Revision: https://phabricator.services.mozilla.com/D86487
2020-08-10 00:32:24 +00:00
Bogdan Tara 9b65c93d6a Backed out 2 changesets (bug 1631722) for windows bpgo failures CLOSED TREE
Backed out changeset 580b7fe5c831 (bug 1631722)
Backed out changeset e635eff6171b (bug 1631722)
2020-08-07 16:37:42 +03:00
undef1nd a0eda6935a Bug 1631722 - Add wrapper for structured-headers crate,r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D81127
2020-08-06 18:50:11 +00:00
Chris H-C 05c469791b Bug 1654538 - Rename FOG crates to be more specific r=janerik
Differential Revision: https://phabricator.services.mozilla.com/D85326
2020-08-06 19:18:35 +00:00
Cosmin Sabou 69bebdd7c9 Backed out changeset be1f60faeeda (bug 1654538) for causing glean related build bustages. CLOSED TREE 2020-08-06 19:28:10 +03:00
Cosmin Sabou 200c98a9ca Backed out 2 changesets (bug 1631722) for causing build bustages. CLOSED TREE
Backed out changeset b0b1c0fa93f9 (bug 1631722)
Backed out changeset ed318dc1f3ae (bug 1631722)
2020-08-06 18:29:19 +03:00
Chris H-C dcca80d8fc Bug 1654538 - Rename FOG crates to be more specific r=janerik
Differential Revision: https://phabricator.services.mozilla.com/D85326
2020-08-06 07:31:56 +00:00
undef1nd f914e7976e Bug 1631722 - Add wrapper for structured-headers crate,r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D81127
2020-08-06 12:53:26 +00:00
Matt Woodrow a4e9f1908e Bug 1656813 - Make swgl a dependency of gkrust so that we have correct dependencies for sccache. r=glandium
See https://github.com/rust-lang/rust/issues/58393

Differential Revision: https://phabricator.services.mozilla.com/D85713
2020-08-05 02:18:11 +00:00
Cosmin Sabou 38cd82e194 Backed out 8 changesets (bug 1656813) for reftest failures on bipbop_300_215kbps.mp4.lastframe.html.
Backed out changeset 92e0209dc7f1 (bug 1656813)
Backed out changeset 1b3842f2ca27 (bug 1656813)
Backed out changeset efed1b35fe47 (bug 1656813)
Backed out changeset d1c313ebe358 (bug 1656813)
Backed out changeset 4d6a3bf61345 (bug 1656813)
Backed out changeset 060254b3ad73 (bug 1656813)
Backed out changeset 37e5e5e6593a (bug 1656813)
Backed out changeset 12c0e9554a5f (bug 1656813)
2020-08-05 04:52:20 +03:00
Matt Woodrow e23caa3eba Bug 1656813 - Make swgl a dependency of gkrust so that we have correct dependencies for sccache. r=glandium
See https://github.com/rust-lang/rust/issues/58393

Differential Revision: https://phabricator.services.mozilla.com/D85713
2020-08-05 00:53:13 +00:00
Jon Bauman 8cf9cec211 Bug 1656616 - Update mp4parse-rust to 63325444 r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D85646
2020-08-01 05:39:00 +00:00
Paul Adenot 837926bb15 Bug 1655699 - Update cubeb-coreaudio-rs to b071bbe. r=cubeb-reviewers,achronop
Differential Revision: https://phabricator.services.mozilla.com/D85143
2020-07-28 12:42:45 +00:00
Jeff Muizelaar b083673982 Bug 1654699. Update core-foundation/core-graphics. r=kvark,keeler,jcj,chunmin
This includes updates to authenticator, cubeb-coreaudio,
metal, gfx-backend-vulkan, gfx-backend-metal, freetype

libloading is duplicated because of ash

Differential Revision: https://phabricator.services.mozilla.com/D84688
2020-07-24 22:35:25 +00:00
Csoregi Natalia ea1ddfabbf Backed out changeset 9702b4a4f53c (bug 1654699) for Gtest failures. CLOSED TREE 2020-07-24 21:29:52 +03:00
Jeff Muizelaar b17ab0c2e7 Bug 1654699. Update core-foundation/core-graphics. r=kvark,keeler,jcj,chunmin
This includes updates to authenticator, cubeb-coreaudio,
metal, gfx-backend-vulkan, gfx-backend-metal, freetype

libloading is duplicated because of ash

Differential Revision: https://phabricator.services.mozilla.com/D84688
2020-07-24 15:59:54 +00:00
Mihai Alexandru Michis c3d9e17fa4 Backed out changeset 45fc4a780b2b (bug 1654699) for causing failures regarding AudioStream position.
CLOSED TREE
2020-07-23 23:13:52 +03:00
Jeff Muizelaar 4b666af85b Bug 1654699. Update core-foundation/core-graphics. r=kvark,keeler,chunmin
This includes updates to authenticator, cubeb-coreaudio,
metal, gfx-backend-vulkan, gfx-backend-metal, freetype

libloading is duplicated because of ash

Differential Revision: https://phabricator.services.mozilla.com/D84688
2020-07-23 17:01:14 +00:00
Csoregi Natalia aec7461c96 Backed out 4 changesets (bug 1635494) for failures on test_process_kill.js. CLOSED TREE
Backed out changeset 67a16c6149f7 (bug 1635494)
Backed out changeset 862a5dcbe7a5 (bug 1635494)
Backed out changeset 36e670cd1653 (bug 1635494)
Backed out changeset 19c4d55874d9 (bug 1635494)
2020-07-22 14:07:01 +03:00
David Teller ff538cf8e8 Bug 1635494 - nsIProcessToolsService;r=lina
A small xpcom module implemented in Rust, designed to provide low-level tools to deal with processes
from JS. For the moment, the only notable feature is `kill()`, designed to be used from about:processes

Differential Revision: https://phabricator.services.mozilla.com/D82552
2020-07-22 10:05:10 +00:00
Paul Adenot fb896f9802 Bug 1561207 - Update audio_thread_priority to 0.23.4 and use MOZ_ENABLE_DBUS to enable dbus usage. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D82718
2020-07-17 09:53:10 +00:00
Narcis Beleuzu 573b28be3c Backed out 2 changesets (bug 1561207) for bustages on lib.rs. CLOSED TREE
Backed out changeset c0d2201bd2fa (bug 1561207)
Backed out changeset 7931e2be169c (bug 1561207)
2020-07-10 15:56:59 +03:00
Paul Adenot 36bd8cbc97 Bug 1561207 - Update audio_thread_priority to 0.23.3 and use MOZ_ENABLE_DBUS to enable dbus usage. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D82718
2020-07-10 12:24:14 +00:00
J.C. Jones b3dd4acf6b Bug 1649227 - Upgrade authenticator-rs to v0.2.13 r=kjacobs
https://crates.io/crates/authenticator/0.2.13
- Support for Linux on MIPS
- Fix a race condition in the main state machine causing repeated signature requests

Differential Revision: https://phabricator.services.mozilla.com/D81604
2020-06-29 21:26:19 +00:00
lougeniac64 499048fe86 (Bug 1635487) Wired up sync logging for extension pref storage r=lina,markh
Differential Revision: https://phabricator.services.mozilla.com/D80975
2020-06-27 19:15:17 +00:00
Csoregi Natalia 5bb8a015e6 Backed out changeset 8cd7fabbe270 (bug 1635487) for multiple leaks. CLOSED TREE 2020-06-27 10:43:15 +03:00
lougeniac64 bce2c33963 (Bug 1635487) Wired up sync logging for extension pref storage r=lina,markh
Differential Revision: https://phabricator.services.mozilla.com/D80975
2020-06-27 06:26:22 +00:00
Razvan Maries eb909a6e55 Backed out changeset fec02fef5e73 (bug 1635487) for Android bustages. CLOSED TREE 2020-06-27 03:05:27 +03:00
lougeniac64 893cb93c43 (Bug 1635487) Wired up sync logging for extension pref storage r=lina,markh
Differential Revision: https://phabricator.services.mozilla.com/D80975
2020-06-26 21:19:17 +00:00
Calixte Denizet c4c8a5a55d Bug 1648430 - Don't run glean tests to fix ccov builds r=firefox-build-system-reviewers,rstewart
For ccov builds, rust tests are ran with `-Cpanic=abort -Zpanic_abort_tests`
and some glean tests are testing panics so in order to have ccov builds we must disable them.

Differential Revision: https://phabricator.services.mozilla.com/D81369
2020-06-26 18:42:12 +00:00
Chris H-C 6f5695446e Bug 1635255 - Build glean crate conditionally on Gecko symbols r=janerik
Introduces a gkrust Cargo feature `glean_with_gecko` and `with_gecko` on fog
and glean. This feature signifies the presence of gecko symbols in the build.

Use this feature to implement needs_ipc() which asks Gecko which process type
we're running as.

Differential Revision: https://phabricator.services.mozilla.com/D79744
2020-06-24 16:16:17 +00:00
Mihai Alexandru Michis fe89d1f20e Backed out 11 changesets (bug 1635255) for causing bustages in FOGIPC.cpp
CLOSED TREE

Backed out changeset d3e93edb1c76 (bug 1635255)
Backed out changeset 27df18486bff (bug 1635255)
Backed out changeset 4675772344eb (bug 1635255)
Backed out changeset 4d0c4beb910e (bug 1635255)
Backed out changeset 9b79c8208144 (bug 1635255)
Backed out changeset cb54f7a3177d (bug 1635255)
Backed out changeset d0591dc8d5a1 (bug 1635255)
Backed out changeset 5fc5e1070d4d (bug 1635255)
Backed out changeset bfcfda9cb19d (bug 1635255)
Backed out changeset 49447f10ad6e (bug 1635255)
Backed out changeset 0862a33399cf (bug 1635255)
2020-06-24 17:21:10 +03:00
Chris H-C 2f90804e01 Bug 1635255 - Build glean crate conditionally on Gecko symbols r=janerik
Introduces a gkrust Cargo feature `glean_with_gecko` and `with_gecko` on fog
and glean. This feature signifies the presence of gecko symbols in the build.

Use this feature to implement needs_ipc() which asks Gecko which process type
we're running as.

Differential Revision: https://phabricator.services.mozilla.com/D79744
2020-06-23 20:43:41 +00:00
Rob Wu 206ca19c33 Bug 1645598 - Vendor application-services for fix in webext-storage r=lina
To get this fix: https://github.com/mozilla/application-services/pull/3235

Updated as follows:

```
sed -i 's/e8d7530319fa6c20d9de78d031c9398630eca3cd/61dcc364ac0d6d0816ab88a494bbf20d824b009b/g' services/fxaccounts/rust-bridge/firefox-accounts-bridge/Cargo.toml services/sync/golden_gate/Cargo.toml toolkit/components/extensions/storage/webext_storage_bridge/Cargo.toml toolkit/components/glean/Cargo.toml toolkit/library/rust/shared/Cargo.toml
./mach vendor rust
```

Verified by running the new regression test that I added in the bug:

```
./mach test toolkit/components/extensions/test/xpcshell/test_ext_storage_{local,sync,sync_kinto}.js
```

Differential Revision: https://phabricator.services.mozilla.com/D79628
2020-06-15 12:56:58 +00:00
Thom Chiovoloni b3cbb2b28e Bug 1629127 - Add sync telemetry for storage.sync migration r=lina,extension-reviewers,mixedpuppy
Differential Revision: https://phabricator.services.mozilla.com/D78573
2020-06-10 22:29:02 +00:00
Paul Adenot 5b77a7b023 Bug 1644362 - Update cubeb-coreaudio-rs to 4cdbceadae8. r=cubeb-reviewers,achronop
Differential Revision: https://phabricator.services.mozilla.com/D78897
2020-06-09 13:17:37 +00:00
Corentin Arnould 5ca999a398 Bug 1644080 - Updated cubeb-pulse-rs r=cubeb-reviewers,padenot
Depends on D78663

Differential Revision: https://phabricator.services.mozilla.com/D78664
2020-06-08 13:14:18 +00:00
Corentin Arnould 5221092cfa Bug 1644080 - Updated cubeb-coreaudio-rs repository r=cubeb-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D78663
2020-06-08 13:14:16 +00:00
Mark Hammond 6abadd577b Bug 1639449 - Vendor new application-services to expose kinto migration and sync change notifications. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D76092
2020-05-30 02:44:07 +00:00
Paul Adenot 6294bd3454 Bug 1638801 - Update cubeb-coreaudio-rs to 23cce. r=cubeb-reviewers,achronop
Differential Revision: https://phabricator.services.mozilla.com/D75775
2020-05-28 09:54:04 +00:00
Valentin Gosu 383d242cb2 Bug 1636891 - Move logging specifics from toolkit/library/rust/shared/lib.rs to the gecko_logger crate r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D76669
2020-05-28 07:46:40 +00:00
Ryan Kelly bc3600def8 Bug 1640765 - only build the rust fxa-client crate on Nightly. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D76771
2020-05-27 05:51:39 +00:00
Bogdan Tara 15858ad28e Backed out changeset 0d3f76ede294 (bug 1640765) for rust related bustage CLOSED TREE 2020-05-27 07:06:35 +03:00
Ryan Kelly 58ccfb0fe7 Bug 1640765 - only build the rust fxa-client crate on Nightly. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D76771
2020-05-27 03:22:15 +00:00
Lina Cambridge fa63092e48 Bug 1638438 - Don't link `webext_storage_bridge` on Android. r=eoger
We ship the `mozIExtensionStorageArea` interface on Android, so that
GeckoView can eventually provide its own implementation, but not the
C++ glue for the XPCOM class...so we shouldn't be linking the bridge
into gkrust, either.

This commit also removes Rusqlite linking, since it's now linked in
via webext_storage_bridge => webext_storage => rusqlite.

Differential Revision: https://phabricator.services.mozilla.com/D75619
2020-05-27 02:33:14 +00:00
Tarik Eshaq a9a08b9879 Bug 1638440 - Don't compile viaduct on Andriod. r=eoger
Conditionally link viaduct if the os is not android

Differential Revision: https://phabricator.services.mozilla.com/D76741
2020-05-26 13:43:44 +00:00
Lina Cambridge 466b3ca6f9 Bug 1638557 - Remove the `MOZ_NEW_WEBEXT_STORAGE` build flag. r=markh
Now that we've landed all the pieces for Rust `storage.sync`, and
intend to ship it for everyone in 78, we don't need to hide it behind a
build flag. Setting the `webextensions.storage.sync.kinto` pref to
false toggles the new Rust backend at runtime.

Differential Revision: https://phabricator.services.mozilla.com/D75872
2020-05-19 00:48:03 +00:00
Edouard Oger 30060195fb Bug 1631630 p2 - Implement FxAccounts rust-bridge. r=lina,rfkelly
Differential Revision: https://phabricator.services.mozilla.com/D71852
2020-05-16 01:07:31 +00:00
Noemi Erli cac2780d42 Backed out 2 changesets (bug 1631630) for causing mass braoser chrome failures CLOSED TREE
Backed out changeset 9b8606a93c75 (bug 1631630)
Backed out changeset d57ea5d1921f (bug 1631630)
2020-05-16 02:16:33 +03:00
Noemi Erli 718c5317c5 Backed out changeset 22a66a638fe5 (bug 1638438) for causing hunk failed on another backout 2020-05-16 02:15:45 +03:00
Lina Cambridge d0497de397 Bug 1638438 - Don't link `webext_storage_bridge` on Android. r=eoger
We ship the `mozIExtensionStorageArea` interface on Android, so that
GeckoView can eventually provide its own implementation, but not the
C++ glue for the XPCOM class...so we shouldn't be linking the bridge
into gkrust, either.

This commit also removes Rusqlite linking, since it's now linked in
via webext_storage_bridge => webext_storage => rusqlite.

Differential Revision: https://phabricator.services.mozilla.com/D75619
2020-05-15 22:19:25 +00:00
Edouard Oger 9b739cf68d Bug 1631630 p2 - Implement FxAccounts rust-bridge. r=lina,rfkelly
Differential Revision: https://phabricator.services.mozilla.com/D71852
2020-05-15 20:13:36 +00:00
Edouard Oger 6e8ef040d3 Bug 1637537 - Bump application-services and anyhow versions. r=vladikoff
Differential Revision: https://phabricator.services.mozilla.com/D75150
2020-05-13 18:36:56 +00:00
Edouard Oger e348b78f5f Bug 1628068 p1 - Vendor viaduct crate. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D70256
2020-05-12 21:36:17 +00:00
Bogdan Tara a823ee6545 Backed out 2 changesets (bug 1628068) for ViaductRequest.cpp related bustages CLOSED TREE
Backed out changeset 013a469557c1 (bug 1628068)
Backed out changeset dcda2ce7b7f9 (bug 1628068)
2020-05-12 00:44:58 +03:00
Edouard Oger 4e005845ab Bug 1628068 p1 - Vendor viaduct crate. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D70256
2020-05-11 21:01:17 +00:00
Bogdan Tara 3df4970bcc Backed out 2 changesets (bug 1628068) for ViaductRequest.cpp related bustages CLOSED TREE
Backed out changeset 928a5891c55d (bug 1628068)
Backed out changeset b6fe5d357bed (bug 1628068)
2020-05-11 23:52:47 +03:00
Edouard Oger 3dc0990bbf Bug 1628068 p1 - Vendor viaduct crate. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D70256
2020-05-11 20:19:11 +00:00
Bogdan Tara 448d53548b Backed out 2 changesets (bug 1628068) for ViaductRequest.cpp related bustages CLOSED TREE
Backed out changeset 1ea8f742ca69 (bug 1628068)
Backed out changeset 3aa2f99843e0 (bug 1628068)
2020-05-11 23:06:31 +03:00
Edouard Oger 8aebe42eda Bug 1628068 p1 - Vendor viaduct crate. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D70256
2020-05-11 19:14:21 +00:00
Valentin Gosu d986351217 Bug 1624090 - Make it possible to forward rust logging into the Gecko logger r=froydnj
This makes it possible to enable rust logging at runtime using about:networking

Differential Revision: https://phabricator.services.mozilla.com/D73146
2020-05-09 11:24:33 +00:00
Jon Bauman ff79fde159 Bug 1624056 - Properly vendor mp4parse-rust. r=kinetik
This requires --build-peers-said-large-imports-were-ok since
third_party/rust/mp4parse/src/lib.rs is 113KB. This code is just moving from
media/mp4parse-rust to third_party/rust, so it's not really adding to net code
size.

Differential Revision: https://phabricator.services.mozilla.com/D74488
2020-05-09 00:36:48 +00:00
Paul Adenot 99a7209581 Bug 1635404 - Update cubeb-coreaudio-rs and cubeb-pulse-rs. r=achronop
Differential Revision: https://phabricator.services.mozilla.com/D73869
2020-05-05 13:37:23 +00:00
Lina Cambridge 8caa2f7986 Bug 1634191 - Wire up Golden Gate to the new Rust extension storage interface. r=markh
This commit adds syncing support to the `StorageSyncArea` class, via
the Golden Gate library.

It also changes the `BridgedEngine` trait: `initialize` and `finalize`
haven't been useful in practice, since that's managed by the storage
service, and the `LazyStore` takes care of setting up the storage
connection on first use. But, what we do need is a way to signal a
sync is starting, so that the engine can set up temp tables. That's
handled by the new `sync_started`.

Finally, this commit changes `BridgedEngine::set_uploaded` to take a
`sync15_traits::Guid` instead of a `String`.

Differential Revision: https://phabricator.services.mozilla.com/D73415
2020-05-05 06:59:32 +00:00
Lina Cambridge 4eafc7c1a6 Bug 1634191 - Pass BSO fields along with Sync record payloads to bridged Rust engines. r=markh
This commit splits `CryptoWrapper` into a base `RawCryptoWrapper`
class, which only handles encryption and decryption without
parsing the cleartext's contents, and the existing `CryptoWrapper`
class, which works like before.

Our bridged engine subclasses `RawCryptoWrapper`, and
implements some methods to convert records to and from envelopes.
Envelopes are a concept we introduced in `sync15_traits` to pass
along metadata from the BSO wrapper (like the modified time from the
server, and ID, to ensure they match) in addition to the cleartext.
This lets us reuse `sync15_traits::Payload` to parse record payloads
in Rust, and avoids parsing the cleartext in JS, only to stringify it
again when we pass it to the bridged Rust engine.

Differential Revision: https://phabricator.services.mozilla.com/D73581
2020-05-04 22:25:00 +00:00
Mike Hommey e062c7cbfd Bug 1632723 - Update builders to rustc 1.43. r=firefox-build-system-reviewers,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D72771
2020-04-29 21:21:36 +00:00
Lina Cambridge a9b590300f Bug 1634626 - Refactor interruption in Golden Gate. r=markh,tcsc
This commit removes the `nsICancelable` return values from all
`mozIBridgedSyncEngine` methods, and replaces them with a
`mozIInterruptible` interface that can be implemented by store
classes that support interrupting.

The `nsICancelable` pattern was intended to make each operation
interruptible, without affecting the others. But we can't guarantee
that with SQLite, because it only has a way to interrupt all
running statements on a connection, not specific ones. Further,
this pattern doesn't match what we currently do in a-s, where we
create an internal "interrupt scope" for each operation, and hand
out an "interrupt handle" for interrupting all in-progress
operations.

Storage classes like `StorageSyncArea` can opt in to interruption
by implementing `mozIInterruptible`. It's a separate interface to
protect against accidental misuse: because it interrupts all
statements on the connection, it might lose writes if the current
operation is a `set`, for example. But it's useful for testing and
debugging, so we still expose it.

This commit also changes Golden Gate ferries to hold weak references to
the `BridgedEngine`, so that they don't block teardown.

Differential Revision: https://phabricator.services.mozilla.com/D73413
2020-05-04 21:32:29 +00:00
Rob Wu 140b5a6261 Bug 1620621 - Add XPCOM FFI for rust_cascade r=emilio,vporof
Differential Revision: https://phabricator.services.mozilla.com/D66166
2020-04-30 10:02:25 +00:00
Razvan Maries c92da124b3 Backed out 8 changesets (bug 1620621) for build bustages. CLOSED TREE
Backed out changeset 14a57e32c414 (bug 1620621)
Backed out changeset 56b2b19a9bc1 (bug 1620621)
Backed out changeset 6df42b7528ec (bug 1620621)
Backed out changeset c23703684254 (bug 1620621)
Backed out changeset 206ad824e1bc (bug 1620621)
Backed out changeset e0f3e057b311 (bug 1620621)
Backed out changeset 12817823a3c9 (bug 1620621)
Backed out changeset 80dcb089ce8e (bug 1620621)
2020-04-30 12:29:30 +03:00
Rob Wu 021277de0e Bug 1620621 - Add XPCOM FFI for rust_cascade r=emilio,vporof
Differential Revision: https://phabricator.services.mozilla.com/D66166
2020-04-30 02:48:42 +00:00
Mark Hammond c777f6f9ed Bug 1634257 - expose wipe_all to mozIExtensionStorageArea. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D73191
2020-04-30 08:16:26 +00:00
Stefan Hindli 49c6346195 Backed out changeset 13bb4d7dde88 (bug 1634257) for spidermoney bustages CLOSED TREE 2020-04-30 10:56:43 +03:00
Mark Hammond baecd41165 Bug 1634257 - expose wipe_all to mozIExtensionStorageArea. r=lina
Differential Revision: https://phabricator.services.mozilla.com/D73191
2020-04-30 07:08:38 +00:00
Dorel Luca 58186c88dc Backed out 8 changesets (bug 1620621) for XPCshell failures in xpcshell/rs-blocklist/test_blocklist_mlbf_fetch.js
Backed out changeset 06fccc75c09e (bug 1620621)
Backed out changeset 8b4e286967c0 (bug 1620621)
Backed out changeset cfde27a748fd (bug 1620621)
Backed out changeset 7abf836343be (bug 1620621)
Backed out changeset 1a28d1de8f76 (bug 1620621)
Backed out changeset 90c08438be0a (bug 1620621)
Backed out changeset 723a3b4e7bbf (bug 1620621)
Backed out changeset bbc991f09d5d (bug 1620621)
2020-04-30 05:44:28 +03:00
Rob Wu 4294b3bca0 Bug 1620621 - Add XPCOM FFI for rust_cascade r=emilio,vporof
Differential Revision: https://phabricator.services.mozilla.com/D66166
2020-04-29 23:26:48 +00:00
Lina Cambridge add5457732 Bug 1633943 - Support tearing down a Rust `StorageSyncArea`. r=markh
This commit wires up `StorageSyncArea::teardown()` to call the new
`webext_storage::Store::close()` method.

It also changes `teardown` to drop the `LazyStore`, and thus close its
database connection, on the main thread if dispatching to the task
queue fails. Dispatch should only fail at shutdown, and putting the
owned reference back only adds indirection, since the `StorageSyncArea`
will still drop its `LazyStore` later in shutdown.

Finally, it includes an xpcshell test fix for
https://github.com/mozilla/application-services/pull/3050.

Differential Revision: https://phabricator.services.mozilla.com/D72992
2020-04-29 04:35:45 +00:00
Paul Adenot 58207a1a00 Bug 1633266 - Bump audio_thread_priority to 0.22.1. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D72636
2020-04-28 07:54:54 +00:00
Noemi Erli b41b9e8fdf Backed out changeset 36cb992cb56a (bug 1633266) for causing build bustages CLOSED TREE 2020-04-28 10:51:56 +03:00
Paul Adenot 02a9230588 Bug 1633266 - Bump audio_thread_priority to 0.22.1. r=kinetik
Differential Revision: https://phabricator.services.mozilla.com/D72636
2020-04-27 22:41:47 +00:00
Lina Cambridge c13f9f9d49 Bug 1626128 - Change Golden Gate to depend on `sync15_traits`. r=markh
Now that `BridgedEngine` has been moved to `sync15_traits`, we can
remove `golden_gate_traits` from the tree, and change Golden Gate to
depend on `sync15_traits` directly.

This commit also adds a Cargo feature, `services_sync`, which reflects
the `MOZ_SERVICES_SYNC` config option. In the future, we'll use this
feature to gate implementations of `mozIBridgedSyncEngine`.

Differential Revision: https://phabricator.services.mozilla.com/D72784
2020-04-28 04:13:04 +00:00
Alex Chronopoulos cc6426edd6 Bug 1632093 - Update cubeb-pulse-rs. r=padenot
Differential Revision: https://phabricator.services.mozilla.com/D72729
2020-04-27 19:11:25 +00:00
Lina Cambridge 1aa777d5e1 Bug 1626506 - Add a binding for the new extension storage Rust component. r=markh
The `webext_storage_bridge` crate introduced in this commit bridges the
`mozIExtensionStorageArea` XPCOM interface to the `webext_storage` Rust
component from Application Services.

This commit factors out the following parts from bug 1623245, so that
we can land them piecemeal:

* The `mozIExtensionStorageArea` interfaces, which implement all the
  methods needed to support the `storage.sync` API.
* A Rust implementation of the above, in `StorageSyncArea`.
* A `StorageTask` type, for dispatching storage operations to a
  background task queue.
* A `LazyStore`, which wraps the Rust component's `Store` and lazily
  initializes it on the background queue the first time it's used.
* A `StorageSyncService`, which is our singleton. It holds on to a
  configured `StorageSyncArea`, and hands out references to it via
  `getInterface`. Eventually, we'll extend this to support syncing,
  too.

Differential Revision: https://phabricator.services.mozilla.com/D71897
2020-04-27 05:40:54 +00:00
Lina Cambridge e6e665546f Bug 1626506 - Vendor the `webext_storage` component. r=markh
Hooray, our first Application Services Rust component! This is a
mechanical run of `mach vendor rust`, split out into its own commit
to make reviewing the Firefox bindings easier.

Differential Revision: https://phabricator.services.mozilla.com/D71895
2020-04-27 05:40:52 +00:00
Mihai Alexandru Michis 807ec47bae Backed out 2 changesets (bug 1626506) for causing bustages.
CLOSED TREE

Backed out changeset f3deedfe235d (bug 1626506)
Backed out changeset 00b40d247500 (bug 1626506)
2020-04-27 08:11:19 +03:00
Lina Cambridge e1b6df9fd4 Bug 1626506 - Add a binding for the new extension storage Rust component. r=markh
The `webext_storage_bridge` crate introduced in this commit bridges the
`mozIExtensionStorageArea` XPCOM interface to the `webext_storage` Rust
component from Application Services.

This commit factors out the following parts from bug 1623245, so that
we can land them piecemeal:

* The `mozIExtensionStorageArea` interfaces, which implement all the
  methods needed to support the `storage.sync` API.
* A Rust implementation of the above, in `StorageSyncArea`.
* A `StorageTask` type, for dispatching storage operations to a
  background task queue.
* A `LazyStore`, which wraps the Rust component's `Store` and lazily
  initializes it on the background queue the first time it's used.
* A `StorageSyncService`, which is our singleton. It holds on to a
  configured `StorageSyncArea`, and hands out references to it via
  `getInterface`. Eventually, we'll extend this to support syncing,
  too.

Differential Revision: https://phabricator.services.mozilla.com/D71897
2020-04-27 03:23:46 +00:00