mojo/v23proxy: Add Dart Examples with Service Describer

See https://codereview.chromium.org/1648803006/

The referenced change allows Dart services to expose their type
information. This means the v23proxy can now work with Dart service.

The echo_server and fortune_server were added as Dart examples.

Tested by checking that the Go and Dart clients interoperate with them.

Note: Will need actual Dart tests to follow up.
It would also be good to introduce tests that verify interoperation with
Vanadium clients/servers too.

To use:
When using USE_MOJO_DEV_PROFILE=1, you can try it out yourself.
Otherwise, please wait until the mojo version 7 profile is rolled out.

Change-Id: Iace12ff63156d16f51a8bd36ed487b15874a46a2
8 files changed
tree: a82d37c883d23362aa42daa391797beb3891bacc
  1. dart-examples/
  2. go/
  3. lib/
  4. mojom/
  5. .gitignore
  6. AUTHORS
  7. CONTRIBUTING.md
  8. CONTRIBUTORS
  9. LICENSE
  10. Makefile
  11. mojoconfig
  12. PATENTS
  13. pubspec.yaml
  14. README.md
  15. VERSION
README.md

Mojo + v23 RPCs

This repository implements the proposal outlined here that enables communication between Mojo applications on different devices.

Prerequisites

You must have the jiri tool installed with the base and mojo v23-profiles.

To update v23proxy to the latest version of mojo, you will need to also have the mojo-dev profile.

Quick start

You must always make build first. (The Makefile is not very good currently.)

  • For desktop: make build
  • For android: ANDROID=1 make build

The commands above build the .mojo shared library that can be run by mojo shells. For example:

  • make start-v23proxy
  • HOME=/tmp make ARGS="{see Makefile}" start-echo-client

You can also run these with Android devices. Use an ANDROID={N} prefix to run on the Nth Android device connected to your machine. N must be a positive integer.

Note: To run these examples, the devices used must run mojo_shell on the same local network.

Updating v23proxy to the latest version of mojo

Prefix all commands with USE_MOJO_DEV_PROFILE=1 in order to run with the mojo-dev profile instead of mojo.