Metadata-Version: 2.1
Name: renku
Version: 0.3.0a2.dev15
Summary: Python SDK and CLI for the Renku platform.
Home-page: https://github.com/SwissDataScienceCenter/renku-python
Author: Swiss Data Science Center
Author-email: contact@datascience.ch
License: Apache License 2.0
Keywords: Renku CLI
Platform: any
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Development Status :: 1 - Planning
Description-Content-Type: text/x-rst
Requires-Dist: PyYAML (>=3.12)
Requires-Dist: attrs (>=18.2.0)
Requires-Dist: click (>=6.7)
Requires-Dist: click-completion (>=0.5.0)
Requires-Dist: cwltool (==1.0.20181012180214)
Requires-Dist: environ-config (>=18.2.0)
Requires-Dist: filelock (>=3.0.0)
Requires-Dist: gitpython (>=2.1.8)
Requires-Dist: psutil (>=5.4.7)
Requires-Dist: pyld (>=1.0.3)
Requires-Dist: python-dateutil (>=2.6.1)
Requires-Dist: rdflib-jsonld (>=0.4.0)
Requires-Dist: requests (>=2.20.1)
Requires-Dist: tabulate (>=0.7.7)
Requires-Dist: werkzeug (>=0.12)
Requires-Dist: pathlib2 (>=2.3.0) ; python_version<"3.6"
Provides-Extra: all
Requires-Dist: pytest-runner (>=2.6.2) ; extra == 'all'
Requires-Dist: setuptools-scm (>=3.1.0) ; extra == 'all'
Requires-Dist: Sphinx (>=1.6.3) ; extra == 'all'
Requires-Dist: renku-sphinx-theme (>=0.1.0) ; extra == 'all'
Requires-Dist: cwlref-runner (>=1.0) ; extra == 'all'
Requires-Dist: check-manifest (>=0.37) ; extra == 'all'
Requires-Dist: coverage (>=4.0) ; extra == 'all'
Requires-Dist: flake8 (>=3.5) ; extra == 'all'
Requires-Dist: freezegun (>=0.3.9) ; extra == 'all'
Requires-Dist: isort (>=4.3.4) ; extra == 'all'
Requires-Dist: pydocstyle (>=1.0.0) ; extra == 'all'
Requires-Dist: pytest-cache (>=1.0) ; extra == 'all'
Requires-Dist: pytest-cov (>=2.5.1) ; extra == 'all'
Requires-Dist: pytest-flake8 (>=0.9.1) ; extra == 'all'
Requires-Dist: pytest-pep8 (>=1.0.6) ; extra == 'all'
Requires-Dist: pytest-yapf (>=0.1.1) ; extra == 'all'
Requires-Dist: pytest (>=4.0.0) ; extra == 'all'
Requires-Dist: responses (>=0.7.0) ; extra == 'all'
Requires-Dist: yapf (>=0.24.0) ; extra == 'all'
Provides-Extra: docs
Requires-Dist: Sphinx (>=1.6.3) ; extra == 'docs'
Requires-Dist: renku-sphinx-theme (>=0.1.0) ; extra == 'docs'
Provides-Extra: notebook
Provides-Extra: runner
Requires-Dist: cwlref-runner (>=1.0) ; extra == 'runner'
Provides-Extra: tests
Requires-Dist: check-manifest (>=0.37) ; extra == 'tests'
Requires-Dist: coverage (>=4.0) ; extra == 'tests'
Requires-Dist: flake8 (>=3.5) ; extra == 'tests'
Requires-Dist: freezegun (>=0.3.9) ; extra == 'tests'
Requires-Dist: isort (>=4.3.4) ; extra == 'tests'
Requires-Dist: pydocstyle (>=1.0.0) ; extra == 'tests'
Requires-Dist: pytest-cache (>=1.0) ; extra == 'tests'
Requires-Dist: pytest-cov (>=2.5.1) ; extra == 'tests'
Requires-Dist: pytest-flake8 (>=0.9.1) ; extra == 'tests'
Requires-Dist: pytest-pep8 (>=1.0.6) ; extra == 'tests'
Requires-Dist: pytest-yapf (>=0.1.1) ; extra == 'tests'
Requires-Dist: pytest (>=4.0.0) ; extra == 'tests'
Requires-Dist: responses (>=0.7.0) ; extra == 'tests'
Requires-Dist: yapf (>=0.24.0) ; extra == 'tests'

..
    Copyright 2017-2018 - Swiss Data Science Center (SDSC)
    A partnership between École Polytechnique Fédérale de Lausanne (EPFL) and
    Eidgenössische Technische Hochschule Zürich (ETHZ).

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

==============================
 Renku CLI and SDK for Python
==============================

.. image:: https://img.shields.io/travis/SwissDataScienceCenter/renku-python.svg
   :target: https://travis-ci.org/SwissDataScienceCenter/renku-python

.. image:: https://img.shields.io/coveralls/SwissDataScienceCenter/renku-python.svg
   :target: https://coveralls.io/r/SwissDataScienceCenter/renku-python

.. image:: https://img.shields.io/github/tag/SwissDataScienceCenter/renku-python.svg
   :target: https://github.com/SwissDataScienceCenter/renku-python/releases

.. image:: https://img.shields.io/pypi/dm/renku.svg
   :target: https://pypi.python.org/pypi/renku

.. image:: http://readthedocs.org/projects/renku-python/badge/?version=latest
   :target: http://renku-python.readthedocs.io/en/latest/?badge=latest
   :alt: Documentation Status

.. image:: https://img.shields.io/github/license/SwissDataScienceCenter/renku-python.svg
        :target: https://github.com/SwissDataScienceCenter/renku-python/blob/master/LICENSE

A Python library for the `Renku collaborative data science platform
<https://github.com/SwissDataScienceCenter/renku>`_. It allows the user to
create projects, manage datasets, and capture data provenance while performing
analysis tasks.

**NOTE**:
   ``renku-python`` is the python library for Renku that provides an SDK and a
   command-line interface (CLI). It *does not* start the Renku platform itself -
   for that, refer to the Renku docs on `running the platform
   <https://renku.readthedocs.io/en/latest/user/setup.html>`_.

Installation
------------

The latest release is available on PyPI and can be installed using
``pip``:

::

    $ pip install renku

The latest code can be installed directly from the Git repository:

::

    $ pip install -e git+https://github.com/SwissDataScienceCenter/renku-python.git#egg=renku

Use following installation steps based on your operating system and preferences
if you would like to work with the command line interface and you do not need
the Python library to be importable.

MacOS
~~~~~

The recommended way of installing Renku on MacOS is via `Homebrew <brew.sh>`_.

::

    $ brew tap swissdatasciencecenter/renku
    $ brew install renku

..
  TODO: uncomment one the snap build works.

  Linux
  ~~~~~

  There are universal *snap* packages available for Renku. Make sure you
  have the ``snap`` command available or `install snapd
  <https://docs.snapcraft.io/core/install>`_.

  ::

      $ open https://launchpad.net/~swissdatasciencecenter/+snap/renku/
      $ snap install renku

Pip Script Installer (``pipsi``)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can use `pipsi <https://github.com/mitsuhiko/pipsi>`_ to isolate
dependencies and to guarantee that there are no version conflicts. Make sure
you have the ``pipsi`` command correctly installed and ``~/.local/bin`` is in
your ``$PATH``.

::

    $ pipsi install renku
    $ which renku
    ~/.local/bin/renku

Usage
-----

Initialize a renku project:

::

    $ mkdir -p ~/temp/my-renku-project
    $ cd ~/temp/my-renku-project
    $ renku init

Create a dataset and add data to it:

::

    $ renku dataset create my-dataset
    $ renku dataset add my-dataset https://raw.githubusercontent.com/SwissDataScienceCenter/renku-python/master/README.rst

Run an analysis:

::

    $ renku run wc < data/my-dataset/README.rst > wc_readme

Trace the data provenance:

::

    $ renku log wc_readme

These are the basics, but there is much more that Renku allows you to do with
your data analysis workflows. The full documentation will soon be available
at: https://renku-python.readthedocs.io/


..
    Copyright 2017-2018 - Swiss Data Science Center (SDSC)
    A partnership between École Polytechnique Fédérale de Lausanne (EPFL) and
    Eidgenössische Technische Hochschule Zürich (ETHZ).

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

Changes
=======

Version 0.2.0 (released 2018-09-25)

- Refactored version using Git and Common Workflow Language.

Version 0.1.0 (released 2017-09-06)

- Initial public release as Renga.


