Skip to main content

A Python-based application suite of client software for use with the DERIVA platform.

Project description

deriva-client

PyPi Version PyPi Wheel Python Versions License

The deriva-client package bundles an application suite of Python-based client software for use with the DERIVA platform. These tools provide functions such as:

  1. Authentication services for programmatic and non browser-based access.
  2. Bulk import and export of catalog assets and (meta) data.
  3. Catalog configuration, mutation and administration.
  4. Tools for working with bdbags, a file container format used by DERIVA.

Installer packages for Windows and MacOSX

Pre-packaged installers of deriva-client for Windows and MacOSX can be found here. These installer packages include a bundled Python interpeter and all other software dependencies and are recommended for Windows and MacOSX users who are looking for a more traditional "turnkey" installation.

Installing deriva-client from PyPi via pip

For users who already have Python installed and are comfortable installing Python software via the pip application, deriva-client can be easily installed along with all of it's dependencies directly from PyPi using basic pip commands.

Installation Prerequisites

  • A Python 3.5.4 or greater system installation is required. The latest stable version of Python is recommended.
  • Verify that the appropriate Python 3 interpreter can be invoked from a command shell using the python3 command. This can be tested simply with the following command:
python3 --version

Installation Quickstart

The following commands can be used to perform a venv-based virtual environment installation to the current working directory.

Mac/Linux

The following commands assume a BASH (or compatible) command shell is used. For a different command interpreter (e.g. CSH), invoke the source command on the appropriate activation script in the virtual environment's bin directory.

python3 -m venv ./deriva-client-venv
source ./deriva-client-venv/bin/activate
python3 -m pip install --upgrade pip setuptools wheel
pip install deriva-client
Important Note: For MacOSX users running Python 3.5.x with pip version < 9.0.3

If you encounter the following error:

Could not fetch URL https://pypi.python.org/simple/pip/: 
There was a problem confirming the ssl certificate: 
[SSL: TLSV1_ALERT_PROTOCOL_VERSION] tlsv1 alert protocol version (_ssl.c:720) - skipping

This error means that you cannot update pip, setuptools, and wheel via the command provided above. You can work around this error by issuing the following commands instead, and then continue with the installation procedure as described.

curl https://bootstrap.pypa.io/get-pip.py | python3
pip install --upgrade setuptools
Windows

The following commands assume a Windows Command Prompt command shell is used. For a Powershell shell, the activate.ps1 activation script should be invoked instead.

python3 -m venv .\deriva-client-venv
.\deriva-client-venv\Scripts\activate
python3 -m pip install --upgrade pip setuptools wheel
pip install deriva-client
IMPORTANT NOTE: Python virtual environments versus user environments

While a virtual environment installation is generally the safest way to install and isolate multiple software packages, it also must be activated before use and deactivated after use. If this requirement is too cumbersome, the recommended alternative is to install the software into a user environment instead. See the complete installation procedure below for more information.


Installation Procedure

  • For MacOSX and Linux systems which include Python as a core part of the operating system, it is highly recommended to install this software into a virtual environment or a user environment, so that it does not interfere or conflict with the operating system's Python installation. The native Python3 venv module, the virtualenv package from PyPi, or the Anaconda Distribution environment are all suitable for use as virtual environments.

  • Instead of using a virtual environment, it is also possible to install the software into a user environment using the --user argument when invoking pip install.

  • Recent versions of pip, setuptools, and wheel are recommended. If these components are already installed, updating them to the latest versions available is optional.

Installation Sequence

  1. Create and/or activate the target virtual environment, if any. This step is specific to the type of virtual environment being used.

  2. Update pip, setuptools, and wheel (optional).

    1. For virtual environments execute the following (ensure the environment is active):
      python -m pip install --upgrade pip setuptools wheel
      
    2. For user environments execute the following:
      python3 -m pip install --user --upgrade pip setuptools wheel
      
    3. For Linux system python installations it is recommended to use the system's package manager such as dnf, apt, or yum to update the following packages: python3-pip, python3-setuptools , and python3-wheel.
  3. Install deriva-client directly from PyPi using the pip install command.

    1. For virtual environments execute the following (ensure the environment is active):
      pip install deriva-client
      
    2. For user environments execute the following:
      pip3 install --user deriva-client
      
    3. For system-wide python installations (only do this if you understand the complexities involved):
      pip3 install deriva-client
      
IMPORTANT NOTES: Using pip to install software into system-wide Python locations
  • Many newer Linux (as well as MacOSX) distributions contain both Python2 and Python3 installed alongside each other. In these environments, both the python interpreter and pip are symbolically linked to the system default version, which in general results in python and pip being linked to the Python2 versions.
  • Python3 versions are commonly accessed via python3 and pip3. If you are working outside of a Python3 virtual environment and installing either to the system-wide Python location (not recommended) or a user-based location (e.g. with the pip --user argument), then you must substitute pip3 for pip when issuing pip installation commands.
  • Also note that when installing into the system Python location via pip on Linux/MacOSX, the commands must be run as root or the sudo command must be prefixed to the command line.

Source Code

The source code and additional documentation for the primary components of deriva-client can be found at the links below:

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
deriva_client-0.4.1-py3-none-any.whl (16.5 kB) Copy SHA256 hash SHA256 Wheel py3
deriva-client-0.4.1.tar.gz (20.7 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page