diff --git a/.circleci/config.yml b/.circleci/config.yml index 5b6e518..a34144b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -218,7 +218,7 @@ executors: docker: - image: cimg/python:3.6 resource_class: small - python-medium: + python-3_6-medium: docker: - environment: DB_USER_NAME: postgres @@ -229,12 +229,61 @@ executors: - environment: POSTGRES_PASSWORD: $CIRCLE_SHA1 POSTGRES_USER: postgres - image: circleci/postgres:11-alpine-ram + image: circleci/postgres:12-alpine-ram + resource_class: medium + python-3_7-medium: + docker: + - environment: + DB_USER_NAME: postgres + DB_USER_PASSWORD: $CIRCLE_SHA1 + EXISTING_DB_NAME: circle_test + TEST_DB_NAME: test_db + image: cimg/python:3.7 + - environment: + POSTGRES_PASSWORD: $CIRCLE_SHA1 + POSTGRES_USER: postgres + image: circleci/postgres:12-alpine-ram + resource_class: medium + python-3_8-medium: + docker: + - environment: + DB_USER_NAME: postgres + DB_USER_PASSWORD: $CIRCLE_SHA1 + EXISTING_DB_NAME: circle_test + TEST_DB_NAME: test_db + image: cimg/python:3.8 + - environment: + POSTGRES_PASSWORD: $CIRCLE_SHA1 + POSTGRES_USER: postgres + image: circleci/postgres:12-alpine-ram + resource_class: medium + python-3_9-medium: + docker: + - environment: + DB_USER_NAME: postgres + DB_USER_PASSWORD: $CIRCLE_SHA1 + EXISTING_DB_NAME: circle_test + TEST_DB_NAME: test_db + image: cimg/python:3.9 + - environment: + POSTGRES_PASSWORD: $CIRCLE_SHA1 + POSTGRES_USER: postgres + image: circleci/postgres:12-alpine-ram resource_class: medium jobs: build-test: description: Test building with Poetry, Cruft, pre-commit, and run unit tests with pytest. - executor: python-medium + executor: python-<< parameters.python_version >>-medium + parameters: + python_version: + default: "3_9" + description: Python version to use as the executor + enum: + - "3_6" + - "3_7" + - "3_8" + - "3_9" + type: enum steps: - add_ssh_keys: fingerprints: @@ -304,4 +353,11 @@ workflows: branches: ignore: - main + matrix: + parameters: + python_version: + - "3_6" + - "3_7" + - "3_8" + - "3_9" diff --git a/.circleci/executors/python-medium.yml b/.circleci/executors/python-3_6-medium.yml similarity index 87% rename from .circleci/executors/python-medium.yml rename to .circleci/executors/python-3_6-medium.yml index a5155de..8892e29 100644 --- a/.circleci/executors/python-medium.yml +++ b/.circleci/executors/python-3_6-medium.yml @@ -5,7 +5,7 @@ docker: TEST_DB_NAME: test_db DB_USER_NAME: postgres DB_USER_PASSWORD: $CIRCLE_SHA1 - - image: circleci/postgres:11-alpine-ram + - image: circleci/postgres:12-alpine-ram environment: POSTGRES_USER: postgres POSTGRES_PASSWORD: $CIRCLE_SHA1 diff --git a/.circleci/executors/python-3_7-medium.yml b/.circleci/executors/python-3_7-medium.yml new file mode 100644 index 0000000..1a3e83d --- /dev/null +++ b/.circleci/executors/python-3_7-medium.yml @@ -0,0 +1,12 @@ +docker: + - image: cimg/python:3.7 + environment: + EXISTING_DB_NAME: circle_test + TEST_DB_NAME: test_db + DB_USER_NAME: postgres + DB_USER_PASSWORD: $CIRCLE_SHA1 + - image: circleci/postgres:12-alpine-ram + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: $CIRCLE_SHA1 +resource_class: medium diff --git a/.circleci/executors/python-3_8-medium.yml b/.circleci/executors/python-3_8-medium.yml new file mode 100644 index 0000000..2b73db5 --- /dev/null +++ b/.circleci/executors/python-3_8-medium.yml @@ -0,0 +1,12 @@ +docker: + - image: cimg/python:3.8 + environment: + EXISTING_DB_NAME: circle_test + TEST_DB_NAME: test_db + DB_USER_NAME: postgres + DB_USER_PASSWORD: $CIRCLE_SHA1 + - image: circleci/postgres:12-alpine-ram + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: $CIRCLE_SHA1 +resource_class: medium diff --git a/.circleci/executors/python-3_9-medium.yml b/.circleci/executors/python-3_9-medium.yml new file mode 100644 index 0000000..f737dfa --- /dev/null +++ b/.circleci/executors/python-3_9-medium.yml @@ -0,0 +1,12 @@ +docker: + - image: cimg/python:3.9 + environment: + EXISTING_DB_NAME: circle_test + TEST_DB_NAME: test_db + DB_USER_NAME: postgres + DB_USER_PASSWORD: $CIRCLE_SHA1 + - image: circleci/postgres:12-alpine-ram + environment: + POSTGRES_USER: postgres + POSTGRES_PASSWORD: $CIRCLE_SHA1 +resource_class: medium diff --git a/.circleci/jobs/build-test.yml b/.circleci/jobs/build-test.yml index a7c9f7f..8254356 100644 --- a/.circleci/jobs/build-test.yml +++ b/.circleci/jobs/build-test.yml @@ -1,5 +1,11 @@ description: Test building with Poetry, Cruft, pre-commit, and run unit tests with pytest. -executor: python-medium +parameters: + python_version: + description: Python version to use as the executor + default: "3_9" + type: enum + enum: ["3_6", "3_7", "3_8", "3_9"] +executor: python-<< parameters.python_version >>-medium steps: - add_ssh_keys: fingerprints: diff --git a/.circleci/workflows/pull-request-tests.yml b/.circleci/workflows/pull-request-tests.yml index 6bda5c5..8cadeb8 100644 --- a/.circleci/workflows/pull-request-tests.yml +++ b/.circleci/workflows/pull-request-tests.yml @@ -5,3 +5,6 @@ jobs: branches: ignore: - main + matrix: + parameters: + python_version: ["3_6", "3_7", "3_8", "3_9"] diff --git a/pynocular/__init__.py b/pynocular/__init__.py index 75434ec..f611364 100644 --- a/pynocular/__init__.py +++ b/pynocular/__init__.py @@ -1,5 +1,5 @@ """Lightweight ORM that lets you query your database using Pydantic models and asyncio""" -__version__ = "0.11.0" +__version__ = "0.12.0" from pynocular.engines import DatabaseType, DBInfo diff --git a/pyproject.toml b/pyproject.toml index 8904883..b705bc5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "pynocular" -version = "0.11.0" +version = "0.12.0" description = "Lightweight ORM that lets you query your database using Pydantic models and asyncio" authors = [ "RJ Santana ",