Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

add support for arbitrary SETTINGS in CREATE TABLE #180

Open
wants to merge 51 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
3627e38
Chore: turbocharge gitignore
olliemath Jul 27, 2021
7e78582
Tooling: use poetry
olliemath Jul 27, 2021
e3953bd
Chore: remove intermediate dirs
olliemath Jul 27, 2021
0213aed
Chore: update dependencies
olliemath Jul 27, 2021
13655da
Chore: fix linting on query.py
olliemath Jul 27, 2021
cfdf2fd
Chore: fix linting on database.py
olliemath Jul 27, 2021
ce68a8f
Chore: fix linting on engines.py
olliemath Jul 27, 2021
aab92d8
Chore: fix linting on fields.py
olliemath Jul 27, 2021
8fd0f2a
Chore: fix linting on funcs.py
olliemath Jul 27, 2021
4e49da3
Chore: fix linting on majority of modules
olliemath Jul 27, 2021
87e7858
Chore: fix linting on __init__.py
olliemath Jul 27, 2021
e603502
Chore: blacken
olliemath Jul 27, 2021
f2eb813
Chore: isort
olliemath Jul 27, 2021
9ccaacc
Chore: blacken tests
olliemath Jul 27, 2021
bec70d1
Chore: isort tests
olliemath Jul 27, 2021
a3b8228
Chore: fix linting on tests
olliemath Jul 27, 2021
4484517
Hack: add setup.cfg to cover for 'import *'
olliemath Jul 27, 2021
c5d16a3
Bugfix: allow Q to be subclassed
olliemath Jul 28, 2021
4a90eed
Chore: fix versioning
olliemath Jul 28, 2021
bd62a3c
Enhancement: remove \N warning for utils
olliemath Jul 28, 2021
c4e2175
Chore: improve code quality for unit tests
olliemath Jul 28, 2021
bdec484
Chore: update supported python versions
olliemath Jul 28, 2021
a36e698
Pipeline: add github workflows (#1)
olliemath Jul 28, 2021
73b74e9
Chore: license tweak
olliemath Jul 28, 2021
ff580d7
Chore: organize tests
olliemath Jul 30, 2021
9b671d6
Bugfix: correct boolean logic for Q objects
olliemath Jul 30, 2021
b6d3012
Bugfix: remove compression from alias fields
olliemath Aug 6, 2021
078ffbf
Chore: remove some circular imports
olliemath Aug 6, 2021
8f497ea
Chore: bump pipeline clickhouse version to 20.8
olliemath Aug 6, 2021
f6c184e
Chore: isort
olliemath Aug 6, 2021
caffb93
Update README.md
olliemath Aug 6, 2021
a00e0c2
Update python-package.yml
olliemath Aug 6, 2021
3cc6eaf
Prepare 2.2.0 release
olliemath Aug 6, 2021
84302aa
Prepare 2.2.0 release
olliemath Aug 6, 2021
1054502
Bugfix: fix NO_VALUE copy semantics
olliemath Aug 8, 2021
45e16fe
Enhancement: add timezones to all date functions
olliemath Aug 8, 2021
c5d8d35
Update changelog
olliemath Aug 8, 2021
817825e
Chore: blacken / pep8ify tests
olliemath Aug 14, 2021
1a4785d
Compatibility: get tests working with CH 21.1
olliemath Aug 14, 2021
a924f6c
Compatibility: update tests for 21.3+
olliemath Aug 14, 2021
19f89e0
Test with CH 21.3 and 20.8
olliemath Aug 14, 2021
0e9dea5
Chore: update scripts/docs
olliemath Aug 16, 2021
ce79b39
Chore: fix linting for examples
olliemath Aug 16, 2021
c357aad
Create python-publish.yml
olliemath Aug 16, 2021
223febd
Update python-publish.yml
olliemath Aug 16, 2021
441d2d1
Rename python-package.yml to python-test.yml
olliemath Aug 16, 2021
22e124e
Moar badges
olliemath Aug 16, 2021
35b5a11
Chore: improve description for PyPI
olliemath Aug 16, 2021
23cef67
Prep 2.2.1 release
olliemath Aug 16, 2021
cd724c2
Tooling: unpin requirements
olliemath Aug 20, 2021
d7d30e8
add support for arbitrary SETTINGS in CREATE TABLE
beda42 Oct 3, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 40 additions & 0 deletions .github/workflows/python-publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Upload to PIP

# Controls when the action will run.
on:
# Triggers the workflow when a release is created
release:
types: [created]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:

# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
# This workflow contains a single job called "upload"
upload:
# The type of runner that the job will run on
runs-on: ubuntu-latest

# Steps represent a sequence of tasks that will be executed as part of the job
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/checkout@v2

# Sets up python
- uses: actions/setup-python@v2
with:
python-version: 3.9

# Install dependencies
- name: Install dependencies
run: |
python -m pip install poetry
poetry install --no-dev

# Build and upload to PyPI
- name: Builds and upload to PyPI
run: |
poetry config pypi-token.pypi "$TWINE_TOKEN"
poetry publish --build
env:
TWINE_TOKEN: ${{ secrets.TWINE_TOKEN }}
89 changes: 89 additions & 0 deletions .github/workflows/python-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: Tests

on:
push:
branches: [ develop ]
pull_request:
branches: [ develop ]

jobs:
lint:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
# Lint on smallest and largest active versions
python-version: [3.6, 3.9]

steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install poetry
poetry install
- name: Lint with flake8
run: |
poetry run flake8
- name: Check formatting with black
run: |
poetry run black --check .

test:
runs-on: ubuntu-latest
services:
clickhouse:
image: yandex/clickhouse-server:21.3
ports:
- 8123:8123
strategy:
fail-fast: false
matrix:
python-version: [3.6, 3.7, 3.8, 3.9, pypy3]

steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install poetry
poetry install
- name: Test with pytest
run: |
poetry run pytest

test_compat:
# Tests compatibility with an older LTS release of clickhouse
runs-on: ubuntu-latest
services:
clickhouse:
image: yandex/clickhouse-server:20.8
ports:
- 8123:8123
strategy:
fail-fast: false
matrix:
python-version: [3.9]

steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install poetry
poetry install
- name: Test with pytest
run: |
poetry run pytest
59 changes: 59 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -63,3 +63,62 @@ cover/

# tox
.tox/

# misc
*.7z
*.apk
*.backup
*.bak
*.bk
*.bz2
*.deb
*.doc
*.docx
*.gz
*.gzip
*.img
*.iso
*.jar
*.jpeg
*.jpg
*.log
*.ods
*.part
*.pdf
*.pkg
*.png
*.pps
*.ppsx
*.ppt
*.pptx
*.ps
*.pyc
*.rar
*.swp
*.sys
*.tar
*.tgz
*.tmp
*.xls
*.xlsx
*.xz
*.zip
**/*venv/
.cache
.coverage*
.idea/
.isort.cfg
**.directory
venv
.pytest_cache/
.vscode/
*.egg-info/
.tox/
.cargo/
.expected
.hypothesis/
.mypy_cache/
**/__pycache__/

# poetry
poetry.lock
Loading