Skip to main content

Python wrapper to interface with ITk DB.

Project description

ITk DB v0.4.0rc11

PyPI version Downloads Downloads Downloads

To install as a user

pip install itkdb

or if you wish to develop/contribute

git clone ...
pip install -e .[develop]

or

git clone ...
pip install -e .[complete]

Using

Command line available via

itkdb --help

Environment Variables

See itkdb/settings/base.py for all environment variables that can be set. All environment variables for this package are prefixed with ITKDB_. As of now, there are:

  • ITKDB_ACCESS_CODE1: access code #1 for authentication
  • ITKDB_ACCESS_CODE2: access code #2 for authentication
  • ITKDB_ACCESS_SCOPE: scope for the access token authentication request
  • ITKDB_AUTH_URL: authentication server
  • ITKDB_SITE_URL: API server
  • ITKDB_CASSETTE_LIBRARY_DIR: for tests, where to store recorded requests/responses

Develop

Bump Version

Run bump2version x.y.z to bump to the next version. We will always tag any version we bump, and this creates the relevant commits/tags for you. All you need to do is git push --tags and that should be it.

Examples

import itkdb

client = itkdb.Client()
comps = client.get(
    "listComponents", json={"project": "P", "pageInfo": {"pageSize": 32}}
)

for i, comp in enumerate(comps):
    print(i, comp["code"])

FAQ

SSL Error with CERN websites

If you run into SSL errors with CERN websites, you might need the CERN certificate chain to sign the certificates correctly. Just add a verify keyword into your calls:

client.get(..., verify=itkdb.data / "CERN_chain.pem")

and it should work.

pycurl error

If you try running itkdb and run into an issue like:

Traceback (most recent call last):
  File "script.py", line 1, in <module>
    import itkdb
  File "/Users/kratsg/itkdb/src/itkdb/__init__.py", line 7, in <module>
    from .client import Client
  File "/Users/kratsg/itkdb/src/itkdb/client.py", line 8, in <module>
    import pycurl
ImportError: pycurl: libcurl link-time ssl backends (secure-transport, openssl) do not include compile-time ssl backend (none/other)

You will need to reinstall pycurl and force re-compilation. This can be done by first checking the config for curl on your machine:

$ curl-config --features
AsynchDNS
GSS-API
HTTPS-proxy
IPv6
Kerberos
Largefile
MultiSSL
NTLM
NTLM_WB
SPNEGO
SSL
UnixSockets
alt-svc
libz

and then setting the appropriate compile flags. For example, on a Mac, I have openssl so I do the following:

$ brew info openssl
...
...

For compilers to find openssl@3 you may need to set:
  export LDFLAGS="-L/usr/local/opt/openssl@3/lib"
  export CPPFLAGS="-I/usr/local/opt/openssl@3/include"

...

which tells me to export the above lines and then I can reinstall correctly:

$ export LDFLAGS="-L/usr/local/opt/openssl@3/lib"
$ export CPPFLAGS="-I/usr/local/opt/openssl@3/include"
$ python -m pip install --no-cache-dir --compile --ignore-installed --install-option="--with-openssl" pycurl

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

itkdb-0.4.0rc11.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

itkdb-0.4.0rc11-py3-none-any.whl (45.1 kB view details)

Uploaded Python 3

File details

Details for the file itkdb-0.4.0rc11.tar.gz.

File metadata

  • Download URL: itkdb-0.4.0rc11.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for itkdb-0.4.0rc11.tar.gz
Algorithm Hash digest
SHA256 d4ba14da245751d3a8ce899232136d574fec1226c6ea95f4b9bbe4feeb91303b
MD5 92b382b9e11f665ad0ccd98e6c16b321
BLAKE2b-256 bae82c602d544c6be8d082cae1e90c86b3720273db0e9deddc62e67e0b8f6642

See more details on using hashes here.

File details

Details for the file itkdb-0.4.0rc11-py3-none-any.whl.

File metadata

  • Download URL: itkdb-0.4.0rc11-py3-none-any.whl
  • Upload date:
  • Size: 45.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.7.16

File hashes

Hashes for itkdb-0.4.0rc11-py3-none-any.whl
Algorithm Hash digest
SHA256 19e706bfd4ecf4649ef31a491dc6d3b670800dabffbdb14c40c7c1167660cb28
MD5 94f747d3b82b08f4f509677720985140
BLAKE2b-256 76b7092775c2de4d3da5c553029f1aa9aed4508e0b832f98c834a1fd0c4a9874

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page