diff --git a/Pipfile b/Pipfile index 777b27f..1e6fc81 100644 --- a/Pipfile +++ b/Pipfile @@ -5,23 +5,25 @@ name = "pypi" [packages] Django = "==2.2.3" -hashids = "*" -django-cors-headers = "*" -django-extensions = "*" -django-filter = "*" -Werkzeug = "*" -graphene = ">=2.0" -graphene-django = ">=2.0" -django-graphql-jwt = "*" -django-webpack-loader = "*" -gunicorn = "*" -django-allow-cidr = "*" -"psycopg2-binary" = "*" -django-allauth = "*" -requests = "==2.20" +hashids = "==1.2.0" +django-cors-headers = "==3.0.2" +django-extensions = "==2.2.1" +django-filter = "==2.2.0" +Werkzeug = "==0.15.5" +graphene = "==2.1.7" +graphene-django = "==2.4.0" +django-graphql-jwt = "==0.2.1" +django-webpack-loader = "==0.6.0" +gunicorn = "==19.9.0" +django-allow-cidr = "==0.3.1" +psycopg2-binary = "==2.8.3" +django-allauth = "==0.39.1" +requests = "==2.22.0" +sentry-sdk = "==0.10.2" [dev-packages] -snapshottest = "*" -ipython = "*" +snapshottest = "==0.5.1" +ipython = "==7.7.0" black = "==19.3b0" isort = "==4.3.21" +flake8 = "==3.7.8" diff --git a/Pipfile.lock b/Pipfile.lock index bdd16a1..b28d6c8 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "868205c0213e94842e3130528bda176442e2c9d8dd020743ee77d8891e7248e7" + "sha256": "5e716e0f1c05e180fe6846176a75b8ad07149aa3ae40fe5d754a190af63c66d1" }, "pipfile-spec": 6, "requires": {}, @@ -152,10 +152,10 @@ }, "idna": { "hashes": [ - "sha256:156a6814fb5ac1fc6850fb002e0852d56c0c8d2531923a51032d1b70760e186e", - "sha256:684a38a6f903c1d71d6d5fac066b58d7768af4de2b832e426ec79c30daa94a16" + "sha256:c357b3f628cf53ae2c4c05627ecc484553142ca23264e593d327bcde5e9c3407", + "sha256:ea8b7f6188e6fa117537c3df7da9fc686d485087abf6ac197f9c46432f7e4a3c" ], - "version": "==2.7" + "version": "==2.8" }, "netaddr": { "hashes": [ @@ -235,11 +235,11 @@ }, "requests": { "hashes": [ - "sha256:99dcfdaaeb17caf6e526f32b6a7b780461512ab3f1d992187801694cba42770c", - "sha256:a84b8c9ab6239b578f22d1c21d51b696dcfe004032bb80ea832398d6909d7279" + "sha256:11e007a8a2aa0323f5a921e9e6a2d7e4e67d9877e85773fba9ba6419025cbeb4", + "sha256:9cf5292fcd0f598c671cfc1e0d7d1a7f13bb8085e9a590f48c010551dc6c4b31" ], "index": "pypi", - "version": "==2.20.0" + "version": "==2.22.0" }, "requests-oauthlib": { "hashes": [ @@ -255,6 +255,14 @@ ], "version": "==1.6.1" }, + "sentry-sdk": { + "hashes": [ + "sha256:d491aa6399eaa3eded433972751a9770180730fd8b4c225b0b7f49c4fa2af70b", + "sha256:d68003cdffbbfcadaa2c445b72e1050b0a44406f94199866f192986c016b23f5" + ], + "index": "pypi", + "version": "==0.10.2" + }, "singledispatch": { "hashes": [ "sha256:5b06af87df13818d14f08a028e42f566640aef80805c3b50c5056b086e3c2b9c", @@ -278,10 +286,10 @@ }, "urllib3": { "hashes": [ - "sha256:2393a695cd12afedd0dcb26fe5d50d0cf248e5a66f75dbd89a3d4eb333a61af4", - "sha256:a637e5fae88995b256e3409dc4d52c2e2e0ba32c42a6365fee8bbd2238de3cfb" + "sha256:b246607a25ac80bedac05c6f282e3cdaf3afb65420fd024ac94435cabe6e18d1", + "sha256:dbe59173209418ae49d485b87d1681aefa36252ee85884c31346debd19463232" ], - "version": "==1.24.3" + "version": "==1.25.3" }, "werkzeug": { "hashes": [ @@ -336,12 +344,27 @@ ], "version": "==4.4.0" }, + "entrypoints": { + "hashes": [ + "sha256:589f874b313739ad35be6e0cd7efde2a4e9b6fea91edcc34e58ecbb8dbe56d19", + "sha256:c70dd71abe5a8c85e55e12c19bd91ccfeec11a6e99044204511f9ed547d48451" + ], + "version": "==0.3" + }, "fastdiff": { "hashes": [ "sha256:623ad3d9055ab78e014d0d10767cb033d98d5d4f66052abf498350c8e42e29aa" ], "version": "==0.2.0" }, + "flake8": { + "hashes": [ + "sha256:19241c1cbc971b9962473e4438a2ca19749a7dd002dd1a946eaba171b4114548", + "sha256:8e9dfa3cecb2400b3738a42c54c3043e821682b9c840b0448c0503f781130696" + ], + "index": "pypi", + "version": "==3.7.8" + }, "ipython": { "hashes": [ "sha256:1d3a1692921e932751bc1a1f7bb96dc38671eeefdc66ed33ee4cbc57e92a410e", @@ -372,6 +395,13 @@ ], "version": "==0.14.1" }, + "mccabe": { + "hashes": [ + "sha256:ab8a6258860da4b6677da4bd2fe5dc2c659cff31b3ee4f7f5d64e79735b80d42", + "sha256:dd8d182285a0fe56bace7f45b5e7d1a6ebcbf524e8f3bd87eb0f125271b8831f" + ], + "version": "==0.6.1" + }, "parso": { "hashes": [ "sha256:63854233e1fadb5da97f2744b6b24346d2750b85965e7e399bec1620232797dc", @@ -409,6 +439,20 @@ ], "version": "==0.6.0" }, + "pycodestyle": { + "hashes": [ + "sha256:95a2219d12372f05704562a14ec30bc76b05a5b297b21a5dfe3f6fac3491ae56", + "sha256:e40a936c9a450ad81df37f549d676d127b1b66000a6c500caa2b085bc0ca976c" + ], + "version": "==2.5.0" + }, + "pyflakes": { + "hashes": [ + "sha256:17dbeb2e3f4d772725c777fabc446d5634d1038f234e77343108ce445ea69ce0", + "sha256:d976835886f8c5b31d47970ed689944a0262b5f3afa00a5a7b4dc81e5449f8a2" + ], + "version": "==2.1.1" + }, "pygments": { "hashes": [ "sha256:71e430bc85c88a430f000ac1d9b331d2407f681d6f6aec95e8bcfbc3df5b0127", diff --git a/fittrak/fittrak/settings.py b/fittrak/fittrak/settings.py index d88ca4a..76b7840 100644 --- a/fittrak/fittrak/settings.py +++ b/fittrak/fittrak/settings.py @@ -5,6 +5,11 @@ import os import sys +import sentry_sdk +from sentry_sdk.integrations.django import DjangoIntegration + +sentry_sdk.init(dsn=os.getenv("SENTRY_DSN"), integrations=[DjangoIntegration()]) + # Build paths inside the project like this: os.path.join(BASE_DIR, ...) BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) @@ -93,6 +98,7 @@ } # Patch the DB to be sqlite in test env + if "test" in sys.argv: defaults = {"ENGINE": "django.db.backends.sqlite3", "NAME": "fittrak_test"} @@ -187,6 +193,7 @@ # Production override # TODO: should really be separate settings files + if DEBUG: ALLOWED_HOSTS = ["*"]