feat(truapi-provider): native and wasm ChainProvider with WebSocket and embedded smoldot backends#276
feat(truapi-provider): native and wasm ChainProvider with WebSocket and embedded smoldot backends#276BigTava wants to merge 29 commits into
Conversation
…et and embedded smoldot backends
# Conflicts: # CLAUDE.md # README.md
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
…ork build for embedded smoldot
…ate behind a uniffi feature
…d-client locks, panic-free light-client builder, and Apache-2.0 attribution for the vendored platform
… GenericError, and require at least one backend feature
…ed platform client identity, a WS disconnect test, and doc/dep-pin notes
…inProvider since it also runs on wasm32
…e seeding and their wasm JS bindings
…asm light-client test builder call
…n/task/time/num types
…ir last parachain connection closes
…heck plus headless browser tests
|
For reference, the design so far has been
Owning the connection end to end make sense as well, but might require some research as well to understand the trade-off, especially on native platform like iOS where a networking stack built on top of the Native SDK might benefit Anyway that should not prevent you from testing this PR out. The core should probably now own the networking settings preference that currently live in dotli |
| /// Warm-start database blob previously returned by the | ||
| /// `chainHead_unstable_finalizedDatabase` JSON-RPC function. Invalid | ||
| /// blobs are silently ignored by smoldot. | ||
| database_content: Option<String>, |
There was a problem hiding this comment.
Isn't this returned as a String in smoldot? Happy to change it.
…bundled specs borrow like smoldot's &str
…ation` to match smoldot
…g instead of a caller-supplied option
…ilding the crate to browser WASM
…e a parachain's relay as provider topology
…m publish automation with a dev-tag snapshot script
…ed and drop the caller-facing toggle
…build through the npm automation
…e public builder and construct catalog sources directly
…uapi-provider-dev* tag
… view and public access
Summary
truapi-providercrate: a native andwasm32implementation oftruapi_platform::ChainProviderwhose per-chain backend is a remote WebSocket JSON-RPC node or an embedded smoldot light client.