From 11f657b981379695640322df4a6f33e7e0fc5b4b Mon Sep 17 00:00:00 2001 From: Tushar Singla Date: Tue, 28 May 2024 09:59:40 -0700 Subject: [PATCH 1/5] update supported django dependencies --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 994c738..e865da0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,7 +34,7 @@ classifiers = [ [tool.poetry.dependencies] python = "^3.8" -django = "^2.2" +django = "^2.2, ^3.0, ^4.0" [tool.poetry.group.dev.dependencies] build = "*" From 75240f810f6d977f651ba367744d2963fc3dce4b Mon Sep 17 00:00:00 2001 From: Tushar Singla Date: Tue, 28 May 2024 10:19:21 -0700 Subject: [PATCH 2/5] use or operator --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index e865da0..7ac746b 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,7 +34,7 @@ classifiers = [ [tool.poetry.dependencies] python = "^3.8" -django = "^2.2, ^3.0, ^4.0" +django = "^2.2 || ^3.0 || ^4.0" [tool.poetry.group.dev.dependencies] build = "*" From a318f516134572f5cf1cfc32c5dfc03edcf6624c Mon Sep 17 00:00:00 2001 From: Tushar Singla Date: Tue, 28 May 2024 10:28:16 -0700 Subject: [PATCH 3/5] run poetry lock --- poetry.lock | 86 +++++++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 74 insertions(+), 12 deletions(-) diff --git a/poetry.lock b/poetry.lock index 5693eec..dd5d398 100644 --- a/poetry.lock +++ b/poetry.lock @@ -11,6 +11,23 @@ files = [ {file = "alabaster-0.7.13.tar.gz", hash = "sha256:a27a4a084d5e690e16e01e03ad2b2e552c61a65469419b907243193de1a84ae2"}, ] +[[package]] +name = "asgiref" +version = "3.8.1" +description = "ASGI specs, helper code, and adapters" +optional = false +python-versions = ">=3.8" +files = [ + {file = "asgiref-3.8.1-py3-none-any.whl", hash = "sha256:3e1e3ecc849832fe52ccf2cb6686b7a55f82bb1d6aee72a58826471390335e47"}, + {file = "asgiref-3.8.1.tar.gz", hash = "sha256:c343bd80a0bec947a9860adb4c432ffa7db769836c64238fc34bdc3fec84d590"}, +] + +[package.dependencies] +typing-extensions = {version = ">=4", markers = "python_version < \"3.11\""} + +[package.extras] +tests = ["mypy (>=0.800)", "pytest", "pytest-asyncio"] + [[package]] name = "babel" version = "2.16.0" @@ -43,6 +60,34 @@ files = [ docs = ["furo", "jaraco.packaging (>=9.3)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] testing = ["jaraco.test", "pytest (!=8.0.*)", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)"] +[[package]] +name = "backports-zoneinfo" +version = "0.2.1" +description = "Backport of the standard library zoneinfo module" +optional = false +python-versions = ">=3.6" +files = [ + {file = "backports.zoneinfo-0.2.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:da6013fd84a690242c310d77ddb8441a559e9cb3d3d59ebac9aca1a57b2e18bc"}, + {file = "backports.zoneinfo-0.2.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:89a48c0d158a3cc3f654da4c2de1ceba85263fafb861b98b59040a5086259722"}, + {file = "backports.zoneinfo-0.2.1-cp36-cp36m-manylinux1_x86_64.whl", hash = "sha256:1c5742112073a563c81f786e77514969acb58649bcdf6cdf0b4ed31a348d4546"}, + {file = "backports.zoneinfo-0.2.1-cp36-cp36m-win32.whl", hash = "sha256:e8236383a20872c0cdf5a62b554b27538db7fa1bbec52429d8d106effbaeca08"}, + {file = "backports.zoneinfo-0.2.1-cp36-cp36m-win_amd64.whl", hash = "sha256:8439c030a11780786a2002261569bdf362264f605dfa4d65090b64b05c9f79a7"}, + {file = "backports.zoneinfo-0.2.1-cp37-cp37m-macosx_10_14_x86_64.whl", hash = "sha256:f04e857b59d9d1ccc39ce2da1021d196e47234873820cbeaad210724b1ee28ac"}, + {file = "backports.zoneinfo-0.2.1-cp37-cp37m-manylinux1_i686.whl", hash = "sha256:17746bd546106fa389c51dbea67c8b7c8f0d14b5526a579ca6ccf5ed72c526cf"}, + {file = "backports.zoneinfo-0.2.1-cp37-cp37m-manylinux1_x86_64.whl", hash = "sha256:5c144945a7752ca544b4b78c8c41544cdfaf9786f25fe5ffb10e838e19a27570"}, + {file = "backports.zoneinfo-0.2.1-cp37-cp37m-win32.whl", hash = "sha256:e55b384612d93be96506932a786bbcde5a2db7a9e6a4bb4bffe8b733f5b9036b"}, + {file = "backports.zoneinfo-0.2.1-cp37-cp37m-win_amd64.whl", hash = "sha256:a76b38c52400b762e48131494ba26be363491ac4f9a04c1b7e92483d169f6582"}, + {file = "backports.zoneinfo-0.2.1-cp38-cp38-macosx_10_14_x86_64.whl", hash = "sha256:8961c0f32cd0336fb8e8ead11a1f8cd99ec07145ec2931122faaac1c8f7fd987"}, + {file = "backports.zoneinfo-0.2.1-cp38-cp38-manylinux1_i686.whl", hash = "sha256:e81b76cace8eda1fca50e345242ba977f9be6ae3945af8d46326d776b4cf78d1"}, + {file = "backports.zoneinfo-0.2.1-cp38-cp38-manylinux1_x86_64.whl", hash = "sha256:7b0a64cda4145548fed9efc10322770f929b944ce5cee6c0dfe0c87bf4c0c8c9"}, + {file = "backports.zoneinfo-0.2.1-cp38-cp38-win32.whl", hash = "sha256:1b13e654a55cd45672cb54ed12148cd33628f672548f373963b0bff67b217328"}, + {file = "backports.zoneinfo-0.2.1-cp38-cp38-win_amd64.whl", hash = "sha256:4a0f800587060bf8880f954dbef70de6c11bbe59c673c3d818921f042f9954a6"}, + {file = "backports.zoneinfo-0.2.1.tar.gz", hash = "sha256:fadbfe37f74051d024037f223b8e001611eac868b5c5b06144ef4d8b799862f2"}, +] + +[package.extras] +tzdata = ["tzdata"] + [[package]] name = "build" version = "1.2.1" @@ -439,32 +484,38 @@ files = [ [[package]] name = "dj-database-url" -version = "0.5.0" +version = "2.2.0" description = "Use Database URLs in your Django Application." optional = false python-versions = "*" files = [ - {file = "dj-database-url-0.5.0.tar.gz", hash = "sha256:4aeaeb1f573c74835b0686a2b46b85990571159ffc21aa57ecd4d1e1cb334163"}, - {file = "dj_database_url-0.5.0-py2.py3-none-any.whl", hash = "sha256:851785365761ebe4994a921b433062309eb882fedd318e1b0fcecc607ed02da9"}, + {file = "dj_database_url-2.2.0-py3-none-any.whl", hash = "sha256:3e792567b0aa9a4884860af05fe2aa4968071ad351e033b6db632f97ac6db9de"}, + {file = "dj_database_url-2.2.0.tar.gz", hash = "sha256:9f9b05058ddf888f1e6f840048b8d705ff9395e3b52a07165daa3d8b9360551b"}, ] +[package.dependencies] +Django = ">=3.2" +typing_extensions = ">=3.10.0.0" + [[package]] name = "django" -version = "2.2.28" -description = "A high-level Python Web framework that encourages rapid development and clean, pragmatic design." +version = "4.2.15" +description = "A high-level Python web framework that encourages rapid development and clean, pragmatic design." optional = false -python-versions = ">=3.5" +python-versions = ">=3.8" files = [ - {file = "Django-2.2.28-py3-none-any.whl", hash = "sha256:365429d07c1336eb42ba15aa79f45e1c13a0b04d5c21569e7d596696418a6a45"}, - {file = "Django-2.2.28.tar.gz", hash = "sha256:0200b657afbf1bc08003845ddda053c7641b9b24951e52acd51f6abda33a7413"}, + {file = "Django-4.2.15-py3-none-any.whl", hash = "sha256:61ee4a130efb8c451ef3467c67ca99fdce400fedd768634efc86a68c18d80d30"}, + {file = "Django-4.2.15.tar.gz", hash = "sha256:c77f926b81129493961e19c0e02188f8d07c112a1162df69bfab178ae447f94a"}, ] [package.dependencies] -pytz = "*" -sqlparse = ">=0.2.2" +asgiref = ">=3.6.0,<4" +"backports.zoneinfo" = {version = "*", markers = "python_version < \"3.9\""} +sqlparse = ">=0.3.1" +tzdata = {version = "*", markers = "sys_platform == \"win32\""} [package.extras] -argon2 = ["argon2-cffi (>=16.1.0)"] +argon2 = ["argon2-cffi (>=19.1.0)"] bcrypt = ["bcrypt"] [[package]] @@ -1471,6 +1522,17 @@ files = [ {file = "typing_extensions-4.12.2.tar.gz", hash = "sha256:1a7ead55c7e559dd4dee8856e3a88b41225abfe1ce8df57b7c13915fe121ffb8"}, ] +[[package]] +name = "tzdata" +version = "2024.1" +description = "Provider of IANA time zone data" +optional = false +python-versions = ">=2" +files = [ + {file = "tzdata-2024.1-py2.py3-none-any.whl", hash = "sha256:9068bc196136463f5245e51efda838afa15aaeca9903f49050dfa2679db4d252"}, + {file = "tzdata-2024.1.tar.gz", hash = "sha256:2674120f8d891909751c38abcdfd386ac0a5a1127954fbc332af6b5ceae07efd"}, +] + [[package]] name = "urllib3" version = "2.2.2" @@ -1526,4 +1588,4 @@ test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "d3a54a0621d44cd2a9a6ee52923878fa4654a513f24c04228ee091a62656cfa7" +content-hash = "5d1a298f66f3b9a9643fd1483bf76ce544e3506938f58e726cbb9cfb22db5c4d" From a6fcf1cdfb1a644d86709964bded7d2ea373caf5 Mon Sep 17 00:00:00 2001 From: Joachim Jablon Date: Fri, 9 Aug 2024 17:22:55 +0200 Subject: [PATCH 4/5] run poetry lock --- poetry.lock | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/poetry.lock b/poetry.lock index dd5d398..1d32453 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. [[package]] name = "alabaster" @@ -997,6 +997,7 @@ files = [ {file = "psycopg2_binary-2.9.9-cp311-cp311-win32.whl", hash = "sha256:dc4926288b2a3e9fd7b50dc6a1909a13bbdadfc67d93f3374d984e56f885579d"}, {file = "psycopg2_binary-2.9.9-cp311-cp311-win_amd64.whl", hash = "sha256:b76bedd166805480ab069612119ea636f5ab8f8771e640ae103e05a4aae3e417"}, {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8532fd6e6e2dc57bcb3bc90b079c60de896d2128c5d9d6f24a63875a95a088cf"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b0605eaed3eb239e87df0d5e3c6489daae3f7388d455d0c0b4df899519c6a38d"}, {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f8544b092a29a6ddd72f3556a9fcf249ec412e10ad28be6a0c0d948924f2212"}, {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2d423c8d8a3c82d08fe8af900ad5b613ce3632a1249fd6a223941d0735fce493"}, {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e5afae772c00980525f6d6ecf7cbca55676296b580c0e6abb407f15f3706996"}, @@ -1005,6 +1006,8 @@ files = [ {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:cb16c65dcb648d0a43a2521f2f0a2300f40639f6f8c1ecbc662141e4e3e1ee07"}, {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:911dda9c487075abd54e644ccdf5e5c16773470a6a5d3826fda76699410066fb"}, {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:57fede879f08d23c85140a360c6a77709113efd1c993923c59fde17aa27599fe"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-win32.whl", hash = "sha256:64cf30263844fa208851ebb13b0732ce674d8ec6a0c86a4e160495d299ba3c93"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-win_amd64.whl", hash = "sha256:81ff62668af011f9a48787564ab7eded4e9fb17a4a6a74af5ffa6a457400d2ab"}, {file = "psycopg2_binary-2.9.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2293b001e319ab0d869d660a704942c9e2cce19745262a8aba2115ef41a0a42a"}, {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03ef7df18daf2c4c07e2695e8cfd5ee7f748a1d54d802330985a78d2a5a6dca9"}, {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a602ea5aff39bb9fac6308e9c9d82b9a35c2bf288e184a816002c9fae930b77"}, From c633605ff1f39a096516ba4365bbd583f2375f63 Mon Sep 17 00:00:00 2001 From: Joachim Jablon Date: Fri, 9 Aug 2024 17:25:25 +0200 Subject: [PATCH 5/5] Update Python & Django versions in CI --- .github/workflows/ci.yml | 32 ++++++++++++++++++-------------- README.rst | 4 ++-- poetry.lock | 2 +- pyproject.toml | 15 +++------------ tox.ini | 19 +++++++------------ 5 files changed, 31 insertions(+), 41 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0c5c00d..9663112 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,30 +16,34 @@ jobs: strategy: matrix: include: - - name: Python 3.8 / Django 3.0 + - name: Python 3.8 / Django 4.2 python_version: "3.8" - tox_env: py38-django30 + tox_env: py38-django42 - - name: Python 3.9 / Django 3.1 + - name: Python 3.9 / Django 4.2 python_version: "3.9" - tox_env: py39-django31 + tox_env: py39-django42 - - name: Python 3.10 / Django 3.2 + - name: Python 3.10 / Django 4.2 python_version: "3.10" - tox_env: py310-django32 - - - name: Python 3.10 / Django 4.0 - python_version: "3.10" - tox_env: py310-django40 - - - name: Python 3.11 / Django 4.1 - python_version: "3.11" - tox_env: py311-django41 + tox_env: py310-django42 - name: Python 3.11 / Django 4.2 python_version: "3.11" tox_env: py311-django42 + - name: Python 3.12 / Django 4.2 + python_version: "3.12" + tox_env: py312-django42 + + - name: Python 3.12 / Django 5.0 + python_version: "3.12" + tox_env: py312-django50 + + - name: Python 3.12 / Django 5.1 + python_version: "3.12" + tox_env: py312-django51 + name: "${{ matrix.name }}" runs-on: ubuntu-latest diff --git a/README.rst b/README.rst index 44f8ac8..1bf0033 100644 --- a/README.rst +++ b/README.rst @@ -40,8 +40,8 @@ Requirements ------------ + **Postgresql only** -+ Django, tested from 2.2 to 4.2 -+ With Python, tested from 3.8 to 3.11 ++ Django, tested from 4.2 to 5.1 ++ With Python, tested from 3.8 to 3.12 Documentation ------------- diff --git a/poetry.lock b/poetry.lock index 1d32453..ecfe3e8 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1591,4 +1591,4 @@ test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", [metadata] lock-version = "2.0" python-versions = "^3.8" -content-hash = "5d1a298f66f3b9a9643fd1483bf76ce544e3506938f58e726cbb9cfb22db5c4d" +content-hash = "a14f831e0fd3997060afb534a16ffba273939ad278fd0cb177b7c74449656537" diff --git a/pyproject.toml b/pyproject.toml index 7ac746b..11ecf56 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,23 +18,14 @@ classifiers = [ "License :: OSI Approved :: MIT License", "Development Status :: 5 - Production/Stable", "Framework :: Django", - "Framework :: Django :: 2.2", - "Framework :: Django :: 3.0", - "Framework :: Django :: 3.1", - "Framework :: Django :: 3.2", - "Framework :: Django :: 4.0", - "Framework :: Django :: 4.1", "Framework :: Django :: 4.2", - "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", - "Programming Language :: Python :: 3.10", - "Programming Language :: Python :: 3.11", + "Framework :: Django :: 5.0", + "Framework :: Django :: 5.1", ] [tool.poetry.dependencies] python = "^3.8" -django = "^2.2 || ^3.0 || ^4.0" +django = "*" [tool.poetry.group.dev.dependencies] build = "*" diff --git a/tox.ini b/tox.ini index 33c3219..9760b04 100644 --- a/tox.ini +++ b/tox.ini @@ -1,10 +1,11 @@ [tox] isolated_build = true envlist = - py38-django30 - py39-django31 - py310-django{32,40} - py311-django{41,42} + py38-django42 + py39-django42 + py310-django42 + py311-django42 + py312-django{42,50,51} linters docs @@ -16,16 +17,10 @@ setenv = DATABASE_URL = {env:DATABASE_URL:postgres://postgres:password@127.0.0.1:5432/db} commands_pre = poetry install - django22: pip install psycopg2<2.9 # https://github.com/django/django/commit/837ffcfa681d0f65f444d881ee3d69aec23770be - django30: pip install psycopg2<2.9 # https://github.com/django/django/commit/837ffcfa681d0f65f444d881ee3d69aec23770be - django22: pip install Django==2.2.* - django30: pip install Django==3.0.* - django31: pip install Django==3.1.* - django32: pip install Django==3.2.* - django40: pip install Django==4.0.* - django41: pip install Django==4.1.* django42: pip install Django==4.2.* + django50: pip install Django==5.0.* + django51: pip install Django==5.1.* djangostable: pip install Django commands = poetry run pytest