Metadata-Version: 2.1
Name: backboneql
Version: 0.1.8
Summary: JSON declarative SQL conversion library
Home-page: https://gitlab.backbone.sk/backboneql/backboneql-python
Author: Jakub Dubec
Author-email: jakub.dubec@gmail.com
License: MIT
Platform: UNKNOWN
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Topic :: Database
Classifier: Topic :: Software Development :: Libraries
Description-Content-Type: text/markdown
Requires-Dist: pydantic (==1.*)
Requires-Dist: click (==7.*)
Requires-Dist: typing-extensions

# backboneQL

[![pipeline status](https://dev01.backbone.sk/backboneql/backboneql-python/badges/master/pipeline.svg)](https://dev01.backbone.sk/backboneql/backboneql-python/commits/master)
[![coverage report](https://dev01.backbone.sk/backboneql/backboneql-python/badges/master/coverage.svg)](https://dev01.backbone.sk/backboneql/backboneql-python/commits/master)

## Development

Project is managed by [pipenv](https://pipenv.pypa.io/en/latest/) and documentation is generated by
[MkDocs](https://www.mkdocs.org/). If you want to generate documentation you need to follow these simple steps:

1. `pipenv install`
2. `pipenv shell`
3. `mkdocs build`

Documentation should be in `site` directory. You can also download documentation for each release from
[GitLab](https://gitlab.backbone.sk/backboneql/backboneql-python/tags).

Inside of pipenv shell, you can also use `mkdocs serve` to create temporary auto-reload http server with live docs.

We use [pytest](https://docs.pytest.org/en/latest/) for unit tests and [flake8](https://flake8.pycqa.org/en/latest/)
for code-style validation. You can execute tests inside of pipenv shell using these commands:

- `pytest -v .`: executes unit tests
- `pytest -v --flake8 .`: flake8 code-style tests

---
Made with ☕️ and ❤️ by Jakub Dubec & [BACKBONE s.r.o.](https://www.backbone.sk/en/)

# Changelog

## 0.1.8 : 2020-04-07

- **Feature**: Subquery support
- **Note**: Changelog datetimes in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) compatible `Y-m-d` format

## 0.1.7 : 2020-03-17

- **Fix**: Adding missing imports in `__init__.py` files inside of submodules
- **Change**: Moved `__version__` from `__init__.py` to `version.py`
- **Note**: Development status change to Alpha

## 0.1.6 : 2020-03-13

- **Feature**: Introduced `functions.StringAgg`
- **Feature**: Introduced `structures.CastOperator`
- **Feature**: CLI for parsing files

## 0.1.5 : 2020-02-05

- **Change**: Allow direct use of `structures.Comparision` in query conditions

## 0.1.4 : 2020-02-05

- **Fix**: Allow aliases in `structures.Query`
- **Change**: Do not escape `%`

## 0.1.3 : 2020-02-03

- **Feature**: Natural join support

## 0.1.2 : 2020-02-03

- **Change**: Completed docs
- **Feature**: Recursive nested properties lookup in `Query` object

## 0.1.1 : 2020-02-26

- **Change**: Default values for optional attributes in `structures.Query`
- **Change**: `custom_parser` now can raise `ParseError` if there is invalid object type passed

## 0.1.0 : 2020-02-26

- Initial release


