Metadata-Version: 2.1
Name: jupyterlab-dotscience-backend
Version: 0.2.23
Summary: Backend component for dotmesh
Home-page: https://github.com/dotmesh-io/jupyterlab-plugin
Author: dotmesh
Author-email: luke@dotmesh.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Description-Content-Type: text/markdown
Requires-Dist: datadots-api (>=0.2.4)

# jupyterlab-dotscience plugin 

A JupyterLab extension which enables data & model versioning and summary statistics tracking.

See [dotscience](https://dotscience.com) for more details.

## Deployment
This plugin is in two parts - the frontend and the backend.
The frontend is deployed to npm, the backend to pypi.

To deploy the components automatically you should generally just follow:
```
pip3 install bump2version # if you don't have this installed already
./scripts/release.sh $VERSION
```

This will release itself using drone, then later renovate should pick up the change from npm/pypi and suggest a pull request on the `jupyterlab-tensorflow` repo. You can override this by doing that PR manually.

If you for any reason need to manually deploy to only npm and pypi, you need to have the following variables in your environment:

| Name  	|  Example 	|   Description	|
|--------------------------	|---------------------	|---------------------	|
| `PYPI_USER` | fred | the username we use to access pypi. Should be in gitlab-ci. |
| `PYPI_PASSWORD` | passw0rd | the password for pypi |
| `NPM_TOKEN` | something-separated-by-dashes | the token for npm. Get it from gitlab-ci or set up your own account and ping Charlotte to add you |
| `CI_COMMIT_TAG` | 0.0.5 | the version to use when releasing the npm package. This should match to a tag in git - if you don't match them then the versions may differ between what's released on pypi and what's released on npm, as the pypi release process pulls the tag from git. Also note this _must_ be a semantic version, otherwise the release will fail :/ |

then run
```
./shipit-pypi.sh -u $PYPI_USER -p $PYPI_PASSWORD
./shipit-npm.sh $NPM_TOKEN
```

You will then need to trigger the docker image repo manually if necessary (see `.gitlab-ci.yml`)


# Run Jupyter lab on your host

```
source ~/miniconda/bin/activate jupyterlab-ext
jupyter lab --watch
```

# installing backend

To install the backend, assuming you've followed the conda based setup [xkcd example](http://jupyterlab.readthedocs.io/en/stable/developer/xkcd_extension_tutorial.html):
```
conda install pip
pip install -e jupyterlab_dotscience_backend
jupyter serverextension enable --py jupyterlab_dotscience_backend --sys-prefix
```

[More details](http://jupyter-notebook.readthedocs.io/en/stable/examples/Notebook/Distributing%20Jupyter%20Extensions%20as%20Python%20Packages.html#Enable-a-Server-Extension)

# installing frontend
```
jupyter labextension install jupyterlab_dotscience --no-build
```

## Summary statistics

For python applications look at the [dotscience-python](https://pypi.org/project/dotscience/) library. For other languages we do not yet have a library, but this [specification](https://docs.dotscience.com/references/run-metadata-format/#basic-structure) should give you some idea what is expected.


