Skip to main content

Facades and common functions necessary for data science and data engineering workflows

Project description

analytics-mesh

Interfaces and facades that facilitate a common approach to analytics tasks

Getting Started

Please install the requirements:

pip install -r requirements

If you are going to be making modifications to the ipynb notebooks, then be sure to install the pre-commit hook (see below):

pre-commit install

Tests

Tests are currently split into unit and integration tests. As this package integrates with storage systems, the integration tests are typically running against things like Google Cloud Platform.

Tests may be run in the root folder of the repo with:

coverage run -m unittest discover tests && coverage report

If you want to run just the unit tests (and ignore coverage) then,

python -m unittest discover tests/unit

Similarly, for the integration tests.

Pre-Commit Hooks and Notebook Workflow

In this repo we are using the python precommit package (included in requirements.txt file). In order to leverage it in your development workflow, you need to run the following commands (assuming you have already installed your requirements).

pre-commit install

We follow the convention that a version controlled ipynb file is converted to a markdown (md) file to form an ipynb-md pair that are both version controlled. This allows us to code review the markdown files whilst keeping the original ipynb file output intact for easy perusal on the repository manager (Gitlab in our case).

Packaging the Code

The contents of the mesh package are packaged in the build pipeline and submitted to pypi when merged to the master branch. The contents of the demos folder and tests is omitted from the package. See the .gitlab-ci.yml file for the pypi instructions we use, as well as the tests and linting that are performed.

The consequences of this is that you will convert ipynb notebooks to md.

Contributions

Contributions are most welcome. Please submit patches or new features for code review by any of the main contributors:

Please be sure to run the tests prior to submission.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

analytics_mesh-0.1.10-py3-none-any.whl (37.0 kB view details)

Uploaded Python 3

File details

Details for the file analytics_mesh-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: analytics_mesh-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 37.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.62.3 importlib-metadata/4.11.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.10.2

File hashes

Hashes for analytics_mesh-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 9852edfca179fd07436af7e4e995dc3d952efddc0fabc9354d728ac052feae54
MD5 7ac15110803b896794a4b55889f7bbfd
BLAKE2b-256 23bd222b73dbc04f22afa04eda8f996b6b1a562b51835e55083465e0dd3d2c65

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