diff options
-rw-r--r-- | Pipfile | 2 | ||||
-rw-r--r-- | Pipfile.lock | 90 | ||||
-rw-r--r-- | README.rst | 2 | ||||
-rw-r--r-- | runtime.txt | 2 | ||||
-rw-r--r-- | src/notifications/emails.py | 4 | ||||
-rw-r--r-- | src/web/decorators.py | 2 |
6 files changed, 56 insertions, 46 deletions
@@ -5,7 +5,7 @@ verify_ssl = true name = "pypi" [requires] -python_version = "3.6" +python_version = "3.7" [packages] diff --git a/Pipfile.lock b/Pipfile.lock index 9bd1d070..de7fd5bf 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,11 +1,11 @@ { "_meta": { "hash": { - "sha256": "51b9994e0479244b48085cfdf96d2a90f9451fe451425faf3f3d300cc2e6bab4" + "sha256": "ac79f3950af453d0273a682219649c27b2724a536a82376126fe91defc38cfd8" }, "pipfile-spec": 6, "requires": { - "python_version": "3.6" + "python_version": "3.7" }, "sources": [ { @@ -39,10 +39,11 @@ }, "alembic": { "hashes": [ - "sha256:1cd32df9a3b8c1749082ef60ffbe05ff16617b6afadfdabc680dcb9344af33d7" + "sha256:52d73b1d750f1414fa90c25a08da47b87de1e4ad883935718a8f36396e19e78e", + "sha256:eb7db9b4510562ec37c91d00b00d95fde076c1030d3f661aea882eec532b3565" ], "index": "pypi", - "version": "==0.9.10" + "version": "==1.0.0" }, "aniso8601": { "hashes": [ @@ -56,6 +57,7 @@ "sha256:474d4bc64cee20603e225eb1ece15e248962958b45a3648a9f5cc29e827a610c", "sha256:b3c0ddc416736619bd4a95ca31de8da6920c3b9a140c64dbef2b2fa7bf521287" ], + "markers": "python_version >= '3.5.3'", "version": "==3.0.0" }, "attrs": { @@ -74,12 +76,12 @@ }, "beautifulsoup4": { "hashes": [ - "sha256:11a9a27b7d3bddc6d86f59fb76afb70e921a25ac2d6cc55b40d072bd68435a76", - "sha256:7015e76bf32f1f574636c4288399a6de66ce08fb7b2457f628a8d70c0fbabb11", - "sha256:808b6ac932dccb0a4126558f7dfdcf41710dd44a4ef497a0bb59a77f9f078e89" + "sha256:272081ad78c5495ba67083a0e50920163701fa6fe67fbb5eefeb21b5dd88c40b", + "sha256:5a3d659840960a4107047b6328d6d4cdaaee69939bf11adc07466a1856c99a80", + "sha256:bd43a3b26d2886acd63070c43da821b60dea603eb6d45bab0294aac6129adbfa" ], "index": "pypi", - "version": "==4.6.0" + "version": "==4.6.1" }, "blinker": { "hashes": [ @@ -217,9 +219,9 @@ }, "idna-ssl": { "hashes": [ - "sha256:1293f030bc608e9aa9cdee72aa93c1521bbb9c7698068c61c9ada6772162b979" + "sha256:a933e3bb13da54383f9e8f35dc4f9cb9eb9b3b78c6b36f311254d6d0d92c6c7c" ], - "version": "==1.0.1" + "version": "==1.1.0" }, "itsdangerous": { "hashes": [ @@ -236,35 +238,39 @@ }, "lxml": { "hashes": [ - "sha256:0941f4313208c07734410414d8308812b044fd3fb98573454e3d3a0d2e201f3d", - "sha256:0b18890aa5730f9d847bc5469e8820f782d72af9985a15a7552109a86b01c113", - "sha256:21f427945f612ac75576632b1bb8c21233393c961f2da890d7be3927a4b6085f", - "sha256:24cf6f622a4d49851afcf63ac4f0f3419754d4e98a7a548ab48dd03c635d9bd3", - "sha256:2dc6705486b8abee1af9e2a3761e30a3cb19e8276f20ca7e137ee6611b93707c", - "sha256:2e43b2e5b7d2b9abe6e0301eef2c2c122ab45152b968910eae68bdee2c4cfae0", - "sha256:329a6d8b6d36f7d6f8b6c6a1db3b2c40f7e30a19d3caf62023c9d6a677c1b5e1", - "sha256:423cde55430a348bda6f1021faad7235c2a95a6bdb749e34824e5758f755817a", - "sha256:4651ea05939374cfb5fe87aab5271ed38c31ea47997e17ec3834b75b94bd9f15", - "sha256:4be3bbfb2968d7da6e5c2cd4104fc5ec1caf9c0794f6cae724da5a53b4d9f5a3", - "sha256:622f7e40faef13d232fb52003661f2764ce6cdef3edb0a59af7c1559e4cc36d1", - "sha256:664dfd4384d886b239ef0d7ee5cff2b463831079d250528b10e394a322f141f9", - "sha256:697c0f58ac637b11991a1bc92e07c34da4a72e2eda34d317d2c1c47e2f24c1b3", - "sha256:6ec908b4c8a4faa7fe1a0080768e2ce733f268b287dfefb723273fb34141475f", - "sha256:7ec3fe795582b75bb49bb1685ffc462dbe38d74312dac07ce386671a28b5316b", - "sha256:8c39babd923c431dcf1e5874c0f778d3a5c745a62c3a9b6bd755efd489ee8a1d", - "sha256:949ca5bc56d6cb73d956f4862ba06ad3c5d2808eac76304284f53ae0c8b2334a", - "sha256:9f0daddeefb0791a600e6195441910bdf01eac470be596b9467e6122b51239a6", - "sha256:a359893b01c30e949eae0e8a85671a593364c9f0b8162afe0cb97317af0953bf", - "sha256:ad5d5d8efed59e6b1d4c50c1eac59fb6ecec91b2073676af1e15fc4d43e9b6c5", - "sha256:bc1a36f95a6b3667c09b34995fc3a46a82e4cf0dc3e7ab281e4c77b15bd7af05", - "sha256:be37b3f55b6d7d923f43bf74c356fc1878eb36e28505f38e198cb432c19c7b1a", - "sha256:c45bca5e544eb75f7500ffd730df72922eb878a2f0213b0dc5a5f357ded3a85d", - "sha256:ccee7ebbb4735ebc341d347fca9ee09f2fa6c0580528c1414bc4e1d31372835c", - "sha256:dc62c0840b2fc7753550b40405532a3e125c0d3761f34af948873393aa688160", - "sha256:f7d9d5aa1c7e54167f1a3cba36b5c52c7c540f30952c9bd7d9302a1eda318424" + "sha256:0cf1eca0652c4409e0655e04b840d6d85b7eb18718f5fba3862acad5500e3480", + "sha256:10624ef1b468252309f269b13af4f837e3a82be366b5f3e49b0e83f1ad66205f", + "sha256:1259e374da3a575615fe402e0966c5894bae3d2e229c2239ba4ebf2bb020c4b6", + "sha256:26bb748af1ead0097eb8272b8a06f15a0015b8f312eef772a95f223a16e7de56", + "sha256:27d0b13bcfcf2f6a5664e64fc3d684c76db1cdba5a5761795d154063559e0b59", + "sha256:2b013fdabcbc21bc2770437099b921ec290235752b5baaac7a601f75094a378d", + "sha256:2e469ea2c0b722b9b393187649e7d126c537a68512fc92a676fe86e57050c2a9", + "sha256:37f7c2cdf513a0ea239c1609681880fb2f0073de0d2996e0ae9a7f0ef15d8b95", + "sha256:68c6afc7a4411db2df28307e2493c945cb3d887e8f431b81811c1ea6ba087b8b", + "sha256:73fe3452fc02c0b418914f842f897bdad0f1184368d8d9c315294ff7b94946f2", + "sha256:7584d83d7315f641510e5f97f4d636ea225fd76e3f8aee965b2e8c93a8169b4d", + "sha256:76e3ec6b26b1198dd5e6e20539d8360dcd3b224cd80cadba9307b790fda79161", + "sha256:8288a889cbaa446e5fa168837456e63098b91953c89e5857968a5091b337cdca", + "sha256:ad9e1fee284dec97b74cd88e925eca1575145598c974243cfb5e859f406adc32", + "sha256:b360c3769cf0fd7d82577e40e37d4caf693f67744d0d61d11d66b5c31eaccf7a", + "sha256:c4aaf320284a2713428163bae0e7df0db3b489237ab4830179210a12d56d3068", + "sha256:c530274e43b0f376cd94e8e0a3e6ea28de1739ec4326689bdbf626e172d2e614", + "sha256:ca4e79294fd0f3f9e0e5a4c309df84b5f2abc62349bfaf2aaf8965e5108ef8e2", + "sha256:ce2dc5a104e885abbd48d0cc92ae74afa1d685ee65d6e3497067207d6a26e177", + "sha256:d295cac30d3e13e82473081ea7df2a11352b5625cb54187fcd5a8be5d9ebf315", + "sha256:d498338b39c4757ba88bdc705b3a0647d18554856cd2d394ac3bb919ac890c9d", + "sha256:d537f8e613074805e17039e345edaa822534f66f07d315c89cff9824aa996d65", + "sha256:df8ba3f52ef59a553b0e94593ea526c34faa4f531c1ab7f5ca7f392bc770c9e3", + "sha256:e2553800d2d461a2dc329682d0a9068f238ec11d763e5454c61c4df7a0346ed2", + "sha256:e2afbe403090f5893e254958d02875e0732975e73c4c0cdd33c1f009a61963ca", + "sha256:e740efa625883f3c4de20c7e1411228d7ce2ab47b9e874a703f6681ec0558a30", + "sha256:ec7864b62da0f5ae44973351247f2250a25b9b544fc6aff8bd6a75da1156cc70", + "sha256:f26ddab491b10279b7e8e3fdcbaaaba3ab282fbaecfa48a19874dfc4d53b9d4f", + "sha256:f6a16681f30918521066ddcc4ba79c1e033c9837dd94f78f5a9f6110e7572185", + "sha256:f968623ac9b81a6253d4bbbe3f4d1e6be5f33707f397b566935783511bfa281a" ], "index": "pypi", - "version": "==4.2.3" + "version": "==4.2.4" }, "mako": { "hashes": [ @@ -300,11 +306,11 @@ "sha256:d870f399fcd58a1889e93008762a3b9a27cf7ea512818fc6e689f59495648355", "sha256:e9404e2e19e901121c3c5c6cffd5a8ae0d1d67919c970e3b3262231175713068" ], + "markers": "python_version >= '3.4.1'", "version": "==4.3.1" }, "opml": { "hashes": [ - "sha256:9d92806e32068ae5eb2d8826b54d3eeaad1d57b9d6c9cbdc28b57369f85c1222", "sha256:db1eef2a251b8af33e2eabb62baf922006dbd8c66c742931090e331a0362a770" ], "index": "pypi", @@ -312,6 +318,7 @@ }, "psycopg2": { "hashes": [ + "sha256:0b9e48a1c1505699a64ac58815ca99104aacace8321e455072cee4f7fe7b2698", "sha256:0f4c784e1b5a320efb434c66a50b8dd7e30a7dc047e8f45c0a8d2694bfe72781", "sha256:0fdbaa32c9eb09ef09d425dc154628fca6fa69d2f7c1a33f889abb7e0efb3909", "sha256:11fbf688d5c953c0a5ba625cc42dea9aeb2321942c7c5ed9341a68f865dc8cb1", @@ -325,8 +332,10 @@ "sha256:6e737915de826650d1a5f7ff4ac6cf888a26f021a647390ca7bafdba0e85462b", "sha256:6ed9b2cfe85abc720e8943c1808eeffd41daa73e18b7c1e1a228b0b91f768ccc", "sha256:711ec617ba453fdfc66616db2520db3a6d9a891e3bf62ef9aba4c95bb4e61230", + "sha256:844dacdf7530c5c612718cf12bc001f59b2d9329d35b495f1ff25045161aa6af", "sha256:86b52e146da13c896e50c5a3341a9448151f1092b1a4153e425d1e8b62fec508", "sha256:985c06c2a0f227131733ae58d6a541a5bc8b665e7305494782bebdb74202b793", + "sha256:a86dfe45f4f9c55b1a2312ff20a59b30da8d39c0e8821d00018372a2a177098f", "sha256:aa3cd07f7f7e3183b63d48300666f920828a9dbd7d7ec53d450df2c4953687a9", "sha256:b1964ed645ef8317806d615d9ff006c0dadc09dfc54b99ae67f9ba7a1ec9d5d2", "sha256:b2abbff9e4141484bb89b96eb8eae186d77bc6d5ffbec6b01783ee5c3c467351", @@ -409,16 +418,17 @@ }, "sqlalchemy": { "hashes": [ - "sha256:e21e5561a85dcdf16b8520ae4daec7401c5c24558e0ce004f9b60be75c4b6957" + "sha256:72325e67fb85f6e9ad304c603d83626d1df684fdf0c7ab1f0352e71feeab69d8" ], "index": "pypi", - "version": "==1.2.9" + "version": "==1.2.10" }, "urllib3": { "hashes": [ "sha256:a68ac5e15e76e7e5dd2b8f94007233e01effe3e50e8daddf69acfd81cb686baf", "sha256:b5725a0bd4ba422ab0e66e89e030c806576753ea3ee08554382c14e685d117b5" ], + "markers": "python_version < '4' and python_version >= '2.6' and python_version != '3.1.*' and python_version != '3.2.*' and python_version != '3.3.*' and python_version != '3.0.*'", "version": "==1.23" }, "werkzeug": { @@ -26,7 +26,7 @@ The core technologies are `Flask <http://flask.pocoo.org>`_, `SQLAlchemy <http://www.sqlalchemy.org>`_ and `React <https://facebook.github.io/react/>`_. -Python >= 3.6.6 is recommended. +Python >= 3.7.0 is required. Documentation diff --git a/runtime.txt b/runtime.txt index 1935e977..881a2db1 100644 --- a/runtime.txt +++ b/runtime.txt @@ -1 +1 @@ -python-3.6.6 +python-3.7.0 diff --git a/src/notifications/emails.py b/src/notifications/emails.py index 3ee0aa4a..e2c9f444 100644 --- a/src/notifications/emails.py +++ b/src/notifications/emails.py @@ -28,12 +28,12 @@ import sendgrid from sendgrid.helpers.mail import * import conf -from web.decorators import async +from web.decorators import async_maker logger = logging.getLogger(__name__) -@async +@async_maker def send_async_email(mfrom, mto, msg): try: s = smtplib.SMTP(conf.NOTIFICATION_HOST) diff --git a/src/web/decorators.py b/src/web/decorators.py index 83a06a48..3835f646 100644 --- a/src/web/decorators.py +++ b/src/web/decorators.py @@ -7,7 +7,7 @@ from functools import wraps from flask_login import login_required -def async(f): +def async_maker(f): """ This decorator enables to launch a task (for examle sending an email or indexing the database) in background. |