diff --git a/.travis.yml b/.travis.yml index 3914adbc..6394d5c5 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ dist: xenial language: python python: - - 3.8 + - 3.9 env: global: diff --git a/CHANGES b/CHANGES index 2eea201f..7c0969e3 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,8 @@ +Release 1.5 +---------------- +* python 3.9 + + Release 1.4 ---------------- * added new relic diff --git a/Pipfile b/Pipfile index a67f1f15..102a8237 100644 --- a/Pipfile +++ b/Pipfile @@ -66,4 +66,4 @@ uwsgi = "*" django-picklefield = "*" [requires] -python_version = "3.8" +python_version = "3.9" diff --git a/Pipfile.lock b/Pipfile.lock index f1303e25..c8d9a07b 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,11 +1,11 @@ { "_meta": { "hash": { - "sha256": "c539ccf2582590434f8c319568ccb883e9cbb09bba06982576f83c25dce82197" + "sha256": "dd658cd0f37d6f7220140cfad89f3e41b5ccf2f5a1be12e8e41dbe41546bfb1c" }, "pipfile-spec": 6, "requires": { - "python_version": "3.8" + "python_version": "3.9" }, "sources": [ { @@ -18,10 +18,10 @@ "default": { "adal": { "hashes": [ - "sha256:7a15d22b1ee7ce1be92441199958748982feba6b7dec35fbf60f9b607bad1bc0", - "sha256:b332316f54d947f39acd9628e7d61d90f6e54d413d6f97025a51482c96bac6bc" + "sha256:7492aff8f0ba7dd4e1c477303295c645141540fff34c3ca6de0a0b0e6c1c122a", + "sha256:8003ba03ef04170195b3eddda8a5ab43649ef2c5f0287023d515affb1ccfcfc3" ], - "version": "==1.2.4" + "version": "==1.2.5" }, "admin-extra-urls": { "hashes": [ @@ -117,30 +117,30 @@ }, "cryptography": { "hashes": [ - "sha256:21b47c59fcb1c36f1113f3709d37935368e34815ea1d7073862e92f810dc7499", - "sha256:451cdf60be4dafb6a3b78802006a020e6cd709c22d240f94f7a0696240a17154", - "sha256:4549b137d8cbe3c2eadfa56c0c858b78acbeff956bd461e40000b2164d9167c6", - "sha256:48ee615a779ffa749d7d50c291761dc921d93d7cf203dca2db663b4f193f0e49", - "sha256:559d622aef2a2dff98a892eef321433ba5bc55b2485220a8ca289c1ecc2bd54f", - "sha256:5d52c72449bb02dd45a773a203196e6d4fae34e158769c896012401f33064396", - "sha256:65beb15e7f9c16e15934569d29fb4def74ea1469d8781f6b3507ab896d6d8719", - "sha256:680da076cad81cdf5ffcac50c477b6790be81768d30f9da9e01960c4b18a66db", - "sha256:762bc5a0df03c51ee3f09c621e1cee64e3a079a2b5020de82f1613873d79ee70", - "sha256:89aceb31cd5f9fc2449fe8cf3810797ca52b65f1489002d58fe190bfb265c536", - "sha256:983c0c3de4cb9fcba68fd3f45ed846eb86a2a8b8d8bc5bb18364c4d00b3c61fe", - "sha256:99d4984aabd4c7182050bca76176ce2dbc9fa9748afe583a7865c12954d714ba", - "sha256:9d9fc6a16357965d282dd4ab6531013935425d0dc4950df2e0cf2a1b1ac1017d", - "sha256:a7597ffc67987b37b12e09c029bd1dc43965f75d328076ae85721b84046e9ca7", - "sha256:ab010e461bb6b444eaf7f8c813bb716be2d78ab786103f9608ffd37a4bd7d490", - "sha256:b12e715c10a13ca1bd27fbceed9adc8c5ff640f8e1f7ea76416352de703523c8", - "sha256:b2bded09c578d19e08bd2c5bb8fed7f103e089752c9cf7ca7ca7de522326e921", - "sha256:b372026ebf32fe2523159f27d9f0e9f485092e43b00a5adacf732192a70ba118", - "sha256:cb179acdd4ae1e4a5a160d80b87841b3d0e0be84af46c7bb2cd7ece57a39c4ba", - "sha256:e97a3b627e3cb63c415a16245d6cef2139cca18bb1183d1b9375a1c14e83f3b3", - "sha256:f0e099fc4cc697450c3dd4031791559692dd941a95254cb9aeded66a7aa8b9bc", - "sha256:f99317a0fa2e49917689b8cf977510addcfaaab769b3f899b9c481bbd76730c2" - ], - "version": "==3.1.1" + "sha256:22f8251f68953553af4f9c11ec5f191198bc96cff9f0ac5dd5ff94daede0ee6d", + "sha256:284e275e3c099a80831f9898fb5c9559120d27675c3521278faba54e584a7832", + "sha256:3e17d02941c0f169c5b877597ca8be895fca0e5e3eb882526a74aa4804380a98", + "sha256:52a47e60953679eea0b4d490ca3c241fb1b166a7b161847ef4667dfd49e7699d", + "sha256:57b8c1ed13b8aa386cabbfde3be175d7b155682470b0e259fecfe53850967f8a", + "sha256:6a8f64ed096d13f92d1f601a92d9fd1f1025dc73a2ca1ced46dcf5e0d4930943", + "sha256:6e8a3c7c45101a7eeee93102500e1b08f2307c717ff553fcb3c1127efc9b6917", + "sha256:7ef41304bf978f33cfb6f43ca13bb0faac0c99cda33693aa20ad4f5e34e8cb8f", + "sha256:87c2fffd61e934bc0e2c927c3764c20b22d7f5f7f812ee1a477de4c89b044ca6", + "sha256:88069392cd9a1e68d2cfd5c3a2b0d72a44ef3b24b8977a4f7956e9e3c4c9477a", + "sha256:8a0866891326d3badb17c5fd3e02c926b635e8923fa271b4813cd4d972a57ff3", + "sha256:8f0fd8b0751d75c4483c534b209e39e918f0d14232c0d8a2a76e687f64ced831", + "sha256:9a07e6d255053674506091d63ab4270a119e9fc83462c7ab1dbcb495b76307af", + "sha256:9a8580c9afcdcddabbd064c0a74f337af74ff4529cdf3a12fa2e9782d677a2e5", + "sha256:bd80bc156d3729b38cb227a5a76532aef693b7ac9e395eea8063ee50ceed46a5", + "sha256:d1cbc3426e6150583b22b517ef3720036d7e3152d428c864ff0f3fcad2b97591", + "sha256:e15ac84dcdb89f92424cbaca4b0b34e211e7ce3ee7b0ec0e4f3c55cee65fae5a", + "sha256:e4789b84f8dedf190148441f7c5bfe7244782d9cbb194a36e17b91e7d3e1cca9", + "sha256:f01c9116bfb3ad2831e125a73dcd957d173d6ddca7701528eff1e7d97972872c", + "sha256:f0e3986f6cce007216b23c490f093f35ce2068f3c244051e559f647f6731b7ae", + "sha256:f2aa3f8ba9e2e3fd49bd3de743b976ab192fbf0eb0348cebde5d2a9de0090a9f", + "sha256:fb70a4cedd69dc52396ee114416a3656e011fb0311fca55eb55c7be6ed9c8aef" + ], + "version": "==3.2" }, "defusedxml": { "hashes": [ @@ -397,22 +397,22 @@ }, "newrelic": { "hashes": [ - "sha256:0eaab77f295f6efa16887ef8594ec8601b1f1071fef8fc78818d71334e5545d4", - "sha256:4ac8ca6118124c4c060454c1facbcb9679ac848c5a0aaa58b6ad8a0ade7742b8", - "sha256:5fc4e6234d4eb06b9c6f0b052260b2d65537c25f393afae3cfe55848935d3fa9", - "sha256:643723e1bc82b106b232968820437f0db113d1efbe140e7adcd4425a2c735aa8", - "sha256:99847f587383d81c700d67b6eefdbc66d85512306276c62111af5af19d47f90f", - "sha256:9b9df45dc3badeec31a1d8adc4153a601b2fe25ee9d3a98a502c6fa8239d2b71", - "sha256:a4503269d1cf204e652c41607bf1cbd73f0b37b4e1de237096f895ab37502bb4", - "sha256:b184a293e94f0eb87f344d3ef80eedbc35c7e25e60a42101513d55c3a29fe08e", - "sha256:b3441f0328645e9c2664341bed34ac4d5cadd58b88111b0680e2128d0f2be170", - "sha256:ba03e55ef5ede5b11b702068025bc982869ab6a2b87597635b2ef5e4af37c29a", - "sha256:c21f8fff642760aa8f9d58816f5c801d5809da48ecafccf92735485f3ed3fbcb", - "sha256:eb465af68f572a3a1e502022d8ac111439be90dffa768317a347491f52fe0523", - "sha256:f10a7ca15d87dfc516daf69e379ae979e07699dd723dda319f1ae462552a3bc3" + "sha256:065e2437f2e998a4c632b9bb1d8c9e30103adfcde1f8b0ec77c5660d4fa7730f", + "sha256:289317b53de0270bfc29ece0bcc09ca828f09f235c13dc87d87a6df97387fd91", + "sha256:2e7052431a9142c9f9a0c77670aca092b4bc2b41341018cdf42308f3349150ba", + "sha256:553993bf58d2f373291ba18d4268e641b3c50ee45a7d8da5a52f3b90ecbdea58", + "sha256:5e45000d82ef65c4a8503e0c780e305e378f479e7634c9413014928769a0fa17", + "sha256:712dcfa70a13fdbe677c70a4f9254a3a26927138c05cc3bfb3e5d9f5b206510f", + "sha256:74b3e9f525fd920817c67877b1ea8b4b1c3aa481d20c9bb90179e86eeb007c2c", + "sha256:80eab39ca0c2797ab49cf1d6d700cae1da494fa55840a5c5cfbcb1a3f1a41049", + "sha256:9d6aa3277b047e5c7da16d927237eb5254382ff28a3ef433bc97fcee8696e0be", + "sha256:aa1ea42443898e77481d98f62f03fa73c89d6e1f74af6427be5ed7cfd7503918", + "sha256:aad39ee4da98c6da85dc9ff5016bd006ffcde2f7d54f6570bd92c21d1dcfa956", + "sha256:c6d1165437bdc47b5905ef7564a33691e2c6c66e3efe8fbd53f5d85a7dc7b98d", + "sha256:e4285567a3e3e1341581476aaedbc617ef0c3f6bf0745ecd98abcc2474d1f2ee" ], "index": "pypi", - "version": "==5.20.1.150" + "version": "==5.22.0.151" }, "oauthlib": { "hashes": [ @@ -1110,10 +1110,10 @@ }, "pygments": { "hashes": [ - "sha256:307543fe65c0947b126e83dd5a61bd8acbd84abec11f43caebaf5534cbc17998", - "sha256:926c3f319eda178d1bd90851e4317e6d8cdb5e292a3386aac9bd75eca29cf9c7" + "sha256:381985fcc551eb9d37c52088a32914e00517e57f4a21609f48141ba08e193fa0", + "sha256:88a0bbcd659fcb9573703957c6b9cff9fab7295e6e76db54c9d00ae42df32773" ], - "version": "==2.7.1" + "version": "==2.7.2" }, "pyparsing": { "hashes": [ @@ -1160,11 +1160,11 @@ }, "pytest-django": { "hashes": [ - "sha256:0e91003fdd41ac0322c1978682be2ca180bc564203dd53c698f99242bf513614", - "sha256:5f964ccda1f551e00589ab0679a7c45c36c509a44b5bfb5ad07954e0ae3f4bed" + "sha256:10e384e6b8912ded92db64c58be8139d9ae23fb8361e5fc139d8e4f8fc601bc2", + "sha256:26f02c16d36fd4c8672390deebe3413678d89f30720c16efb8b2a6bf63b9041f" ], "index": "pypi", - "version": "==4.0.0" + "version": "==4.1.0" }, "pytest-echo": { "hashes": [ @@ -1366,10 +1366,10 @@ }, "virtualenv": { "hashes": [ - "sha256:0ebc633426d7468664067309842c81edab11ae97fcaf27e8ad7f5748c89b431b", - "sha256:2a72c80fa2ad8f4e2985c06e6fc12c3d60d060e410572f553c90619b0f6efaf3" + "sha256:b0011228208944ce71052987437d3843e05690b2f23d1c7da4263fde104c97a2", + "sha256:b8d6110f493af256a40d65e29846c69340a947669eec8ce784fcf3dd3af28380" ], - "version": "==20.0.35" + "version": "==20.1.0" }, "waitress": { "hashes": [ @@ -1453,10 +1453,10 @@ }, "zipp": { "hashes": [ - "sha256:16522f69653f0d67be90e8baa4a46d66389145b734345d68a257da53df670903", - "sha256:c1532a8030c32fd52ff6a288d855fe7adef5823ba1d26a29a68fd6314aa72baa" + "sha256:102c24ef8f171fd729d46599845e95c7ab894a4cf45f5de11a44cc7444fb1108", + "sha256:ed5eee1974372595f9e416cc7bbeeb12335201d8081ca8a0743c954d4446e5cb" ], - "version": "==3.3.1" + "version": "==3.4.0" } } } diff --git a/docker/Dockerfile b/docker/Dockerfile index 0a8de097..10abecac 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,4 +1,4 @@ -ARG BASE_IMAGE=1.4 +ARG BASE_IMAGE=1.5 FROM unicef/donor-reporting-portal-backend:${BASE_IMAGE}-base diff --git a/docker/Dockerfile.base b/docker/Dockerfile.base index ac175767..8392587a 100644 --- a/docker/Dockerfile.base +++ b/docker/Dockerfile.base @@ -1,4 +1,4 @@ -FROM python:3.8.2-alpine3.10 +FROM python:3.9.0-alpine3.12 ARG PIPENV_ARGS @@ -78,15 +78,15 @@ RUN cd /code \ && pipenv install --verbose --system --deploy --ignore-pipfile $PIPENV_ARGS \ && sha1sum Pipfile.lock > /CHECKSUM -# need to removes some code not py3.8 compliant -RUN rm -fr /usr/local/lib/python3.8/site-packages/psycopg2/tests/* \ - /usr/local/lib/python3.8/site-packages/tornado/test/* \ - /usr/local/lib/python3.8/site-packages/pipenv/patched/yaml2/* +# need to removes some code not py3.9 compliant +RUN rm -fr /usr/local/lib/python3.9/site-packages/psycopg2/tests/* \ + /usr/local/lib/python3.9/site-packages/tornado/test/* \ + /usr/local/lib/python3.9/site-packages/pipenv/patched/yaml2/* # before compile site-packages -RUN find /usr/local/lib/python3.8/ -name *.pyc | xargs rm -f \ - && python -O -m compileall -fqb /usr/local/lib/python3.8 \ - && find /usr/local/lib/python3.8/ -name *.py | xargs rm -f +RUN find /usr/local/lib/python3.9/ -name *.pyc | xargs rm -f \ + && python -O -m compileall -fqb /usr/local/lib/python3.9 \ + && find /usr/local/lib/python3.9/ -name *.py | xargs rm -f RUN apk del .fetch-deps .build-deps .build-deps-edge .donor_reporting_portal-build-deps \ && rm -rf /var/cache/apk/* \ diff --git a/docker/Dockerfile.flat b/docker/Dockerfile.flat index 9d0e11e3..30df18ba 100644 --- a/docker/Dockerfile.flat +++ b/docker/Dockerfile.flat @@ -1,4 +1,4 @@ -FROM python:3.8.2-alpine3.10 +FROM python:3.9.0-alpine3.12 ARG BUILD_DATE ARG PIPENV_ARGS @@ -78,7 +78,7 @@ RUN pip install pip pipenv --upgrade RUN set -ex \ ls -al /code \ - && find /usr/local/lib/python3.8/ -name *.pyc | xargs rm -f \ + && find /usr/local/lib/python3.9/ -name *.pyc | xargs rm -f \ && pipenv install --verbose --system --deploy --ignore-pipfile $PIPENV_ARGS \ && pip3 install . \ && rm -fr /code @@ -132,11 +132,11 @@ RUN rm -rf /var/cache/apk/* \ && rm -fr /root/.cache/ \ && rm -fr /usr/include/ -RUN find /usr/local/lib/python3.8/ -name *.pyc | xargs rm -f \ +RUN find /usr/local/lib/python3.9/ -name *.pyc | xargs rm -f \ && python -O -m compileall -fqb /usr/local/lib/python3.6 # removes source files -RUN find /usr/local/lib/python3.8/ -name *.py | xargs rm -f +RUN find /usr/local/lib/python3.9/ -name *.py | xargs rm -f ADD docker/entrypoint.sh /usr/local/bin/docker-entrypoint.sh ADD docker/wait-for-it.sh /usr/local/bin/wait-for-it.sh diff --git a/docker/Makefile b/docker/Makefile index 23241bdb..8c6e3cd5 100644 --- a/docker/Makefile +++ b/docker/Makefile @@ -2,7 +2,7 @@ DATABASE_URL?= DOCKER_PASS?= DOCKER_USER?= -TARGET?=1.4.0 +TARGET?=1.5.0 BASE?=$(shell echo "${TARGET}" | sed "s/\([0-9]\)\.\([0-9]\)\.\(.*\)/\1.\2/g" ) # below vars are used internally BUILD_OPTIONS?= diff --git a/setup.py b/setup.py index 053e58ff..b9cfbd9c 100644 --- a/setup.py +++ b/setup.py @@ -39,6 +39,7 @@ 'Operating System :: POSIX :: Linux', 'Programming Language :: Python :: 3', 'Programming Language :: Python :: 3.8', + 'Programming Language :: Python :: 3.9', 'Framework :: Django', 'Framework :: Django :: 3.0', 'Framework :: Flake8', diff --git a/src/donor_reporting_portal/__init__.py b/src/donor_reporting_portal/__init__.py index 55f37849..3a181bb7 100644 --- a/src/donor_reporting_portal/__init__.py +++ b/src/donor_reporting_portal/__init__.py @@ -1,2 +1,2 @@ NAME = 'donor-reporting-portal' -VERSION = __version__ = '1.4' +VERSION = __version__ = '1.5' diff --git a/tox.ini b/tox.ini index 35b5f4bf..253a84e3 100644 --- a/tox.ini +++ b/tox.ini @@ -28,7 +28,7 @@ envtmpdir={toxinidir}/build/{envname}/tmp envlogdir={toxinidir}/build/{envname}/log [testenv] -basepython=python3.8 +basepython=python3.9 passenv = PYTHONDONTWRITEBYTECODE USER