Skip to main content

Utilities for easier development of extractors for CDF

Project description

Cognite logo

Cognite Python extractor-utils

Build Status Documentation Status codecov PyPI version PyPI - Python Version License Code style: black

The extractor-utils package is an extension of the Cognite Python SDK intended to simplify the development of data extractors or other integrations for Cognite Data Fusion.

Documentation is hosted here, including a quickstart tutorial.

The changelog is found here.

Overview

The best way to start a new extractor project is to use the cogex CLI. You can install that from PyPI:

pip install cognite-extractor-manager

To initialize a new extractor project, run

cogex init

in the directory you want your extractor project in. The cogex CLI will prompt you for some information about your project, and then set up a poetry environment, git repository, commit hooks with type and style checks and load a template.

Extensions

Some source systems have a lot in common, such as RESTful APIs or systems exposing as MQTT. We therefore have extensions to extractor-utils tailroed to these protocols. These can be found in separate packages:

Contributing

The package is open source under the Apache 2.0 license, and contribtuions are welcome.

This project adheres to the Contributor Covenant v2.0 as a code of conduct.

Development environment

We use poetry to manage dependencies and to administrate virtual environments. To develop extractor-utils, follow the following steps to set up your local environment:

  1. Install poetry if you haven't already.

  2. Clone repository:

    $ git clone git@github.com:cognitedata/python-extractor-utils.git
    
  3. Move into the newly created local repository:

    $ cd python-extractor-utils
    
  4. Create virtual environment and install dependencies:

    $ poetry install
    

Code requirements

All code must pass black and isort style checks to be merged. It is recommended to install pre-commit hooks to ensure this locally before commiting code:

$ poetry run pre-commit install

Each public method, class and module should have docstrings. Docstrings are written in the Google style. Please include unit and/or integration tests for submitted code, and remember to update the changelog.

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

cognite-extractor-utils-2.3.0b2.tar.gz (39.9 kB view details)

Uploaded Source

Built Distribution

cognite_extractor_utils-2.3.0b2-py3-none-any.whl (48.6 kB view details)

Uploaded Python 3

File details

Details for the file cognite-extractor-utils-2.3.0b2.tar.gz.

File metadata

  • Download URL: cognite-extractor-utils-2.3.0b2.tar.gz
  • Upload date:
  • Size: 39.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/35.0 requests/2.28.0 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.11.4 keyring/23.6.0 rfc3986/2.0.0 colorama/0.4.5 CPython/3.7.13

File hashes

Hashes for cognite-extractor-utils-2.3.0b2.tar.gz
Algorithm Hash digest
SHA256 91d75610d6ddc1fb33db5c5541ea01e58b811178ae65d2227fb6562351bff0d2
MD5 eb9b825c0f0ac67cbbf19c42dd9cd73c
BLAKE2b-256 057fb1929ea0eda00864916b25efc847bcacb9a81f41cd840328784c4096911f

See more details on using hashes here.

File details

Details for the file cognite_extractor_utils-2.3.0b2-py3-none-any.whl.

File metadata

  • Download URL: cognite_extractor_utils-2.3.0b2-py3-none-any.whl
  • Upload date:
  • Size: 48.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.3 readme-renderer/35.0 requests/2.28.0 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.11.4 keyring/23.6.0 rfc3986/2.0.0 colorama/0.4.5 CPython/3.7.13

File hashes

Hashes for cognite_extractor_utils-2.3.0b2-py3-none-any.whl
Algorithm Hash digest
SHA256 05cafa4ca685b9b80d97203ca480fd215aba589e97c74b9c6c01250ab2de2c8b
MD5 5f3fd7e99fce5114694c36e8ea0622a7
BLAKE2b-256 9c6c69f723d92bbe1573795f2570848a1e41aae3b8f25b6d40a68f5dc38a0ee7

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