From fc5d832dc15440d222f7fbb7c2a76081049827c8 Mon Sep 17 00:00:00 2001 From: James McKinney <26463+jpmckinney@users.noreply.github.com> Date: Wed, 22 Apr 2020 17:51:14 -0400 Subject: [PATCH 1/3] Upgrade sentry-sdk --- requirements.txt | 20 +++++----- requirements_dev.txt | 94 ++++++++++++++++++++++---------------------- 2 files changed, 57 insertions(+), 57 deletions(-) diff --git a/requirements.txt b/requirements.txt index 7e3c382..5f6d48a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -11,34 +11,34 @@ certifi==2019.9.11 # via requests, sentry-sdk chardet==3.0.4 # via requests commonmark==0.9.1 # via libcove, libcoveocds contextlib2==0.5.5 # via schema -django==2.2.10 +django==2.2.10 # via -r requirements.in, libcove, libcoveocds et-xmlfile==1.0.1 # via openpyxl -flattentool==0.9.0 +flattentool==0.9.0 # via -r requirements.in, libcoveocds idna==2.8 # via requests ijson==3.0 # via ocdskit importlib-metadata==1.3.0 # via jsonschema jdcal==1.4.1 # via openpyxl json-merge-patch==0.2 # via libcove, libcoveocds, ocdsextensionregistry jsonpointer==2.0 # via ocdskit -jsonref==0.2 +jsonref==0.2 # via -r requirements.in, flattentool, libcove, libcoveocds, ocdskit, ocdsmerge jsonschema==3.2.0 # via libcove, libcoveocds, ocdskit libcove==0.12.0 # via libcoveocds -libcoveocds==0.7.4 +libcoveocds==0.7.4 # via -r requirements.in lxml==4.4.1 # via flattentool more-itertools==8.0.2 # via zipp -ocdsextensionregistry==0.0.16 -ocdskit[perf]==0.2.6 -ocdsmerge==0.6.4 +ocdsextensionregistry==0.0.16 # via -r requirements.in, ocdskit +ocdskit[perf]==0.2.6 # via -r requirements.in +ocdsmerge==0.6.4 # via -r requirements.in, ocdskit openpyxl==3.0.1 # via flattentool orjson==2.1.3 # via ocdskit pyrsistent==0.15.5 # via jsonschema -python-dateutil==2.8.1 +python-dateutil==2.8.1 # via -r requirements.in pytz==2019.3 # via django, flattentool requests-cache==0.5.2 # via ocdsextensionregistry -requests==2.22.0 +requests==2.22.0 # via -r requirements.in, libcove, libcoveocds, ocdsextensionregistry, ocdskit, ocdsmerge, requests-cache rfc3987==1.3.8 # via ocdskit schema==0.7.1 # via flattentool -sentry-sdk==0.13.2 +sentry-sdk==0.14.3 # via -r requirements.in six==1.13.0 # via bleach, flattentool, jsonschema, pyrsistent, python-dateutil sqlalchemy==1.3.11 # via ocdskit sqlparse==0.3.0 # via django diff --git a/requirements_dev.txt b/requirements_dev.txt index e71d4f0..14271f0 100644 --- a/requirements_dev.txt +++ b/requirements_dev.txt @@ -4,60 +4,60 @@ # # pip-compile requirements_dev.in # -attrs==19.3.0 -bleach==3.1.4 -cached-property==1.5.1 -certifi==2019.9.11 -chardet==3.0.4 +attrs==19.3.0 # via -r requirements.txt, jsonschema +bleach==3.1.4 # via -r requirements.txt, libcove, libcoveocds +cached-property==1.5.1 # via -r requirements.txt, libcove, libcoveocds +certifi==2019.9.11 # via -r requirements.txt, requests, sentry-sdk +chardet==3.0.4 # via -r requirements.txt, requests click==7.0 # via pip-tools -commonmark==0.9.1 -contextlib2==0.5.5 +commonmark==0.9.1 # via -r requirements.txt, libcove, libcoveocds +contextlib2==0.5.5 # via -r requirements.txt, schema coverage==5.0.2 # via coveralls -coveralls==2.0.0 -django==2.2.10 +coveralls==2.0.0 # via -r requirements_dev.in +django==2.2.10 # via -r requirements.txt, libcove, libcoveocds docopt==0.6.2 # via coveralls entrypoints==0.3 # via flake8 -et-xmlfile==1.0.1 -flake8==3.7.9 -flattentool==0.9.0 -idna==2.8 -ijson==3.0 -importlib-metadata==1.3.0 -isort==4.3.21 -jdcal==1.4.1 -json-merge-patch==0.2 -jsonpointer==2.0 -jsonref==0.2 -jsonschema==3.2.0 -libcove==0.12.0 -libcoveocds==0.7.4 -lxml==4.4.1 +et-xmlfile==1.0.1 # via -r requirements.txt, openpyxl +flake8==3.7.9 # via -r requirements_dev.in +flattentool==0.9.0 # via -r requirements.txt, libcoveocds +idna==2.8 # via -r requirements.txt, requests +ijson==3.0 # via -r requirements.txt, ocdskit +importlib-metadata==1.3.0 # via -r requirements.txt, jsonschema +isort==4.3.21 # via -r requirements_dev.in +jdcal==1.4.1 # via -r requirements.txt, openpyxl +json-merge-patch==0.2 # via -r requirements.txt, libcove, libcoveocds, ocdsextensionregistry +jsonpointer==2.0 # via -r requirements.txt, ocdskit +jsonref==0.2 # via -r requirements.txt, flattentool, libcove, libcoveocds, ocdskit, ocdsmerge +jsonschema==3.2.0 # via -r requirements.txt, libcove, libcoveocds, ocdskit +libcove==0.12.0 # via -r requirements.txt, libcoveocds +libcoveocds==0.7.4 # via -r requirements.txt +lxml==4.4.1 # via -r requirements.txt, flattentool mccabe==0.6.1 # via flake8 -more-itertools==8.0.2 -ocdsextensionregistry==0.0.16 -ocdskit[perf]==0.2.6 -ocdsmerge==0.6.4 -openpyxl==3.0.1 -orjson==2.1.3 -pip-tools==4.3.0 +more-itertools==8.0.2 # via -r requirements.txt, zipp +ocdsextensionregistry==0.0.16 # via -r requirements.txt, ocdskit +ocdskit[perf]==0.2.6 # via -r requirements.txt +ocdsmerge==0.6.4 # via -r requirements.txt, ocdskit +openpyxl==3.0.1 # via -r requirements.txt, flattentool +orjson==2.1.3 # via -r requirements.txt, ocdskit +pip-tools==4.3.0 # via -r requirements_dev.in pycodestyle==2.5.0 # via flake8 pyflakes==2.1.1 # via flake8 -pyrsistent==0.15.5 -python-dateutil==2.8.1 -pytz==2019.3 -requests-cache==0.5.2 -requests==2.22.0 -rfc3987==1.3.8 -schema==0.7.1 -sentry-sdk==0.13.2 -six==1.13.0 -sqlalchemy==1.3.11 -sqlparse==0.3.0 -strict-rfc3339==0.7 -urllib3==1.25.7 -webencodings==0.5.1 -xmltodict==0.12.0 -zipp==0.6.0 +pyrsistent==0.15.5 # via -r requirements.txt, jsonschema +python-dateutil==2.8.1 # via -r requirements.txt +pytz==2019.3 # via -r requirements.txt, django, flattentool +requests-cache==0.5.2 # via -r requirements.txt, ocdsextensionregistry +requests==2.22.0 # via -r requirements.txt, coveralls, libcove, libcoveocds, ocdsextensionregistry, ocdskit, ocdsmerge, requests-cache +rfc3987==1.3.8 # via -r requirements.txt, ocdskit +schema==0.7.1 # via -r requirements.txt, flattentool +sentry-sdk==0.14.3 # via -r requirements.txt +six==1.13.0 # via -r requirements.txt, bleach, flattentool, jsonschema, pip-tools, pyrsistent, python-dateutil +sqlalchemy==1.3.11 # via -r requirements.txt, ocdskit +sqlparse==0.3.0 # via -r requirements.txt, django +strict-rfc3339==0.7 # via -r requirements.txt, ocdskit +urllib3==1.25.7 # via -r requirements.txt, requests, sentry-sdk +webencodings==0.5.1 # via -r requirements.txt, bleach +xmltodict==0.12.0 # via -r requirements.txt, flattentool +zipp==0.6.0 # via -r requirements.txt, importlib-metadata # The following packages are considered to be unsafe in a requirements file: # setuptools From ab77a91e8e635800e1fd2384c37a96f8a01cc39d Mon Sep 17 00:00:00 2001 From: James McKinney <26463+jpmckinney@users.noreply.github.com> Date: Wed, 22 Apr 2020 17:52:37 -0400 Subject: [PATCH 2/3] Add SqlalchemyIntegration --- ocdstoucan/settings.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ocdstoucan/settings.py b/ocdstoucan/settings.py index 3aa5ae6..23cedcf 100644 --- a/ocdstoucan/settings.py +++ b/ocdstoucan/settings.py @@ -15,6 +15,7 @@ import sentry_sdk from django.utils.translation import gettext_lazy as _ from sentry_sdk.integrations.django import DjangoIntegration +from sentry_sdk.integrations.sqlalchemy import SqlalchemyIntegration # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) @@ -145,5 +146,5 @@ if os.getenv('SENTRY_DSN') is not None: sentry_sdk.init( dsn=os.getenv('SENTRY_DSN'), - integrations=[DjangoIntegration()] + integrations=[DjangoIntegration(), SqlalchemyIntegration()] ) From aaa0f8625d3a111ccbb7b95722ba5e134352371d Mon Sep 17 00:00:00 2001 From: James McKinney <26463+jpmckinney@users.noreply.github.com> Date: Thu, 23 Apr 2020 13:52:24 -0400 Subject: [PATCH 3/3] Silence disallowed host errors (to avoid unnecessary Sentry notifications) --- ocdstoucan/settings.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/ocdstoucan/settings.py b/ocdstoucan/settings.py index 23cedcf..19b6638 100644 --- a/ocdstoucan/settings.py +++ b/ocdstoucan/settings.py @@ -140,6 +140,22 @@ ('es', _('Spanish')), ] +LOGGING = { + 'version': 1, + 'disable_existing_loggers': False, + 'handlers': { + 'null': { + 'class': 'logging.NullHandler', + }, + }, + 'loggers': { + 'django.security.DisallowedHost': { + 'handlers': ['null'], + 'propagate': False, + }, + }, +} + OCDS_TOUCAN_MAXNUMFILES = os.getenv('OCDS_TOUCAN_MAXNUMFILES', 20) OCDS_TOUCAN_MAXFILESIZE = os.getenv('OCDS_TOUCAN_MAXFILESIZE', 10000000) # in bytes