deriva-client


Namederiva-client JSON
Version 1.7.0 PyPI version JSON
download
home_pagehttps://github.com/informatics-isi-edu/deriva-client
SummaryA Python-based application suite of client software for use with the DERIVA platform.
upload_time2024-03-15 23:05:14
maintainerUSC Information Sciences Institute, Informatics Systems Research Division
docs_urlNone
authorUSC Information Sciences Institute, Informatics Systems Research Division
requires_python>=3.8
licenseGNU GPL 3.0
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # deriva-client
[![PyPi Version](https://img.shields.io/pypi/v/deriva-client.svg)](https://pypi.python.org/pypi/deriva-client)
[![PyPi Downloads](https://img.shields.io/pypi/dm/deriva-client.svg)](https://pypistats.org/packages/deriva-client)
[![PyPi Wheel](https://img.shields.io/pypi/wheel/deriva-client.svg)](https://pypi.python.org/pypi/deriva-client)
[![Python Versions](https://img.shields.io/pypi/pyversions/deriva-client.svg)](https://pypi.python.org/pypi/deriva-client)
[![License](https://img.shields.io/pypi/l/deriva-client.svg)](https://www.gnu.org/licenses/gpl-3.0)

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__](https://github.com/fair-research/bdbag), a file container format used by DERIVA.
5. Tools for working with [__minids__](https://github.com/fair-research/minid), a lightweight identifier format used by DERIVA.


## Installed Applications

###### Command-Line Interface (CLI) applications
| Executable Name              | Description                                                                                                                                                                                                                                                                                                                                                                                                               |
|------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `bdbag`                      | The [`bdbag`](https://github.com/fair-research/bdbag/blob/master/doc/cli.md#bdbag-command-line-interface-cli) application provides a variety of functions for working with [`BagIt`](https://datatracker.ietf.org/doc/draft-kunze-bagit/) file archives, a file packaging format used by DERIVA for data export. This format is created by the DERIVA web applications when exporting data sets using the `BDBAG` option. |
| `bdbag-utils`                | The [`bdbag-utils`](https://github.com/fair-research/bdbag/blob/master/doc/utils.md#bdbag-bdbag-utils--reference) application is used to make some of the more repetitive and programmable tasks associated with creating and maintaining bags easier.                                                                                                                                                                    |
| `minid`                      | The [`minid`](https://minid.readthedocs.io/en/latest/) application is used to create and maintain `minid` identifiers. A `minid` (Minimal Viable Identifier) is an identifier that is sufficiently simple to make creation and use trivial, while still having enough substance to make data easily findable, accessible, interoperable, and reusable (FAIR).                                                             |
| `deriva-acl-config`          | The [`deriva-acl-config`](http://docs.derivacloud.org/deriva-py/cli/deriva-acl-config.html#deriva-acl-config) utility reads a configuration file and uses it to set ACLs for an ermrest catalog (or for a schema or table within that catalog).                                                                                                                                                                           |
| `deriva-annotation-config`   | The [`deriva-annotation-config`](http://docs.derivacloud.org/deriva-py/cli/deriva-annotation-config.html#deriva-annotation-config) utility reads a configuration file and uses it to set annotations for an _ERMrest_ catalog (or for a schema or table within that catalog).                                                                                                                                             |
| `deriva-annotation-dump`     | Outputs the current set of annotations in use for the specified catalog in JSON format.                                                                                                                                                                                                                                                                                                                                   |
| `deriva-annotation-rollback` | Provides a function to rollback the entire annotation hierarchy for the specified catalog to a given point in time specified by catalog snapshot ID.                                                                                                                                                                                                                                                                      |
| `deriva-catalog-config`      | Provides functions to set up catalog schema and tables with a standard baseline annotation and ACL configuration.                                                                                                                                                                                                                                                                                                         |
| `deriva-catalog-dump`        | Provides functions to dump the current configuration of a catalog as a set of [`deriva-py`](http://docs.derivacloud.org/deriva-py/index.html#python-command-line-clients-and-api-deriva-py) scripts. The scripts are pure deriva-py and have placeholder variables to set annotations, acls, and acl-bindings.                                                                                                            |
| `deriva-csv`                 | Provides functions to upload `csv` or other table-like data to a catalog with options to create a new table, validate input data and upload data.                                                                                                                                                                                                                                                                         |
| `deriva-download-cli`        | The [`deriva-download-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-download-cli.html#deriva-download-cli) is used for orchestrating the bulk export of tabular data (stored in _ERMrest_ catalogs) and download of asset data (stored in _Hatrac_, or other supported HTTP-accessible object store).                                                                                                            |
| `deriva-hatrac-cli`          | The [`deriva-hatrac-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-hatrac-cli.html) is a command-line utility for interacting directly with the DERIVA _Hatrac_ object store.                                                                                                                                                                                                                                     |
| `deriva-upload-cli`          | The [`deriva-upload-cli`]() provides batch upload functionality for both catalog (_ERMrest_) and asset (_Hatrac_) data. This application is generally used for automating the bulk transfer of data to DERIVA servers.                                                                                                                                                                                                    |
| `deriva-globus-auth-utils`   | The [`deriva-globus-auth-utils`]() provides numerous utility functions for working with the [Globus Auth API](https://docs.globus.org/api/auth/reference/) in addition to Globus Auth Native App login functionality.                                                                                                                                                                                                     |
| `deriva-backup-cli`          | The [`deriva-backup-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-backup-cli.html) is a command-line utility for orchestrating the backup of schema and tabular data from ERMRest catalogs and file assets from Hatrac object stores to a local directory either as a bag archive or plain directory.                                                                                                            |
| `deriva-restore-cli`         | The [`deriva-restore-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-restore-cli.html) is a command-line utility for orchestrating the restoration of schema and tabular data to ERMRest catalogs and file assets to Hatrac object stores from a specifically formatted directory structure (e.g., one generated from `deriva-backup-cli`) on the local filesystem.                                                |

###### Graphical User Interface (GUI) applications
| Executable Name    | Application Name               | Description                                                                                                                                                                                                   |
|--------------------|--------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `deriva-auth`      | DERIVA Authentication Agent    | Provides credential authentication and refresh services for one or more DERIVA servers. This application is intended to be run in the background after the user completes the login sequence for each server. |
| `deriva-upload`    | DERIVA Upload Utility          | Provides batch upload functionality for both catalog and asset data. This application is an interactive tool used for the bulk transfer of data to DERIVA servers.                                            |
| `deriva-workbench` | DERIVA Workbench               | Schema Workbench for the DERIVA platform.                                                                                                                                                                     |
| `bdbag-gui`        | BDBag Graphical User Interface | Provides a GUI application front-end to `bdbag`, supporting the most common operations such as; `create`, `update`, `validate`, `fetch` and `materialize`.                                                    |

## Installer packages for Windows and MacOSX
Pre-packaged installers of `deriva-client` for Windows and MacOSX are 
available. 
These installer packages include a bundled Python interpreter and all 
other software dependencies and are recommended for Windows and MacOSX 
users who are looking for a more traditional "turnkey" installation that 
does not require them to install Python and manage Python software package 
installations.  

[Download the installer packages here.](https://github.com/informatics-isi-edu/deriva-client-bundle/releases)


## 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](https://pypi.org/project/deriva-client) using basic `pip` commands.

### Installation Prerequisites

* A Python 3.6 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: 

```sh
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. 
```sh
python3 -m venv ./deriva-client-venv
source ./deriva-client-venv/bin/activate
python3 -m pip install --upgrade pip setuptools wheel
pip install deriva-client
```

###### 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_](https://docs.python.org/3/tutorial/venv.html) 
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_](https://pip.pypa.io/en/stable/user_guide/#user-installs) 
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`](https://docs.python.org/3/tutorial/venv.html) module, the 
[`virtualenv`](https://packaging.python.org/guides/installing-using-pip-and-virtualenv/) 
package from PyPi, or the [Anaconda Distribution](https://www.anaconda.com/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_](https://pip.pypa.io/en/stable/user_guide/#user-installs) 
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_):
        ```sh
        python -m pip install --upgrade pip setuptools wheel
        ```
    2. For _user environments_ execute the following:
        ```sh
        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](https://pypi.org/project/deriva-client) 
using the `pip install` command.
    1. For _virtual environments_ execute the following (ensure the 
    environment is _active_):
        ```sh
        pip install deriva-client
        ```
    2. For _user environments_ execute the following:
        ```sh
        pip3 install --user deriva-client
        ```
    3. For system-wide python installations (only do this if you 
        understand the complexities involved):
        ```sh
        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.
* When using the `--user` flag with `pip3`, please be aware that due to various shell implementation 
differences between operating systems and/or local policy configurations, the executables for 
each installed program _may not_ automatically be found on the search path by default. 
Therefore, it may be necessary to manually add the installed executable directory to the search path, 
which may be an operating system, distribution and/or shell specific procedure.
    - On Linux/MacOSX systems, the default executable installation location is generally
      `~/.local/bin/`.
    - On Windows systems, the default executable installation location is generally 
      `%systemroot%\<username>\AppData\Roaming\Python\Python3{x}\Scripts`.

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

* [`deriva-py`](https://github.com/informatics-isi-edu/deriva-py)
* [`deriva-qt`](https://github.com/informatics-isi-edu/deriva-qt)
* [`deriva-workbench`](https://github.com/informatics-isi-edu/deriva-workbench)  
* [`deriva-catalog-manage`](https://github.com/informatics-isi-edu/deriva-catalog-manage)

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/informatics-isi-edu/deriva-client",
    "name": "deriva-client",
    "maintainer": "USC Information Sciences Institute, Informatics Systems Research Division",
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "isrd-support@isi.edu",
    "keywords": "",
    "author": "USC Information Sciences Institute, Informatics Systems Research Division",
    "author_email": "isrd-support@isi.edu",
    "download_url": "https://files.pythonhosted.org/packages/32/c2/d2e669bd0d21b1b056b51f719745d076cdf56fcf566598420b1f544e8b68/deriva-client-1.7.0.tar.gz",
    "platform": null,
    "description": "# deriva-client\r\n[![PyPi Version](https://img.shields.io/pypi/v/deriva-client.svg)](https://pypi.python.org/pypi/deriva-client)\r\n[![PyPi Downloads](https://img.shields.io/pypi/dm/deriva-client.svg)](https://pypistats.org/packages/deriva-client)\r\n[![PyPi Wheel](https://img.shields.io/pypi/wheel/deriva-client.svg)](https://pypi.python.org/pypi/deriva-client)\r\n[![Python Versions](https://img.shields.io/pypi/pyversions/deriva-client.svg)](https://pypi.python.org/pypi/deriva-client)\r\n[![License](https://img.shields.io/pypi/l/deriva-client.svg)](https://www.gnu.org/licenses/gpl-3.0)\r\n\r\nThe `deriva-client` package bundles an application suite of Python-based \r\nclient software for use with the DERIVA platform. These tools provide functions such as:\r\n1. Authentication services for programmatic and non browser-based access.\r\n2. Bulk import and export of catalog assets and (meta) data.\r\n3. Catalog configuration, mutation and administration.\r\n4. Tools for working with [__bdbags__](https://github.com/fair-research/bdbag), a file container format used by DERIVA.\r\n5. Tools for working with [__minids__](https://github.com/fair-research/minid), a lightweight identifier format used by DERIVA.\r\n\r\n\r\n## Installed Applications\r\n\r\n###### Command-Line Interface (CLI) applications\r\n| Executable Name              | Description                                                                                                                                                                                                                                                                                                                                                                                                               |\r\n|------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\r\n| `bdbag`                      | The [`bdbag`](https://github.com/fair-research/bdbag/blob/master/doc/cli.md#bdbag-command-line-interface-cli) application provides a variety of functions for working with [`BagIt`](https://datatracker.ietf.org/doc/draft-kunze-bagit/) file archives, a file packaging format used by DERIVA for data export. This format is created by the DERIVA web applications when exporting data sets using the `BDBAG` option. |\r\n| `bdbag-utils`                | The [`bdbag-utils`](https://github.com/fair-research/bdbag/blob/master/doc/utils.md#bdbag-bdbag-utils--reference) application is used to make some of the more repetitive and programmable tasks associated with creating and maintaining bags easier.                                                                                                                                                                    |\r\n| `minid`                      | The [`minid`](https://minid.readthedocs.io/en/latest/) application is used to create and maintain `minid` identifiers. A `minid` (Minimal Viable Identifier) is an identifier that is sufficiently simple to make creation and use trivial, while still having enough substance to make data easily findable, accessible, interoperable, and reusable (FAIR).                                                             |\r\n| `deriva-acl-config`          | The [`deriva-acl-config`](http://docs.derivacloud.org/deriva-py/cli/deriva-acl-config.html#deriva-acl-config) utility reads a configuration file and uses it to set ACLs for an ermrest catalog (or for a schema or table within that catalog).                                                                                                                                                                           |\r\n| `deriva-annotation-config`   | The [`deriva-annotation-config`](http://docs.derivacloud.org/deriva-py/cli/deriva-annotation-config.html#deriva-annotation-config) utility reads a configuration file and uses it to set annotations for an _ERMrest_ catalog (or for a schema or table within that catalog).                                                                                                                                             |\r\n| `deriva-annotation-dump`     | Outputs the current set of annotations in use for the specified catalog in JSON format.                                                                                                                                                                                                                                                                                                                                   |\r\n| `deriva-annotation-rollback` | Provides a function to rollback the entire annotation hierarchy for the specified catalog to a given point in time specified by catalog snapshot ID.                                                                                                                                                                                                                                                                      |\r\n| `deriva-catalog-config`      | Provides functions to set up catalog schema and tables with a standard baseline annotation and ACL configuration.                                                                                                                                                                                                                                                                                                         |\r\n| `deriva-catalog-dump`        | Provides functions to dump the current configuration of a catalog as a set of [`deriva-py`](http://docs.derivacloud.org/deriva-py/index.html#python-command-line-clients-and-api-deriva-py) scripts. The scripts are pure deriva-py and have placeholder variables to set annotations, acls, and acl-bindings.                                                                                                            |\r\n| `deriva-csv`                 | Provides functions to upload `csv` or other table-like data to a catalog with options to create a new table, validate input data and upload data.                                                                                                                                                                                                                                                                         |\r\n| `deriva-download-cli`        | The [`deriva-download-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-download-cli.html#deriva-download-cli) is used for orchestrating the bulk export of tabular data (stored in _ERMrest_ catalogs) and download of asset data (stored in _Hatrac_, or other supported HTTP-accessible object store).                                                                                                            |\r\n| `deriva-hatrac-cli`          | The [`deriva-hatrac-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-hatrac-cli.html) is a command-line utility for interacting directly with the DERIVA _Hatrac_ object store.                                                                                                                                                                                                                                     |\r\n| `deriva-upload-cli`          | The [`deriva-upload-cli`]() provides batch upload functionality for both catalog (_ERMrest_) and asset (_Hatrac_) data. This application is generally used for automating the bulk transfer of data to DERIVA servers.                                                                                                                                                                                                    |\r\n| `deriva-globus-auth-utils`   | The [`deriva-globus-auth-utils`]() provides numerous utility functions for working with the [Globus Auth API](https://docs.globus.org/api/auth/reference/) in addition to Globus Auth Native App login functionality.                                                                                                                                                                                                     |\r\n| `deriva-backup-cli`          | The [`deriva-backup-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-backup-cli.html) is a command-line utility for orchestrating the backup of schema and tabular data from ERMRest catalogs and file assets from Hatrac object stores to a local directory either as a bag archive or plain directory.                                                                                                            |\r\n| `deriva-restore-cli`         | The [`deriva-restore-cli`](http://docs.derivacloud.org/deriva-py/cli/deriva-restore-cli.html) is a command-line utility for orchestrating the restoration of schema and tabular data to ERMRest catalogs and file assets to Hatrac object stores from a specifically formatted directory structure (e.g., one generated from `deriva-backup-cli`) on the local filesystem.                                                |\r\n\r\n###### Graphical User Interface (GUI) applications\r\n| Executable Name    | Application Name               | Description                                                                                                                                                                                                   |\r\n|--------------------|--------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\r\n| `deriva-auth`      | DERIVA Authentication Agent    | Provides credential authentication and refresh services for one or more DERIVA servers. This application is intended to be run in the background after the user completes the login sequence for each server. |\r\n| `deriva-upload`    | DERIVA Upload Utility          | Provides batch upload functionality for both catalog and asset data. This application is an interactive tool used for the bulk transfer of data to DERIVA servers.                                            |\r\n| `deriva-workbench` | DERIVA Workbench               | Schema Workbench for the DERIVA platform.                                                                                                                                                                     |\r\n| `bdbag-gui`        | BDBag Graphical User Interface | Provides a GUI application front-end to `bdbag`, supporting the most common operations such as; `create`, `update`, `validate`, `fetch` and `materialize`.                                                    |\r\n\r\n## Installer packages for Windows and MacOSX\r\nPre-packaged installers of `deriva-client` for Windows and MacOSX are \r\navailable. \r\nThese installer packages include a bundled Python interpreter and all \r\nother software dependencies and are recommended for Windows and MacOSX \r\nusers who are looking for a more traditional \"turnkey\" installation that \r\ndoes not require them to install Python and manage Python software package \r\ninstallations.  \r\n\r\n[Download the installer packages here.](https://github.com/informatics-isi-edu/deriva-client-bundle/releases)\r\n\r\n\r\n## Installing `deriva-client` from PyPi via `pip`\r\nFor users who already have Python installed and are comfortable installing \r\nPython software via the `pip` application, `deriva-client` can be easily \r\ninstalled along with all of it's dependencies directly from \r\n[PyPi](https://pypi.org/project/deriva-client) using basic `pip` commands.\r\n\r\n### Installation Prerequisites\r\n\r\n* A Python 3.6 or greater system installation is required. The latest \r\nstable version of Python is recommended. \r\n* Verify that the appropriate Python 3 interpreter can be invoked from a \r\ncommand shell using the `python3` command. This can be tested simply \r\nwith the following command: \r\n\r\n```sh\r\npython3 --version\r\n```\r\n\r\n### Installation Quickstart\r\n\r\nThe following commands can be used to perform a `venv`-based _virtual \r\nenvironment_ installation to the current working directory. \r\n\r\n###### Mac/Linux\r\nThe following commands assume a `BASH` (or compatible) command shell is \r\nused. For a different command interpreter (e.g. `CSH`), invoke the `source` \r\ncommand on the appropriate activation script in the virtual environment's `bin` directory. \r\n```sh\r\npython3 -m venv ./deriva-client-venv\r\nsource ./deriva-client-venv/bin/activate\r\npython3 -m pip install --upgrade pip setuptools wheel\r\npip install deriva-client\r\n```\r\n\r\n###### Windows\r\nThe following commands assume a Windows `Command Prompt` command shell is used. For a \r\n`Powershell` shell, the `activate.ps1` activation script should be invoked instead.\r\n```\r\npython3 -m venv .\\deriva-client-venv\r\n.\\deriva-client-venv\\Scripts\\activate\r\npython3 -m pip install --upgrade pip setuptools wheel\r\npip install deriva-client\r\n```\r\n\r\n###### IMPORTANT NOTE: Python _virtual environments_ versus _user environments_\r\nWhile a [_virtual environment_](https://docs.python.org/3/tutorial/venv.html) \r\ninstallation is generally the safest way to install and isolate multiple \r\nsoftware packages, it also must be _activated_ before use and \r\n_deactivated_ after use. If this requirement is too cumbersome, the \r\nrecommended alternative is to install the software into a \r\n[_user environment_](https://pip.pypa.io/en/stable/user_guide/#user-installs) \r\ninstead. See the complete installation procedure below for more information.\r\n\r\n---\r\n\r\n### Installation Procedure\r\n\r\n* For MacOSX and Linux systems which include Python as a core part of the\r\noperating system, it is _highly recommended_ to install this software\r\ninto a _virtual environment_ or a _user environment_, so that it does not interfere or conflict\r\nwith the operating system's Python installation. The native Python3\r\n[`venv`](https://docs.python.org/3/tutorial/venv.html) module, the \r\n[`virtualenv`](https://packaging.python.org/guides/installing-using-pip-and-virtualenv/) \r\npackage from PyPi, or the [Anaconda Distribution](https://www.anaconda.com/distribution/)\r\nenvironment are all suitable for use as virtual environments.  \r\n\r\n* Instead of using a _virtual environment_, it is also possible to \r\ninstall the software into a [_user environment_](https://pip.pypa.io/en/stable/user_guide/#user-installs) \r\nusing the `--user` argument when invoking `pip install`.  \r\n\r\n* Recent versions of `pip`, `setuptools`, and `wheel` are recommended. \r\nIf these components are already installed, updating them to the latest \r\nversions available is _optional_.\r\n\r\n#### Installation Sequence\r\n\r\n1. Create and/or activate the target virtual environment, if any. \r\nThis step is specific to the type of virtual environment being used.\r\n\r\n2. Update `pip`, `setuptools`, and `wheel` (optional).\r\n\r\n    1. For _virtual environments_ execute the following (ensure the \r\n    environment is _active_):\r\n        ```sh\r\n        python -m pip install --upgrade pip setuptools wheel\r\n        ```\r\n    2. For _user environments_ execute the following:\r\n        ```sh\r\n        python3 -m pip install --user --upgrade pip setuptools wheel\r\n        ```\r\n    3. For Linux system python installations it is recommended to use the \r\n    system's package manager such as `dnf`, `apt`, or `yum` to update \r\n    the following packages: `python3-pip`, `python3-setuptools` , and `python3-wheel`.\r\n\r\n3. Install `deriva-client` directly from [PyPi](https://pypi.org/project/deriva-client) \r\nusing the `pip install` command.\r\n    1. For _virtual environments_ execute the following (ensure the \r\n    environment is _active_):\r\n        ```sh\r\n        pip install deriva-client\r\n        ```\r\n    2. For _user environments_ execute the following:\r\n        ```sh\r\n        pip3 install --user deriva-client\r\n        ```\r\n    3. For system-wide python installations (only do this if you \r\n        understand the complexities involved):\r\n        ```sh\r\n        pip3 install deriva-client\r\n        ```\r\n\r\n###### IMPORTANT NOTES: Using `pip` to install software into __system-wide__ Python locations\r\n\r\n* Many newer Linux (as well as MacOSX) distributions contain both Python2\r\nand Python3 installed alongside each other. In these environments, both\r\nthe python interpreter and `pip` are symbolically linked to the system \r\ndefault version, which in general results in `python` and `pip` being \r\nlinked to the Python2 versions.\r\n* Python3 versions are commonly accessed via `python3` and `pip3`.\r\nIf you are working _outside_ of a Python3 virtual environment and installing\r\neither to the system-wide Python location (not recommended) or a user-based\r\nlocation (e.g. with the `pip` `--user` argument), then you _must_\r\nsubstitute `pip3` for `pip` when issuing `pip` installation commands.\r\n* Also note that when installing into the system Python location via\r\n`pip` on Linux/MacOSX, the commands must be run as root or the  `sudo`\r\ncommand must be prefixed to the command line.\r\n* When using the `--user` flag with `pip3`, please be aware that due to various shell implementation \r\ndifferences between operating systems and/or local policy configurations, the executables for \r\neach installed program _may not_ automatically be found on the search path by default. \r\nTherefore, it may be necessary to manually add the installed executable directory to the search path, \r\nwhich may be an operating system, distribution and/or shell specific procedure.\r\n    - On Linux/MacOSX systems, the default executable installation location is generally\r\n      `~/.local/bin/`.\r\n    - On Windows systems, the default executable installation location is generally \r\n      `%systemroot%\\<username>\\AppData\\Roaming\\Python\\Python3{x}\\Scripts`.\r\n\r\n## Source Code\r\nThe source code and additional documentation for the primary components of `deriva-client` can be found at the links below: \r\n\r\n* [`deriva-py`](https://github.com/informatics-isi-edu/deriva-py)\r\n* [`deriva-qt`](https://github.com/informatics-isi-edu/deriva-qt)\r\n* [`deriva-workbench`](https://github.com/informatics-isi-edu/deriva-workbench)  \r\n* [`deriva-catalog-manage`](https://github.com/informatics-isi-edu/deriva-catalog-manage)\r\n",
    "bugtrack_url": null,
    "license": "GNU GPL 3.0",
    "summary": "A Python-based application suite of client software for use with the DERIVA platform.",
    "version": "1.7.0",
    "project_urls": {
        "Homepage": "https://github.com/informatics-isi-edu/deriva-client"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "532a545eb25cf91664cb75b47dca5c389164b6f8f7334bba7e7b6dafca2fb99e",
                "md5": "c162c04f713d54cc2aeaf7f9ceb04823",
                "sha256": "22fff7b4344fa254241e467906d4d89d931fbc0a3b5b21e4d10a805130abb1c2"
            },
            "downloads": -1,
            "filename": "deriva_client-1.7.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "c162c04f713d54cc2aeaf7f9ceb04823",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 18700,
            "upload_time": "2024-03-15T23:05:13",
            "upload_time_iso_8601": "2024-03-15T23:05:13.250091Z",
            "url": "https://files.pythonhosted.org/packages/53/2a/545eb25cf91664cb75b47dca5c389164b6f8f7334bba7e7b6dafca2fb99e/deriva_client-1.7.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "32c2d2e669bd0d21b1b056b51f719745d076cdf56fcf566598420b1f544e8b68",
                "md5": "af2c1afc75c34a3862ffbbbd0894d3c9",
                "sha256": "344cea8a892987c0f65d815ed6d7f05dfcf0ac1aa2ecf34b633f94b310ddb896"
            },
            "downloads": -1,
            "filename": "deriva-client-1.7.0.tar.gz",
            "has_sig": false,
            "md5_digest": "af2c1afc75c34a3862ffbbbd0894d3c9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 21532,
            "upload_time": "2024-03-15T23:05:14",
            "upload_time_iso_8601": "2024-03-15T23:05:14.691878Z",
            "url": "https://files.pythonhosted.org/packages/32/c2/d2e669bd0d21b1b056b51f719745d076cdf56fcf566598420b1f544e8b68/deriva-client-1.7.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-15 23:05:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "informatics-isi-edu",
    "github_project": "deriva-client",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "deriva-client"
}
        
Elapsed time: 0.22889s