This repository contains the network service implementation for Mojo.

This repository uses gclient to manage dependencies so to work with it follow these instructions instead of cloning the repo directly:

0.) Install depot_tools and add them to your PATH: https://www.chromium.org/developers/how-tos/install-depot-tools

1.) Make a directory for monet and add a .gclient file:

$ mkdir monet
$ cd monet
$ cat <<EOF > .gclient
solutions = [
{
  u'managed': False,
  u'name': u'src',
  u'url': u'https://github.com/domokit/monet.git',
  u'custom_deps': {},
  u'deps_file': u'DEPS',
  u'safesync_url': u''}
]
target_os = [u'android']
EOF

2.) Use gclient to pull down the monet repository and dependencies. This will create a directory under monet called ‘src’ containing the main repository.

$ gclient sync

3.) Install the android SDK.

$ cd src
$ ./build/install-android-sdks.sh

4.) Build and test using the claude.py helper script

$ ./claude.py gn
$ ./claude.py build
$ ./claude.py test

5.) Upload patches for review

$ git checkout -b my_branch
(make changes)
$ git commit -m "What this patch does"
$ git cl upload

6.) Land patches (after you get an LGTM)

$ git cl land

7.) Upload binary artifacts to Google Cloud storage

$ ./claude.py upload

The code in //net is the code from https://chromium.googlesource.com/chromium/src/net/ at commit 9249e230ffc9c0ef2f6f269a8d8cd39deba2c4d4 with net_patch.diff applied.