syncbase 0.0.42

  • README.md
  • Installing
  • Versions
  • 2

Syncbase

This project exposes Syncbase as a Mojo service.

Read the architecture proposal.

Initial Mojo setup

You must have the Mojo repo in $MOJO_DIR.

This section only needs to be run once.

See the Mojo readme for more comprehensive instructions.

Install Mojo prereqs

  1. Install depot tools.

  2. Install Goma.

  3. Put the following in your .bashrc:

     # NOTE: Actual locations depend on where you installed depot_tools and
     # goma.
     export PATH=${PATH}:${HOME}/dev/depot_tools
     export GOMA_DIR=${HOME}/goma
     export MOJO_DIR=${HOME}/mojo
    

Download Mojo repo

$ mkdir $MOJO_DIR && cd $MOJO_DIR

# NOTE: This step takes about 10 min.
$ fetch mojo --target_os=android,linux

# NOTE: This step also takes about 10 min.  Furthermore, the script uses
# 'sudo', so you will need to enter your password.
$ cd src && ./build/install-build-deps.sh

# Or, to include Android deps as well:
$ cd src && ./build/install-build-deps-android.sh

Update Mojo and compile resources

This updates the Mojo repo to HEAD, and builds the Mojo resources needed to compile Syncbase.

Run this while you grab your morning coffee.

  1. Start by updating the repo.

     $ cd $MOJO_DIR/src
     $ git checkout master
     $ git pull
     $ gclient sync
    
  2. Compile for Linux. Built resources will be in $MOJO_DIR/src/out/Debug

     $ ./mojo/tools/mojob.py gn
     $ ./mojo/tools/mojob.py build # NOTE: This can take up to 10 minutes.
    
  3. Compile for Android. Built resources will be in $MOJO_DIR/src/out/android_Debug

     $ ./mojo/tools/mojob.py gn --android
     $ ./mojo/tools/mojob.py build --android # NOTE: This can take up to 10 minutes.
    

Install Dart SDK

To run Dart apps, you must install the Dart SDK.

Googlers: http://go/install-dart External: https://www.dartlang.org/downloads/

Testing

Run the tests:

make test

This will run all tests listed in the tests file in the root directory of this repo.

The following command will run a single test file. This is useful when the full test suite hangs with no output.

$(MOJO_DIR)/src/mojo/devtools/common/mojo_run -v --enable-multiprocess --shell-path $(MOJO_DIR)/src/out/Debug/mojo_shell test/integration/<filename>

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  syncbase: "^0.0.42"

2. Install it

You can install packages from the command line:

with pub:


$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:syncbase/initialized_application.dart';

import 'package:syncbase/syncbase_client.dart';
        
Version Uploaded Documentation Archive
0.0.42 May 12, 2016 failed Download syncbase 0.0.42 archive
0.0.41 May 10, 2016 failed Download syncbase 0.0.41 archive
0.0.40 Apr 27, 2016 Go to the documentation of syncbase 0.0.40 Download syncbase 0.0.40 archive
0.0.39 Apr 27, 2016 Go to the documentation of syncbase 0.0.39 Download syncbase 0.0.39 archive
0.0.38 Apr 20, 2016 Go to the documentation of syncbase 0.0.38 Download syncbase 0.0.38 archive
0.0.37 Apr 6, 2016 Go to the documentation of syncbase 0.0.37 Download syncbase 0.0.37 archive
0.0.36 Apr 4, 2016 Go to the documentation of syncbase 0.0.36 Download syncbase 0.0.36 archive
0.0.35 Mar 31, 2016 Go to the documentation of syncbase 0.0.35 Download syncbase 0.0.35 archive
0.0.34 Mar 23, 2016 Go to the documentation of syncbase 0.0.34 Download syncbase 0.0.34 archive
0.0.33 Mar 21, 2016 Go to the documentation of syncbase 0.0.33 Download syncbase 0.0.33 archive

All 42 versions...

Analysis

We analyzed this package on Apr 23, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0-dev.49.0
  • pana: 0.10.6

Scores

Popularity:
Describes how popular the package is relative to other packages. [more]
0 / 100
Health:
Code health derived from static analysis. [more]
7 / 100
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
0 / 100
Overall score:
Weighted score of the above. [more]
2
Learn more about scoring.

Platforms

Detected platforms: unsure

Error(s) prevent platform classification:

Error(s) in lib/gen/dart-gen/mojom/lib/mojo/syncbase.mojom.dart: The class 'Proxy' doesn't have a constructor named 'fromEndpoint'.

Suggestions

  • Fix platform conflicts.

    Error(s) prevent platform classification:

    Error(s) in lib/gen/dart-gen/mojom/lib/mojo/syncbase.mojom.dart: The class 'Proxy' doesn't have a constructor named 'fromEndpoint'.

  • Maintain CHANGELOG.md.

    Changelog entries help clients to follow the progress in your code.

  • Fix analysis and formatting issues.

    Analysis or formatting checks reported 472 errors 14 hints.

    Make sure that the imported libraries are not in conflict. Error(s) in lib/gen/dart-gen/mojom/lib/mojo/syncbase.mojom.dart: The class 'Proxy' doesn't have a constructor named 'fromEndpoint'.

    Strong-mode analysis of lib/src/nosql/row.dart failed with the following error:

    line: 11 col: 9
    super call must be last in an initializer list (see https://goo.gl/EY6hDP): 'super._internal(_ctx, _parentFullName, key, naming.join(_parentFullName, escape(key)))'.

    Similar analysis of the following files failed:

    • lib/syncbase_client.dart (error)
    • lib/src/naming/util.dart (hint)
    • lib/src/nosql/rowrange.dart (hint)
  • Package is pre-v1 release.

    While there is nothing inherently wrong with versions of 0.*.*, it usually means that the author is still experimenting with the general direction API.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.12.0 <2.0.0
mojo_sdk ^0.2.22 0.2.32
Transitive dependencies
mojo 0.4.28
mojo_services 0.4.35
Dev dependencies
dart_style any
test any