diff --git a/Dockerfile b/Dockerfile index 47a2e051..24a819f9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,6 +5,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \ pkg-config \ build-essential \ libpq-dev \ + git \ && rm -rf /var/lib/apt/lists/* WORKDIR /app diff --git a/requirements/base.in b/requirements/base.in index b46de3f4..13b86f6c 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -1,30 +1,14 @@ +git+https://github.com/maykinmedia/open-api-framework@bada78b0ad5c7479ab42a1377c046c7d7b176b5a + # Core python libraries -psycopg2 # database driver -python-dotenv # environment variables for secrets -python-decouple # processing of envvar configs jsonschema # Framework libraries -django -django-admin-index -django-axes django-jsonsuit -django-redis maykin-django-two-factor-auth maykin-django-two-factor-auth[phonenumbers] -mozilla-django-oidc-db sharing-configs # API libraries -djangorestframework django-filter drf-nested-routers -drf-spectacular - -# WSGI servers & monitoring - production oriented -uwsgi -sentry-sdk # error monitoring -elastic-apm # Elastic APM integration - -# Common ground libraries -commonground-api-common diff --git a/requirements/base.txt b/requirements/base.txt index 8e6ed581..985883bc 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -21,7 +21,9 @@ boltons==23.0.0 # face # glom celery==5.2.7 - # via notifications-api-common + # via + # notifications-api-common + # open-api-framework certifi==2023.5.7 # via # django-simple-certmanager @@ -44,10 +46,12 @@ click-plugins==1.1.1 # via celery click-repl==0.2.0 # via celery -commonground-api-common==1.10.2 - # via -r requirements/base.in +commonground-api-common==1.12.1 + # via open-api-framework coreapi==2.3.3 - # via drf-yasg + # via + # commonground-api-common + # drf-yasg coreschema==0.0.4 # via # coreapi @@ -58,15 +62,14 @@ cryptography==40.0.2 # josepy # mozilla-django-oidc # pyopenssl -django==3.2.20 +django==3.2.23 # via - # -r requirements/base.in # commonground-api-common # django-admin-index # django-axes - # django-choices # django-filter # django-formtools + # django-jsonform # django-jsonsuit # django-otp # django-phonenumber-field @@ -74,6 +77,7 @@ django==3.2.20 # django-redis # django-relativedelta # django-rest-framework-condition + # django-sendfile2 # django-simple-certmanager # django-solo # djangorestframework @@ -84,22 +88,21 @@ django==3.2.20 # mozilla-django-oidc # mozilla-django-oidc-db # notifications-api-common + # open-api-framework # sharing-configs # zgw-consumers -django-admin-index==3.0.0 - # via -r requirements/base.in -django-axes==6.0.1 - # via -r requirements/base.in -django-better-admin-arrayfield==1.4.2 - # via mozilla-django-oidc-db -django-choices==1.7.2 - # via commonground-api-common +django-admin-index==3.1.0 + # via open-api-framework +django-axes==6.3.0 + # via open-api-framework django-filter==23.2 # via # -r requirements/base.in # commonground-api-common django-formtools==2.4.1 # via maykin-django-two-factor-auth +django-jsonform==2.21.5 + # via mozilla-django-oidc-db django-jsonsuit==0.5.0 # via -r requirements/base.in django-ordered-model==3.7.4 @@ -110,8 +113,8 @@ django-phonenumber-field==5.2.0 # via maykin-django-two-factor-auth django-privates==2.0.0.post0 # via django-simple-certmanager -django-redis==5.2.0 - # via -r requirements/base.in +django-redis==5.4.0 + # via open-api-framework django-relativedelta==2.0.0 # via zgw-consumers django-rest-framework-condition==0.1.1 @@ -129,12 +132,12 @@ django-solo==2.0.0 # zgw-consumers djangorestframework==3.12.4 # via - # -r requirements/base.in # commonground-api-common # drf-nested-routers # drf-spectacular # drf-yasg # notifications-api-common + # open-api-framework djangorestframework-camel-case==1.4.2 # via # commonground-api-common @@ -143,12 +146,14 @@ drf-nested-routers==0.93.4 # via # -r requirements/base.in # commonground-api-common -drf-spectacular==0.26.2 - # via -r requirements/base.in +drf-spectacular==0.27.1 + # via open-api-framework drf-yasg==1.21.5 # via commonground-api-common -elastic-apm==6.15.1 - # via -r requirements/base.in +ecs-logging==2.1.0 + # via elastic-apm +elastic-apm==6.20.0 + # via open-api-framework face==20.1.1 # via glom faker==18.9.0 @@ -188,10 +193,12 @@ maykin-django-two-factor-auth[phonenumbers]==2.0.4 # via -r requirements/base.in mozilla-django-oidc==2.0.0 # via mozilla-django-oidc-db -mozilla-django-oidc-db==0.12.0 - # via -r requirements/base.in +mozilla-django-oidc-db==0.14.1 + # via open-api-framework notifications-api-common==0.2.2 # via commonground-api-common +open_api_framework @ git+https://github.com/maykinmedia/open-api-framework@bada78b0ad5c7479ab42a1377c046c7d7b176b5a + # via -r requirements/base.in oyaml==1.0 # via commonground-api-common packaging==23.1 @@ -200,8 +207,8 @@ phonenumbers==8.13.11 # via maykin-django-two-factor-auth prompt-toolkit==3.0.38 # via click-repl -psycopg2==2.9.6 - # via -r requirements/base.in +psycopg2==2.9.9 + # via open-api-framework pycparser==2.21 # via cffi pyjwt==2.7.0 @@ -220,9 +227,9 @@ python-dateutil==2.8.2 # django-relativedelta # faker python-decouple==3.8 - # via -r requirements/base.in + # via open-api-framework python-dotenv==1.0.0 - # via -r requirements/base.in + # via open-api-framework pytz==2023.3 # via # celery @@ -244,6 +251,7 @@ requests==2.31.0 # coreapi # gemma-zds-client # mozilla-django-oidc + # open-api-framework # requests-mock # sharing-configs # zgw-consumers @@ -253,20 +261,21 @@ ruamel-yaml==0.17.26 # via drf-yasg ruamel-yaml-clib==0.2.7 # via ruamel-yaml -sentry-sdk==1.23.1 - # via -r requirements/base.in +sentry-sdk==1.39.2 + # via open-api-framework sharing-configs==0.1.2 # via -r requirements/base.in six==1.16.0 # via # click-repl - # django-choices # isodate # python-dateutil # qrcode # requests-mock sqlparse==0.4.4 # via django +typing-extensions==4.9.0 + # via drf-spectacular uritemplate==4.1.1 # via # coreapi @@ -277,8 +286,8 @@ urllib3==1.26.15 # elastic-apm # requests # sentry-sdk -uwsgi==2.0.21 - # via -r requirements/base.in +uwsgi==2.0.23 + # via open-api-framework vine==5.0.0 # via # amqp @@ -286,10 +295,12 @@ vine==5.0.0 # kombu wcwidth==0.2.6 # via prompt-toolkit -wrapt==1.15.0 +wrapt==1.14.1 # via elastic-apm -zgw-consumers==0.26.1 - # via notifications-api-common +zgw-consumers==0.27.0 + # via + # notifications-api-common + # open-api-framework # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/requirements/ci.txt b/requirements/ci.txt index eac09e1f..307efe4f 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -36,6 +36,7 @@ celery==5.2.7 # via # -r requirements/base.txt # notifications-api-common + # open-api-framework certifi==2023.5.7 # via # -r requirements/base.txt @@ -70,11 +71,14 @@ click-repl==0.2.0 # via # -r requirements/base.txt # celery -commonground-api-common==1.10.2 - # via -r requirements/base.txt +commonground-api-common==1.12.1 + # via + # -r requirements/base.txt + # open-api-framework coreapi==2.3.3 # via # -r requirements/base.txt + # commonground-api-common # drf-yasg coreschema==0.0.4 # via @@ -92,16 +96,16 @@ cryptography==40.0.2 # pyopenssl cssselect==1.2.0 # via pyquery -django==3.2.20 +django==3.2.23 # via # -r requirements/base.txt # commonground-api-common # django-admin-index # django-axes - # django-choices # django-filter # django-formtools # django-jenkins + # django-jsonform # django-jsonsuit # django-otp # django-phonenumber-field @@ -120,20 +124,17 @@ django==3.2.20 # mozilla-django-oidc # mozilla-django-oidc-db # notifications-api-common + # open-api-framework # sharing-configs # zgw-consumers -django-admin-index==3.0.0 - # via -r requirements/base.txt -django-axes==6.0.1 - # via -r requirements/base.txt -django-better-admin-arrayfield==1.4.2 +django-admin-index==3.1.0 # via # -r requirements/base.txt - # mozilla-django-oidc-db -django-choices==1.7.2 + # open-api-framework +django-axes==6.3.0 # via # -r requirements/base.txt - # commonground-api-common + # open-api-framework django-filter==23.2 # via # -r requirements/base.txt @@ -144,6 +145,10 @@ django-formtools==2.4.1 # maykin-django-two-factor-auth django-jenkins==0.110.0 # via -r requirements/test-tools.in +django-jsonform==2.21.5 + # via + # -r requirements/base.txt + # mozilla-django-oidc-db django-jsonsuit==0.5.0 # via -r requirements/base.txt django-ordered-model==3.7.4 @@ -162,8 +167,10 @@ django-privates==2.0.0.post0 # via # -r requirements/base.txt # django-simple-certmanager -django-redis==5.2.0 - # via -r requirements/base.txt +django-redis==5.4.0 + # via + # -r requirements/base.txt + # open-api-framework django-relativedelta==2.0.0 # via # -r requirements/base.txt @@ -198,6 +205,7 @@ djangorestframework==3.12.4 # drf-spectacular # drf-yasg # notifications-api-common + # open-api-framework djangorestframework-camel-case==1.4.2 # via # -r requirements/base.txt @@ -207,14 +215,22 @@ drf-nested-routers==0.93.4 # via # -r requirements/base.txt # commonground-api-common -drf-spectacular==0.26.2 - # via -r requirements/base.txt +drf-spectacular==0.27.1 + # via + # -r requirements/base.txt + # open-api-framework drf-yasg==1.21.5 # via # -r requirements/base.txt # commonground-api-common -elastic-apm==6.15.1 - # via -r requirements/base.txt +ecs-logging==2.1.0 + # via + # -r requirements/base.txt + # elastic-apm +elastic-apm==6.20.0 + # via + # -r requirements/base.txt + # open-api-framework face==20.1.1 # via # -r requirements/base.txt @@ -287,12 +303,16 @@ mozilla-django-oidc==2.0.0 # via # -r requirements/base.txt # mozilla-django-oidc-db -mozilla-django-oidc-db==0.12.0 - # via -r requirements/base.txt +mozilla-django-oidc-db==0.14.1 + # via + # -r requirements/base.txt + # open-api-framework notifications-api-common==0.2.2 # via # -r requirements/base.txt # commonground-api-common +open_api_framework @ git+https://github.com/maykinmedia/open-api-framework@bada78b0ad5c7479ab42a1377c046c7d7b176b5a + # via -r requirements/base.txt oyaml==1.0 # via # -r requirements/base.txt @@ -309,8 +329,10 @@ prompt-toolkit==3.0.38 # via # -r requirements/base.txt # click-repl -psycopg2==2.9.6 - # via -r requirements/base.txt +psycopg2==2.9.9 + # via + # -r requirements/base.txt + # open-api-framework pycparser==2.21 # via # -r requirements/base.txt @@ -339,9 +361,13 @@ python-dateutil==2.8.2 # faker # freezegun python-decouple==3.8 - # via -r requirements/base.txt + # via + # -r requirements/base.txt + # open-api-framework python-dotenv==1.0.0 - # via -r requirements/base.txt + # via + # -r requirements/base.txt + # open-api-framework pytz==2023.3 # via # -r requirements/base.txt @@ -370,6 +396,7 @@ requests==2.31.0 # coreapi # gemma-zds-client # mozilla-django-oidc + # open-api-framework # requests-mock # sharing-configs # zgw-consumers @@ -386,15 +413,16 @@ ruamel-yaml-clib==0.2.7 # via # -r requirements/base.txt # ruamel-yaml -sentry-sdk==1.23.1 - # via -r requirements/base.txt +sentry-sdk==1.39.2 + # via + # -r requirements/base.txt + # open-api-framework sharing-configs==0.1.2 # via -r requirements/base.txt six==1.16.0 # via # -r requirements/base.txt # click-repl - # django-choices # isodate # python-dateutil # qrcode @@ -407,6 +435,10 @@ sqlparse==0.4.4 # django tblib==1.7.0 # via -r requirements/test-tools.in +typing-extensions==4.9.0 + # via + # -r requirements/base.txt + # drf-spectacular uritemplate==4.1.1 # via # -r requirements/base.txt @@ -419,8 +451,10 @@ urllib3==1.26.15 # elastic-apm # requests # sentry-sdk -uwsgi==2.0.21 - # via -r requirements/base.txt +uwsgi==2.0.23 + # via + # -r requirements/base.txt + # open-api-framework vine==5.0.0 # via # -r requirements/base.txt @@ -437,14 +471,15 @@ webob==1.8.7 # via webtest webtest==3.0.0 # via django-webtest -wrapt==1.15.0 +wrapt==1.14.1 # via # -r requirements/base.txt # elastic-apm -zgw-consumers==0.26.1 +zgw-consumers==0.27.0 # via # -r requirements/base.txt # notifications-api-common + # open-api-framework # The following packages are considered to be unsafe in a requirements file: # setuptools diff --git a/requirements/dev.txt b/requirements/dev.txt index 14e38eb2..d08992a0 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -50,6 +50,7 @@ celery==5.2.7 # via # -r requirements/ci.txt # notifications-api-common + # open-api-framework certifi==2023.5.7 # via # -r requirements/ci.txt @@ -86,11 +87,14 @@ click-repl==0.2.0 # via # -r requirements/ci.txt # celery -commonground-api-common==1.10.2 - # via -r requirements/ci.txt +commonground-api-common==1.12.1 + # via + # -r requirements/ci.txt + # open-api-framework coreapi==2.3.3 # via # -r requirements/ci.txt + # commonground-api-common # drf-yasg coreschema==0.0.4 # via @@ -110,18 +114,18 @@ cssselect==1.2.0 # via # -r requirements/ci.txt # pyquery -django==3.2.20 +django==3.2.23 # via # -r requirements/ci.txt # commonground-api-common # django-admin-index # django-axes - # django-choices # django-debug-toolbar # django-extensions # django-filter # django-formtools # django-jenkins + # django-jsonform # django-jsonsuit # django-otp # django-phonenumber-field @@ -140,20 +144,17 @@ django==3.2.20 # mozilla-django-oidc # mozilla-django-oidc-db # notifications-api-common + # open-api-framework # sharing-configs # zgw-consumers -django-admin-index==3.0.0 - # via -r requirements/ci.txt -django-axes==6.0.1 - # via -r requirements/ci.txt -django-better-admin-arrayfield==1.4.2 +django-admin-index==3.1.0 # via # -r requirements/ci.txt - # mozilla-django-oidc-db -django-choices==1.7.2 + # open-api-framework +django-axes==6.3.0 # via # -r requirements/ci.txt - # commonground-api-common + # open-api-framework django-debug-toolbar==4.1.0 # via -r requirements/dev.in django-extensions==3.2.1 @@ -168,6 +169,10 @@ django-formtools==2.4.1 # maykin-django-two-factor-auth django-jenkins==0.110.0 # via -r requirements/ci.txt +django-jsonform==2.21.5 + # via + # -r requirements/ci.txt + # mozilla-django-oidc-db django-jsonsuit==0.5.0 # via -r requirements/ci.txt django-ordered-model==3.7.4 @@ -186,8 +191,10 @@ django-privates==2.0.0.post0 # via # -r requirements/ci.txt # django-simple-certmanager -django-redis==5.2.0 - # via -r requirements/ci.txt +django-redis==5.4.0 + # via + # -r requirements/ci.txt + # open-api-framework django-relativedelta==2.0.0 # via # -r requirements/ci.txt @@ -222,6 +229,7 @@ djangorestframework==3.12.4 # drf-spectacular # drf-yasg # notifications-api-common + # open-api-framework djangorestframework-camel-case==1.4.2 # via # -r requirements/ci.txt @@ -235,14 +243,22 @@ drf-nested-routers==0.93.4 # via # -r requirements/ci.txt # commonground-api-common -drf-spectacular==0.26.2 - # via -r requirements/ci.txt +drf-spectacular==0.27.1 + # via + # -r requirements/ci.txt + # open-api-framework drf-yasg==1.21.5 # via # -r requirements/ci.txt # commonground-api-common -elastic-apm==6.15.1 - # via -r requirements/ci.txt +ecs-logging==2.1.0 + # via + # -r requirements/ci.txt + # elastic-apm +elastic-apm==6.20.0 + # via + # -r requirements/ci.txt + # open-api-framework face==20.1.1 # via # -r requirements/ci.txt @@ -328,14 +344,18 @@ mozilla-django-oidc==2.0.0 # via # -r requirements/ci.txt # mozilla-django-oidc-db -mozilla-django-oidc-db==0.12.0 - # via -r requirements/ci.txt +mozilla-django-oidc-db==0.14.1 + # via + # -r requirements/ci.txt + # open-api-framework mypy-extensions==1.0.0 # via black notifications-api-common==0.2.2 # via # -r requirements/ci.txt # commonground-api-common +open_api_framework @ git+https://github.com/maykinmedia/open-api-framework@bada78b0ad5c7479ab42a1377c046c7d7b176b5a + # via -r requirements/ci.txt oyaml==1.0 # via # -r requirements/ci.txt @@ -361,8 +381,10 @@ prompt-toolkit==3.0.38 # via # -r requirements/ci.txt # click-repl -psycopg2==2.9.6 - # via -r requirements/ci.txt +psycopg2==2.9.9 + # via + # -r requirements/ci.txt + # open-api-framework pycodestyle==2.10.0 # via flake8 pycparser==2.21 @@ -399,9 +421,13 @@ python-dateutil==2.8.2 # faker # freezegun python-decouple==3.8 - # via -r requirements/ci.txt + # via + # -r requirements/ci.txt + # open-api-framework python-dotenv==1.0.0 - # via -r requirements/ci.txt + # via + # -r requirements/ci.txt + # open-api-framework pytz==2023.3 # via # -r requirements/ci.txt @@ -430,6 +456,7 @@ requests==2.31.0 # coreapi # gemma-zds-client # mozilla-django-oidc + # open-api-framework # requests-mock # sharing-configs # sphinx @@ -446,15 +473,16 @@ ruamel-yaml-clib==0.2.7 # via # -r requirements/ci.txt # ruamel-yaml -sentry-sdk==1.23.1 - # via -r requirements/ci.txt +sentry-sdk==1.39.2 + # via + # -r requirements/ci.txt + # open-api-framework sharing-configs==0.1.2 # via -r requirements/ci.txt six==1.16.0 # via # -r requirements/ci.txt # click-repl - # django-choices # isodate # python-dateutil # qrcode @@ -497,8 +525,11 @@ tomli==2.0.1 # via # black # build -typing-extensions==4.5.0 - # via black +typing-extensions==4.9.0 + # via + # -r requirements/ci.txt + # black + # drf-spectacular uritemplate==4.1.1 # via # -r requirements/ci.txt @@ -511,8 +542,10 @@ urllib3==1.26.15 # elastic-apm # requests # sentry-sdk -uwsgi==2.0.21 - # via -r requirements/ci.txt +uwsgi==2.0.23 + # via + # -r requirements/ci.txt + # open-api-framework vine==5.0.0 # via # -r requirements/ci.txt @@ -537,14 +570,15 @@ webtest==3.0.0 # django-webtest wheel==0.40.0 # via pip-tools -wrapt==1.15.0 +wrapt==1.14.1 # via # -r requirements/ci.txt # elastic-apm -zgw-consumers==0.26.1 +zgw-consumers==0.27.0 # via # -r requirements/ci.txt # notifications-api-common + # open-api-framework zipp==3.15.0 # via importlib-metadata diff --git a/src/objecttypes/conf/base.py b/src/objecttypes/conf/base.py index 64d8d784..f15896e3 100644 --- a/src/objecttypes/conf/base.py +++ b/src/objecttypes/conf/base.py @@ -67,7 +67,6 @@ # 'django.contrib.sitemaps', # External applications. "axes", - "django_better_admin_arrayfield", "jsonsuit.apps.JSONSuitConfig", "mozilla_django_oidc", "mozilla_django_oidc_db",