Files
sousa-gecko/docs/rust-components/api/js/viaduct.md
T
ahanot 3ef432cf18 Bug 2048346 - Add UniFFI bindings for the sponsored content client component r=bdk
Wire the vendored application-services sponsored content client component
into the desktop UniFFI bindings:

- Add the component as a path override in the workspace Cargo.toml and as
  a dependency of gkrust-uniffi-components.
- Register the component in lib.rs and moz.build, and add async-wrapper
  configuration in config.toml. MozAdsTelemetry is wrapped as FireAndForget,
  which is valid now that the vendored ads-client exposes it as a
  callback_interface.
- Point the NSS build-environment check in mach_commands.py at
  [app-services-repo]libs/verify-desktop-environment.sh, and warn rather
  than set it up in-band (see D260481).
- Regenerate the JS bindings, C++ scaffolding and API docs. Adding the
  component renumbers the shared UniFFI function table, which accounts for
  the churn in the other generated Rust*.sys.mjs files. The viaduct
  config/doc also gain a few OHTTP entries whose checked-in bindings had
  drifted from the vendored component.

This only adds the bindings; consumers are added in follow-ups.

Differential Revision: https://phabricator.services.mozilla.com/D307396
2026-06-26 20:14:11 +00:00

2.2 KiB

RustViaduct.sys.mjs

    :members:
    :exclude-members: BackendAlreadyInitialized
    :members:
    :exclude-members: BackendError
    :members:
    :exclude-members: BackendNotInitialized
    :members:
    :exclude-members: Method
    :members:
    :exclude-members: NetworkError
    :members:
    :exclude-members: NonTlsUrl
    :members:
    :exclude-members: OhttpChannelNotConfigured
    :members:
    :exclude-members: OhttpConfig
    :members:
    :exclude-members: OhttpConfigFetchFailed
    :members:
    :exclude-members: OhttpNotSupported
    :members:
    :exclude-members: OhttpRequestError
    :members:
    :exclude-members: OhttpResponseError
    :members:
    :exclude-members: RequestHeaderError
    :members:
    :exclude-members: Response
    :members:
    :exclude-members: SetBackendError
    :members:
    :exclude-members: UrlError