dominodatalab / domino-data

Domino Data API for interacting with Access Data features
Apache License 2.0
3 stars 1 forks source link

Domino Data API

[![Build status](https://github.com/dominodatalab/domino-data/workflows/build/badge.svg?branch=main&event=push)](https://github.com/dominodatalab/domino-data/actions?query=workflow%3Abuild) [![Python Version](https://img.shields.io/pypi/pyversions/dominodatalab-data.svg)](https://pypi.org/project/dominodatalab-data/) [![Dependencies Status](https://img.shields.io/badge/dependencies-up%20to%20date-brightgreen.svg)](https://github.com/dominodatalab/domino-data/pulls?utf8=%E2%9C%93&q=is%3Apr%20author%3Aapp%2Fdependabot) [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) [![Security: bandit](https://img.shields.io/badge/security-bandit-green.svg)](https://github.com/PyCQA/bandit) [![Pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit&logoColor=white)](https://github.com/dominodatalab/domino-data/blob/main/.pre-commit-config.yaml) [![Semantic Versions](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--versions-e10079.svg)](https://github.com/dominodatalab/domino-data/releases) [![License](https://img.shields.io/github/license/dominodatalab/domino-data)](https://github.com/dominodatalab/domino-data/blob/main/LICENSE) Domino Data API for interacting with Access Data features

Installation

pip install -U dominodatalab-data

or install with Poetry

poetry add dominodatalab-data

Makefile usage

Makefile contains a lot of functions for faster development.

1. Download and remove Poetry

To download and install Poetry run: ```bash make poetry-download ``` To uninstall ```bash make poetry-remove ```

2. Install all dependencies and pre-commit hooks

Install requirements: ```bash make install ``` Pre-commit hooks coulb be installed after `git init` via ```bash make pre-commit-install ```

3. Codestyle

Automatic formatting uses `pyupgrade`, `isort` and `black`. ```bash make codestyle # or use synonym make formatting ``` Codestyle checks only, without rewriting files: ```bash make check-codestyle ``` > Note: `check-codestyle` uses `isort`, `black` and `darglint` library

4. Code security

```bash make check-safety ``` This command launches `Poetry` integrity checks as well as identifies security issues with `Safety` and `Bandit`. ```bash make check-safety ```

5. Type checks

Run `mypy` static type checker ```bash make mypy ```

6. Tests

Run `pytest` ```bash make test ```

7. All linters

Of course there is a command to ~~rule~~ run all linters in one: ```bash make lint ``` the same as: ```bash make test && make check-codestyle && make mypy && make check-safety ```

8. Cleanup

Delete pycache files ```bash make pycache-remove ``` Remove package build ```bash make build-remove ``` Or to remove pycache and build: ```bash make clean-all ```

9. Docs

Build the documentation ```bash make docs ``` Open the docs index page ```bash make open-docs ```

πŸ“ˆ Releases

You can see the list of available releases on the GitHub Releases page.

We follow Semantic Versions specification.

We use Release Drafter. As pull requests are merged, a draft release is kept up-to-date listing the changes, ready to publish when you’re ready. With the categories option, you can categorize pull requests in release notes using labels.

List of labels and corresponding titles

Label Title in Releases
enhancement, feature πŸš€ Features
bug, refactoring, bugfix, fix πŸ”§ Fixes & Refactoring
build, ci, testing πŸ“¦ Build System & CI/CD
breaking πŸ’₯ Breaking Changes
documentation πŸ“ Documentation
dependencies ⬆️ Dependencies updates

You can update it in release-drafter.yml.

GitHub creates the bug, enhancement, and documentation labels for you. Dependabot creates the dependencies label. Create the remaining labels on the Issues tab of your GitHub repository, when you need them.

πŸ›‘ License

License

This project is licensed under the terms of the Apache Software License 2.0 license. See LICENSE for more details.

πŸ“ƒ Citation

@misc{dominodatalab-data,
  author = {dominodatalab},
  title = {Domino Data API for interacting with Access Data features},
  year = {2021},
  publisher = {GitHub},
  journal = {GitHub repository},
  howpublished = {\url{https://github.com/dominodatalab/domino-data}}
}

Credits πŸš€ Your next Python package needs a bleeding-edge project structure.

This project was generated with python-package-template