Skip to content
This repository has been archived by the owner on Jul 22, 2024. It is now read-only.

Megazord configuration for native Rust libraries #1397

Closed
grigoryk opened this issue Jul 13, 2019 · 4 comments · Fixed by #1973 or #2129
Closed

Megazord configuration for native Rust libraries #1397

grigoryk opened this issue Jul 13, 2019 · 4 comments · Fixed by #1973 or #2129
Assignees
Milestone

Comments

@grigoryk
Copy link
Contributor

To efficiently consume multiple appservices libraries, a megazord configuration is necessary.

Currently only libplaces is being used, for bookmarks storage.
#1389 adds a dependency on libfxaclient as well, and we'll need liblogins as well for #1394 and password management.

And so, we need to use a "megazord" which contains all the libraries we're using, compiled together.
In the near future consuming non-megazord appservices libraries will not be supported, so this needs to happen on a fairly quick timeline.

The actual work should be fairly straightforward: configuration gradle module substitutions, rust logging, and initializing megazord with a concept-fetch client implementation (e.g. gecko fetch client). Follow either what reference-browser or fenix are doing here.

@grigoryk
Copy link
Contributor Author

Changes to how megazords are consumed are coming in mozilla-mobile/android-components#3806, so let's wait for that to land.

grigoryk pushed a commit to grigoryk/FirefoxReality that referenced this issue Jul 18, 2019
(currently built against local versions of a-c, since upstream work is still inflight)

This PR upgrades a-c to 5.0.0, which is now using 0.35.0 appservices release
that introduces a "default megazord", which is what the consuming application
now uses by default.

See megazord docs: https://mozilla.github.io/application-services/docs/applications/consuming-megazord-libraries.html

TODO
- we want to use Gecko's network stack
grigoryk pushed a commit to grigoryk/FirefoxReality that referenced this issue Jul 18, 2019
(currently built against local versions of a-c, since upstream work is still inflight)

This PR upgrades a-c to 5.0.0, which is now using 0.35.0 appservices release
that introduces a "default megazord", which is what the consuming application
now uses by default.

See megazord docs: https://mozilla.github.io/application-services/docs/applications/consuming-megazord-libraries.html

TODO
- we want to use Gecko's network stack
@keianhzo keianhzo self-assigned this Sep 25, 2019
@jvonitter jvonitter modified the milestones: #5 polish, #6 features Oct 2, 2019
@keianhzo keianhzo mentioned this issue Oct 14, 2019
@bluemarvin
Copy link
Contributor

Is this required for v6 and FxA? Is it still on track or can we push it to v7?

@keianhzo
Copy link
Contributor

This has been already included in #1973 I followed the instructions above. @grigoryk can you confirm that everything is ok?

@keianhzo
Copy link
Contributor

Megazord wasn't fully integrated. Addressed in #2129

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants