Skip to main content

DataKitchen Utils Library

Project description

DKUtils

This python package is intended to house utility functions and classes that are used in DataKitchen recipes.

Building and testing this module is conveniently done using Make. Issue the make command to see a list of available targets (shown below for convenience). Note that any target can be suffixed with -ext to run that target inside a Docker container. This allows testing and development in a standard and portable environment. To develop inside a running docker container, use the bash-ext target. This will drop the user into a bash shell inside a running container.

Add '-ext' to any target to run it inside a docker container

Versioning:
    bump/major bump/minor bump/patch - bump the version

Utilities:
    bash         run bash - typically used in conjunction with -ext to enter a docker container
    scan_secrets scan source code for sensitive information

Linting:
    lint         run flake8 and yapf
    flake8       run flake8
    yapf         run yapf and correct issues in-place
    yapf-diff    run yapf and display diff between existing code and resolution if in-place is used

Testing:
    test         run all unit tests
    test_unit    run all unit tests
    clean_unit   remove files from last test run (e.g. report_dir, .coverage, etc.)
    tox          run unit tests in python 2 and 3
    clean_tox    clean tox files (e.g. .tox)

Documentation:
    docs         generate Sphinx documentation
    docs/html    generate Sphinx documentation
    docs/clean   remove generated Sphinx documentation

Build and Upload:
    build        generate distribution archives (i.e. *.tar.gz and *.whl)
    upload       upload distribution archives to PyPI
    clean_build  remove all the build files (i.e. build, dist, *.egg-info)

Cleanup:
    clean        run all the clean targets in one go
    clean_pyc    remove all *.pyc files

Pre-commit is also included to validate and flag commits that contain code that does not pass Flake8 and YAPF. To use, first install the python package pip install pre-commit and then run pre-commit install. All future commits will run these tools and deny commits that don't pass. When running YAPF, pre-commit will make in-place corrections to your code. Therefore, if it fails the YAPF validation on the first commit attempt, simply review the changed files, add, and commit again to resolve.

Project details


Download files

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

Source Distribution

DKUtils-0.9.0.tar.gz (14.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

DKUtils-0.9.0-py3-none-any.whl (16.6 kB view details)

Uploaded Python 3

File details

Details for the file DKUtils-0.9.0.tar.gz.

File metadata

  • Download URL: DKUtils-0.9.0.tar.gz
  • Upload date:
  • Size: 14.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.9

File hashes

Hashes for DKUtils-0.9.0.tar.gz
Algorithm Hash digest
SHA256 d8ad164fa5a2f2dafd9eee2d0b9c2bd14c7eabfd2cdffc45eb1e45d9e7039c8b
MD5 5ad374761bcc4573c03ca3f13a7d62c5
BLAKE2b-256 a7987340868db799ca177ff542f706160776a5b42caabd36e0cb60ed3a740d4a

See more details on using hashes here.

File details

Details for the file DKUtils-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: DKUtils-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 16.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.9

File hashes

Hashes for DKUtils-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3bee4a43dbc5c6e69468ec3c9de7917da29f60a39e80ff86d9886af020639d97
MD5 6f8104ccbf74e9e416b19958f3dff30b
BLAKE2b-256 bd7d591ea27621126124a69f15fec2d884c502b6c3e1a7cce199f6cde0e3bd12

See more details on using hashes here.

Supported by

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