dev_client library

The dev-client shell.

Imported by the entrypoint dartvel build dev-client generates, and by nothing an application imports. That is the whole of the release-build guarantee: Dart compiles what the entrypoint reaches, and a release build's entrypoint cannot reach this library, so there is no runtime flag that could switch a dev menu on in a shipped application.

Classes

DVDevClient
Loads bundles from the server pairing names into a shell built from shell.
DVDevClientInspection
What dartvel inspect answers about the project the paired server serves: its routes, models, backend functions and jobs.
DVDevClientLoad
DVDevClientManifest
What a shell was built with, or what a bundle's project needs.
DVDevClientPairing
What a pairing link carries: where the server is, which branch it serves, the key its bundles are sealed with, and the token that lets this device fetch them.
DVDevClientRefusal
Why a shell will not load a bundle.
DVDevClientSession
DVDevClientShell
The application a dev-client build runs: pairing, loading, the pages the bundle carries, and the dev menu.
DVDevClientSigner
The key a dev server or a preview seals bundles with.
DVDevMenu
The dev menu: reload, the inspectors, the capability report for this device, and the log.
DVSignedBundle
A bundle whose signature has been verified.

Constants

dvDevClientBundlePath → const String
The path a dev server serves the current bundle on.
dvDevClientLinkScheme → const String
The scheme of a pairing link.
dvDevClientMissingBinding → const String
A bundle needs a native binding the shell was not built with.
dvDevClientPublicTrack → const String
A dev-client artifact was submitted to a public track.
dvDevClientShellMarker → const String
A string only a dev-client shell's compiled snapshot contains.
dvDevClientUnreachable → const String
The dev client could not reach, or was not let in by, its server.
dvSignedBundleFormat → const String
The format both the envelope and the statement inside it name.

Functions

dvDevClientBundleVersion(Map<String, Object?> bundle) → String
The content version of a dev bundle: a digest of everything but its version field, independent of key order.
dvDevClientCompatibility({required DVDevClientManifest shell, required DVDevClientManifest bundle}) → DVDevClientRefusal?
Null when a shell built from shell can run a bundle needing bundle.

Exceptions / Errors

DVDevClientInspectionException
Why the inspectors could not read the project.
DVSignedBundleException
Why a bundle was not opened.