From 16c677af4e551e3d1a2180ab8ed79313b5b82b63 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 2 Nov 2023 21:44:29 +0000 Subject: [PATCH 001/181] Bump django from 4.1.10 to 4.1.13 Bumps [django](https://github.com/django/django) from 4.1.10 to 4.1.13. - [Commits](https://github.com/django/django/compare/4.1.10...4.1.13) --- updated-dependencies: - dependency-name: django dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- poetry.lock | 8 ++++---- pyproject.toml | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/poetry.lock b/poetry.lock index 9c88d618de..b3f7124f41 100644 --- a/poetry.lock +++ b/poetry.lock @@ -318,13 +318,13 @@ dev = ["PyTest", "PyTest (<5)", "PyTest-Cov", "PyTest-Cov (<2.6)", "bump2version [[package]] name = "django" -version = "4.1.10" +version = "4.1.13" description = "A high-level Python web framework that encourages rapid development and clean, pragmatic design." optional = false python-versions = ">=3.8" files = [ - {file = "Django-4.1.10-py3-none-any.whl", hash = "sha256:26d0260c2fb8121009e62ffc548b2398dea2522b6454208a852fb0ef264c206c"}, - {file = "Django-4.1.10.tar.gz", hash = "sha256:56343019a9fd839e2e5bf203daf45f25af79d5bffa4c71d56eae4f4404d82ade"}, + {file = "Django-4.1.13-py3-none-any.whl", hash = "sha256:04ab3f6f46d084a0bba5a2c9a93a3a2eb3fe81589512367a75f79ee8acf790ce"}, + {file = "Django-4.1.13.tar.gz", hash = "sha256:94a3f471e833c8f124ee7a2de11e92f633991d975e3fa5bdd91e8abd66426318"}, ] [package.dependencies] @@ -1530,4 +1530,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "e61f939f4000f94213fc7bfb6be961299d04d920f94172670df1900868e0d09d" +content-hash = "603006189586cebf1e868ea4dc8d6bb6f337123c76c9cbf296c680e6e0681b60" diff --git a/pyproject.toml b/pyproject.toml index 8caf5ce5e6..8ef0467986 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ boto3 = "^1.28.53" botocore = "^1.31.53" chardet = "^3.0.4" cryptography = "^41.0.4" -Django = "4.1.10" +Django = "4.1.13" django-autocomplete-light = "^3.9.4" django-background-tasks-updated = "=1.2.7" django-ckeditor = "6.5.1" From 9121d7c76c20880e5a5dd16cb00eca2f6a0b8837 Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Fri, 3 Nov 2023 15:16:48 -0400 Subject: [PATCH 002/181] Bump django from 4.1.10 to 4.1.13. --- poetry.lock | 105 +++++++++++++++++++++++++++++++++++++++++++++-- requirements.txt | 38 +++++++++++++---- 2 files changed, 133 insertions(+), 10 deletions(-) diff --git a/poetry.lock b/poetry.lock index b3f7124f41..75a1b97bc8 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,9 +1,10 @@ -# This file is automatically @generated by Poetry 1.6.1 and should not be changed by hand. +# This file is automatically @generated by Poetry and should not be changed by hand. [[package]] name = "asgiref" version = "3.5.2" description = "ASGI specs, helper code, and adapters" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -18,6 +19,7 @@ tests = ["mypy (>=0.800)", "pytest", "pytest-asyncio"] name = "bleach" version = "3.3.0" description = "An easy safelist-based HTML-sanitizing tool." +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -34,6 +36,7 @@ webencodings = "*" name = "boto3" version = "1.28.53" description = "The AWS SDK for Python" +category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -53,6 +56,7 @@ crt = ["botocore[crt] (>=1.21.0,<2.0a0)"] name = "botocore" version = "1.31.53" description = "Low-level, data-driven core of boto 3." +category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -72,6 +76,7 @@ crt = ["awscrt (==0.16.26)"] name = "cachetools" version = "4.2.2" description = "Extensible memoizing collections and decorators" +category = "main" optional = false python-versions = "~=3.5" files = [ @@ -83,6 +88,7 @@ files = [ name = "certifi" version = "2023.7.22" description = "Python package for providing Mozilla's CA Bundle." +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -94,6 +100,7 @@ files = [ name = "cffi" version = "1.15.1" description = "Foreign Function Interface for Python calling C code." +category = "main" optional = false python-versions = "*" files = [ @@ -170,6 +177,7 @@ pycparser = "*" name = "chardet" version = "3.0.4" description = "Universal encoding detector for Python 2 and 3" +category = "main" optional = false python-versions = "*" files = [ @@ -181,6 +189,7 @@ files = [ name = "charset-normalizer" version = "2.0.12" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "main" optional = false python-versions = ">=3.5.0" files = [ @@ -195,6 +204,7 @@ unicode-backport = ["unicodedata2"] name = "coverage" version = "7.2.3" description = "Code coverage measurement for Python" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -258,6 +268,7 @@ toml = ["tomli"] name = "cryptography" version = "41.0.4" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -303,6 +314,7 @@ test-randomorder = ["pytest-randomly"] name = "deprecated" version = "1.2.13" description = "Python @deprecated decorator to deprecate old python classes, functions or methods." +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -320,6 +332,7 @@ dev = ["PyTest", "PyTest (<5)", "PyTest-Cov", "PyTest-Cov (<2.6)", "bump2version name = "django" version = "4.1.13" description = "A high-level Python web framework that encourages rapid development and clean, pragmatic design." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -340,6 +353,7 @@ bcrypt = ["bcrypt"] name = "django-autocomplete-light" version = "3.9.4" description = "Fresh autocompletes for Django" +category = "main" optional = false python-versions = "*" files = [ @@ -359,6 +373,7 @@ tags = ["django-taggit"] name = "django-background-tasks-updated" version = "1.2.7" description = "Database backed asynchronous task queue" +category = "main" optional = false python-versions = "*" files = [ @@ -374,6 +389,7 @@ six = "*" name = "django-ckeditor" version = "6.5.1" description = "Django admin CKEditor integration." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -389,6 +405,7 @@ django-js-asset = ">=2.0" name = "django-cors-headers" version = "3.14.0" description = "django-cors-headers is a Django application for handling the server headers required for Cross-Origin Resource Sharing (CORS)." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -403,6 +420,7 @@ Django = ">=3.2" name = "django-debug-toolbar" version = "3.2.4" description = "A configurable set of panels that display various debug information about the current request/response." +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -418,6 +436,7 @@ sqlparse = ">=0.2.0" name = "django-js-asset" version = "2.0.0" description = "script tag with additional attributes for django.forms.Media" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -435,6 +454,7 @@ tests = ["coverage"] name = "django-oauth-toolkit" version = "2.2.0" description = "OAuth2 Provider for Django" +category = "main" optional = false python-versions = "*" files = [ @@ -452,6 +472,7 @@ requests = ">=2.13.0" name = "django-sass" version = "1.1.0" description = "The absolute simplest way to use Sass with Django. Pure Python, minimal dependencies, and no special configuration required!" +category = "main" optional = false python-versions = "*" files = [ @@ -467,6 +488,7 @@ libsass = "*" name = "django-storages" version = "1.12.3" description = "Support for many storage backends in Django" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -490,6 +512,7 @@ sftp = ["paramiko"] name = "djangorestframework" version = "3.14.0" description = "Web APIs for Django, made easy." +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -505,6 +528,7 @@ pytz = "*" name = "google-api-core" version = "1.34.0" description = "Google API client core library" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -529,6 +553,7 @@ grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0dev)"] name = "google-api-python-client" version = "1.12.8" description = "Google API Client Library for Python" +category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*" files = [ @@ -548,6 +573,7 @@ uritemplate = ">=3.0.0,<4dev" name = "google-auth" version = "1.32.0" description = "Google Authentication Library" +category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" files = [ @@ -571,6 +597,7 @@ reauth = ["pyu2f (>=0.1.5)"] name = "google-auth-httplib2" version = "0.1.0" description = "Google Authentication Library: httplib2 transport" +category = "main" optional = false python-versions = "*" files = [ @@ -587,6 +614,7 @@ six = "*" name = "google-cloud-core" version = "1.7.0" description = "Google Cloud API client core library" +category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" files = [ @@ -606,6 +634,7 @@ grpc = ["grpcio (>=1.8.2,<2.0dev)"] name = "google-cloud-storage" version = "1.42.3" description = "Google Cloud Storage API client library" +category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" files = [ @@ -626,6 +655,7 @@ six = "*" name = "google-cloud-workflows" version = "1.9.1" description = "Google Cloud Workflows API client library" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -634,10 +664,10 @@ files = [ ] [package.dependencies] -google-api-core = {version = ">=1.34.0,<2.0.dev0 || >=2.11.dev0,<3.0.0dev", extras = ["grpc"]} +google-api-core = {version = ">=1.34.0,<2.0.0 || >=2.11.0,<3.0.0dev", extras = ["grpc"]} proto-plus = [ - {version = ">=1.22.2,<2.0.0dev", markers = "python_version >= \"3.11\""}, {version = ">=1.22.0,<2.0.0dev", markers = "python_version < \"3.11\""}, + {version = ">=1.22.2,<2.0.0dev", markers = "python_version >= \"3.11\""}, ] protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<5.0.0dev" @@ -645,6 +675,7 @@ protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4 name = "google-crc32c" version = "1.1.2" description = "A python wrapper of the C library 'Google CRC32C'" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -689,6 +720,7 @@ testing = ["pytest"] name = "google-resumable-media" version = "1.3.1" description = "Utilities for Google Media Downloads and Resumable Uploads" +category = "main" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*" files = [ @@ -708,6 +740,7 @@ requests = ["requests (>=2.18.0,<3.0.0dev)"] name = "googleapis-common-protos" version = "1.58.0" description = "Common protobufs used in Google APIs" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -725,6 +758,7 @@ grpc = ["grpcio (>=1.44.0,<2.0.0dev)"] name = "grpcio" version = "1.53.0" description = "HTTP/2-based RPC framework" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -782,6 +816,7 @@ protobuf = ["grpcio-tools (>=1.53.0)"] name = "grpcio-status" version = "1.48.2" description = "Status proto mapping for gRPC" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -798,6 +833,7 @@ protobuf = ">=3.12.0" name = "hdn-research-environment" version = "2.3.8" description = "A Django app for supporting cloud-native research environments" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -813,6 +849,7 @@ google-cloud-workflows = ">=1.6.1" name = "html2text" version = "2018.1.9" description = "Turn HTML into equivalent Markdown-structured text." +category = "main" optional = false python-versions = "*" files = [ @@ -824,6 +861,7 @@ files = [ name = "httplib2" version = "0.19.1" description = "A comprehensive HTTP client library." +category = "main" optional = false python-versions = "*" files = [ @@ -838,6 +876,7 @@ pyparsing = ">=2.4.2,<3" name = "idna" version = "2.10" description = "Internationalized Domain Names in Applications (IDNA)" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -849,6 +888,7 @@ files = [ name = "jmespath" version = "1.0.1" description = "JSON Matching Expressions" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -860,6 +900,7 @@ files = [ name = "jwcrypto" version = "1.4.2" description = "Implementation of JOSE Web standards" +category = "main" optional = false python-versions = ">= 3.6" files = [ @@ -874,6 +915,7 @@ deprecated = "*" name = "libsass" version = "0.21.0" description = "Sass for Python: A straightforward binding of libsass for Python." +category = "main" optional = false python-versions = "*" files = [ @@ -896,6 +938,7 @@ six = "*" name = "oauthlib" version = "3.2.2" description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -912,6 +955,7 @@ signedtoken = ["cryptography (>=3.0.0)", "pyjwt (>=2.0.0,<3)"] name = "packaging" version = "20.9" description = "Core utilities for Python packages" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -926,6 +970,7 @@ pyparsing = ">=2.0.2" name = "pdfminer.six" version = "20211012" description = "PDF parser and analyzer" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -945,6 +990,7 @@ docs = ["sphinx", "sphinx-argparse"] name = "pillow" version = "10.0.1" description = "Python Imaging Library (Fork)" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1012,6 +1058,7 @@ tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "pa name = "proto-plus" version = "1.22.2" description = "Beautiful, Pythonic protocol buffers." +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1029,9 +1076,11 @@ testing = ["google-api-core[grpc] (>=1.31.5)"] name = "protobuf" version = "3.20.3" description = "Protocol Buffers" +category = "main" optional = false python-versions = ">=3.7" files = [ + {file = "protobuf-3.20.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e67f9af1b607eb3a89aafc9bc68a9d1172aae788b2445cb9fd781bd97531f1f1"}, {file = "protobuf-3.20.3-cp310-cp310-manylinux2014_aarch64.whl", hash = "sha256:f4bd856d702e5b0d96a00ec6b307b0f51c1982c2bf9c0052cf9019e9a544ba99"}, {file = "protobuf-3.20.3-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl", hash = "sha256:9aae4406ea63d825636cc11ffb34ad3379335803216ee3a856787bcf5ccc751e"}, {file = "protobuf-3.20.3-cp310-cp310-win32.whl", hash = "sha256:28545383d61f55b57cf4df63eebd9827754fd2dc25f80c5253f9184235db242c"}, @@ -1060,6 +1109,7 @@ files = [ name = "psycopg2" version = "2.9.5" description = "psycopg2 - Python-PostgreSQL Database Adapter" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1082,10 +1132,22 @@ files = [ name = "pyasn1" version = "0.4.8" description = "ASN.1 types and codecs" +category = "main" optional = false python-versions = "*" files = [ + {file = "pyasn1-0.4.8-py2.4.egg", hash = "sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3"}, + {file = "pyasn1-0.4.8-py2.5.egg", hash = "sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf"}, + {file = "pyasn1-0.4.8-py2.6.egg", hash = "sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00"}, + {file = "pyasn1-0.4.8-py2.7.egg", hash = "sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8"}, {file = "pyasn1-0.4.8-py2.py3-none-any.whl", hash = "sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d"}, + {file = "pyasn1-0.4.8-py3.1.egg", hash = "sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86"}, + {file = "pyasn1-0.4.8-py3.2.egg", hash = "sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7"}, + {file = "pyasn1-0.4.8-py3.3.egg", hash = "sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576"}, + {file = "pyasn1-0.4.8-py3.4.egg", hash = "sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12"}, + {file = "pyasn1-0.4.8-py3.5.egg", hash = "sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2"}, + {file = "pyasn1-0.4.8-py3.6.egg", hash = "sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359"}, + {file = "pyasn1-0.4.8-py3.7.egg", hash = "sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776"}, {file = "pyasn1-0.4.8.tar.gz", hash = "sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba"}, ] @@ -1093,11 +1155,23 @@ files = [ name = "pyasn1-modules" version = "0.2.8" description = "A collection of ASN.1-based protocols modules." +category = "main" optional = false python-versions = "*" files = [ {file = "pyasn1-modules-0.2.8.tar.gz", hash = "sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e"}, + {file = "pyasn1_modules-0.2.8-py2.4.egg", hash = "sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199"}, + {file = "pyasn1_modules-0.2.8-py2.5.egg", hash = "sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405"}, + {file = "pyasn1_modules-0.2.8-py2.6.egg", hash = "sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb"}, + {file = "pyasn1_modules-0.2.8-py2.7.egg", hash = "sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8"}, {file = "pyasn1_modules-0.2.8-py2.py3-none-any.whl", hash = "sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74"}, + {file = "pyasn1_modules-0.2.8-py3.1.egg", hash = "sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d"}, + {file = "pyasn1_modules-0.2.8-py3.2.egg", hash = "sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45"}, + {file = "pyasn1_modules-0.2.8-py3.3.egg", hash = "sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4"}, + {file = "pyasn1_modules-0.2.8-py3.4.egg", hash = "sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811"}, + {file = "pyasn1_modules-0.2.8-py3.5.egg", hash = "sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed"}, + {file = "pyasn1_modules-0.2.8-py3.6.egg", hash = "sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0"}, + {file = "pyasn1_modules-0.2.8-py3.7.egg", hash = "sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd"}, ] [package.dependencies] @@ -1107,6 +1181,7 @@ pyasn1 = ">=0.4.6,<0.5.0" name = "pycparser" version = "2.20" description = "C parser in Python" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1118,6 +1193,7 @@ files = [ name = "pyopenssl" version = "23.2.0" description = "Python wrapper module around the OpenSSL library" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1136,6 +1212,7 @@ test = ["flaky", "pretend", "pytest (>=3.0.1)"] name = "pyparsing" version = "2.4.7" description = "Python parsing module" +category = "main" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -1147,6 +1224,7 @@ files = [ name = "python-dateutil" version = "2.8.2" description = "Extensions to the standard Python datetime module" +category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ @@ -1161,6 +1239,7 @@ six = ">=1.5" name = "python-decouple" version = "3.4" description = "Strict separation of settings from code." +category = "main" optional = false python-versions = "*" files = [ @@ -1172,6 +1251,7 @@ files = [ name = "python-json-logger" version = "2.0.2" description = "A python library adding a json log formatter" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1183,6 +1263,7 @@ files = [ name = "pytz" version = "2022.1" description = "World timezone definitions, modern and historical" +category = "main" optional = false python-versions = "*" files = [ @@ -1194,6 +1275,7 @@ files = [ name = "requests" version = "2.31.0" description = "Python HTTP for Humans." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1215,6 +1297,7 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] name = "requests-mock" version = "1.9.3" description = "Mock out responses from the requests package" +category = "dev" optional = false python-versions = "*" files = [ @@ -1234,11 +1317,13 @@ test = ["fixtures", "mock", "purl", "pytest", "sphinx", "testrepository (>=0.0.1 name = "requests-oauthlib" version = "1.3.0" description = "OAuthlib authentication support for Requests." +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ {file = "requests-oauthlib-1.3.0.tar.gz", hash = "sha256:b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a"}, {file = "requests_oauthlib-1.3.0-py2.py3-none-any.whl", hash = "sha256:7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d"}, + {file = "requests_oauthlib-1.3.0-py3.7.egg", hash = "sha256:fa6c47b933f01060936d87ae9327fead68768b69c6c9ea2109c48be30f2d4dbc"}, ] [package.dependencies] @@ -1252,6 +1337,7 @@ rsa = ["oauthlib[signedtoken] (>=3.0.0)"] name = "rsa" version = "4.7.2" description = "Pure-Python RSA implementation" +category = "main" optional = false python-versions = ">=3.5, <4" files = [ @@ -1266,6 +1352,7 @@ pyasn1 = ">=0.1.3" name = "s3transfer" version = "0.6.2" description = "An Amazon S3 Transfer Manager" +category = "main" optional = false python-versions = ">= 3.7" files = [ @@ -1283,6 +1370,7 @@ crt = ["botocore[crt] (>=1.20.29,<2.0a.0)"] name = "selenium" version = "3.141.0" description = "Python bindings for Selenium" +category = "dev" optional = false python-versions = "*" files = [ @@ -1297,6 +1385,7 @@ urllib3 = "*" name = "sentry-sdk" version = "1.14.0" description = "Python client for Sentry (https://sentry.io)" +category = "main" optional = false python-versions = "*" files = [ @@ -1335,6 +1424,7 @@ tornado = ["tornado (>=5)"] name = "setuptools" version = "65.5.1" description = "Easily download, build, install, upgrade, and uninstall Python packages" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1351,6 +1441,7 @@ testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs ( name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -1362,6 +1453,7 @@ files = [ name = "sqlparse" version = "0.4.4" description = "A non-validating SQL parser." +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1378,6 +1470,7 @@ test = ["pytest", "pytest-cov"] name = "tzdata" version = "2022.7" description = "Provider of IANA time zone data" +category = "main" optional = false python-versions = ">=2" files = [ @@ -1389,6 +1482,7 @@ files = [ name = "uritemplate" version = "3.0.1" description = "URI templates" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1400,6 +1494,7 @@ files = [ name = "urllib3" version = "1.26.18" description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -1416,6 +1511,7 @@ socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] name = "uwsgi" version = "2.0.22" description = "The uWSGI server" +category = "main" optional = false python-versions = "*" files = [ @@ -1426,6 +1522,7 @@ files = [ name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" +category = "main" optional = false python-versions = "*" files = [ @@ -1437,6 +1534,7 @@ files = [ name = "wrapt" version = "1.15.0" description = "Module for decorators, wrappers and monkey patching." +category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" files = [ @@ -1521,6 +1619,7 @@ files = [ name = "zxcvbn" version = "4.4.28" description = "" +category = "main" optional = false python-versions = "*" files = [ diff --git a/requirements.txt b/requirements.txt index 83dbd6ea5b..f759a9472d 100644 --- a/requirements.txt +++ b/requirements.txt @@ -192,9 +192,9 @@ django-sass==1.1.0 ; python_version >= "3.9" and python_version < "4.0" \ django-storages[google]==1.12.3 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:204a99f218b747c46edbfeeb1310d357f83f90fa6a6024d8d0a3f422570cee84 \ --hash=sha256:a475edb2f0f04c4f7e548919a751ecd50117270833956ed5bd585c0575d2a5e7 -django==4.1.10 ; python_version >= "3.9" and python_version < "4.0" \ - --hash=sha256:26d0260c2fb8121009e62ffc548b2398dea2522b6454208a852fb0ef264c206c \ - --hash=sha256:56343019a9fd839e2e5bf203daf45f25af79d5bffa4c71d56eae4f4404d82ade +django==4.1.13 ; python_version >= "3.9" and python_version < "4.0" \ + --hash=sha256:04ab3f6f46d084a0bba5a2c9a93a3a2eb3fe81589512367a75f79ee8acf790ce \ + --hash=sha256:94a3f471e833c8f124ee7a2de11e92f633991d975e3fa5bdd91e8abd66426318 djangorestframework==3.14.0 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:579a333e6256b09489cbe0a067e66abe55c6595d8926be6b99423786334350c8 \ --hash=sha256:eb63f58c9f218e1a7d064d17a70751f528ed4e1d35547fdade9aaf4cd103fd08 @@ -401,7 +401,7 @@ pillow==10.0.1 ; python_version >= "3.9" and python_version < "4.0" \ proto-plus==1.22.2 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:0e8cda3d5a634d9895b75c573c9352c16486cb75deb0e078b5fda34db4243165 \ --hash=sha256:de34e52d6c9c6fcd704192f09767cb561bb4ee64e70eede20b0834d841f0be4d -protobuf==3.20.3 ; python_version >= "3.9" and python_version < "4.0" \ +protobuf==3.20.3 ; python_version < "4.0" and python_version >= "3.9" \ --hash=sha256:03038ac1cfbc41aa21f6afcbcd357281d7521b4157926f30ebecc8d4ea59dcb7 \ --hash=sha256:28545383d61f55b57cf4df63eebd9827754fd2dc25f80c5253f9184235db242c \ --hash=sha256:2e3427429c9cffebf259491be0af70189607f365c2f41c7c3764af6f337105f2 \ @@ -422,6 +422,7 @@ protobuf==3.20.3 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:daa564862dd0d39c00f8086f88700fdbe8bc717e993a21e90711acfed02f2402 \ --hash=sha256:de78575669dddf6099a8a0f46a27e82a1783c557ccc38ee620ed8cc96d3be7d7 \ --hash=sha256:e64857f395505ebf3d2569935506ae0dfc4a15cb80dc25261176c784662cdcc4 \ + --hash=sha256:e67f9af1b607eb3a89aafc9bc68a9d1172aae788b2445cb9fd781bd97531f1f1 \ --hash=sha256:f4bd856d702e5b0d96a00ec6b307b0f51c1982c2bf9c0052cf9019e9a544ba99 \ --hash=sha256:f4c42102bc82a51108e449cbb32b19b180022941c727bac0cfd50170341f16ee psycopg2==2.9.5 ; python_version >= "3.9" and python_version < "4.0" \ @@ -439,11 +440,33 @@ psycopg2==2.9.5 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:f5b6320dbc3cf6cfb9f25308286f9f7ab464e65cfb105b64cc9c52831748ced2 \ --hash=sha256:fc04dd5189b90d825509caa510f20d1d504761e78b8dfb95a0ede180f71d50e5 pyasn1-modules==0.2.8 ; python_version >= "3.9" and python_version < "4.0" \ + --hash=sha256:0845a5582f6a02bb3e1bde9ecfc4bfcae6ec3210dd270522fee602365430c3f8 \ + --hash=sha256:0fe1b68d1e486a1ed5473f1302bd991c1611d319bba158e98b106ff86e1d7199 \ + --hash=sha256:15b7c67fabc7fc240d87fb9aabf999cf82311a6d6fb2c70d00d3d0604878c811 \ + --hash=sha256:426edb7a5e8879f1ec54a1864f16b882c2837bfd06eee62f2c982315ee2473ed \ + --hash=sha256:65cebbaffc913f4fe9e4808735c95ea22d7a7775646ab690518c056784bc21b4 \ --hash=sha256:905f84c712230b2c592c19470d3ca8d552de726050d1d1716282a1f6146be65e \ - --hash=sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74 + --hash=sha256:a50b808ffeb97cb3601dd25981f6b016cbb3d31fbf57a8b8a87428e6158d0c74 \ + --hash=sha256:a99324196732f53093a84c4369c996713eb8c89d360a496b599fb1a9c47fc3eb \ + --hash=sha256:b80486a6c77252ea3a3e9b1e360bc9cf28eaac41263d173c032581ad2f20fe45 \ + --hash=sha256:c29a5e5cc7a3f05926aff34e097e84f8589cd790ce0ed41b67aed6857b26aafd \ + --hash=sha256:cbac4bc38d117f2a49aeedec4407d23e8866ea4ac27ff2cf7fb3e5b570df19e0 \ + --hash=sha256:f39edd8c4ecaa4556e989147ebf219227e2cd2e8a43c7e7fcb1f1c18c5fd6a3d \ + --hash=sha256:fe0644d9ab041506b62782e92b06b8c68cca799e1a9636ec398675459e031405 pyasn1==0.4.8 ; python_version >= "3.9" and python_version < "4.0" \ + --hash=sha256:014c0e9976956a08139dc0712ae195324a75e142284d5f87f1a87ee1b068a359 \ + --hash=sha256:03840c999ba71680a131cfaee6fab142e1ed9bbd9c693e285cc6aca0d555e576 \ + --hash=sha256:0458773cfe65b153891ac249bcf1b5f8f320b7c2ce462151f8fa74de8934becf \ + --hash=sha256:08c3c53b75eaa48d71cf8c710312316392ed40899cb34710d092e96745a358b7 \ --hash=sha256:39c7e2ec30515947ff4e87fb6f456dfc6e84857d34be479c9d4a4ba4bf46aa5d \ - --hash=sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba + --hash=sha256:5c9414dcfede6e441f7e8f81b43b34e834731003427e5b09e4e00e3172a10f00 \ + --hash=sha256:6e7545f1a61025a4e58bb336952c5061697da694db1cae97b116e9c46abcf7c8 \ + --hash=sha256:78fa6da68ed2727915c4767bb386ab32cdba863caa7dbe473eaae45f9959da86 \ + --hash=sha256:7ab8a544af125fb704feadb008c99a88805126fb525280b2270bb25cc1d78a12 \ + --hash=sha256:99fcc3c8d804d1bc6d9a099921e39d827026409a58f2a720dcdb89374ea0c776 \ + --hash=sha256:aef77c9fb94a3ac588e87841208bdec464471d9871bd5050a287cc9a475cd0ba \ + --hash=sha256:e89bf84b5437b532b0803ba5c9a5e054d21fec423a89952a74f87fa2c9b7bce2 \ + --hash=sha256:fec3e9d8e36808a28efb59b489e4528c10ad0f480e57dcc32b4de5c9d8c9fdf3 pycparser==2.20 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:2d475327684562c3a96cc71adf7dc8c4f0565175cf86b6d7a404ff4c771f15f0 \ --hash=sha256:7582ad22678f0fcd81102833f60ef8d0e57288b6b5fb00323d101be910e35705 @@ -470,7 +493,8 @@ requests-mock==1.9.3 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:8d72abe54546c1fc9696fa1516672f1031d72a55a1d66c85184f972a24ba0eba requests-oauthlib==1.3.0 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:7f71572defaecd16372f9006f33c2ec8c077c3cfa6f5911a9a90202beb513f3d \ - --hash=sha256:b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a + --hash=sha256:b4261601a71fd721a8bd6d7aa1cc1d6a8a93b4a9f5e96626f8e4d91e8beeaa6a \ + --hash=sha256:fa6c47b933f01060936d87ae9327fead68768b69c6c9ea2109c48be30f2d4dbc requests==2.31.0 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f \ --hash=sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1 From 0ec884d365504ae4498d0a67b107f9898376649c Mon Sep 17 00:00:00 2001 From: Amit Upreti Date: Wed, 8 Mar 2023 11:55:38 -0500 Subject: [PATCH 003/181] display data for the inactive participants --- .../templates/events/event_entries.html | 97 +++++++++++++------ .../templatetags/participation_status.py | 10 ++ 2 files changed, 77 insertions(+), 30 deletions(-) diff --git a/physionet-django/events/templates/events/event_entries.html b/physionet-django/events/templates/events/event_entries.html index 60d0135bd0..6b49590669 100644 --- a/physionet-django/events/templates/events/event_entries.html +++ b/physionet-django/events/templates/events/event_entries.html @@ -1,30 +1,67 @@ -
- - - - - - - - - - - - {% for participant in event.participants.all %} - - - - - - - - {% endfor %} - -
UsernameFull nameEmailCredentialedCohost
{{ participant.user.username }}{{ participant.user.get_full_name }}{{ participant.user.email }}{{ participant.user.get_credentialing_status }} - {% if participant.is_cohost %} - - {% else %} - - {% endif %} -
-
+{% load participation_status %} + + diff --git a/physionet-django/events/templatetags/participation_status.py b/physionet-django/events/templatetags/participation_status.py index b1e4d3b91b..9f1e8211c9 100644 --- a/physionet-django/events/templatetags/participation_status.py +++ b/physionet-django/events/templatetags/participation_status.py @@ -23,3 +23,13 @@ def is_on_waiting_list(user, event): @register.filter(name='has_access_to_event_dataset') def has_access_to_event_dataset(user, dataset): return has_access_to_event_dataset_func(user, dataset) + + +@register.filter(name='get_inactive_applications') +def get_inactive_applications(event): + return event.applications.filter( + status__in=[ + EventApplication.EventApplicationStatus.NOT_APPROVED, + EventApplication.EventApplicationStatus.WITHDRAWN + ] + ) From 937f55bfa9f0b6fffb9a72fba68bae7a324c230d Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 4 Oct 2023 16:26:44 -0400 Subject: [PATCH 004/181] Implemented the individual tabs (Karol's idea), both in console and the main events page. --- .../templates/console/event_management.html | 99 ++++++++++++++++++- .../templates/events/event_entries.html | 32 ------ .../events/templates/events/event_home.html | 44 ++++++++- .../events/event_pending_applications.html | 31 ++++++ .../events/event_rejected_applications.html | 31 ++++++ .../events/event_withdrawn_applications.html | 31 ++++++ .../templatetags/participation_status.py | 21 ++++ 7 files changed, 254 insertions(+), 35 deletions(-) create mode 100644 physionet-django/events/templates/events/event_pending_applications.html create mode 100644 physionet-django/events/templates/events/event_rejected_applications.html create mode 100644 physionet-django/events/templates/events/event_withdrawn_applications.html diff --git a/physionet-django/console/templates/console/event_management.html b/physionet-django/console/templates/console/event_management.html index 1ec760e079..525a57df1f 100644 --- a/physionet-django/console/templates/console/event_management.html +++ b/physionet-django/console/templates/console/event_management.html @@ -46,11 +46,51 @@

{{ event.title }}

+ data-target="#participants">View
+
+
Pending Applications:
+
+
+
{{ event.participants.count }}
+
+ +
+
+
+
+
+
Rejected Applications:
+
+
+
{{ event.participants.count }}
+
+ +
+
+
+
+
+
Withdrawn Applications:
+
+
+
{{ event.participants.count }}
+
+ +
+
+
+
+
Description:
{{ event.description }}
@@ -59,7 +99,7 @@

{{ event.title }}

{% include 'console/event_management_manage_dataset.html' %} + + + + {% endblock %} diff --git a/physionet-django/events/templates/events/event_entries.html b/physionet-django/events/templates/events/event_entries.html index 6b49590669..3fc91e2ce1 100644 --- a/physionet-django/events/templates/events/event_entries.html +++ b/physionet-django/events/templates/events/event_entries.html @@ -1,10 +1,4 @@ {% load participation_status %} - diff --git a/physionet-django/events/templates/events/event_home.html b/physionet-django/events/templates/events/event_home.html index bd62b980eb..e0e5513e9b 100644 --- a/physionet-django/events/templates/events/event_home.html +++ b/physionet-django/events/templates/events/event_home.html @@ -86,6 +86,9 @@

{{ event.title }}

Share the class code: {{ url_prefix }}{% url 'event_detail' event.slug %}

+ + + Edit Event {% endif %} @@ -114,7 +117,46 @@ - {% endfor %} + + + + {% endfor %} {% endif %} diff --git a/physionet-django/events/templates/events/event_pending_applications.html b/physionet-django/events/templates/events/event_pending_applications.html new file mode 100644 index 0000000000..651be2d6af --- /dev/null +++ b/physionet-django/events/templates/events/event_pending_applications.html @@ -0,0 +1,31 @@ +{% load participation_status %} + \ No newline at end of file diff --git a/physionet-django/events/templates/events/event_rejected_applications.html b/physionet-django/events/templates/events/event_rejected_applications.html new file mode 100644 index 0000000000..66168ece86 --- /dev/null +++ b/physionet-django/events/templates/events/event_rejected_applications.html @@ -0,0 +1,31 @@ +{% load participation_status %} + \ No newline at end of file diff --git a/physionet-django/events/templates/events/event_withdrawn_applications.html b/physionet-django/events/templates/events/event_withdrawn_applications.html new file mode 100644 index 0000000000..2769601437 --- /dev/null +++ b/physionet-django/events/templates/events/event_withdrawn_applications.html @@ -0,0 +1,31 @@ +{% load participation_status %} + \ No newline at end of file diff --git a/physionet-django/events/templatetags/participation_status.py b/physionet-django/events/templatetags/participation_status.py index 9f1e8211c9..67c2551c91 100644 --- a/physionet-django/events/templatetags/participation_status.py +++ b/physionet-django/events/templatetags/participation_status.py @@ -33,3 +33,24 @@ def get_inactive_applications(event): EventApplication.EventApplicationStatus.WITHDRAWN ] ) + + +@register.filter(name='get_pending_applications') +def get_pending_applications(event): + return event.applications.filter( + status__in=[EventApplication.EventApplicationStatus.WAITLISTED] + ) + + +@register.filter(name='get_withdrawn_applications') +def get_withdrawn_applications(event): + return event.applications.filter( + status__in=[EventApplication.EventApplicationStatus.WITHDRAWN] + ) + + +@register.filter(name='get_rejected_applications') +def get_rejected_applications(event): + return event.applications.filter( + status__in=[EventApplication.EventApplicationStatus.NOT_APPROVED] + ) From 2c7677bc3480a2bab1c47c89890acb2bbbe94cb7 Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 1 Nov 2023 17:11:01 -0400 Subject: [PATCH 005/181] Rebased onto dev --- .../templates/console/event_management.html | 125 +++--------------- physionet-django/console/views.py | 43 +++++- .../templates/events/event_applications.html | 36 +++++ .../events/templates/events/event_home.html | 70 +++------- .../events/event_pending_applications.html | 31 ----- .../events/event_rejected_applications.html | 31 ----- .../events/event_withdrawn_applications.html | 31 ----- .../templatetags/participation_status.py | 32 +---- physionet-django/events/views.py | 39 ++++++ 9 files changed, 159 insertions(+), 279 deletions(-) create mode 100644 physionet-django/events/templates/events/event_applications.html delete mode 100644 physionet-django/events/templates/events/event_pending_applications.html delete mode 100644 physionet-django/events/templates/events/event_rejected_applications.html delete mode 100644 physionet-django/events/templates/events/event_withdrawn_applications.html diff --git a/physionet-django/console/templates/console/event_management.html b/physionet-django/console/templates/console/event_management.html index 525a57df1f..cb525d09f6 100644 --- a/physionet-django/console/templates/console/event_management.html +++ b/physionet-django/console/templates/console/event_management.html @@ -38,137 +38,54 @@

{{ event.title }}

{% endif %} + + {% for option in status_options %}
-
Total participants:
-
-
-
{{ event.participants.count }}
-
- -
-
-
-
-
-
Pending Applications:
-
-
-
{{ event.participants.count }}
-
- -
-
-
-
-
-
Rejected Applications:
-
-
-
{{ event.participants.count }}
-
- -
-
-
-
-
-
Withdrawn Applications:
+
{{ option.title }}
-
{{ event.participants.count }}
+
{{ option.count }}
+ data-target="#{{ option.id }}">View
+ {% endfor %}
Description:
{{ event.description }}
+ {% include 'console/event_management_manage_dataset.html' %} + + {% for option in status_options %} - - - + {% endfor %} {% endblock %} diff --git a/physionet-django/console/views.py b/physionet-django/console/views.py index 12991c989d..0567e0fa5d 100644 --- a/physionet-django/console/views.py +++ b/physionet-django/console/views.py @@ -5,6 +5,7 @@ from collections import OrderedDict from datetime import datetime from itertools import chain +import stat from statistics import StatisticsError, median import notification.utility as notification @@ -28,7 +29,7 @@ from django.utils import timezone from django.core.exceptions import PermissionDenied from events.forms import EventAgreementForm, EventDatasetForm -from events.models import Event, EventAgreement, EventDataset +from events.models import Event, EventAgreement, EventDataset, EventApplication from notification.models import News from physionet.forms import set_saved_fields_cookie from physionet.middleware.maintenance import ServiceUnavailable @@ -3011,7 +3012,42 @@ def event_management(request, event_slug): else: event_dataset_form = EventDatasetForm() + participants = selected_event.participants.all() + pending_applications = selected_event.applications.filter( + status__in=[EventApplication.EventApplicationStatus.WAITLISTED]) + rejected_applications = selected_event.applications.filter( + status__in=[EventApplication.EventApplicationStatus.NOT_APPROVED]) + withdrawn_applications = selected_event.applications.filter( + status__in=[EventApplication.EventApplicationStatus.WITHDRAWN]) + event_datasets = selected_event.datasets.filter(is_active=True) + status_options = [ + { + 'id': 'participants', + 'title': 'Total participants:', + 'count': participants.count(), + 'objects': participants, + }, + { + 'id': 'pending_applications', + 'title': 'Pending applications:', + 'count': pending_applications.count(), + 'objects': pending_applications, + }, + { + 'id': 'rejected_applications', + 'title': 'Rejected applications:', + 'count': rejected_applications.count(), + 'objects': rejected_applications, + }, + { + 'id': 'withdrawn_applications', + 'title': 'Withdrawn applications:', + 'count': withdrawn_applications.count(), + 'objects': withdrawn_applications, + }, + ] + return render( request, 'console/event_management.html', @@ -3019,6 +3055,11 @@ def event_management(request, event_slug): 'event': selected_event, 'event_dataset_form': event_dataset_form, 'event_datasets': event_datasets, + 'status_options': status_options, + 'participants': participants, + 'pending_applications': pending_applications, + 'rejected_applications': rejected_applications, + 'withdrawn_applications': withdrawn_applications, }) diff --git a/physionet-django/events/templates/events/event_applications.html b/physionet-django/events/templates/events/event_applications.html new file mode 100644 index 0000000000..52a5cc3ec9 --- /dev/null +++ b/physionet-django/events/templates/events/event_applications.html @@ -0,0 +1,36 @@ +{% load participation_status %} + diff --git a/physionet-django/events/templates/events/event_home.html b/physionet-django/events/templates/events/event_home.html index e0e5513e9b..962c5bcfa3 100644 --- a/physionet-django/events/templates/events/event_home.html +++ b/physionet-django/events/templates/events/event_home.html @@ -85,10 +85,10 @@

{{ event.title }}

{% if event.host == user %} Share the class code: {{ url_prefix }}{% url 'event_detail' event.slug %}

- - - - + + + + Edit Event {% endif %} @@ -103,61 +103,25 @@

{{ event.title }}


{% if events_active %} - {% for event in events_active %} - - {% for option in status_options %} + {% for info in applicant_info %}
-
{{ option.title }}
+
{{ info.title }}
-
{{ option.count }}
+
{{ info.count }}
+ data-target="#{{ info.id }}">View
@@ -64,17 +64,17 @@

{{ event.title }}

{% include 'console/event_management_manage_dataset.html' %} - {% for option in status_options %} + {% for info in applicant_info %} + + + +{% endblock %} diff --git a/physionet-django/console/urls.py b/physionet-django/console/urls.py index d43ca3ee01..be7de01fbb 100644 --- a/physionet-django/console/urls.py +++ b/physionet-django/console/urls.py @@ -1,4 +1,5 @@ from console import views +from training import views as training_views from django.urls import path urlpatterns = [ @@ -92,6 +93,8 @@ # guidelines path('guidelines/review/', views.guidelines_review, name='guidelines_review'), + path('guidelines/course/', views.guidelines_course, name='guidelines_course'), + path('user-autocomplete/', views.UserAutocomplete.as_view(), name='user-autocomplete'), path('project-autocomplete/', views.ProjectAutocomplete.as_view(), name='project-autocomplete'), @@ -154,6 +157,10 @@ path('event_agreements//delete/', views.event_agreement_delete, name='event_agreement_delete'), path('event_agreements//new-version/', views.event_agreement_new_version, name='event_agreement_new_version'), + + # Courses/On Platform Training + path('courses/', training_views.courses, name='courses'), + path('courses//download/', training_views.download_course, name='download_course'), ] # Parameters for testing URLs (see physionet/test_urls.py) diff --git a/physionet-django/console/views.py b/physionet-django/console/views.py index b5c470e092..acba23b44c 100644 --- a/physionet-django/console/views.py +++ b/physionet-django/console/views.py @@ -2021,7 +2021,25 @@ def guidelines_review(request): """ Guidelines for reviewers. """ - return render(request, 'console/guidelines_review.html') + return render(request, 'console/guidelines_review.html', + {'guidelines_review_nav': True}) + +@permission_required('training.can_view_course_guidelines', raise_exception=True) +def guidelines_course(request): + """ + Guidelines for course creators. + """ + return render(request, 'console/guidelines_course.html', + {'guidelines_course_nav': True}) + + +@permission_required('training.can_view_course_guidelines', raise_exception=True) +def guidelines_course(request): + """ + Guidelines for course creators. + """ + return render(request, 'console/guidelines_course.html', + {'guidelines_course_nav': True}) @console_permission_required('project.can_view_stats') diff --git a/physionet-django/static/sample/create-course-schema.json b/physionet-django/static/sample/create-course-schema.json index 740bf5fe0d..c2f370c2c9 100644 --- a/physionet-django/static/sample/create-course-schema.json +++ b/physionet-django/static/sample/create-course-schema.json @@ -2,31 +2,31 @@ "name": "string", "description": "string", "valid_duration": "string", - "required_field": "integer", - "home_page": "string", - "courses": { - "version": "float", - "modules": [ - { - "contents": [ - { - "body": "string", - "order": "integer" - } - ], - "quizzes": [ - { - "question": "string", - "order": "integer", - "choices": [ - { - "body": "string", - "is_correct": "boolean" - } - ] - } - ] - } - ] - } + "courses": [ + { + "version": "float", + "modules": [ + { + "contents": [ + { + "body": "string", + "order": "integer" + } + ], + "quizzes": [ + { + "question": "string", + "order": "integer", + "choices": [ + { + "body": "string", + "is_correct": "boolean" + } + ] + } + ] + } + ] + } + ] } diff --git a/physionet-django/static/sample/example-course-create.json b/physionet-django/static/sample/example-course-create.json index 9f63e596c8..6d6e95e958 100644 --- a/physionet-django/static/sample/example-course-create.json +++ b/physionet-django/static/sample/example-course-create.json @@ -2,46 +2,46 @@ "name": "Course 1", "description": "

Test content description", "valid_duration": "1095 00:00:00", - "required_field": 2, - "home_page": "http://localhost:8000/training/", - "courses": { - "version": "1.0", - "modules": [ - { - "name": "Module 1", - "description": "

Module description", - "order": 0, - "contents": [ - { - "body": "

Hello This is a test

Test content1

", - "order": 0 - } - ], - "quizzes": [ - { - "question": "What is the correct answer(choice1)?", - "order": 1, - "choices": [ - { - "body": "I am a choice1", - "is_correct": true - }, - { - "body": "I am a choice2", - "is_correct": false - }, - { - "body": "I am a choice3", - "is_correct": false - }, - { - "body": "I am a choice4", - "is_correct": false - } - ] - } - ] - } - ] - } + "courses": [ + { + "version": 1.0, + "modules": [ + { + "name": "Module 1", + "description": "

Module description", + "order": 0, + "contents": [ + { + "body": "

Hello This is a test

Test content1

", + "order": 0 + } + ], + "quizzes": [ + { + "question": "What is the correct answer(choice1)?", + "order": 1, + "choices": [ + { + "body": "I am a choice1", + "is_correct": true + }, + { + "body": "I am a choice2", + "is_correct": false + }, + { + "body": "I am a choice3", + "is_correct": false + }, + { + "body": "I am a choice4", + "is_correct": false + } + ] + } + ] + } + ] + } + ] } diff --git a/physionet-django/static/sample/example-course-update.json b/physionet-django/static/sample/example-course-update.json index eb1fa159d4..cb3a3fc014 100644 --- a/physionet-django/static/sample/example-course-update.json +++ b/physionet-django/static/sample/example-course-update.json @@ -1,47 +1,47 @@ { - "name":"Course 1 Updated", - "description":"

Test content description Updated", + "name": "Course 1 Updated", + "description": "

Test content description Updated", "valid_duration": "1095 00:00:00", - "required_field": 2, - "home_page": "http://localhost:8000/training/", - "courses": { - "version": "1.1", - "modules": [ - { - "name": "Module 1 Updated", - "description": "

Test content description Updated", - "order": 0, - "contents": [ - { - "body": "

Hello This is a test

Test content1 updated

", - "order": 0 - } - ], - "quizzes": [ - { - "question": "What is the correct answer(choice2)?", - "order": 1, - "choices": [ - { - "body": "I am a choice1", - "is_correct": false - }, - { - "body": "I am a choice2", - "is_correct": true - }, - { - "body": "I am a choice3", - "is_correct": false - }, - { - "body": "I am a choice4", - "is_correct": false - } - ] - } - ] - } - ] - } + "courses": [ + { + "version": 1.1, + "modules": [ + { + "name": "Module 1 Updated", + "description": "

Test content description Updated", + "order": 0, + "contents": [ + { + "body": "

Hello This is a test

Test content1 updated

", + "order": 0 + } + ], + "quizzes": [ + { + "question": "What is the correct answer(choice2)?", + "order": 1, + "choices": [ + { + "body": "I am a choice1", + "is_correct": false + }, + { + "body": "I am a choice2", + "is_correct": true + }, + { + "body": "I am a choice3", + "is_correct": false + }, + { + "body": "I am a choice4", + "is_correct": false + } + ] + } + ] + } + ] + } + ] } diff --git a/physionet-django/training/models.py b/physionet-django/training/models.py index c5a7f9b3c1..207cbc269a 100644 --- a/physionet-django/training/models.py +++ b/physionet-django/training/models.py @@ -11,6 +11,9 @@ class Course(models.Model): class Meta: default_permissions = ('change',) unique_together = ('training_type', 'version') + permissions = [ + ('can_view_course_guidelines', 'Can view course guidelines'), + ] def __str__(self): return f'{self.training_type} v{self.version}' diff --git a/physionet-django/training/serializers.py b/physionet-django/training/serializers.py index 3169be745a..0d1bf1b466 100644 --- a/physionet-django/training/serializers.py +++ b/physionet-django/training/serializers.py @@ -5,6 +5,7 @@ from training.models import Course, Module, Quiz, QuizChoice, ContentBlock from user.models import Training, TrainingType +from user.enums import RequiredField from notification.utility import notify_users_of_training_expiry @@ -15,7 +16,7 @@ class QuizChoiceSerializer(serializers.ModelSerializer): class Meta: model = QuizChoice - fields = "__all__" + fields = ['body', 'is_correct'] read_only_fields = ['id', 'quiz'] @@ -24,7 +25,7 @@ class QuizSerializer(serializers.ModelSerializer): class Meta: model = Quiz - fields = "__all__" + fields = ['question', 'order', 'choices'] read_only_fields = ['id', 'module'] @@ -32,7 +33,7 @@ class ContentBlockSerializer(serializers.ModelSerializer): class Meta: model = ContentBlock - fields = "__all__" + fields = ['body', 'order'] read_only_fields = ['id', 'module'] @@ -42,7 +43,7 @@ class ModuleSerializer(serializers.ModelSerializer): class Meta: model = Module - fields = "__all__" + fields = ['name', 'description', 'order', 'contents', 'quizzes'] read_only_fields = ['id', 'course'] @@ -51,16 +52,16 @@ class CourseSerializer(serializers.ModelSerializer): class Meta: model = Course - fields = "__all__" + fields = ['version', 'modules'] read_only_fields = ['id', 'training_type'] class TrainingTypeSerializer(serializers.ModelSerializer): - courses = CourseSerializer() + courses = CourseSerializer(many=True) class Meta: model = TrainingType - fields = "__all__" + fields = ['name', 'description', 'valid_duration', 'courses'] read_only_fields = ['id'] def update_course_for_major_version_change(self, instance): @@ -84,7 +85,7 @@ def update_course_for_major_version_change(self, instance): def update(self, instance, validated_data): with transaction.atomic(): - course = validated_data.pop('courses') + course = validated_data.pop('courses')[0] modules = course.pop('modules') course['training_type'] = instance @@ -130,9 +131,10 @@ def update(self, instance, validated_data): def create(self, validated_data): with transaction.atomic(): - course = validated_data.pop('courses') + course = validated_data.pop('courses')[0] modules = course.pop('modules') + validated_data['required_field'] = RequiredField.PLATFORM course['training_type'] = instance = TrainingType.objects.create(**validated_data) course_instance = Course.objects.create(**course) diff --git a/physionet-django/training/urls.py b/physionet-django/training/urls.py index b7d63511ad..1e3749899d 100644 --- a/physionet-django/training/urls.py +++ b/physionet-django/training/urls.py @@ -1,3 +1,7 @@ from django.urls import path from training import views + +urlpatterns = [ + +] diff --git a/physionet-django/training/views.py b/physionet-django/training/views.py index e69de29bb2..a8c74547d9 100644 --- a/physionet-django/training/views.py +++ b/physionet-django/training/views.py @@ -0,0 +1,71 @@ +import json +import operator +from itertools import chain + +from django.contrib import messages +from django.contrib.auth.decorators import login_required, permission_required +from django.db import transaction +from django.db.models import Prefetch +from django.http import JsonResponse +from django.shortcuts import get_object_or_404, redirect, render +from django.utils import timezone +from django.utils.crypto import get_random_string + +from rest_framework.parsers import JSONParser + +from user.models import Training, TrainingType, TrainingQuestion, RequiredField +from user.enums import TrainingStatus + +from training.models import Course, Quiz, QuizChoice, ContentBlock +from training.models import CourseProgress, ModuleProgress, CompletedContent, CompletedQuiz +from training.serializers import TrainingTypeSerializer + + +@permission_required('training.change_course', raise_exception=True) +def courses(request): + if request.POST: + + if request.POST.get('training_id') != "-1": + training_type = get_object_or_404(TrainingType, pk=request.POST.get('training_id')) + else: + training_type = None + + json_file = request.FILES.get("json_file", "") + + if not json_file.name.endswith('.json'): + messages.warning(request, 'File is not of JSON type') + return redirect("courses") + file_data = JSONParser().parse(json_file.file) + serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + if serializer.is_valid(raise_exception=False): + serializer.save() + messages.success(request, 'Course created successfully.') + else: + messages.error(request, serializer.errors) + + return redirect("courses") + + training_types = TrainingType.objects.filter(required_field=RequiredField.PLATFORM) + return render( + request, + 'console/training_type/index.html', + { + 'training_types': training_types, + 'training_type_nav': True, + }) + + +@permission_required('training.change_course', raise_exception=True) +def download_course(request, pk, version): + training_type = get_object_or_404(TrainingType, pk=pk) + version = float(version) + if training_type.required_field != RequiredField.PLATFORM: + messages.error(request, 'Only onplatform course can be downloaded') + return redirect('courses') + + serializer = TrainingTypeSerializer(training_type) + response_data = serializer.data + response_data['courses'] = list(filter(lambda x: x['version'] == version, response_data['courses'])) + response = JsonResponse(response_data, safe=False, json_dumps_params={'indent': 2}) + response['Content-Disposition'] = f'attachment; filename={training_type.name}--version-{version}.json' + return response From e3c382b2fa69e79ec5aa08caa8226de9eedffece Mon Sep 17 00:00:00 2001 From: Amit Upreti Date: Mon, 10 Apr 2023 11:50:02 -0400 Subject: [PATCH 111/181] add migration file --- .../training/migrations/0001_initial.py | 128 ++++++++++++++++++ .../0056_alter_trainingtype_required_field.py | 21 +++ 2 files changed, 149 insertions(+) create mode 100644 physionet-django/training/migrations/0001_initial.py create mode 100644 physionet-django/user/migrations/0056_alter_trainingtype_required_field.py diff --git a/physionet-django/training/migrations/0001_initial.py b/physionet-django/training/migrations/0001_initial.py new file mode 100644 index 0000000000..a5e502ead4 --- /dev/null +++ b/physionet-django/training/migrations/0001_initial.py @@ -0,0 +1,128 @@ +# Generated by Django 4.1.7 on 2023-04-11 20:40 + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion +import project.modelcomponents.fields + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('user', '0056_alter_trainingtype_required_field'), + ] + + operations = [ + migrations.CreateModel( + name='Course', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('version', models.FloatField(default=1.0)), + ('training_type', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, + related_name='courses', to='user.trainingtype')), + ], + options={ + 'permissions': [('can_view_course_guidelines', 'Can view course guidelines')], + 'default_permissions': ('change',), + 'unique_together': {('training_type', 'version')}, + }, + ), + migrations.CreateModel( + name='CourseProgress', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[('IP', 'In Progress'), ('C', 'Completed')], default='IP', + max_length=2)), + ('started_at', models.DateTimeField(auto_now_add=True)), + ('completed_at', models.DateTimeField(auto_now=True)), + ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='training.course')), + ('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)), + ], + options={ + 'unique_together': {('user', 'course')}, + }, + ), + migrations.CreateModel( + name='Module', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('name', models.CharField(max_length=100)), + ('order', models.PositiveIntegerField()), + ('description', project.modelcomponents.fields.SafeHTMLField()), + ('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='modules', + to='training.course')), + ], + options={ + 'unique_together': {('course', 'order')}, + }, + ), + migrations.CreateModel( + name='Quiz', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('question', project.modelcomponents.fields.SafeHTMLField()), + ('order', models.PositiveIntegerField()), + ('module', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='quizzes', + to='training.module')), + ], + ), + migrations.CreateModel( + name='QuizChoice', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('body', models.TextField()), + ('is_correct', models.BooleanField(default=False, verbose_name='Correct Choice?')), + ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='choices', + to='training.quiz')), + ], + ), + migrations.CreateModel( + name='ModuleProgress', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('status', models.CharField(choices=[('IP', 'In Progress'), ('C', 'Completed')], default='IP', + max_length=2)), + ('last_completed_order', models.PositiveIntegerField(default=0, null=True)), + ('started_at', models.DateTimeField(blank=True, null=True)), + ('updated_at', models.DateTimeField(auto_now=True)), + ('course_progress', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, + related_name='module_progresses', to='training.courseprogress')), + ('module', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='training.module')), + ], + ), + migrations.CreateModel( + name='ContentBlock', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('body', project.modelcomponents.fields.SafeHTMLField()), + ('order', models.PositiveIntegerField()), + ('module', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='contents', + to='training.module')), + ], + ), + migrations.CreateModel( + name='CompletedQuiz', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('completed_at', models.DateTimeField(blank=True, null=True)), + ('module_progress', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, + related_name='completed_quizzes', to='training.moduleprogress')), + ('quiz', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='training.quiz')), + ], + ), + migrations.CreateModel( + name='CompletedContent', + fields=[ + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('completed_at', models.DateTimeField(blank=True, null=True)), + ('content', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, + to='training.contentblock')), + ('module_progress', + models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, + related_name='completed_contents', to='training.moduleprogress')), + ], + ), + ] diff --git a/physionet-django/user/migrations/0056_alter_trainingtype_required_field.py b/physionet-django/user/migrations/0056_alter_trainingtype_required_field.py new file mode 100644 index 0000000000..1328047fe3 --- /dev/null +++ b/physionet-django/user/migrations/0056_alter_trainingtype_required_field.py @@ -0,0 +1,21 @@ +# Generated by Django 4.1.5 on 2023-02-18 02:12 + +from django.db import migrations, models +import user.enums + + +class Migration(migrations.Migration): + + dependencies = [ + ('user', '0055_auto_20230330_1723'), + ] + + operations = [ + migrations.AlterField( + model_name='trainingtype', + name='required_field', + field=models.PositiveSmallIntegerField( + choices=[(0, 'DOCUMENT'), (1, 'URL'), (2, 'PLATFORM')], + default=user.enums.RequiredField['DOCUMENT']), + ), + ] From 04bbc383ecf603dfb5c7f370f1b32d4092abd0de Mon Sep 17 00:00:00 2001 From: Rutvik Solanki Date: Sat, 10 Jun 2023 03:01:06 -0400 Subject: [PATCH 112/181] Resolving the comments : Adding a few checks & refactoring code in training app --- .../templates/console/guidelines_course.html | 4 +- .../console/training_type/index.html | 2 +- physionet-django/training/models.py | 44 +++--- physionet-django/training/serializers.py | 146 +++++++----------- physionet-django/training/views.py | 38 ++++- 5 files changed, 111 insertions(+), 123 deletions(-) diff --git a/physionet-django/console/templates/console/guidelines_course.html b/physionet-django/console/templates/console/guidelines_course.html index 94df083bd0..a094894c17 100644 --- a/physionet-django/console/templates/console/guidelines_course.html +++ b/physionet-django/console/templates/console/guidelines_course.html @@ -5,12 +5,12 @@ {% block content %}
- Guidelines for creating and updating courses courses + Guidelines for creating and updating courses

To create a new course or update a course, you will need to organize all the course content in a json file - and upload via + and upload via the Courses page.

Here is the course schema with typing info that you can follow to create a new course or update a course. Similarly, here is an example json file to diff --git a/physionet-django/training/models.py b/physionet-django/training/models.py index 207cbc269a..6e22d3bea5 100644 --- a/physionet-django/training/models.py +++ b/physionet-django/training/models.py @@ -1,6 +1,11 @@ from django.db import models +from django.utils import timezone from project.modelcomponents.fields import SafeHTMLField +from notification.utility import notify_users_of_training_expiry +from user.models import Training + +NUMBER_OF_DAYS_SET_TO_EXPIRE = 30 class Course(models.Model): @@ -15,6 +20,24 @@ class Meta: ('can_view_course_guidelines', 'Can view course guidelines'), ] + def update_course_for_major_version_change(self, instance): + """ + If it is a major version change, it sets all former user trainings + to a reduced date, and informs them all. + """ + + trainings = Training.objects.filter( + training_type=instance, + process_datetime__gte=timezone.now() - instance.valid_duration) + _ = trainings.update( + process_datetime=( + timezone.now() - (instance.valid_duration - timezone.timedelta( + days=NUMBER_OF_DAYS_SET_TO_EXPIRE)))) + + for training in trainings: + notify_users_of_training_expiry( + training.user, instance.name, NUMBER_OF_DAYS_SET_TO_EXPIRE) + def __str__(self): return f'{self.training_type} v{self.version}' @@ -102,27 +125,6 @@ class Status(models.TextChoices): def __str__(self): return f'{self.course_progress.user.username} - {self.module}' - def get_next_content_or_quiz(self): - if self.status == self.Status.COMPLETED: - return None - - next_content = self.module.contents.filter(order__gt=self.last_completed_order).order_by('order').first() - next_quiz = self.module.quizzes.filter(order__gt=self.last_completed_order).order_by('order').first() - - if next_content and next_quiz: - return next_content if next_content.order < next_quiz.order else next_quiz - elif next_content: - return next_content - elif next_quiz: - return next_quiz - else: - return None - - def update_last_completed_order(self, completed_content_or_quiz): - if completed_content_or_quiz.order > self.last_completed_order: - self.last_completed_order = completed_content_or_quiz.order - self.save() - class CompletedContent(models.Model): module_progress = models.ForeignKey('training.ModuleProgress', on_delete=models.CASCADE, diff --git a/physionet-django/training/serializers.py b/physionet-django/training/serializers.py index 0d1bf1b466..e4539c61cd 100644 --- a/physionet-django/training/serializers.py +++ b/physionet-django/training/serializers.py @@ -1,15 +1,10 @@ import datetime from rest_framework import serializers from django.db import transaction -from django.utils import timezone from training.models import Course, Module, Quiz, QuizChoice, ContentBlock from user.models import Training, TrainingType from user.enums import RequiredField -from notification.utility import notify_users_of_training_expiry - - -NUMBER_OF_DAYS_SET_TO_EXPIRE = 30 class QuizChoiceSerializer(serializers.ModelSerializer): @@ -56,114 +51,79 @@ class Meta: read_only_fields = ['id', 'training_type'] -class TrainingTypeSerializer(serializers.ModelSerializer): - courses = CourseSerializer(many=True) - - class Meta: - model = TrainingType - fields = ['name', 'description', 'valid_duration', 'courses'] - read_only_fields = ['id'] - - def update_course_for_major_version_change(self, instance): - """ - If it is a major version change, it sets all former user trainings - to a reduced date, and informs them all. - """ - - trainings = Training.objects.filter( - training_type=instance, - process_datetime__gte=timezone.now() - instance.valid_duration) - _ = trainings.update( - process_datetime=( - timezone.now() - (instance.valid_duration - timezone.timedelta( - days=NUMBER_OF_DAYS_SET_TO_EXPIRE)))) - - for training in trainings: - notify_users_of_training_expiry( - training.user, instance.name, NUMBER_OF_DAYS_SET_TO_EXPIRE) +def create_quizzes(module_instance, quizzes_data): + choice_bulk = [] + for quiz in quizzes_data: + choices = quiz.pop('choices') - def update(self, instance, validated_data): + quiz['module'] = module_instance + q = Quiz(**quiz) + q.save() - with transaction.atomic(): - course = validated_data.pop('courses')[0] - modules = course.pop('modules') + for choice in choices: + choice['quiz'] = q + choice_bulk.append(QuizChoice(**choice)) - course['training_type'] = instance + QuizChoice.objects.bulk_create(choice_bulk) - course_instance = Course.objects.create(**course) - for module in modules: - quizzes = module.pop('quizzes') - contents = module.pop('contents') +def create_contentblocks(module_instance, content_data): + content_bulk = [] + for content in content_data: + content['module'] = module_instance + content_bulk.append(ContentBlock(**content)) + ContentBlock.objects.bulk_create(content_bulk) - module['course'] = course_instance - module_instance = Module.objects.create(**module) - choice_bulk = [] - for quiz in quizzes: - choices = quiz.pop('choices') +def create_modules(course_instance, modules_data): + for module_data in modules_data: + quizzes = module_data.pop('quizzes') + contents = module_data.pop('contents') - quiz['module'] = module_instance - q = Quiz(**quiz) - q.save() + module_data['course'] = course_instance + module_instance = Module.objects.create(**module_data) - for choice in choices: - choice['quiz'] = q - choice_bulk.append(QuizChoice(**choice)) + create_quizzes(module_instance, quizzes) + create_contentblocks(module_instance, contents) - QuizChoice.objects.bulk_create(choice_bulk) - content_bulk = [] - for content in contents: - content['module'] = module_instance - content_bulk.append(ContentBlock(**content)) - ContentBlock.objects.bulk_create(content_bulk) +def update_or_create_course(validated_data): + with transaction.atomic(): + course = validated_data.pop('courses')[0] + modules = course.pop('modules') - for attr, value in validated_data.items(): + if 'id' in course: + instance = Course.objects.get(id=course['id']) + for attr, value in course.items(): setattr(instance, attr, value) instance.save() - if course.get("version"): - if str(course.get("version")).endswith("0"): - self.update_course_for_major_version_change(instance) - - return course_instance - - def create(self, validated_data): - - with transaction.atomic(): - course = validated_data.pop('courses')[0] - modules = course.pop('modules') - - validated_data['required_field'] = RequiredField.PLATFORM - course['training_type'] = instance = TrainingType.objects.create(**validated_data) - + else: course_instance = Course.objects.create(**course) - for module in modules: - quizzes = module.pop('quizzes') - contents = module.pop('contents') + create_modules(course_instance, modules) - module['course'] = course_instance - module_instance = Module.objects.create(**module) + if course.get("version"): + if str(course.get("version")).endswith("0"): + course.update_course_for_major_version_change(instance) - choice_bulk = [] - for quiz in quizzes: - choices = quiz.pop('choices') + return course_instance - quiz['module'] = module_instance - q = Quiz(**quiz) - q.save() - for choice in choices: - choice['quiz'] = q - choice_bulk.append(QuizChoice(**choice)) +class TrainingTypeSerializer(serializers.ModelSerializer): + courses = CourseSerializer(many=True) - QuizChoice.objects.bulk_create(choice_bulk) + class Meta: + model = TrainingType + fields = ['name', 'description', 'valid_duration', 'courses'] + read_only_fields = ['id'] - content_bulk = [] - for content in contents: - content['module'] = module_instance - content_bulk.append(ContentBlock(**content)) - ContentBlock.objects.bulk_create(content_bulk) + def update(self, instance, validated_data): + validated_data['training_type'] = instance + course_instance = update_or_create_course(validated_data) + return course_instance - return instance + def create(self, validated_data): + validated_data['required_field'] = RequiredField.PLATFORM + instance = TrainingType.objects.create(**validated_data) + course_instance = update_or_create_course(validated_data) + return instance # is the return value correct? diff --git a/physionet-django/training/views.py b/physionet-django/training/views.py index a8c74547d9..c8919b5c6f 100644 --- a/physionet-django/training/views.py +++ b/physionet-django/training/views.py @@ -35,13 +35,39 @@ def courses(request): if not json_file.name.endswith('.json'): messages.warning(request, 'File is not of JSON type') return redirect("courses") - file_data = JSONParser().parse(json_file.file) - serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) - if serializer.is_valid(raise_exception=False): - serializer.save() - messages.success(request, 'Course created successfully.') + + # Checking if the content of the JSON file is properly formatted and according to the schema + try: + file_data = JSONParser().parse(json_file.file) + except json.decoder.JSONDecodeError: + messages.error(request, 'JSON file is not properly formatted.') + return redirect("courses") + + # Checking if the Training type with the same version already exists + existing_course = Course.objects.filter(training_type=training_type) + if existing_course.exists(): + if not all(map(lambda x: x.isdigit() or x == '.', str(file_data['courses'][0]['version']))): + messages.error(request, 'Version number is not valid.') + elif file_data['courses'][0]['version'] <= existing_course.order_by( + '-version').first().version: # Version Number is greater than the latest version + messages.error(request, 'Version number should be greater than the latest version.') + else: # Checks passed and moving to saving the course + serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + if serializer.is_valid(raise_exception=False): + # A Major Version change is detected : The First digit of the version number is changed + if int(str(existing_course.order_by('-version').first().version).split('.')[0]) != int(str( + file_data['courses'][0]['version']).split('.')[0]): + # calling the update_course_for_major_version_change method to update the course + existing_course[0].update_course_for_major_version_change(training_type) + serializer.save() + messages.success(request, 'Course updated successfully.') else: - messages.error(request, serializer.errors) + serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + if serializer.is_valid(raise_exception=False): + serializer.save() + messages.success(request, 'Course created successfully.') + else: + messages.error(request, serializer.errors) return redirect("courses") From 439483793f890431327ad708fc73abf84bb60fc1 Mon Sep 17 00:00:00 2001 From: Rutvik Solanki Date: Wed, 14 Jun 2023 00:55:59 -0400 Subject: [PATCH 113/181] Fixing the unused variable assignment. --- physionet-django/training/serializers.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/physionet-django/training/serializers.py b/physionet-django/training/serializers.py index e4539c61cd..84b6daf80c 100644 --- a/physionet-django/training/serializers.py +++ b/physionet-django/training/serializers.py @@ -125,5 +125,5 @@ def update(self, instance, validated_data): def create(self, validated_data): validated_data['required_field'] = RequiredField.PLATFORM instance = TrainingType.objects.create(**validated_data) - course_instance = update_or_create_course(validated_data) - return instance # is the return value correct? + update_or_create_course(validated_data) + return instance From 346f0676c75544538e956e63d15830b00b723bbe Mon Sep 17 00:00:00 2001 From: Rutvik Solanki Date: Wed, 14 Jun 2023 20:46:15 -0400 Subject: [PATCH 114/181] Refactoring Serializers Complete --- physionet-django/training/serializers.py | 48 +++++++++++------------- 1 file changed, 21 insertions(+), 27 deletions(-) diff --git a/physionet-django/training/serializers.py b/physionet-django/training/serializers.py index 84b6daf80c..641ee441a0 100644 --- a/physionet-django/training/serializers.py +++ b/physionet-django/training/serializers.py @@ -87,28 +87,6 @@ def create_modules(course_instance, modules_data): create_contentblocks(module_instance, contents) -def update_or_create_course(validated_data): - with transaction.atomic(): - course = validated_data.pop('courses')[0] - modules = course.pop('modules') - - if 'id' in course: - instance = Course.objects.get(id=course['id']) - for attr, value in course.items(): - setattr(instance, attr, value) - instance.save() - else: - course_instance = Course.objects.create(**course) - - create_modules(course_instance, modules) - - if course.get("version"): - if str(course.get("version")).endswith("0"): - course.update_course_for_major_version_change(instance) - - return course_instance - - class TrainingTypeSerializer(serializers.ModelSerializer): courses = CourseSerializer(many=True) @@ -118,12 +96,28 @@ class Meta: read_only_fields = ['id'] def update(self, instance, validated_data): - validated_data['training_type'] = instance - course_instance = update_or_create_course(validated_data) + with transaction.atomic(): + course = validated_data.pop('courses')[0] + modules = course.pop('modules') + + course['training_type'] = instance + course_instance = Course.objects.create(**course) + create_modules(course_instance, modules) + for attr, value in validated_data.items(): + setattr(instance, attr, value) + instance.save() + return course_instance def create(self, validated_data): - validated_data['required_field'] = RequiredField.PLATFORM - instance = TrainingType.objects.create(**validated_data) - update_or_create_course(validated_data) + with transaction.atomic(): + course = validated_data.pop('courses')[0] + modules = course.pop('modules') + + validated_data['required_field'] = RequiredField.PLATFORM + course['training_type'] = instance = TrainingType.objects.create(**validated_data) + course_instance = Course.objects.create(**course) + + create_modules(course_instance, modules) + return instance From f37c60205e181702fe1058fb319dbad52c7ab52c Mon Sep 17 00:00:00 2001 From: Rutvik Solanki Date: Wed, 19 Jul 2023 11:12:23 -0400 Subject: [PATCH 115/181] Apply suggestions from code review in guidelines_course template Co-authored-by: Alistair Johnson --- .../templates/console/guidelines_course.html | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/physionet-django/console/templates/console/guidelines_course.html b/physionet-django/console/templates/console/guidelines_course.html index a094894c17..7b2755dd17 100644 --- a/physionet-django/console/templates/console/guidelines_course.html +++ b/physionet-django/console/templates/console/guidelines_course.html @@ -74,7 +74,8 @@

General Schema Explanation

    -
  1. Modules: A course may have one or more modules that contain the contents,quizzes for each +
  2. Modules: A course may have one or more modules. Each module contains the course content and quizzes. + Modules must include: section of the course. Each module should include:
    • @@ -86,7 +87,7 @@

      General Schema Explanation

    -
  1. Content: A module may have one or more content. Each content should include:
  2. +
  3. Content: A module may have one or more content blocks. Each content block should include:
{% endblock %} From b21a2e1a8b20a01bf5fe20ac1c6cac40992d3378 Mon Sep 17 00:00:00 2001 From: Benjamin Moody Date: Fri, 19 Jan 2024 14:55:47 -0500 Subject: [PATCH 146/181] _parse_pdf_to_string: catch and ignore PDFException. This function is a best effort attempt to get text from a PDF file - if the file is malformed (PDFSyntaxError), this function returns an empty string. However, there are other exceptions such as PDFPasswordIncorrect that can occur even if the file is well-formed. Although it would be better to handle these exceptions at a higher level, this is a temporary fix to allow training applications containing encrypted files to be rejected. --- physionet-django/console/services.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/physionet-django/console/services.py b/physionet-django/console/services.py index 18218cc088..9edcf9651e 100644 --- a/physionet-django/console/services.py +++ b/physionet-django/console/services.py @@ -4,7 +4,7 @@ from typing import Optional from pdfminer.high_level import extract_text -from pdfminer.pdfparser import PDFSyntaxError +from pdfminer.pdfparser import PDFException from django.conf import settings from user.models import Training @@ -29,7 +29,7 @@ def _get_regex_value_from_text(text: str, regex: str) -> Optional[str]: def _parse_pdf_to_string(training_path: str) -> str: try: text = extract_text(training_path) - except PDFSyntaxError: + except PDFException: text = '' logging.error(f'Failed to extract text from {training_path}') return ' '.join(text.split()) From b7a0e5e65150944c4e7d1cfd309a221a3ab7e06b Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Mon, 22 Jan 2024 12:04:22 -0500 Subject: [PATCH 147/181] Bump jinja2 from 3.1.2 to 3.1.3 --- requirements.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements.txt b/requirements.txt index 491dce826f..6be510fdf1 100644 --- a/requirements.txt +++ b/requirements.txt @@ -321,9 +321,9 @@ httplib2==0.19.1 ; python_version >= "3.9" and python_version < "4.0" \ idna==2.10 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6 \ --hash=sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0 -jinja2==3.1.2 ; python_version >= "3.9" and python_version < "4.0" \ - --hash=sha256:31351a702a408a9e7595a8fc6150fc3f43bb6bf7e319770cbc0db9df9437e852 \ - --hash=sha256:6088930bfe239f0e6710546ab9c19c9ef35e29792895fed6e6e31a023a182a61 +jinja2==3.1.3 ; python_version >= "3.9" and python_version < "4.0" \ + --hash=sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa \ + --hash=sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90 jmespath==1.0.1 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980 \ --hash=sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe From 0ead903e744d9698a4588fefa3ee44f917368e5c Mon Sep 17 00:00:00 2001 From: Michael Scanlan Date: Mon, 22 Jan 2024 12:04:45 -0500 Subject: [PATCH 148/181] Updated description and image for step 6. Added new step 7 w/ image to clarify step 6. --- .../about/citi-course-instructions-6.png | Bin 284571 -> 64287 bytes .../about/citi-course-instructions-7.png | Bin 0 -> 149311 bytes .../templates/about/citi_course.html | 4 +++- 3 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 physionet-django/static/images/about/citi-course-instructions-7.png diff --git a/physionet-django/static/images/about/citi-course-instructions-6.png b/physionet-django/static/images/about/citi-course-instructions-6.png index 27e05fc40de91a11b1ab34fc4de52c7d43ba9f08..6a1361e646acbcf7734937be29d89d2f76581bb6 100644 GIT binary patch literal 64287 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 hAXEJ3GHWkuhn1#h-iNXn52kCeOI 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
J)_VpS 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

>7(&K8?@v(rj?T!sUU> zYhT#~v+I=@+d5sv(pPkb zH^h#8AIS3D+3_=O{qZ!bIY3hhruM+)1HWkzt;-wI&Ch-i>DCee6%RoQzra2&Qybgw z7!}o2UFqK0z*&g4jAQQIHp>WS&X??|f6(Z%G!tMtdh>M@cx!WUM6p~reH<=(?1TaUgu*`3z-sy3BSdcRTl@NuJQM1AEN@_eoD*R@t`~Fd01%6__!OYrpozvP5G=FB~eaG6`Yv#EZ6JQ&i zNcFrsKRzucDR4?2vZG7?n}8^2KE^gQr=++A;Y2(>EkU(l;6fwoiS)P0Xmn>teaFm( zYG22}?JuU(USE2xE_*6%^_p=~|J1Lt7a($MP5JrX<_6q~aja&)DavSLzjG`y2Ldqy zw(ff{c9Nh(bht1uJ{&aU`12e(?p2=&Bf;|>5%d(l*S}mn!=8HzR z=UZ`W*mp=7hMQVHM3l(}NXX=N9N!<$n>sk=Zc(t)8E49e@tBZ(=go0lHXvXnd(HxN z@qOCQwV#{P6PM`e2lH&1A=C*svPtq~pgkJsc1c0~PbK0Dhx*}6( zapA?&#}A)frf5+4n5(PnC3SW6>S}Epz+%7MHKDrlLK19QKl z?$*B$H^`UfRb*t#!h+qlC{`gRl@E9%O%C|NZPBifdGvi*dOjP#kG{lZU-{`)e^?Zt zsRE0JY?BXC!~B1E#y^qZff!(kPhI2H|2^)f_y+;hEByb1e}cjfBlv$QuvMNLSpg?a T$~Lx+06!XP+Bb?-t%Cmtt=(>l literal 0 HcmV?d00001 diff --git a/physionet-django/templates/about/citi_course.html b/physionet-django/templates/about/citi_course.html index 8d0608dab4..c59e316638 100644 --- a/physionet-django/templates/about/citi_course.html +++ b/physionet-django/templates/about/citi_course.html @@ -20,8 +20,10 @@

CITI Course Instructions

Citi Course instructions 4
  • Once submitted, you should see the 'Data or Specimens Only Research' and 'Conflicts of Interest' modules. Please complete these modules.
  • Citi Course instructions 5 -
  • Please make sure when submitting your CITI training application, that you upload the training report rather than the certificate.
  • +
  • Please make sure when submitting your CITI training application, that you upload the training report rather than the certificate. You can find your training report under 'Records' at the top of the webpage. From there, you can download your training report by selecting 'View-Print-Share' under Completion Record.
  • Citi Course instructions 6 +
  • Click 'view/print' under Completion Record to get the full training report to upload on PhysioNet.
  • + Citi Course instructions 7

    &@La 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 diff --git a/physionet-django/static/images/about/citi-course-instructions-7.png b/physionet-django/static/images/about/citi-course-instructions-7.png new file mode 100644 index 0000000000000000000000000000000000000000..7c8d221bb4c90ea4ba6833444ceff77aa59731e4 GIT binary patch literal 149311 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

    {% endblock %} From d9927dc18f877782ddbe02a05aedf974155782be Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 22 Jan 2024 22:01:17 +0000 Subject: [PATCH 149/181] Bump pillow from 10.0.1 to 10.2.0 Bumps [pillow](https://github.com/python-pillow/Pillow) from 10.0.1 to 10.2.0. - [Release notes](https://github.com/python-pillow/Pillow/releases) - [Changelog](https://github.com/python-pillow/Pillow/blob/main/CHANGES.rst) - [Commits](https://github.com/python-pillow/Pillow/compare/10.0.1...10.2.0) --- updated-dependencies: - dependency-name: pillow dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- poetry.lock | 131 ++++++++++++++++++++++++++++--------------------- pyproject.toml | 2 +- 2 files changed, 76 insertions(+), 57 deletions(-) diff --git a/poetry.lock b/poetry.lock index 60418cc49d..f7478c624f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1092,70 +1092,88 @@ docs = ["sphinx", "sphinx-argparse"] [[package]] name = "pillow" -version = "10.0.1" +version = "10.2.0" description = "Python Imaging Library (Fork)" optional = false python-versions = ">=3.8" files = [ - {file = "Pillow-10.0.1-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:8f06be50669087250f319b706decf69ca71fdecd829091a37cc89398ca4dc17a"}, - {file = "Pillow-10.0.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:50bd5f1ebafe9362ad622072a1d2f5850ecfa44303531ff14353a4059113b12d"}, - {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e6a90167bcca1216606223a05e2cf991bb25b14695c518bc65639463d7db722d"}, - {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f11c9102c56ffb9ca87134bd025a43d2aba3f1155f508eff88f694b33a9c6d19"}, - {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:186f7e04248103482ea6354af6d5bcedb62941ee08f7f788a1c7707bc720c66f"}, - {file = "Pillow-10.0.1-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:0462b1496505a3462d0f35dc1c4d7b54069747d65d00ef48e736acda2c8cbdff"}, - {file = "Pillow-10.0.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d889b53ae2f030f756e61a7bff13684dcd77e9af8b10c6048fb2c559d6ed6eaf"}, - {file = "Pillow-10.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:552912dbca585b74d75279a7570dd29fa43b6d93594abb494ebb31ac19ace6bd"}, - {file = "Pillow-10.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:787bb0169d2385a798888e1122c980c6eff26bf941a8ea79747d35d8f9210ca0"}, - {file = "Pillow-10.0.1-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:fd2a5403a75b54661182b75ec6132437a181209b901446ee5724b589af8edef1"}, - {file = "Pillow-10.0.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:2d7e91b4379f7a76b31c2dda84ab9e20c6220488e50f7822e59dac36b0cd92b1"}, - {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:19e9adb3f22d4c416e7cd79b01375b17159d6990003633ff1d8377e21b7f1b21"}, - {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:93139acd8109edcdeffd85e3af8ae7d88b258b3a1e13a038f542b79b6d255c54"}, - {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:92a23b0431941a33242b1f0ce6c88a952e09feeea9af4e8be48236a68ffe2205"}, - {file = "Pillow-10.0.1-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:cbe68deb8580462ca0d9eb56a81912f59eb4542e1ef8f987405e35a0179f4ea2"}, - {file = "Pillow-10.0.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:522ff4ac3aaf839242c6f4e5b406634bfea002469656ae8358644fc6c4856a3b"}, - {file = "Pillow-10.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:84efb46e8d881bb06b35d1d541aa87f574b58e87f781cbba8d200daa835b42e1"}, - {file = "Pillow-10.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:898f1d306298ff40dc1b9ca24824f0488f6f039bc0e25cfb549d3195ffa17088"}, - {file = "Pillow-10.0.1-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:bcf1207e2f2385a576832af02702de104be71301c2696d0012b1b93fe34aaa5b"}, - {file = "Pillow-10.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:5d6c9049c6274c1bb565021367431ad04481ebb54872edecfcd6088d27edd6ed"}, - {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:28444cb6ad49726127d6b340217f0627abc8732f1194fd5352dec5e6a0105635"}, - {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de596695a75496deb3b499c8c4f8e60376e0516e1a774e7bc046f0f48cd620ad"}, - {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:2872f2d7846cf39b3dbff64bc1104cc48c76145854256451d33c5faa55c04d1a"}, - {file = "Pillow-10.0.1-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:4ce90f8a24e1c15465048959f1e94309dfef93af272633e8f37361b824532e91"}, - {file = "Pillow-10.0.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ee7810cf7c83fa227ba9125de6084e5e8b08c59038a7b2c9045ef4dde61663b4"}, - {file = "Pillow-10.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:b1be1c872b9b5fcc229adeadbeb51422a9633abd847c0ff87dc4ef9bb184ae08"}, - {file = "Pillow-10.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:98533fd7fa764e5f85eebe56c8e4094db912ccbe6fbf3a58778d543cadd0db08"}, - {file = "Pillow-10.0.1-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:764d2c0daf9c4d40ad12fbc0abd5da3af7f8aa11daf87e4fa1b834000f4b6b0a"}, - {file = "Pillow-10.0.1-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:fcb59711009b0168d6ee0bd8fb5eb259c4ab1717b2f538bbf36bacf207ef7a68"}, - {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:697a06bdcedd473b35e50a7e7506b1d8ceb832dc238a336bd6f4f5aa91a4b500"}, - {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9f665d1e6474af9f9da5e86c2a3a2d2d6204e04d5af9c06b9d42afa6ebde3f21"}, - {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:2fa6dd2661838c66f1a5473f3b49ab610c98a128fc08afbe81b91a1f0bf8c51d"}, - {file = "Pillow-10.0.1-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:3a04359f308ebee571a3127fdb1bd01f88ba6f6fb6d087f8dd2e0d9bff43f2a7"}, - {file = "Pillow-10.0.1-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:723bd25051454cea9990203405fa6b74e043ea76d4968166dfd2569b0210886a"}, - {file = "Pillow-10.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:71671503e3015da1b50bd18951e2f9daf5b6ffe36d16f1eb2c45711a301521a7"}, - {file = "Pillow-10.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:44e7e4587392953e5e251190a964675f61e4dae88d1e6edbe9f36d6243547ff3"}, - {file = "Pillow-10.0.1-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:3855447d98cced8670aaa63683808df905e956f00348732448b5a6df67ee5849"}, - {file = "Pillow-10.0.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:ed2d9c0704f2dc4fa980b99d565c0c9a543fe5101c25b3d60488b8ba80f0cce1"}, - {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f5bb289bb835f9fe1a1e9300d011eef4d69661bb9b34d5e196e5e82c4cb09b37"}, - {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a0d3e54ab1df9df51b914b2233cf779a5a10dfd1ce339d0421748232cea9876"}, - {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:2cc6b86ece42a11f16f55fe8903595eff2b25e0358dec635d0a701ac9586588f"}, - {file = "Pillow-10.0.1-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:ca26ba5767888c84bf5a0c1a32f069e8204ce8c21d00a49c90dabeba00ce0145"}, - {file = "Pillow-10.0.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f0b4b06da13275bc02adfeb82643c4a6385bd08d26f03068c2796f60d125f6f2"}, - {file = "Pillow-10.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bc2e3069569ea9dbe88d6b8ea38f439a6aad8f6e7a6283a38edf61ddefb3a9bf"}, - {file = "Pillow-10.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:8b451d6ead6e3500b6ce5c7916a43d8d8d25ad74b9102a629baccc0808c54971"}, - {file = "Pillow-10.0.1-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:32bec7423cdf25c9038fef614a853c9d25c07590e1a870ed471f47fb80b244db"}, - {file = "Pillow-10.0.1-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b7cf63d2c6928b51d35dfdbda6f2c1fddbe51a6bc4a9d4ee6ea0e11670dd981e"}, - {file = "Pillow-10.0.1-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f6d3d4c905e26354e8f9d82548475c46d8e0889538cb0657aa9c6f0872a37aa4"}, - {file = "Pillow-10.0.1-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:847e8d1017c741c735d3cd1883fa7b03ded4f825a6e5fcb9378fd813edee995f"}, - {file = "Pillow-10.0.1-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:7f771e7219ff04b79e231d099c0a28ed83aa82af91fd5fa9fdb28f5b8d5addaf"}, - {file = "Pillow-10.0.1-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:459307cacdd4138edee3875bbe22a2492519e060660eaf378ba3b405d1c66317"}, - {file = "Pillow-10.0.1-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b059ac2c4c7a97daafa7dc850b43b2d3667def858a4f112d1aa082e5c3d6cf7d"}, - {file = "Pillow-10.0.1-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:d6caf3cd38449ec3cd8a68b375e0c6fe4b6fd04edb6c9766b55ef84a6e8ddf2d"}, - {file = "Pillow-10.0.1.tar.gz", hash = "sha256:d72967b06be9300fed5cfbc8b5bafceec48bf7cdc7dab66b1d2549035287191d"}, + {file = "pillow-10.2.0-cp310-cp310-macosx_10_10_x86_64.whl", hash = "sha256:7823bdd049099efa16e4246bdf15e5a13dbb18a51b68fa06d6c1d4d8b99a796e"}, + {file = "pillow-10.2.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:83b2021f2ade7d1ed556bc50a399127d7fb245e725aa0113ebd05cfe88aaf588"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6fad5ff2f13d69b7e74ce5b4ecd12cc0ec530fcee76356cac6742785ff71c452"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da2b52b37dad6d9ec64e653637a096905b258d2fc2b984c41ae7d08b938a67e4"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:47c0995fc4e7f79b5cfcab1fc437ff2890b770440f7696a3ba065ee0fd496563"}, + {file = "pillow-10.2.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:322bdf3c9b556e9ffb18f93462e5f749d3444ce081290352c6070d014c93feb2"}, + {file = "pillow-10.2.0-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:51f1a1bffc50e2e9492e87d8e09a17c5eea8409cda8d3f277eb6edc82813c17c"}, + {file = "pillow-10.2.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:69ffdd6120a4737710a9eee73e1d2e37db89b620f702754b8f6e62594471dee0"}, + {file = "pillow-10.2.0-cp310-cp310-win32.whl", hash = "sha256:c6dafac9e0f2b3c78df97e79af707cdc5ef8e88208d686a4847bab8266870023"}, + {file = "pillow-10.2.0-cp310-cp310-win_amd64.whl", hash = "sha256:aebb6044806f2e16ecc07b2a2637ee1ef67a11840a66752751714a0d924adf72"}, + {file = "pillow-10.2.0-cp310-cp310-win_arm64.whl", hash = "sha256:7049e301399273a0136ff39b84c3678e314f2158f50f517bc50285fb5ec847ad"}, + {file = "pillow-10.2.0-cp311-cp311-macosx_10_10_x86_64.whl", hash = "sha256:35bb52c37f256f662abdfa49d2dfa6ce5d93281d323a9af377a120e89a9eafb5"}, + {file = "pillow-10.2.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:9c23f307202661071d94b5e384e1e1dc7dfb972a28a2310e4ee16103e66ddb67"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:773efe0603db30c281521a7c0214cad7836c03b8ccff897beae9b47c0b657d61"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:11fa2e5984b949b0dd6d7a94d967743d87c577ff0b83392f17cb3990d0d2fd6e"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:716d30ed977be8b37d3ef185fecb9e5a1d62d110dfbdcd1e2a122ab46fddb03f"}, + {file = "pillow-10.2.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:a086c2af425c5f62a65e12fbf385f7c9fcb8f107d0849dba5839461a129cf311"}, + {file = "pillow-10.2.0-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:c8de2789052ed501dd829e9cae8d3dcce7acb4777ea4a479c14521c942d395b1"}, + {file = "pillow-10.2.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:609448742444d9290fd687940ac0b57fb35e6fd92bdb65386e08e99af60bf757"}, + {file = "pillow-10.2.0-cp311-cp311-win32.whl", hash = "sha256:823ef7a27cf86df6597fa0671066c1b596f69eba53efa3d1e1cb8b30f3533068"}, + {file = "pillow-10.2.0-cp311-cp311-win_amd64.whl", hash = "sha256:1da3b2703afd040cf65ec97efea81cfba59cdbed9c11d8efc5ab09df9509fc56"}, + {file = "pillow-10.2.0-cp311-cp311-win_arm64.whl", hash = "sha256:edca80cbfb2b68d7b56930b84a0e45ae1694aeba0541f798e908a49d66b837f1"}, + {file = "pillow-10.2.0-cp312-cp312-macosx_10_10_x86_64.whl", hash = "sha256:1b5e1b74d1bd1b78bc3477528919414874748dd363e6272efd5abf7654e68bef"}, + {file = "pillow-10.2.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:0eae2073305f451d8ecacb5474997c08569fb4eb4ac231ffa4ad7d342fdc25ac"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b7c2286c23cd350b80d2fc9d424fc797575fb16f854b831d16fd47ceec078f2c"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:1e23412b5c41e58cec602f1135c57dfcf15482013ce6e5f093a86db69646a5aa"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:52a50aa3fb3acb9cf7213573ef55d31d6eca37f5709c69e6858fe3bc04a5c2a2"}, + {file = "pillow-10.2.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:127cee571038f252a552760076407f9cff79761c3d436a12af6000cd182a9d04"}, + {file = "pillow-10.2.0-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:8d12251f02d69d8310b046e82572ed486685c38f02176bd08baf216746eb947f"}, + {file = "pillow-10.2.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:54f1852cd531aa981bc0965b7d609f5f6cc8ce8c41b1139f6ed6b3c54ab82bfb"}, + {file = "pillow-10.2.0-cp312-cp312-win32.whl", hash = "sha256:257d8788df5ca62c980314053197f4d46eefedf4e6175bc9412f14412ec4ea2f"}, + {file = "pillow-10.2.0-cp312-cp312-win_amd64.whl", hash = "sha256:154e939c5f0053a383de4fd3d3da48d9427a7e985f58af8e94d0b3c9fcfcf4f9"}, + {file = "pillow-10.2.0-cp312-cp312-win_arm64.whl", hash = "sha256:f379abd2f1e3dddb2b61bc67977a6b5a0a3f7485538bcc6f39ec76163891ee48"}, + {file = "pillow-10.2.0-cp38-cp38-macosx_10_10_x86_64.whl", hash = "sha256:8373c6c251f7ef8bda6675dd6d2b3a0fcc31edf1201266b5cf608b62a37407f9"}, + {file = "pillow-10.2.0-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:870ea1ada0899fd0b79643990809323b389d4d1d46c192f97342eeb6ee0b8483"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b4b6b1e20608493548b1f32bce8cca185bf0480983890403d3b8753e44077129"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3031709084b6e7852d00479fd1d310b07d0ba82765f973b543c8af5061cf990e"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:3ff074fc97dd4e80543a3e91f69d58889baf2002b6be64347ea8cf5533188213"}, + {file = "pillow-10.2.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:cb4c38abeef13c61d6916f264d4845fab99d7b711be96c326b84df9e3e0ff62d"}, + {file = "pillow-10.2.0-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:b1b3020d90c2d8e1dae29cf3ce54f8094f7938460fb5ce8bc5c01450b01fbaf6"}, + {file = "pillow-10.2.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:170aeb00224ab3dc54230c797f8404507240dd868cf52066f66a41b33169bdbe"}, + {file = "pillow-10.2.0-cp38-cp38-win32.whl", hash = "sha256:c4225f5220f46b2fde568c74fca27ae9771536c2e29d7c04f4fb62c83275ac4e"}, + {file = "pillow-10.2.0-cp38-cp38-win_amd64.whl", hash = "sha256:0689b5a8c5288bc0504d9fcee48f61a6a586b9b98514d7d29b840143d6734f39"}, + {file = "pillow-10.2.0-cp39-cp39-macosx_10_10_x86_64.whl", hash = "sha256:b792a349405fbc0163190fde0dc7b3fef3c9268292586cf5645598b48e63dc67"}, + {file = "pillow-10.2.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:c570f24be1e468e3f0ce7ef56a89a60f0e05b30a3669a459e419c6eac2c35364"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d8ecd059fdaf60c1963c58ceb8997b32e9dc1b911f5da5307aab614f1ce5c2fb"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c365fd1703040de1ec284b176d6af5abe21b427cb3a5ff68e0759e1e313a5e7e"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:70c61d4c475835a19b3a5aa42492409878bbca7438554a1f89d20d58a7c75c01"}, + {file = "pillow-10.2.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:b6f491cdf80ae540738859d9766783e3b3c8e5bd37f5dfa0b76abdecc5081f13"}, + {file = "pillow-10.2.0-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:9d189550615b4948f45252d7f005e53c2040cea1af5b60d6f79491a6e147eef7"}, + {file = "pillow-10.2.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:49d9ba1ed0ef3e061088cd1e7538a0759aab559e2e0a80a36f9fd9d8c0c21591"}, + {file = "pillow-10.2.0-cp39-cp39-win32.whl", hash = "sha256:babf5acfede515f176833ed6028754cbcd0d206f7f614ea3447d67c33be12516"}, + {file = "pillow-10.2.0-cp39-cp39-win_amd64.whl", hash = "sha256:0304004f8067386b477d20a518b50f3fa658a28d44e4116970abfcd94fac34a8"}, + {file = "pillow-10.2.0-cp39-cp39-win_arm64.whl", hash = "sha256:0fb3e7fc88a14eacd303e90481ad983fd5b69c761e9e6ef94c983f91025da869"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-macosx_10_10_x86_64.whl", hash = "sha256:322209c642aabdd6207517e9739c704dc9f9db943015535783239022002f054a"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3eedd52442c0a5ff4f887fab0c1c0bb164d8635b32c894bc1faf4c618dd89df2"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:cb28c753fd5eb3dd859b4ee95de66cc62af91bcff5db5f2571d32a520baf1f04"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:33870dc4653c5017bf4c8873e5488d8f8d5f8935e2f1fb9a2208c47cdd66efd2"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:3c31822339516fb3c82d03f30e22b1d038da87ef27b6a78c9549888f8ceda39a"}, + {file = "pillow-10.2.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:a2b56ba36e05f973d450582fb015594aaa78834fefe8dfb8fcd79b93e64ba4c6"}, + {file = "pillow-10.2.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:d8e6aeb9201e655354b3ad049cb77d19813ad4ece0df1249d3c793de3774f8c7"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-macosx_10_10_x86_64.whl", hash = "sha256:2247178effb34a77c11c0e8ac355c7a741ceca0a732b27bf11e747bbc950722f"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:15587643b9e5eb26c48e49a7b33659790d28f190fc514a322d55da2fb5c2950e"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:753cd8f2086b2b80180d9b3010dd4ed147efc167c90d3bf593fe2af21265e5a5"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:7c8f97e8e7a9009bcacbe3766a36175056c12f9a44e6e6f2d5caad06dcfbf03b"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:d1b35bcd6c5543b9cb547dee3150c93008f8dd0f1fef78fc0cd2b141c5baf58a"}, + {file = "pillow-10.2.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:fe4c15f6c9285dc54ce6553a3ce908ed37c8f3825b5a51a15c91442bb955b868"}, + {file = "pillow-10.2.0.tar.gz", hash = "sha256:e87f0b2c78157e12d7686b27d63c070fd65d994e8ddae6f328e0dcf4a0cd007e"}, ] [package.extras] docs = ["furo", "olefile", "sphinx (>=2.4)", "sphinx-copybutton", "sphinx-inline-tabs", "sphinx-removed-in", "sphinxext-opengraph"] +fpx = ["olefile"] +mic = ["olefile"] tests = ["check-manifest", "coverage", "defusedxml", "markdown2", "olefile", "packaging", "pyroma", "pytest", "pytest-cov", "pytest-timeout"] +typing = ["typing-extensions"] +xmp = ["defusedxml"] [[package]] name = "proto-plus" @@ -1364,6 +1382,7 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, @@ -1785,4 +1804,4 @@ files = [ [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "76356a8a49871d4513f0bd93159cdba820d3977aa9c4081cbee29261a5028fc1" +content-hash = "057ae0d70a4eccc979f5a9254febbf088bf9788557ac6c2c49820782772e8a7b" diff --git a/pyproject.toml b/pyproject.toml index afda75c5e5..14d60b7ca2 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -18,7 +18,7 @@ django-ckeditor = "6.5.1" djangorestframework = "3.14.0" google-cloud-storage = "^1.41.1" html2text = "^2018.1.9" -Pillow = "^10.0.1" +Pillow = "^10.2.0" python-decouple = "^3.1" uWSGI = "2.0.22" pyOpenSSL = "^23.2.0" From 129d55df8eaf9cc7252f00c199650a1ac4ae26be Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Mon, 22 Jan 2024 17:45:03 -0500 Subject: [PATCH 150/181] Bump pillow from 10.0.1 to 10.2.0 --- requirements.txt | 125 ++++++++++++++++++++++++++--------------------- 1 file changed, 70 insertions(+), 55 deletions(-) diff --git a/requirements.txt b/requirements.txt index 6be510fdf1..ccbdd7a91a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -413,61 +413,75 @@ packaging==20.9 ; python_version >= "3.9" and python_version < "4.0" \ pdfminer-six==20211012 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:0351f17d362ee2d48b158be52bcde6576d96460efd038a3e89a043fba6d634d7 \ --hash=sha256:d3efb75c0249b51c1bf795e3a8bddf1726b276c77bf75fb136adea471ee2825b -pillow==10.0.1 ; python_version >= "3.9" and python_version < "4.0" \ - --hash=sha256:0462b1496505a3462d0f35dc1c4d7b54069747d65d00ef48e736acda2c8cbdff \ - --hash=sha256:186f7e04248103482ea6354af6d5bcedb62941ee08f7f788a1c7707bc720c66f \ - --hash=sha256:19e9adb3f22d4c416e7cd79b01375b17159d6990003633ff1d8377e21b7f1b21 \ - --hash=sha256:28444cb6ad49726127d6b340217f0627abc8732f1194fd5352dec5e6a0105635 \ - --hash=sha256:2872f2d7846cf39b3dbff64bc1104cc48c76145854256451d33c5faa55c04d1a \ - --hash=sha256:2cc6b86ece42a11f16f55fe8903595eff2b25e0358dec635d0a701ac9586588f \ - --hash=sha256:2d7e91b4379f7a76b31c2dda84ab9e20c6220488e50f7822e59dac36b0cd92b1 \ - --hash=sha256:2fa6dd2661838c66f1a5473f3b49ab610c98a128fc08afbe81b91a1f0bf8c51d \ - --hash=sha256:32bec7423cdf25c9038fef614a853c9d25c07590e1a870ed471f47fb80b244db \ - --hash=sha256:3855447d98cced8670aaa63683808df905e956f00348732448b5a6df67ee5849 \ - --hash=sha256:3a04359f308ebee571a3127fdb1bd01f88ba6f6fb6d087f8dd2e0d9bff43f2a7 \ - --hash=sha256:3a0d3e54ab1df9df51b914b2233cf779a5a10dfd1ce339d0421748232cea9876 \ - --hash=sha256:44e7e4587392953e5e251190a964675f61e4dae88d1e6edbe9f36d6243547ff3 \ - --hash=sha256:459307cacdd4138edee3875bbe22a2492519e060660eaf378ba3b405d1c66317 \ - --hash=sha256:4ce90f8a24e1c15465048959f1e94309dfef93af272633e8f37361b824532e91 \ - --hash=sha256:50bd5f1ebafe9362ad622072a1d2f5850ecfa44303531ff14353a4059113b12d \ - --hash=sha256:522ff4ac3aaf839242c6f4e5b406634bfea002469656ae8358644fc6c4856a3b \ - --hash=sha256:552912dbca585b74d75279a7570dd29fa43b6d93594abb494ebb31ac19ace6bd \ - --hash=sha256:5d6c9049c6274c1bb565021367431ad04481ebb54872edecfcd6088d27edd6ed \ - --hash=sha256:697a06bdcedd473b35e50a7e7506b1d8ceb832dc238a336bd6f4f5aa91a4b500 \ - --hash=sha256:71671503e3015da1b50bd18951e2f9daf5b6ffe36d16f1eb2c45711a301521a7 \ - --hash=sha256:723bd25051454cea9990203405fa6b74e043ea76d4968166dfd2569b0210886a \ - --hash=sha256:764d2c0daf9c4d40ad12fbc0abd5da3af7f8aa11daf87e4fa1b834000f4b6b0a \ - --hash=sha256:787bb0169d2385a798888e1122c980c6eff26bf941a8ea79747d35d8f9210ca0 \ - --hash=sha256:7f771e7219ff04b79e231d099c0a28ed83aa82af91fd5fa9fdb28f5b8d5addaf \ - --hash=sha256:847e8d1017c741c735d3cd1883fa7b03ded4f825a6e5fcb9378fd813edee995f \ - --hash=sha256:84efb46e8d881bb06b35d1d541aa87f574b58e87f781cbba8d200daa835b42e1 \ - --hash=sha256:898f1d306298ff40dc1b9ca24824f0488f6f039bc0e25cfb549d3195ffa17088 \ - --hash=sha256:8b451d6ead6e3500b6ce5c7916a43d8d8d25ad74b9102a629baccc0808c54971 \ - --hash=sha256:8f06be50669087250f319b706decf69ca71fdecd829091a37cc89398ca4dc17a \ - --hash=sha256:92a23b0431941a33242b1f0ce6c88a952e09feeea9af4e8be48236a68ffe2205 \ - --hash=sha256:93139acd8109edcdeffd85e3af8ae7d88b258b3a1e13a038f542b79b6d255c54 \ - --hash=sha256:98533fd7fa764e5f85eebe56c8e4094db912ccbe6fbf3a58778d543cadd0db08 \ - --hash=sha256:9f665d1e6474af9f9da5e86c2a3a2d2d6204e04d5af9c06b9d42afa6ebde3f21 \ - --hash=sha256:b059ac2c4c7a97daafa7dc850b43b2d3667def858a4f112d1aa082e5c3d6cf7d \ - --hash=sha256:b1be1c872b9b5fcc229adeadbeb51422a9633abd847c0ff87dc4ef9bb184ae08 \ - --hash=sha256:b7cf63d2c6928b51d35dfdbda6f2c1fddbe51a6bc4a9d4ee6ea0e11670dd981e \ - --hash=sha256:bc2e3069569ea9dbe88d6b8ea38f439a6aad8f6e7a6283a38edf61ddefb3a9bf \ - --hash=sha256:bcf1207e2f2385a576832af02702de104be71301c2696d0012b1b93fe34aaa5b \ - --hash=sha256:ca26ba5767888c84bf5a0c1a32f069e8204ce8c21d00a49c90dabeba00ce0145 \ - --hash=sha256:cbe68deb8580462ca0d9eb56a81912f59eb4542e1ef8f987405e35a0179f4ea2 \ - --hash=sha256:d6caf3cd38449ec3cd8a68b375e0c6fe4b6fd04edb6c9766b55ef84a6e8ddf2d \ - --hash=sha256:d72967b06be9300fed5cfbc8b5bafceec48bf7cdc7dab66b1d2549035287191d \ - --hash=sha256:d889b53ae2f030f756e61a7bff13684dcd77e9af8b10c6048fb2c559d6ed6eaf \ - --hash=sha256:de596695a75496deb3b499c8c4f8e60376e0516e1a774e7bc046f0f48cd620ad \ - --hash=sha256:e6a90167bcca1216606223a05e2cf991bb25b14695c518bc65639463d7db722d \ - --hash=sha256:ed2d9c0704f2dc4fa980b99d565c0c9a543fe5101c25b3d60488b8ba80f0cce1 \ - --hash=sha256:ee7810cf7c83fa227ba9125de6084e5e8b08c59038a7b2c9045ef4dde61663b4 \ - --hash=sha256:f0b4b06da13275bc02adfeb82643c4a6385bd08d26f03068c2796f60d125f6f2 \ - --hash=sha256:f11c9102c56ffb9ca87134bd025a43d2aba3f1155f508eff88f694b33a9c6d19 \ - --hash=sha256:f5bb289bb835f9fe1a1e9300d011eef4d69661bb9b34d5e196e5e82c4cb09b37 \ - --hash=sha256:f6d3d4c905e26354e8f9d82548475c46d8e0889538cb0657aa9c6f0872a37aa4 \ - --hash=sha256:fcb59711009b0168d6ee0bd8fb5eb259c4ab1717b2f538bbf36bacf207ef7a68 \ - --hash=sha256:fd2a5403a75b54661182b75ec6132437a181209b901446ee5724b589af8edef1 +pillow==10.2.0 ; python_version >= "3.9" and python_version < "4.0" \ + --hash=sha256:0304004f8067386b477d20a518b50f3fa658a28d44e4116970abfcd94fac34a8 \ + --hash=sha256:0689b5a8c5288bc0504d9fcee48f61a6a586b9b98514d7d29b840143d6734f39 \ + --hash=sha256:0eae2073305f451d8ecacb5474997c08569fb4eb4ac231ffa4ad7d342fdc25ac \ + --hash=sha256:0fb3e7fc88a14eacd303e90481ad983fd5b69c761e9e6ef94c983f91025da869 \ + --hash=sha256:11fa2e5984b949b0dd6d7a94d967743d87c577ff0b83392f17cb3990d0d2fd6e \ + --hash=sha256:127cee571038f252a552760076407f9cff79761c3d436a12af6000cd182a9d04 \ + --hash=sha256:154e939c5f0053a383de4fd3d3da48d9427a7e985f58af8e94d0b3c9fcfcf4f9 \ + --hash=sha256:15587643b9e5eb26c48e49a7b33659790d28f190fc514a322d55da2fb5c2950e \ + --hash=sha256:170aeb00224ab3dc54230c797f8404507240dd868cf52066f66a41b33169bdbe \ + --hash=sha256:1b5e1b74d1bd1b78bc3477528919414874748dd363e6272efd5abf7654e68bef \ + --hash=sha256:1da3b2703afd040cf65ec97efea81cfba59cdbed9c11d8efc5ab09df9509fc56 \ + --hash=sha256:1e23412b5c41e58cec602f1135c57dfcf15482013ce6e5f093a86db69646a5aa \ + --hash=sha256:2247178effb34a77c11c0e8ac355c7a741ceca0a732b27bf11e747bbc950722f \ + --hash=sha256:257d8788df5ca62c980314053197f4d46eefedf4e6175bc9412f14412ec4ea2f \ + --hash=sha256:3031709084b6e7852d00479fd1d310b07d0ba82765f973b543c8af5061cf990e \ + --hash=sha256:322209c642aabdd6207517e9739c704dc9f9db943015535783239022002f054a \ + --hash=sha256:322bdf3c9b556e9ffb18f93462e5f749d3444ce081290352c6070d014c93feb2 \ + --hash=sha256:33870dc4653c5017bf4c8873e5488d8f8d5f8935e2f1fb9a2208c47cdd66efd2 \ + --hash=sha256:35bb52c37f256f662abdfa49d2dfa6ce5d93281d323a9af377a120e89a9eafb5 \ + --hash=sha256:3c31822339516fb3c82d03f30e22b1d038da87ef27b6a78c9549888f8ceda39a \ + --hash=sha256:3eedd52442c0a5ff4f887fab0c1c0bb164d8635b32c894bc1faf4c618dd89df2 \ + --hash=sha256:3ff074fc97dd4e80543a3e91f69d58889baf2002b6be64347ea8cf5533188213 \ + --hash=sha256:47c0995fc4e7f79b5cfcab1fc437ff2890b770440f7696a3ba065ee0fd496563 \ + --hash=sha256:49d9ba1ed0ef3e061088cd1e7538a0759aab559e2e0a80a36f9fd9d8c0c21591 \ + --hash=sha256:51f1a1bffc50e2e9492e87d8e09a17c5eea8409cda8d3f277eb6edc82813c17c \ + --hash=sha256:52a50aa3fb3acb9cf7213573ef55d31d6eca37f5709c69e6858fe3bc04a5c2a2 \ + --hash=sha256:54f1852cd531aa981bc0965b7d609f5f6cc8ce8c41b1139f6ed6b3c54ab82bfb \ + --hash=sha256:609448742444d9290fd687940ac0b57fb35e6fd92bdb65386e08e99af60bf757 \ + --hash=sha256:69ffdd6120a4737710a9eee73e1d2e37db89b620f702754b8f6e62594471dee0 \ + --hash=sha256:6fad5ff2f13d69b7e74ce5b4ecd12cc0ec530fcee76356cac6742785ff71c452 \ + --hash=sha256:7049e301399273a0136ff39b84c3678e314f2158f50f517bc50285fb5ec847ad \ + --hash=sha256:70c61d4c475835a19b3a5aa42492409878bbca7438554a1f89d20d58a7c75c01 \ + --hash=sha256:716d30ed977be8b37d3ef185fecb9e5a1d62d110dfbdcd1e2a122ab46fddb03f \ + --hash=sha256:753cd8f2086b2b80180d9b3010dd4ed147efc167c90d3bf593fe2af21265e5a5 \ + --hash=sha256:773efe0603db30c281521a7c0214cad7836c03b8ccff897beae9b47c0b657d61 \ + --hash=sha256:7823bdd049099efa16e4246bdf15e5a13dbb18a51b68fa06d6c1d4d8b99a796e \ + --hash=sha256:7c8f97e8e7a9009bcacbe3766a36175056c12f9a44e6e6f2d5caad06dcfbf03b \ + --hash=sha256:823ef7a27cf86df6597fa0671066c1b596f69eba53efa3d1e1cb8b30f3533068 \ + --hash=sha256:8373c6c251f7ef8bda6675dd6d2b3a0fcc31edf1201266b5cf608b62a37407f9 \ + --hash=sha256:83b2021f2ade7d1ed556bc50a399127d7fb245e725aa0113ebd05cfe88aaf588 \ + --hash=sha256:870ea1ada0899fd0b79643990809323b389d4d1d46c192f97342eeb6ee0b8483 \ + --hash=sha256:8d12251f02d69d8310b046e82572ed486685c38f02176bd08baf216746eb947f \ + --hash=sha256:9c23f307202661071d94b5e384e1e1dc7dfb972a28a2310e4ee16103e66ddb67 \ + --hash=sha256:9d189550615b4948f45252d7f005e53c2040cea1af5b60d6f79491a6e147eef7 \ + --hash=sha256:a086c2af425c5f62a65e12fbf385f7c9fcb8f107d0849dba5839461a129cf311 \ + --hash=sha256:a2b56ba36e05f973d450582fb015594aaa78834fefe8dfb8fcd79b93e64ba4c6 \ + --hash=sha256:aebb6044806f2e16ecc07b2a2637ee1ef67a11840a66752751714a0d924adf72 \ + --hash=sha256:b1b3020d90c2d8e1dae29cf3ce54f8094f7938460fb5ce8bc5c01450b01fbaf6 \ + --hash=sha256:b4b6b1e20608493548b1f32bce8cca185bf0480983890403d3b8753e44077129 \ + --hash=sha256:b6f491cdf80ae540738859d9766783e3b3c8e5bd37f5dfa0b76abdecc5081f13 \ + --hash=sha256:b792a349405fbc0163190fde0dc7b3fef3c9268292586cf5645598b48e63dc67 \ + --hash=sha256:b7c2286c23cd350b80d2fc9d424fc797575fb16f854b831d16fd47ceec078f2c \ + --hash=sha256:babf5acfede515f176833ed6028754cbcd0d206f7f614ea3447d67c33be12516 \ + --hash=sha256:c365fd1703040de1ec284b176d6af5abe21b427cb3a5ff68e0759e1e313a5e7e \ + --hash=sha256:c4225f5220f46b2fde568c74fca27ae9771536c2e29d7c04f4fb62c83275ac4e \ + --hash=sha256:c570f24be1e468e3f0ce7ef56a89a60f0e05b30a3669a459e419c6eac2c35364 \ + --hash=sha256:c6dafac9e0f2b3c78df97e79af707cdc5ef8e88208d686a4847bab8266870023 \ + --hash=sha256:c8de2789052ed501dd829e9cae8d3dcce7acb4777ea4a479c14521c942d395b1 \ + --hash=sha256:cb28c753fd5eb3dd859b4ee95de66cc62af91bcff5db5f2571d32a520baf1f04 \ + --hash=sha256:cb4c38abeef13c61d6916f264d4845fab99d7b711be96c326b84df9e3e0ff62d \ + --hash=sha256:d1b35bcd6c5543b9cb547dee3150c93008f8dd0f1fef78fc0cd2b141c5baf58a \ + --hash=sha256:d8e6aeb9201e655354b3ad049cb77d19813ad4ece0df1249d3c793de3774f8c7 \ + --hash=sha256:d8ecd059fdaf60c1963c58ceb8997b32e9dc1b911f5da5307aab614f1ce5c2fb \ + --hash=sha256:da2b52b37dad6d9ec64e653637a096905b258d2fc2b984c41ae7d08b938a67e4 \ + --hash=sha256:e87f0b2c78157e12d7686b27d63c070fd65d994e8ddae6f328e0dcf4a0cd007e \ + --hash=sha256:edca80cbfb2b68d7b56930b84a0e45ae1694aeba0541f798e908a49d66b837f1 \ + --hash=sha256:f379abd2f1e3dddb2b61bc67977a6b5a0a3f7485538bcc6f39ec76163891ee48 \ + --hash=sha256:fe4c15f6c9285dc54ce6553a3ce908ed37c8f3825b5a51a15c91442bb955b868 proto-plus==1.22.2 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:0e8cda3d5a634d9895b75c573c9352c16486cb75deb0e078b5fda34db4243165 \ --hash=sha256:de34e52d6c9c6fcd704192f09767cb561bb4ee64e70eede20b0834d841f0be4d @@ -565,6 +579,7 @@ pyyaml==6.0.1 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4 \ --hash=sha256:9046c58c4395dff28dd494285c82ba00b546adfc7ef001486fbf0324bc174fba \ --hash=sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8 \ + --hash=sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef \ --hash=sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5 \ --hash=sha256:afd7e57eddb1a54f0f1a974bc4391af8bcce0b444685d936840f125cf046d5bd \ --hash=sha256:b1275ad35a5d18c62a7220633c913e1b42d44b46ee12554e5fd39c70a243d6a3 \ From 673fd2a18ad29fa3f96de32af0639f16e7304536 Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Mon, 22 Jan 2024 22:35:54 -0500 Subject: [PATCH 151/181] Fixing styling issues --- physionet-django/console/views.py | 8 -------- 1 file changed, 8 deletions(-) diff --git a/physionet-django/console/views.py b/physionet-django/console/views.py index acba23b44c..dab8cce4c9 100644 --- a/physionet-django/console/views.py +++ b/physionet-django/console/views.py @@ -2024,14 +2024,6 @@ def guidelines_review(request): return render(request, 'console/guidelines_review.html', {'guidelines_review_nav': True}) -@permission_required('training.can_view_course_guidelines', raise_exception=True) -def guidelines_course(request): - """ - Guidelines for course creators. - """ - return render(request, 'console/guidelines_course.html', - {'guidelines_course_nav': True}) - @permission_required('training.can_view_course_guidelines', raise_exception=True) def guidelines_course(request): From ba4df7fce10bfe5a2990ad3dca3e543c8b137b73 Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 24 Jan 2024 10:01:26 -0500 Subject: [PATCH 152/181] seperated the create & update training into respective pages. --- physionet-django/console/navbar.py | 2 + .../console/training_type/course_details.html | 48 ++++++++++- .../console/training_type/index.html | 6 +- physionet-django/training/views.py | 82 +++++++++++++------ 4 files changed, 107 insertions(+), 31 deletions(-) diff --git a/physionet-django/console/navbar.py b/physionet-django/console/navbar.py index 25c7968423..62ceab2c66 100644 --- a/physionet-django/console/navbar.py +++ b/physionet-django/console/navbar.py @@ -163,6 +163,8 @@ def get_menu_items(self, request): NavLink(_('Training check'), 'training_list', 'school', view_args=['review']), + + NavLink(_('courses'), 'courses', 'school'), NavSubmenu(_('Events'), 'events', 'clipboard-list', [ NavLink(_('Active'), 'event_active'), diff --git a/physionet-django/console/templates/console/training_type/course_details.html b/physionet-django/console/templates/console/training_type/course_details.html index 5c7cd5655f..2388ed686a 100644 --- a/physionet-django/console/templates/console/training_type/course_details.html +++ b/physionet-django/console/templates/console/training_type/course_details.html @@ -5,10 +5,56 @@ {% block title %}{{ training_type }}{% endblock %} {% block content %} + +
    {{ training_type }}
    + +
    +
    +
    +
    +
    +

    Active Versions

    @@ -70,4 +116,4 @@

    Archived Versions

    -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/physionet-django/console/templates/console/training_type/index.html b/physionet-django/console/templates/console/training_type/index.html index 0164428da6..f847d37be8 100644 --- a/physionet-django/console/templates/console/training_type/index.html +++ b/physionet-django/console/templates/console/training_type/index.html @@ -24,7 +24,7 @@
    + data-target="#create-course">Create
    @@ -58,11 +58,7 @@
    diff --git a/physionet-django/training/views.py b/physionet-django/training/views.py index 827ca6ee46..cce3e853e7 100644 --- a/physionet-django/training/views.py +++ b/physionet-django/training/views.py @@ -23,9 +23,11 @@ from training.models import Course, Quiz, QuizChoice, ContentBlock from training.models import CourseProgress, ModuleProgress, CompletedContent, CompletedQuiz from training.serializers import TrainingTypeSerializer, CourseSerializer +from console.views import console_permission_required @permission_required('training.change_course', raise_exception=True) +@console_permission_required('training.change_course') def courses(request): """ View function for managing courses. @@ -51,29 +53,12 @@ def courses(request): messages.error(request, 'JSON file is not properly formatted.') return redirect("courses") - # Checking if the Training type with the same version already exists - existing_course = Course.objects.filter(training_type=training_type) - if existing_course.exists(): - existing_course_version = existing_course.order_by('-version').first().version - new_course_version = file_data['courses'][0]['version'] - # checking if the new course file has a valid version - if validate_version(new_course_version) is not None: - messages.error(request, 'Version number is not valid.') - # checking if the version number is greater than the existing version - elif not is_version_greater(new_course_version, existing_course_version): - messages.error(request, 'Version number should be greater than the existing version.') - else: - serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) - if serializer.is_valid(raise_exception=False): - serializer.save() - messages.success(request, 'Course updated successfully.') + serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + if serializer.is_valid(raise_exception=False): + serializer.save() + messages.success(request, 'Training Type created successfully.') else: - serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) - if serializer.is_valid(raise_exception=False): - serializer.save() - messages.success(request, 'Course created successfully.') - else: - messages.error(request, serializer.errors) + messages.error(request, serializer.errors) return redirect("courses") @@ -86,14 +71,48 @@ def courses(request): 'training_type_nav': True, }) - @permission_required('training.change_course', raise_exception=True) +@console_permission_required('training.change_course') def course_details(request, pk): """ View function for managing courses. Allows managing the version of the courses for a given training type. Allows expiring the specific version of the course. """ + if request.POST: + training_type = get_object_or_404(TrainingType, pk=pk) + json_file = request.FILES.get("json_file", "") + + if not json_file.name.endswith('.json'): + messages.warning(request, 'File is not of JSON type') + return redirect("courses") + + # Checking if the content of the JSON file is properly formatted and according to the schema + try: + file_data = JSONParser().parse(json_file.file) + except json.decoder.JSONDecodeError: + messages.error(request, 'JSON file is not properly formatted.') + return redirect("courses") + + # Checking if the Training type with the same version already exists + existing_course = Course.objects.filter(training_type=training_type) + if existing_course.exists(): + existing_course_version = existing_course.order_by('-version').first().version + new_course_version = file_data['courses'][0]['version'] + # checking if the new course file has a valid version + if validate_version(new_course_version) is not None: + messages.error(request, 'Version number is not valid.') + # checking if the version number is greater than the existing version + elif not is_version_greater(new_course_version, existing_course_version): + messages.error(request, 'Version number should be greater than the existing version.') + else: + serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + if serializer.is_valid(raise_exception=False): + serializer.save() + messages.success(request, 'Course updated successfully.') + + return redirect("course_details", pk=pk) + training_type = get_object_or_404(TrainingType, pk=pk) active_course_versions = Course.objects.filter(training_type=training_type, is_active=True).order_by('-version') inactive_course_versions = Course.objects.filter(training_type=training_type, is_active=False).order_by('-version') @@ -109,6 +128,7 @@ def course_details(request, pk): @permission_required('training.change_course', raise_exception=True) +@console_permission_required('training.change_course') def expire_course(request, pk, version): """ This view takes a primary key and a version number as input parameters, @@ -128,13 +148,16 @@ def expire_course(request, pk, version): @permission_required('training.change_course', raise_exception=True) +@console_permission_required('training.change_course') def download_course(request, pk, version): """ This view takes a primary key and a version number as input parameters, and returns a JSON response containing information about the training course with the specified primary key and version number. """ - course = Course.objects.filter(training_type__pk=pk, version=version).first() + # course = Course.objects.filter(training_type__pk=pk, version=version).first() + training_type = get_object_or_404(TrainingType, pk=pk) + course = training_type.courses.filter(version=version).first() if not course: messages.error(request, 'Course not found') return redirect('courses') @@ -143,7 +166,16 @@ def download_course(request, pk, version): messages.error(request, 'Only onplatform course can be downloaded') return redirect('courses') - serializer = CourseSerializer(course) + # Creating the training_type_course object that contains on the specific version of the course + current_course_training_type = { + "name": training_type.name, + "description": training_type.description, + "valid_duration": training_type.valid_duration, + "courses": [course] + } + + # serializer = CourseSerializer(course) + serializer = TrainingTypeSerializer(current_course_training_type) response_data = serializer.data response = JsonResponse(response_data, safe=False, json_dumps_params={'indent': 2}) response['Content-Disposition'] = f'attachment; filename={training_type.name}--version-{version}.json' From 30c5687da46c3c665ac5fe326898974e6ecde2c5 Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 24 Jan 2024 10:06:53 -0500 Subject: [PATCH 153/181] fixing styling changes --- physionet-django/console/navbar.py | 2 +- physionet-django/training/views.py | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/physionet-django/console/navbar.py b/physionet-django/console/navbar.py index 62ceab2c66..62e6d7a2e7 100644 --- a/physionet-django/console/navbar.py +++ b/physionet-django/console/navbar.py @@ -163,7 +163,7 @@ def get_menu_items(self, request): NavLink(_('Training check'), 'training_list', 'school', view_args=['review']), - + NavLink(_('courses'), 'courses', 'school'), NavSubmenu(_('Events'), 'events', 'clipboard-list', [ diff --git a/physionet-django/training/views.py b/physionet-django/training/views.py index cce3e853e7..ccdbc40ae5 100644 --- a/physionet-django/training/views.py +++ b/physionet-django/training/views.py @@ -71,6 +71,7 @@ def courses(request): 'training_type_nav': True, }) + @permission_required('training.change_course', raise_exception=True) @console_permission_required('training.change_course') def course_details(request, pk): From 770295285d8f4f71f484fa396b9960f203ee8c14 Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Tue, 30 Jan 2024 23:10:15 -0500 Subject: [PATCH 154/181] Allow news items to be linked to all versions of a project. --- physionet-django/console/forms.py | 2 +- physionet-django/notification/models.py | 13 +++++++++++-- .../modelcomponents/publishedproject.py | 18 ++++++++++++++++++ physionet-django/project/views.py | 2 +- 4 files changed, 31 insertions(+), 4 deletions(-) diff --git a/physionet-django/console/forms.py b/physionet-django/console/forms.py index e1ec6393a4..943bd5c33f 100644 --- a/physionet-django/console/forms.py +++ b/physionet-django/console/forms.py @@ -632,7 +632,7 @@ class NewsForm(forms.ModelForm): class Meta: model = News - fields = ('slug', 'title', 'content', 'url', 'project', 'front_page_banner') + fields = ('slug', 'title', 'content', 'url', 'project', 'link_all_versions', 'front_page_banner') class FeaturedForm(forms.Form): diff --git a/physionet-django/notification/models.py b/physionet-django/notification/models.py index 1cae1c82f1..5a2f88a0da 100644 --- a/physionet-django/notification/models.py +++ b/physionet-django/notification/models.py @@ -13,8 +13,17 @@ class News(models.Model): content = SafeHTMLField() publish_datetime = models.DateTimeField(auto_now_add=True) url = models.URLField(default='', blank=True) - project = models.ForeignKey('project.PublishedProject', null=True, blank=True, - on_delete=models.SET_NULL, related_name='news') + project = models.ForeignKey( + 'project.PublishedProject', + null=True, + blank=True, + on_delete=models.SET_NULL, + related_name='news' + ) + link_all_versions = models.BooleanField( + default=False, + help_text='Check this to link the news item to all versions of the selected project' + ) guid = models.CharField(max_length=64, default=uuid.uuid4) front_page_banner = models.BooleanField(default=False) slug = models.SlugField(max_length=100, unique=True) diff --git a/physionet-django/project/modelcomponents/publishedproject.py b/physionet-django/project/modelcomponents/publishedproject.py index 7d112eb831..9b5d25a89d 100644 --- a/physionet-django/project/modelcomponents/publishedproject.py +++ b/physionet-django/project/modelcomponents/publishedproject.py @@ -8,6 +8,8 @@ from django.urls import reverse from django.utils import timezone from django.utils.text import slugify + +from notification.models import News from project.managers.publishedproject import PublishedProjectManager from project.modelcomponents.access import DataAccessRequest, DataAccessRequestReviewer, DUASignature from project.modelcomponents.fields import SafeHTMLField @@ -377,3 +379,19 @@ def embargo_active(self): return True else: return False + + def get_all_news(self): + """ + Return all news items associated with this project. If any news item has + 'link_all_versions' set to True, include those news too. + """ + # Fetch news items directly related to this PublishedProject + direct_news = self.news.all() + + # Fetch news items related to other PublishedProjects where the + # link_all_versions flag is set to True + linked_news = News.objects.filter( + project__core_project=self.core_project, + link_all_versions=True).exclude(project=self) + + return direct_news | linked_news diff --git a/physionet-django/project/views.py b/physionet-django/project/views.py index 3dc934ed0e..f66e803e7a 100644 --- a/physionet-django/project/views.py +++ b/physionet-django/project/views.py @@ -1863,7 +1863,7 @@ def published_project(request, project_slug, version, subdir=''): topics = project.topics.all() languages = project.programming_languages.all() contact = project.contact - news = project.news.all().order_by('-publish_datetime') + news = project.get_all_news().order_by('-publish_datetime') parent_projects = project.parent_projects.all() # derived_projects = project.derived_publishedprojects.all() data_access = DataAccess.objects.filter(project=project) From b0cb2ac4c21f08ce09791d9fb7b71b463d4086d7 Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Tue, 30 Jan 2024 23:10:39 -0500 Subject: [PATCH 155/181] Add 'link_all_versions' flag to News model. --- .../migrations/0010_news_link_all_versions.py | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 physionet-django/notification/migrations/0010_news_link_all_versions.py diff --git a/physionet-django/notification/migrations/0010_news_link_all_versions.py b/physionet-django/notification/migrations/0010_news_link_all_versions.py new file mode 100644 index 0000000000..f79b721590 --- /dev/null +++ b/physionet-django/notification/migrations/0010_news_link_all_versions.py @@ -0,0 +1,20 @@ +# Generated by Django 4.1.10 on 2024-01-30 20:50 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + dependencies = [ + ("notification", "0009_alter_news_slug"), + ] + + operations = [ + migrations.AddField( + model_name="news", + name="link_all_versions", + field=models.BooleanField( + default=False, + help_text="Check this to link the news item to all versions of the selected project", + ), + ), + ] From 561190a9b7a1e199f5b22f46d0b689dfc6c8a313 Mon Sep 17 00:00:00 2001 From: Michael Scanlan Date: Wed, 31 Jan 2024 14:49:39 -0500 Subject: [PATCH 156/181] Add striptags to event description --- .../console/templates/console/event_management.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/physionet-django/console/templates/console/event_management.html b/physionet-django/console/templates/console/event_management.html index c7c0839f6a..2e97085ae4 100644 --- a/physionet-django/console/templates/console/event_management.html +++ b/physionet-django/console/templates/console/event_management.html @@ -56,7 +56,7 @@

    {{ event.title }}

    Description:
    -
    {{ event.description|escape }}
    +
    {{ event.description|striptags }}
    From 0bc4fa038c4522ebd4564d9a4757914bda3f3259 Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 7 Feb 2024 17:21:16 -0500 Subject: [PATCH 157/181] Updated the sample json files to accurately reflect the current schema --- physionet-django/console/navbar.py | 2 +- physionet-django/static/sample/create-course-schema.json | 2 +- physionet-django/static/sample/example-course-create.json | 2 +- physionet-django/static/sample/example-course-update.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/physionet-django/console/navbar.py b/physionet-django/console/navbar.py index 62e6d7a2e7..0a1164e134 100644 --- a/physionet-django/console/navbar.py +++ b/physionet-django/console/navbar.py @@ -164,7 +164,7 @@ def get_menu_items(self, request): NavLink(_('Training check'), 'training_list', 'school', view_args=['review']), - NavLink(_('courses'), 'courses', 'school'), + NavLink(_('Courses'), 'courses', 'chalkboard-teacher'), NavSubmenu(_('Events'), 'events', 'clipboard-list', [ NavLink(_('Active'), 'event_active'), diff --git a/physionet-django/static/sample/create-course-schema.json b/physionet-django/static/sample/create-course-schema.json index c2f370c2c9..fc5942a96f 100644 --- a/physionet-django/static/sample/create-course-schema.json +++ b/physionet-django/static/sample/create-course-schema.json @@ -4,7 +4,7 @@ "valid_duration": "string", "courses": [ { - "version": "float", + "version": "string", "modules": [ { "contents": [ diff --git a/physionet-django/static/sample/example-course-create.json b/physionet-django/static/sample/example-course-create.json index 6d6e95e958..e22ad873c6 100644 --- a/physionet-django/static/sample/example-course-create.json +++ b/physionet-django/static/sample/example-course-create.json @@ -4,7 +4,7 @@ "valid_duration": "1095 00:00:00", "courses": [ { - "version": 1.0, + "version": "1.0.0", "modules": [ { "name": "Module 1", diff --git a/physionet-django/static/sample/example-course-update.json b/physionet-django/static/sample/example-course-update.json index cb3a3fc014..e688064dbb 100644 --- a/physionet-django/static/sample/example-course-update.json +++ b/physionet-django/static/sample/example-course-update.json @@ -4,7 +4,7 @@ "valid_duration": "1095 00:00:00", "courses": [ { - "version": 1.1, + "version": "1.2.0", "modules": [ { "name": "Module 1 Updated", From fa78607f55d53a4c27eca115030380b525fafb8c Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 7 Feb 2024 21:02:13 -0500 Subject: [PATCH 158/181] Cleaned the files and added a brief explanation on the field --- physionet-django/console/templates/console/console_navbar.html | 2 +- .../templates/console/training_type/course_details.html | 3 +++ .../console/templates/console/training_type/index.html | 2 +- .../templates/training/email/training_expiry_notification.html | 2 +- 4 files changed, 6 insertions(+), 3 deletions(-) diff --git a/physionet-django/console/templates/console/console_navbar.html b/physionet-django/console/templates/console/console_navbar.html index c987620b2c..61f96aceaf 100644 --- a/physionet-django/console/templates/console/console_navbar.html +++ b/physionet-django/console/templates/console/console_navbar.html @@ -66,4 +66,4 @@ - \ No newline at end of file + diff --git a/physionet-django/console/templates/console/training_type/course_details.html b/physionet-django/console/templates/console/training_type/course_details.html index 2388ed686a..92e12d2f88 100644 --- a/physionet-django/console/templates/console/training_type/course_details.html +++ b/physionet-django/console/templates/console/training_type/course_details.html @@ -89,6 +89,9 @@

    Active Versions

    {% endfor %}
    +

    Note: Users that have taken the particular version of the course that is getting expired, + will need to retake the course or else they will loose credentialing after the number of + days specified above while expiring the course.

    Archived Versions

    diff --git a/physionet-django/console/templates/console/training_type/index.html b/physionet-django/console/templates/console/training_type/index.html index f847d37be8..69ae86eb2b 100644 --- a/physionet-django/console/templates/console/training_type/index.html +++ b/physionet-django/console/templates/console/training_type/index.html @@ -77,4 +77,4 @@
    -{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/physionet-django/training/templates/training/email/training_expiry_notification.html b/physionet-django/training/templates/training/email/training_expiry_notification.html index 4ff1d7054d..3155d5d553 100644 --- a/physionet-django/training/templates/training/email/training_expiry_notification.html +++ b/physionet-django/training/templates/training/email/training_expiry_notification.html @@ -8,4 +8,4 @@ Regards The {{ SITE_NAME }} Team -{% endfilter %}{% endautoescape %} \ No newline at end of file +{% endfilter %}{% endautoescape %} From 630bdd2f4307a766ed0f2ae39e4143fd9c86d0af Mon Sep 17 00:00:00 2001 From: Benjamin Moody Date: Thu, 8 Feb 2024 12:24:50 -0500 Subject: [PATCH 159/181] LinkFilter: permit relative subresource URLs even without base_url. The LinkFilter class is used to sanitize and normalize URL attributes in uploaded HTML content. In the case of subresources (such as images) we want to disallow any that point to an external server. This was broken in the case of subresource URLs that were already host-relative or document-relative, in the case where the document URL (base_url) was unspecified. For example, if the base_url was set to 'https://example.com/foo/' and the input was '', the URL would be resolved to 'https://example.com/foo/xyz.jpg', which would then be normalized to '/foo/xyz.jpg', which would be allowed. But if the input was '' and the base_url was None, this would be rejected. SafeHTMLField invokes LinkFilter with base_url set to None, because SafeHTMLField itself has no idea what URL or URLs will be used for publishing the content. But using a host-relative or even a document-relative URL should always be "safe". (In some cases we might *want* to disallow document-relative URLs, which is why we have Metadata.update_internal_links(); but that shouldn't be a security concern.) --- physionet-django/project/utility.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/physionet-django/project/utility.py b/physionet-django/project/utility.py index 64f623941d..81825d0acb 100644 --- a/physionet-django/project/utility.py +++ b/physionet-django/project/utility.py @@ -667,7 +667,7 @@ def convert_url(self, attr_name, url): if scheme in ('http', 'https') and self.my_netloc_re.fullmatch(netloc): url = urllib.parse.urlunparse(('', '', path, params, query, fragment)) - elif attr_name == 'src': + elif (scheme or netloc) and attr_name == 'src': # Discard cross-domain subresources return None From 654f8ea49fcd0519a719e4a646a52591a81c44ee Mon Sep 17 00:00:00 2001 From: Benjamin Moody Date: Thu, 8 Feb 2024 12:54:12 -0500 Subject: [PATCH 160/181] Add more tests for src-attribute sanitization. (Note that the hostname "testserver" seems to be hardcoded in the Django test framework.) --- physionet-django/project/test_views.py | 10 ++++++++-- physionet-django/project/utility.py | 2 ++ 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/physionet-django/project/test_views.py b/physionet-django/project/test_views.py index a31d89c565..64b74d90a3 100644 --- a/physionet-django/project/test_views.py +++ b/physionet-django/project/test_views.py @@ -520,7 +520,10 @@ def test_content(self): 227, some ambiguous characters & < >,
    invalid tags
    , - invalid attributes + invalid attributes, + full URL to image, + partial URL to image, + cross-domain

    """ @@ -532,7 +535,10 @@ def test_content(self): 227, some ambiguous characters & < >, <form>invalid tags</form>, - invalid attributes + invalid attributes, + full URL to image, + partial URL to image, + cross-domain

    """ diff --git a/physionet-django/project/utility.py b/physionet-django/project/utility.py index 81825d0acb..587ffedfdc 100644 --- a/physionet-django/project/utility.py +++ b/physionet-django/project/utility.py @@ -551,6 +551,8 @@ class LinkFilter: >>> f = LinkFilter(my_hostnames=['example.com']) >>> f.convert('') '' + >>> f.convert('') + '' >>> f.convert('') '' From eb66be2d55b3ec3098972ca339542f06814aba38 Mon Sep 17 00:00:00 2001 From: Benjamin Moody Date: Thu, 8 Feb 2024 13:28:43 -0500 Subject: [PATCH 161/181] Skip lightwave URL tests if sandboxed-lightwave isn't installed. This duplicates the logic from physionet/urls.py. Perhaps it should be done more cleanly. --- physionet-django/lightwave/urls.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/physionet-django/lightwave/urls.py b/physionet-django/lightwave/urls.py index c3d2211f49..433d754f91 100644 --- a/physionet-django/lightwave/urls.py +++ b/physionet-django/lightwave/urls.py @@ -1,3 +1,5 @@ +import shutil + from django.urls import path from lightwave import views @@ -17,3 +19,11 @@ 'project_slug': 'SHuKI1APLrwWCqxSQnSk', '_user_': 'rgmark', } +TEST_CASES = { + 'lightwave_server': { + '_skip_': lambda: (shutil.which('sandboxed-lightwave') is None), + }, + 'lightwave_project_server': { + '_skip_': lambda: (shutil.which('sandboxed-lightwave') is None), + }, +} From 5e8f24e2e71b55845c1dd2948a02982a8bcf933e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 11 Feb 2024 05:24:03 +0000 Subject: [PATCH 162/181] Bump grpcio from 1.53.0 to 1.53.2 Bumps [grpcio](https://github.com/grpc/grpc) from 1.53.0 to 1.53.2. - [Release notes](https://github.com/grpc/grpc/releases) - [Changelog](https://github.com/grpc/grpc/blob/master/doc/grpc_release_schedule.md) - [Commits](https://github.com/grpc/grpc/compare/v1.53.0...v1.53.2) --- updated-dependencies: - dependency-name: grpcio dependency-type: indirect ... Signed-off-by: dependabot[bot] --- poetry.lock | 94 ++++++++++++++++++++++++++--------------------------- 1 file changed, 47 insertions(+), 47 deletions(-) diff --git a/poetry.lock b/poetry.lock index f7478c624f..070b935059 100644 --- a/poetry.lock +++ b/poetry.lock @@ -737,60 +737,60 @@ grpc = ["grpcio (>=1.44.0,<2.0.0dev)"] [[package]] name = "grpcio" -version = "1.53.0" +version = "1.53.2" description = "HTTP/2-based RPC framework" optional = false python-versions = ">=3.7" files = [ - {file = "grpcio-1.53.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:752d2949b40e12e6ad3ed8cc552a65b54d226504f6b1fb67cab2ccee502cc06f"}, - {file = "grpcio-1.53.0-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:8a48fd3a7222be226bb86b7b413ad248f17f3101a524018cdc4562eeae1eb2a3"}, - {file = "grpcio-1.53.0-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:f3e837d29f0e1b9d6e7b29d569e2e9b0da61889e41879832ea15569c251c303a"}, - {file = "grpcio-1.53.0-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:aef7d30242409c3aa5839b501e877e453a2c8d3759ca8230dd5a21cda029f046"}, - {file = "grpcio-1.53.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:e6f90698b5d1c5dd7b3236cd1fa959d7b80e17923f918d5be020b65f1c78b173"}, - {file = "grpcio-1.53.0-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:a96c3c7f564b263c5d7c0e49a337166c8611e89c4c919f66dba7b9a84abad137"}, - {file = "grpcio-1.53.0-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:ee81349411648d1abc94095c68cd25e3c2812e4e0367f9a9355be1e804a5135c"}, - {file = "grpcio-1.53.0-cp310-cp310-win32.whl", hash = "sha256:fdc6191587de410a184550d4143e2b24a14df495c86ca15e59508710681690ac"}, - {file = "grpcio-1.53.0-cp310-cp310-win_amd64.whl", hash = "sha256:658ffe1e39171be00490db5bd3b966f79634ac4215a1eb9a85c6cd6783bf7f6e"}, - {file = "grpcio-1.53.0-cp311-cp311-linux_armv7l.whl", hash = "sha256:1b172e6d497191940c4b8d75b53de82dc252e15b61de2951d577ec5b43316b29"}, - {file = "grpcio-1.53.0-cp311-cp311-macosx_10_10_universal2.whl", hash = "sha256:82434ba3a5935e47908bc861ce1ebc43c2edfc1001d235d6e31e5d3ed55815f7"}, - {file = "grpcio-1.53.0-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:1c734a2d4843e4e14ececf5600c3c4750990ec319e1299db7e4f0d02c25c1467"}, - {file = "grpcio-1.53.0-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b6a2ead3de3b2d53119d473aa2f224030257ef33af1e4ddabd4afee1dea5f04c"}, - {file = "grpcio-1.53.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a34d6e905f071f9b945cabbcc776e2055de1fdb59cd13683d9aa0a8f265b5bf9"}, - {file = "grpcio-1.53.0-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:eaf8e3b97caaf9415227a3c6ca5aa8d800fecadd526538d2bf8f11af783f1550"}, - {file = "grpcio-1.53.0-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:da95778d37be8e4e9afca771a83424f892296f5dfb2a100eda2571a1d8bbc0dc"}, - {file = "grpcio-1.53.0-cp311-cp311-win32.whl", hash = "sha256:e4f513d63df6336fd84b74b701f17d1bb3b64e9d78a6ed5b5e8a198bbbe8bbfa"}, - {file = "grpcio-1.53.0-cp311-cp311-win_amd64.whl", hash = "sha256:ddb2511fbbb440ed9e5c9a4b9b870f2ed649b7715859fd6f2ebc585ee85c0364"}, - {file = "grpcio-1.53.0-cp37-cp37m-linux_armv7l.whl", hash = "sha256:2a912397eb8d23c177d6d64e3c8bc46b8a1c7680b090d9f13a640b104aaec77c"}, - {file = "grpcio-1.53.0-cp37-cp37m-macosx_10_10_universal2.whl", hash = "sha256:55930c56b8f5b347d6c8c609cc341949a97e176c90f5cbb01d148d778f3bbd23"}, - {file = "grpcio-1.53.0-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:6601d812105583948ab9c6e403a7e2dba6e387cc678c010e74f2d6d589d1d1b3"}, - {file = "grpcio-1.53.0-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c705e0c21acb0e8478a00e7e773ad0ecdb34bd0e4adc282d3d2f51ba3961aac7"}, - {file = "grpcio-1.53.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba074af9ca268ad7b05d3fc2b920b5fb3c083da94ab63637aaf67f4f71ecb755"}, - {file = "grpcio-1.53.0-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:14817de09317dd7d3fbc8272864288320739973ef0f4b56bf2c0032349da8cdf"}, - {file = "grpcio-1.53.0-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:c7ad9fbedb93f331c2e9054e202e95cf825b885811f1bcbbdfdc301e451442db"}, - {file = "grpcio-1.53.0-cp37-cp37m-win_amd64.whl", hash = "sha256:dad5b302a4c21c604d88a5d441973f320134e6ff6a84ecef9c1139e5ffd466f6"}, - {file = "grpcio-1.53.0-cp38-cp38-linux_armv7l.whl", hash = "sha256:fa8eaac75d3107e3f5465f2c9e3bbd13db21790c6e45b7de1756eba16b050aca"}, - {file = "grpcio-1.53.0-cp38-cp38-macosx_10_10_universal2.whl", hash = "sha256:104a2210edd3776c38448b4f76c2f16e527adafbde171fc72a8a32976c20abc7"}, - {file = "grpcio-1.53.0-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:dbc1ba968639c1d23476f75c356e549e7bbf2d8d6688717dcab5290e88e8482b"}, - {file = "grpcio-1.53.0-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:95952d3fe795b06af29bb8ec7bbf3342cdd867fc17b77cc25e6733d23fa6c519"}, - {file = "grpcio-1.53.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f144a790f14c51b8a8e591eb5af40507ffee45ea6b818c2482f0457fec2e1a2e"}, - {file = "grpcio-1.53.0-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:0698c094688a2dd4c7c2f2c0e3e142cac439a64d1cef6904c97f6cde38ba422f"}, - {file = "grpcio-1.53.0-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:6b6d60b0958be711bab047e9f4df5dbbc40367955f8651232bfdcdd21450b9ab"}, - {file = "grpcio-1.53.0-cp38-cp38-win32.whl", hash = "sha256:1948539ce78805d4e6256ab0e048ec793956d54787dc9d6777df71c1d19c7f81"}, - {file = "grpcio-1.53.0-cp38-cp38-win_amd64.whl", hash = "sha256:df9ba1183b3f649210788cf80c239041dddcb375d6142d8bccafcfdf549522cd"}, - {file = "grpcio-1.53.0-cp39-cp39-linux_armv7l.whl", hash = "sha256:19caa5b7282a89b799e63776ff602bb39604f7ca98db6df27e2de06756ae86c3"}, - {file = "grpcio-1.53.0-cp39-cp39-macosx_10_10_universal2.whl", hash = "sha256:b5bd026ac928c96cc23149e6ef79183125542062eb6d1ccec34c0a37e02255e7"}, - {file = "grpcio-1.53.0-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:7dc8584ca6c015ad82e186e82f4c0fe977394588f66b8ecfc4ec873285314619"}, - {file = "grpcio-1.53.0-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2eddaae8af625e45b5c8500dcca1043264d751a6872cde2eda5022df8a336959"}, - {file = "grpcio-1.53.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c5fb6f3d7824696c1c9f2ad36ddb080ba5a86f2d929ef712d511b4d9972d3d27"}, - {file = "grpcio-1.53.0-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:8270d1dc2c98ab57e6dbf36fa187db8df4c036f04a398e5d5e25b4e01a766d70"}, - {file = "grpcio-1.53.0-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:976a7f24eb213e8429cab78d5e120500dfcdeb01041f1f5a77b17b9101902615"}, - {file = "grpcio-1.53.0-cp39-cp39-win32.whl", hash = "sha256:9c84a481451e7174f3a764a44150f93b041ab51045aa33d7b5b68b6979114e48"}, - {file = "grpcio-1.53.0-cp39-cp39-win_amd64.whl", hash = "sha256:6beb84f83360ff29a3654f43f251ec11b809dcb5524b698d711550243debd289"}, - {file = "grpcio-1.53.0.tar.gz", hash = "sha256:a4952899b4931a6ba12951f9a141ef3e74ff8a6ec9aa2dc602afa40f63595e33"}, + {file = "grpcio-1.53.2-cp310-cp310-linux_armv7l.whl", hash = "sha256:18afdda2bbe0c615da4daff754cab0df9bbd859c415d85e7e741a2975b3208b4"}, + {file = "grpcio-1.53.2-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:33f7678287ac330c94e25f96cdb951e0861e206115ba4d8ea66cf6546b1a09d0"}, + {file = "grpcio-1.53.2-cp310-cp310-manylinux_2_17_aarch64.whl", hash = "sha256:1af074f28a56425e4f4d99761708981543a27ae963f5b4b0a36ff71f3483479d"}, + {file = "grpcio-1.53.2-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df07843c8c0dc71a56d3af3dfe19165fb0d3af7d3354a72185f6fa1b4ac05cab"}, + {file = "grpcio-1.53.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b403c4ad22f3ba37c7720547d8888a1e4b74ad980a94332bbbc50330b623abc"}, + {file = "grpcio-1.53.2-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:6275a54b41d6b1ec539b019bc3affaf6d05b0a0ba36af1a65b8a2810ef69e07d"}, + {file = "grpcio-1.53.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:0e92dc6a85cd1de42527812ef1276095e62169d002d86c888b6e889fcda1dd29"}, + {file = "grpcio-1.53.2-cp310-cp310-win32.whl", hash = "sha256:6be86e8d5cf47415968588e5dfbfb92ee8757fb41139584192b67050d1a72c58"}, + {file = "grpcio-1.53.2-cp310-cp310-win_amd64.whl", hash = "sha256:5b49f372df33f5f84865aef5d46cacd23180b586c80e8cbe0ce149b96dfa8c4c"}, + {file = "grpcio-1.53.2-cp311-cp311-linux_armv7l.whl", hash = "sha256:8166ac6671472d172cc0db50323b7a7504bd534de54aa31354465a00ca44409d"}, + {file = "grpcio-1.53.2-cp311-cp311-macosx_10_10_universal2.whl", hash = "sha256:f7e66d8b31ef2bada7029275debbe12c97397ec7ac70a659837a7b8a6a9dc916"}, + {file = "grpcio-1.53.2-cp311-cp311-manylinux_2_17_aarch64.whl", hash = "sha256:712113946b303db9ae4245a13de213710367850a6c3c53530b70e87989feb8e0"}, + {file = "grpcio-1.53.2-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:f3761f9a6817e32898eaa5aecd0b0ad69d0c68ab45ea7bf206e8dc4548f025f0"}, + {file = "grpcio-1.53.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:24c63592103fded38b258f1e520ba8b0a7a0bbc397cddd6520a1f74dc4b5dec0"}, + {file = "grpcio-1.53.2-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:53d34cbf212f03634d74ba366d595b4a06a3b60fcc731eddbd6fd7ebe4acf981"}, + {file = "grpcio-1.53.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:3b789472e9ef75d179295d0c6a1f7f0aefd08189cd1c822b068b0523365a1dbe"}, + {file = "grpcio-1.53.2-cp311-cp311-win32.whl", hash = "sha256:7b44ed75b9d67d17e5a098a0f99a8fd3e5861fd3c4eb54212277a0acdf298434"}, + {file = "grpcio-1.53.2-cp311-cp311-win_amd64.whl", hash = "sha256:1d1a320230e0d020880178b8eb453300bd57700b44c3744268370502e7376a9b"}, + {file = "grpcio-1.53.2-cp37-cp37m-linux_armv7l.whl", hash = "sha256:69e99fe6bdc2cdacd04cef6b6585b00630d958c98e36d825de3eea406e15fb31"}, + {file = "grpcio-1.53.2-cp37-cp37m-macosx_10_10_universal2.whl", hash = "sha256:590c7206f764cfe37a65003a75977358e20919ed488f970935f54efa2741b497"}, + {file = "grpcio-1.53.2-cp37-cp37m-manylinux_2_17_aarch64.whl", hash = "sha256:1fcced1abb13cdb6a5d8b105765d30212a6cb29ab0dfb01eedecf2ff6c84371b"}, + {file = "grpcio-1.53.2-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:07b83c06e7d113044cf3da15ca52f578c5f3dca299af711e9a589c1b71eb8be5"}, + {file = "grpcio-1.53.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a3bee217bda6b2c81d9e2866f523217135a03a007a89043eee074e93d76706b0"}, + {file = "grpcio-1.53.2-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:9efbedc737ba342d8a2459afc9bd5c5df31adcdf774b772a4e663739f2cf0d06"}, + {file = "grpcio-1.53.2-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:0f76287d98ec79a38cba8292d0bdcd6ab9b9daf568dce1d53b9eb0135fc14d26"}, + {file = "grpcio-1.53.2-cp37-cp37m-win_amd64.whl", hash = "sha256:d406cf2f6ccf39883a24b048c448a37bac16939408c1b6fbb4d021f3cd961448"}, + {file = "grpcio-1.53.2-cp38-cp38-linux_armv7l.whl", hash = "sha256:f9f7c0dd17f24e1774cc3a8df738246772994e853c28b28ed6ba7711ccf0abb4"}, + {file = "grpcio-1.53.2-cp38-cp38-macosx_10_10_universal2.whl", hash = "sha256:f14a82d12d53eb93298c35edf88d8c3ef37243b95f94dd3c75fddcba575d34ab"}, + {file = "grpcio-1.53.2-cp38-cp38-manylinux_2_17_aarch64.whl", hash = "sha256:1deeb84bb344351434f999cea4704ac6f1e07b3d861e34c44b50d8afa06caaa1"}, + {file = "grpcio-1.53.2-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7cbf1e3aaec3edf734ef90182363a395d234cd4790544be914cedbe1b9fec99a"}, + {file = "grpcio-1.53.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7ea235cecb9df14b49a75cbd27a634683a96bb76576363407ec820ae454ce2b2"}, + {file = "grpcio-1.53.2-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:1df931fbb4c36363d2cb985c2c26fda8f060b541a89c6c1191fdb59151a8c934"}, + {file = "grpcio-1.53.2-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:7734d1b91f1f3b1f186debf8ec4d168ee088a54e8186c14d89a95f7e51d3198d"}, + {file = "grpcio-1.53.2-cp38-cp38-win32.whl", hash = "sha256:b16258a31269b97e26a08d71b5deb56499e86077d26e453fad8f6ec4c06fe666"}, + {file = "grpcio-1.53.2-cp38-cp38-win_amd64.whl", hash = "sha256:b676c4365a5753bc8c49f922a5f88bdb5df6746c670a9d859d2ba2f5f97d9269"}, + {file = "grpcio-1.53.2-cp39-cp39-linux_armv7l.whl", hash = "sha256:8fc7667564c8c15748354dea1bb4035c5118df4e9dc5154ccdb6e62a3e5a2bac"}, + {file = "grpcio-1.53.2-cp39-cp39-macosx_10_10_universal2.whl", hash = "sha256:80a8867746cff41c2db436dd9eea18ebbfcd0449d65b64b3ed3c995207898971"}, + {file = "grpcio-1.53.2-cp39-cp39-manylinux_2_17_aarch64.whl", hash = "sha256:431f864f2642a97d0aa8c6b606c307f03d22f919b1a226af90488426aed35809"}, + {file = "grpcio-1.53.2-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bea6a20c5a732a27b64623d43614b3022e6fcfc081a75236b7f9aa069d2eaa4d"}, + {file = "grpcio-1.53.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504af9e86ab01c9c33d8a452fe846aa931d024945f2e897537ccb8f7d76778ee"}, + {file = "grpcio-1.53.2-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:2b4f5671f9e88b7f51f54adda37a23277b7fdebd1557c47543b3e8a8044dd510"}, + {file = "grpcio-1.53.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:d9c51ca201326b49cfee38336c6e7dd1cb8a6b6d0dcf84aeaecbae310a736dbc"}, + {file = "grpcio-1.53.2-cp39-cp39-win32.whl", hash = "sha256:7e6885a8431939f1ee547e965fa3cb801a518b83d3d3509e90dbef78f0b5fd29"}, + {file = "grpcio-1.53.2-cp39-cp39-win_amd64.whl", hash = "sha256:ea84becb5cbd6a94a810c5214eb263ae57e915a9ed1bdcd5b4a6baf13d8c5177"}, + {file = "grpcio-1.53.2.tar.gz", hash = "sha256:0c9e42f2499c8603af1d88771dc97e2c6b0310c278337058fd7fd1ddb35ab853"}, ] [package.extras] -protobuf = ["grpcio-tools (>=1.53.0)"] +protobuf = ["grpcio-tools (>=1.53.2)"] [[package]] name = "grpcio-status" From 0329fb5410efeded381136495761fcc33494d9d1 Mon Sep 17 00:00:00 2001 From: Tom Pollard Date: Mon, 12 Feb 2024 09:50:45 -0500 Subject: [PATCH 163/181] Bump grpcio from 1.53.0 to 1.53.2 --- requirements.txt | 92 ++++++++++++++++++++++++------------------------ 1 file changed, 46 insertions(+), 46 deletions(-) diff --git a/requirements.txt b/requirements.txt index ccbdd7a91a..9f43aa9765 100644 --- a/requirements.txt +++ b/requirements.txt @@ -264,52 +264,52 @@ googleapis-common-protos==1.58.0 ; python_version >= "3.9" and python_version < grpcio-status==1.48.2 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:2c33bbdbe20188b2953f46f31af669263b6ee2a9b2d38fa0d36ee091532e21bf \ --hash=sha256:53695f45da07437b7c344ee4ef60d370fd2850179f5a28bb26d8e2aa1102ec11 -grpcio==1.53.0 ; python_version >= "3.9" and python_version < "4.0" \ - --hash=sha256:0698c094688a2dd4c7c2f2c0e3e142cac439a64d1cef6904c97f6cde38ba422f \ - --hash=sha256:104a2210edd3776c38448b4f76c2f16e527adafbde171fc72a8a32976c20abc7 \ - --hash=sha256:14817de09317dd7d3fbc8272864288320739973ef0f4b56bf2c0032349da8cdf \ - --hash=sha256:1948539ce78805d4e6256ab0e048ec793956d54787dc9d6777df71c1d19c7f81 \ - --hash=sha256:19caa5b7282a89b799e63776ff602bb39604f7ca98db6df27e2de06756ae86c3 \ - --hash=sha256:1b172e6d497191940c4b8d75b53de82dc252e15b61de2951d577ec5b43316b29 \ - --hash=sha256:1c734a2d4843e4e14ececf5600c3c4750990ec319e1299db7e4f0d02c25c1467 \ - --hash=sha256:2a912397eb8d23c177d6d64e3c8bc46b8a1c7680b090d9f13a640b104aaec77c \ - --hash=sha256:2eddaae8af625e45b5c8500dcca1043264d751a6872cde2eda5022df8a336959 \ - --hash=sha256:55930c56b8f5b347d6c8c609cc341949a97e176c90f5cbb01d148d778f3bbd23 \ - --hash=sha256:658ffe1e39171be00490db5bd3b966f79634ac4215a1eb9a85c6cd6783bf7f6e \ - --hash=sha256:6601d812105583948ab9c6e403a7e2dba6e387cc678c010e74f2d6d589d1d1b3 \ - --hash=sha256:6b6d60b0958be711bab047e9f4df5dbbc40367955f8651232bfdcdd21450b9ab \ - --hash=sha256:6beb84f83360ff29a3654f43f251ec11b809dcb5524b698d711550243debd289 \ - --hash=sha256:752d2949b40e12e6ad3ed8cc552a65b54d226504f6b1fb67cab2ccee502cc06f \ - --hash=sha256:7dc8584ca6c015ad82e186e82f4c0fe977394588f66b8ecfc4ec873285314619 \ - --hash=sha256:82434ba3a5935e47908bc861ce1ebc43c2edfc1001d235d6e31e5d3ed55815f7 \ - --hash=sha256:8270d1dc2c98ab57e6dbf36fa187db8df4c036f04a398e5d5e25b4e01a766d70 \ - --hash=sha256:8a48fd3a7222be226bb86b7b413ad248f17f3101a524018cdc4562eeae1eb2a3 \ - --hash=sha256:95952d3fe795b06af29bb8ec7bbf3342cdd867fc17b77cc25e6733d23fa6c519 \ - --hash=sha256:976a7f24eb213e8429cab78d5e120500dfcdeb01041f1f5a77b17b9101902615 \ - --hash=sha256:9c84a481451e7174f3a764a44150f93b041ab51045aa33d7b5b68b6979114e48 \ - --hash=sha256:a34d6e905f071f9b945cabbcc776e2055de1fdb59cd13683d9aa0a8f265b5bf9 \ - --hash=sha256:a4952899b4931a6ba12951f9a141ef3e74ff8a6ec9aa2dc602afa40f63595e33 \ - --hash=sha256:a96c3c7f564b263c5d7c0e49a337166c8611e89c4c919f66dba7b9a84abad137 \ - --hash=sha256:aef7d30242409c3aa5839b501e877e453a2c8d3759ca8230dd5a21cda029f046 \ - --hash=sha256:b5bd026ac928c96cc23149e6ef79183125542062eb6d1ccec34c0a37e02255e7 \ - --hash=sha256:b6a2ead3de3b2d53119d473aa2f224030257ef33af1e4ddabd4afee1dea5f04c \ - --hash=sha256:ba074af9ca268ad7b05d3fc2b920b5fb3c083da94ab63637aaf67f4f71ecb755 \ - --hash=sha256:c5fb6f3d7824696c1c9f2ad36ddb080ba5a86f2d929ef712d511b4d9972d3d27 \ - --hash=sha256:c705e0c21acb0e8478a00e7e773ad0ecdb34bd0e4adc282d3d2f51ba3961aac7 \ - --hash=sha256:c7ad9fbedb93f331c2e9054e202e95cf825b885811f1bcbbdfdc301e451442db \ - --hash=sha256:da95778d37be8e4e9afca771a83424f892296f5dfb2a100eda2571a1d8bbc0dc \ - --hash=sha256:dad5b302a4c21c604d88a5d441973f320134e6ff6a84ecef9c1139e5ffd466f6 \ - --hash=sha256:dbc1ba968639c1d23476f75c356e549e7bbf2d8d6688717dcab5290e88e8482b \ - --hash=sha256:ddb2511fbbb440ed9e5c9a4b9b870f2ed649b7715859fd6f2ebc585ee85c0364 \ - --hash=sha256:df9ba1183b3f649210788cf80c239041dddcb375d6142d8bccafcfdf549522cd \ - --hash=sha256:e4f513d63df6336fd84b74b701f17d1bb3b64e9d78a6ed5b5e8a198bbbe8bbfa \ - --hash=sha256:e6f90698b5d1c5dd7b3236cd1fa959d7b80e17923f918d5be020b65f1c78b173 \ - --hash=sha256:eaf8e3b97caaf9415227a3c6ca5aa8d800fecadd526538d2bf8f11af783f1550 \ - --hash=sha256:ee81349411648d1abc94095c68cd25e3c2812e4e0367f9a9355be1e804a5135c \ - --hash=sha256:f144a790f14c51b8a8e591eb5af40507ffee45ea6b818c2482f0457fec2e1a2e \ - --hash=sha256:f3e837d29f0e1b9d6e7b29d569e2e9b0da61889e41879832ea15569c251c303a \ - --hash=sha256:fa8eaac75d3107e3f5465f2c9e3bbd13db21790c6e45b7de1756eba16b050aca \ - --hash=sha256:fdc6191587de410a184550d4143e2b24a14df495c86ca15e59508710681690ac +grpcio==1.53.2 ; python_version >= "3.9" and python_version < "4.0" \ + --hash=sha256:07b83c06e7d113044cf3da15ca52f578c5f3dca299af711e9a589c1b71eb8be5 \ + --hash=sha256:0c9e42f2499c8603af1d88771dc97e2c6b0310c278337058fd7fd1ddb35ab853 \ + --hash=sha256:0e92dc6a85cd1de42527812ef1276095e62169d002d86c888b6e889fcda1dd29 \ + --hash=sha256:0f76287d98ec79a38cba8292d0bdcd6ab9b9daf568dce1d53b9eb0135fc14d26 \ + --hash=sha256:18afdda2bbe0c615da4daff754cab0df9bbd859c415d85e7e741a2975b3208b4 \ + --hash=sha256:1af074f28a56425e4f4d99761708981543a27ae963f5b4b0a36ff71f3483479d \ + --hash=sha256:1d1a320230e0d020880178b8eb453300bd57700b44c3744268370502e7376a9b \ + --hash=sha256:1deeb84bb344351434f999cea4704ac6f1e07b3d861e34c44b50d8afa06caaa1 \ + --hash=sha256:1df931fbb4c36363d2cb985c2c26fda8f060b541a89c6c1191fdb59151a8c934 \ + --hash=sha256:1fcced1abb13cdb6a5d8b105765d30212a6cb29ab0dfb01eedecf2ff6c84371b \ + --hash=sha256:24c63592103fded38b258f1e520ba8b0a7a0bbc397cddd6520a1f74dc4b5dec0 \ + --hash=sha256:2b4f5671f9e88b7f51f54adda37a23277b7fdebd1557c47543b3e8a8044dd510 \ + --hash=sha256:33f7678287ac330c94e25f96cdb951e0861e206115ba4d8ea66cf6546b1a09d0 \ + --hash=sha256:3b789472e9ef75d179295d0c6a1f7f0aefd08189cd1c822b068b0523365a1dbe \ + --hash=sha256:431f864f2642a97d0aa8c6b606c307f03d22f919b1a226af90488426aed35809 \ + --hash=sha256:504af9e86ab01c9c33d8a452fe846aa931d024945f2e897537ccb8f7d76778ee \ + --hash=sha256:53d34cbf212f03634d74ba366d595b4a06a3b60fcc731eddbd6fd7ebe4acf981 \ + --hash=sha256:590c7206f764cfe37a65003a75977358e20919ed488f970935f54efa2741b497 \ + --hash=sha256:5b403c4ad22f3ba37c7720547d8888a1e4b74ad980a94332bbbc50330b623abc \ + --hash=sha256:5b49f372df33f5f84865aef5d46cacd23180b586c80e8cbe0ce149b96dfa8c4c \ + --hash=sha256:6275a54b41d6b1ec539b019bc3affaf6d05b0a0ba36af1a65b8a2810ef69e07d \ + --hash=sha256:69e99fe6bdc2cdacd04cef6b6585b00630d958c98e36d825de3eea406e15fb31 \ + --hash=sha256:6be86e8d5cf47415968588e5dfbfb92ee8757fb41139584192b67050d1a72c58 \ + --hash=sha256:712113946b303db9ae4245a13de213710367850a6c3c53530b70e87989feb8e0 \ + --hash=sha256:7734d1b91f1f3b1f186debf8ec4d168ee088a54e8186c14d89a95f7e51d3198d \ + --hash=sha256:7b44ed75b9d67d17e5a098a0f99a8fd3e5861fd3c4eb54212277a0acdf298434 \ + --hash=sha256:7cbf1e3aaec3edf734ef90182363a395d234cd4790544be914cedbe1b9fec99a \ + --hash=sha256:7e6885a8431939f1ee547e965fa3cb801a518b83d3d3509e90dbef78f0b5fd29 \ + --hash=sha256:7ea235cecb9df14b49a75cbd27a634683a96bb76576363407ec820ae454ce2b2 \ + --hash=sha256:80a8867746cff41c2db436dd9eea18ebbfcd0449d65b64b3ed3c995207898971 \ + --hash=sha256:8166ac6671472d172cc0db50323b7a7504bd534de54aa31354465a00ca44409d \ + --hash=sha256:8fc7667564c8c15748354dea1bb4035c5118df4e9dc5154ccdb6e62a3e5a2bac \ + --hash=sha256:9efbedc737ba342d8a2459afc9bd5c5df31adcdf774b772a4e663739f2cf0d06 \ + --hash=sha256:a3bee217bda6b2c81d9e2866f523217135a03a007a89043eee074e93d76706b0 \ + --hash=sha256:b16258a31269b97e26a08d71b5deb56499e86077d26e453fad8f6ec4c06fe666 \ + --hash=sha256:b676c4365a5753bc8c49f922a5f88bdb5df6746c670a9d859d2ba2f5f97d9269 \ + --hash=sha256:bea6a20c5a732a27b64623d43614b3022e6fcfc081a75236b7f9aa069d2eaa4d \ + --hash=sha256:d406cf2f6ccf39883a24b048c448a37bac16939408c1b6fbb4d021f3cd961448 \ + --hash=sha256:d9c51ca201326b49cfee38336c6e7dd1cb8a6b6d0dcf84aeaecbae310a736dbc \ + --hash=sha256:df07843c8c0dc71a56d3af3dfe19165fb0d3af7d3354a72185f6fa1b4ac05cab \ + --hash=sha256:ea84becb5cbd6a94a810c5214eb263ae57e915a9ed1bdcd5b4a6baf13d8c5177 \ + --hash=sha256:f14a82d12d53eb93298c35edf88d8c3ef37243b95f94dd3c75fddcba575d34ab \ + --hash=sha256:f3761f9a6817e32898eaa5aecd0b0ad69d0c68ab45ea7bf206e8dc4548f025f0 \ + --hash=sha256:f7e66d8b31ef2bada7029275debbe12c97397ec7ac70a659837a7b8a6a9dc916 \ + --hash=sha256:f9f7c0dd17f24e1774cc3a8df738246772994e853c28b28ed6ba7711ccf0abb4 hdn-research-environment==2.3.8 ; python_version >= "3.9" and python_version < "4.0" \ --hash=sha256:371b33950e3c1598b650edefd42fa19a3532d2ca815dd42f495f0460c57df97f html2text==2018.1.9 ; python_version >= "3.9" and python_version < "4.0" \ From 4695be2f7b7a30e9a8ccd94755a31bf15cc9e00d Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Wed, 21 Feb 2024 12:44:23 -0500 Subject: [PATCH 164/181] Updated Schema for Trainings and associated updates in views & models --- .../console/training_type/course_details.html | 6 +- .../static/sample/create-course-schema.json | 32 +++++----- .../static/sample/example-course-create.json | 62 +++++++++---------- .../static/sample/example-course-update.json | 62 +++++++++---------- ...ourse_description_course_title_and_more.py | 29 +++++++++ physionet-django/training/models.py | 3 + physionet-django/training/serializers.py | 46 +++++++------- physionet-django/training/views.py | 46 ++++++-------- physionet-django/user/models.py | 8 +++ 9 files changed, 159 insertions(+), 135 deletions(-) create mode 100644 physionet-django/training/migrations/0004_course_description_course_title_and_more.py diff --git a/physionet-django/console/templates/console/training_type/course_details.html b/physionet-django/console/templates/console/training_type/course_details.html index 92e12d2f88..125214b094 100644 --- a/physionet-django/console/templates/console/training_type/course_details.html +++ b/physionet-django/console/templates/console/training_type/course_details.html @@ -81,7 +81,7 @@

    Active Versions

    {% csrf_token %} - +
    @@ -120,3 +120,7 @@

    Archived Versions

    {% endblock %} + + \ No newline at end of file diff --git a/physionet-django/static/sample/create-course-schema.json b/physionet-django/static/sample/create-course-schema.json index fc5942a96f..30f9b822fe 100644 --- a/physionet-django/static/sample/create-course-schema.json +++ b/physionet-django/static/sample/create-course-schema.json @@ -1,28 +1,24 @@ { - "name": "string", + "title": "string", "description": "string", "valid_duration": "string", - "courses": [ + "version": "string", + "modules": [ { - "version": "string", - "modules": [ + "contents": [ { - "contents": [ + "body": "string", + "order": "integer" + } + ], + "quizzes": [ + { + "question": "string", + "order": "integer", + "choices": [ { "body": "string", - "order": "integer" - } - ], - "quizzes": [ - { - "question": "string", - "order": "integer", - "choices": [ - { - "body": "string", - "is_correct": "boolean" - } - ] + "is_correct": "boolean" } ] } diff --git a/physionet-django/static/sample/example-course-create.json b/physionet-django/static/sample/example-course-create.json index e22ad873c6..1661b7a70c 100644 --- a/physionet-django/static/sample/example-course-create.json +++ b/physionet-django/static/sample/example-course-create.json @@ -1,43 +1,39 @@ { - "name": "Course 1", + "title": "Course 1", "description": "

    Test content description", "valid_duration": "1095 00:00:00", - "courses": [ + "version": "1.0.0", + "modules": [ { - "version": "1.0.0", - "modules": [ + "name": "Module 1", + "description": "

    Module description", + "order": 0, + "contents": [ { - "name": "Module 1", - "description": "

    Module description", - "order": 0, - "contents": [ + "body": "

    Hello This is a test

    Test content1

    ", + "order": 0 + } + ], + "quizzes": [ + { + "question": "What is the correct answer(choice1)?", + "order": 1, + "choices": [ { - "body": "

    Hello This is a test

    Test content1

    ", - "order": 0 - } - ], - "quizzes": [ + "body": "I am a choice1", + "is_correct": true + }, + { + "body": "I am a choice2", + "is_correct": false + }, + { + "body": "I am a choice3", + "is_correct": false + }, { - "question": "What is the correct answer(choice1)?", - "order": 1, - "choices": [ - { - "body": "I am a choice1", - "is_correct": true - }, - { - "body": "I am a choice2", - "is_correct": false - }, - { - "body": "I am a choice3", - "is_correct": false - }, - { - "body": "I am a choice4", - "is_correct": false - } - ] + "body": "I am a choice4", + "is_correct": false } ] } diff --git a/physionet-django/static/sample/example-course-update.json b/physionet-django/static/sample/example-course-update.json index e688064dbb..bb8eef5b17 100644 --- a/physionet-django/static/sample/example-course-update.json +++ b/physionet-django/static/sample/example-course-update.json @@ -1,43 +1,39 @@ { - "name": "Course 1 Updated", + "title": "Course 1 Updated", "description": "

    Test content description Updated", "valid_duration": "1095 00:00:00", - "courses": [ + "version": "1.5.1", + "modules": [ { - "version": "1.2.0", - "modules": [ + "name": "Module 1 Updated", + "description": "

    Test content description Updated", + "order": 0, + "contents": [ { - "name": "Module 1 Updated", - "description": "

    Test content description Updated", - "order": 0, - "contents": [ + "body": "

    Hello This is a test

    Test content1 updated

    ", + "order": 0 + } + ], + "quizzes": [ + { + "question": "What is the correct answer(choice2)?", + "order": 1, + "choices": [ { - "body": "

    Hello This is a test

    Test content1 updated

    ", - "order": 0 - } - ], - "quizzes": [ + "body": "I am a choice1", + "is_correct": false + }, + { + "body": "I am a choice2", + "is_correct": true + }, + { + "body": "I am a choice3", + "is_correct": false + }, { - "question": "What is the correct answer(choice2)?", - "order": 1, - "choices": [ - { - "body": "I am a choice1", - "is_correct": false - }, - { - "body": "I am a choice2", - "is_correct": true - }, - { - "body": "I am a choice3", - "is_correct": false - }, - { - "body": "I am a choice4", - "is_correct": false - } - ] + "body": "I am a choice4", + "is_correct": false } ] } diff --git a/physionet-django/training/migrations/0004_course_description_course_title_and_more.py b/physionet-django/training/migrations/0004_course_description_course_title_and_more.py new file mode 100644 index 0000000000..a397b7c7f4 --- /dev/null +++ b/physionet-django/training/migrations/0004_course_description_course_title_and_more.py @@ -0,0 +1,29 @@ +# Generated by Django 4.1.13 on 2024-02-17 04:19 + +from django.db import migrations, models +import project.modelcomponents.fields + + +class Migration(migrations.Migration): + + dependencies = [ + ('training', '0003_course_is_active'), + ] + + operations = [ + migrations.AddField( + model_name='course', + name='description', + field=project.modelcomponents.fields.SafeHTMLField(blank=True, null=True), + ), + migrations.AddField( + model_name='course', + name='title', + field=models.CharField(blank=True, max_length=128, null=True), + ), + migrations.AddField( + model_name='course', + name='valid_duration', + field=models.DurationField(null=True), + ), + ] diff --git a/physionet-django/training/models.py b/physionet-django/training/models.py index a17f2f6733..70c75895c3 100644 --- a/physionet-django/training/models.py +++ b/physionet-django/training/models.py @@ -16,6 +16,9 @@ class Course(models.Model): version (CharField): The version of the course. """ + title = models.CharField(max_length=128, null=True, blank=True) + description = SafeHTMLField(null=True, blank=True) + valid_duration = models.DurationField(null=True) training_type = models.ForeignKey( "user.TrainingType", on_delete=models.CASCADE, related_name="courses" ) diff --git a/physionet-django/training/serializers.py b/physionet-django/training/serializers.py index 641ee441a0..044fdb7b6a 100644 --- a/physionet-django/training/serializers.py +++ b/physionet-django/training/serializers.py @@ -42,15 +42,6 @@ class Meta: read_only_fields = ['id', 'course'] -class CourseSerializer(serializers.ModelSerializer): - modules = ModuleSerializer(many=True) - - class Meta: - model = Course - fields = ['version', 'modules'] - read_only_fields = ['id', 'training_type'] - - def create_quizzes(module_instance, quizzes_data): choice_bulk = [] for quiz in quizzes_data: @@ -87,37 +78,44 @@ def create_modules(course_instance, modules_data): create_contentblocks(module_instance, contents) -class TrainingTypeSerializer(serializers.ModelSerializer): - courses = CourseSerializer(many=True) +class CourseSerializer(serializers.ModelSerializer): + modules = ModuleSerializer(many=True) class Meta: - model = TrainingType - fields = ['name', 'description', 'valid_duration', 'courses'] - read_only_fields = ['id'] + model = Course + fields = ['title', 'description', 'valid_duration', 'version', 'modules'] + read_only_fields = ['id', 'training_type'] def update(self, instance, validated_data): with transaction.atomic(): - course = validated_data.pop('courses')[0] + course = validated_data modules = course.pop('modules') + course['training_type'] = instance.training_type - course['training_type'] = instance course_instance = Course.objects.create(**course) create_modules(course_instance, modules) - for attr, value in validated_data.items(): - setattr(instance, attr, value) - instance.save() return course_instance def create(self, validated_data): with transaction.atomic(): - course = validated_data.pop('courses')[0] + course = validated_data modules = course.pop('modules') - - validated_data['required_field'] = RequiredField.PLATFORM - course['training_type'] = instance = TrainingType.objects.create(**validated_data) + training_type_name = validated_data['title'] + training_type_description = validated_data['description'] + training_type_valid_duration = validated_data['valid_duration'] + training_type_required_field = RequiredField.PLATFORM + + training_type_instance = TrainingType.objects.create( + name=training_type_name, + description=training_type_description, + valid_duration=training_type_valid_duration, + required_field=training_type_required_field + ) + + course['training_type'] = training_type_instance course_instance = Course.objects.create(**course) create_modules(course_instance, modules) - return instance + return course_instance diff --git a/physionet-django/training/views.py b/physionet-django/training/views.py index ccdbc40ae5..4135f7b5ae 100644 --- a/physionet-django/training/views.py +++ b/physionet-django/training/views.py @@ -22,7 +22,7 @@ from training.models import Course, Quiz, QuizChoice, ContentBlock from training.models import CourseProgress, ModuleProgress, CompletedContent, CompletedQuiz -from training.serializers import TrainingTypeSerializer, CourseSerializer +from training.serializers import CourseSerializer from console.views import console_permission_required @@ -35,11 +35,6 @@ def courses(request): """ if request.POST: - if request.POST.get('training_id') != "-1": - training_type = get_object_or_404(TrainingType, pk=request.POST.get('training_id')) - else: - training_type = None - json_file = request.FILES.get("json_file", "") if not json_file.name.endswith('.json'): @@ -53,10 +48,11 @@ def courses(request): messages.error(request, 'JSON file is not properly formatted.') return redirect("courses") - serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + serializer = CourseSerializer(data=file_data, partial=True) + if serializer.is_valid(raise_exception=False): serializer.save() - messages.success(request, 'Training Type created successfully.') + messages.success(request, 'Course created successfully.') else: messages.error(request, serializer.errors) @@ -98,16 +94,17 @@ def course_details(request, pk): # Checking if the Training type with the same version already exists existing_course = Course.objects.filter(training_type=training_type) if existing_course.exists(): - existing_course_version = existing_course.order_by('-version').first().version - new_course_version = file_data['courses'][0]['version'] + latest_course = existing_course.order_by('-version').first() + latest_course_version = existing_course.order_by('-version').first().version + new_course_version = file_data['version'] # checking if the new course file has a valid version if validate_version(new_course_version) is not None: messages.error(request, 'Version number is not valid.') # checking if the version number is greater than the existing version - elif not is_version_greater(new_course_version, existing_course_version): + elif not is_version_greater(new_course_version, latest_course_version): messages.error(request, 'Version number should be greater than the existing version.') else: - serializer = TrainingTypeSerializer(training_type, data=file_data, partial=True) + serializer = CourseSerializer(latest_course, data=file_data, partial=True) if serializer.is_valid(raise_exception=False): serializer.save() messages.success(request, 'Course updated successfully.') @@ -136,13 +133,20 @@ def expire_course(request, pk, version): and expires the course with the specified primary key and version number. """ course = Course.objects.filter(training_type__pk=pk, version=version).first() - number_of_days = request.POST.get('number_of_days') + expiry_date = request.POST.get('expiry_date') if not course: messages.error(request, 'Course not found') return redirect('courses') - if not number_of_days: - messages.error(request, 'Number of days is required') + if not expiry_date: + messages.error(request, 'Expiry Date is required') return redirect('course_details', pk=pk) + # Checking if the expiry date is greater than the current date + expiry_date_tz = timezone.make_aware(timezone.datetime.strptime(expiry_date, '%Y-%m-%d')) + if expiry_date_tz < timezone.now(): + messages.error(request, 'Expiry Date should be greater than the current date') + return redirect('course_details', pk=pk) + # Calculating the number of days between the current date and the expiry date + number_of_days = (expiry_date_tz - timezone.now()).days course.expire_course_version(course.training_type, int(number_of_days)) messages.success(request, 'Course expired successfully.') return redirect('course_details', pk=pk) @@ -156,7 +160,6 @@ def download_course(request, pk, version): and returns a JSON response containing information about the training course with the specified primary key and version number. """ - # course = Course.objects.filter(training_type__pk=pk, version=version).first() training_type = get_object_or_404(TrainingType, pk=pk) course = training_type.courses.filter(version=version).first() if not course: @@ -167,16 +170,7 @@ def download_course(request, pk, version): messages.error(request, 'Only onplatform course can be downloaded') return redirect('courses') - # Creating the training_type_course object that contains on the specific version of the course - current_course_training_type = { - "name": training_type.name, - "description": training_type.description, - "valid_duration": training_type.valid_duration, - "courses": [course] - } - - # serializer = CourseSerializer(course) - serializer = TrainingTypeSerializer(current_course_training_type) + serializer = CourseSerializer(course) response_data = serializer.data response = JsonResponse(response_data, safe=False, json_dumps_params={'indent': 2}) response['Content-Disposition'] = f'attachment; filename={training_type.name}--version-{version}.json' diff --git a/physionet-django/user/models.py b/physionet-django/user/models.py index a126ad1106..782683a8d1 100644 --- a/physionet-django/user/models.py +++ b/physionet-django/user/models.py @@ -1101,6 +1101,14 @@ def __str__(self): class TrainingType(models.Model): + """This is the + + Args: + models (_type_): _description_ + + Returns: + _type_: _description_ + """ name = models.CharField(max_length=128) description = SafeHTMLField() valid_duration = models.DurationField(null=True) From d584b29b1e5944e828088e492eae584a38eb1530 Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Mon, 26 Feb 2024 15:46:43 -0500 Subject: [PATCH 165/181] Added docstrings for the training-type explaining the usage of the model --- physionet-django/user/models.py | 27 ++++++++++++++++++++------- 1 file changed, 20 insertions(+), 7 deletions(-) diff --git a/physionet-django/user/models.py b/physionet-django/user/models.py index 782683a8d1..c4a529ed2f 100644 --- a/physionet-django/user/models.py +++ b/physionet-django/user/models.py @@ -1101,13 +1101,26 @@ def __str__(self): class TrainingType(models.Model): - """This is the - - Args: - models (_type_): _description_ - - Returns: - _type_: _description_ + """Represents a type of training. For example, CITI training - which can be on-platform or off-platform. + The training type if off-platform, will have a set of questions that the admin uses to make sure + that the training was properly validated. If the training type is on-platform, there will be attached + courses. Each Course is a version of the training type, and has modules, which the user can complete + to get the accredition (Training) for the particular training type. + + Attributes: + name (str): The name of the training type. + description (SafeHTMLField): The description of the training type. + valid_duration (DurationField, optional): The valid duration of the training type. + questions (ManyToManyField): The questions associated with the training type. + required_field (PositiveSmallIntegerField): The required field for the training type. + home_page (URLField, optional): The home page URL for the training type. + + Meta: + default_permissions (tuple): The default permissions for the training type. + permissions (list): The additional permissions for the training type. + + Methods: + __str__(): Returns a string representation of the training type. """ name = models.CharField(max_length=128) description = SafeHTMLField() From ddb7375e4cd5f220ca838c3be9ad11237156066b Mon Sep 17 00:00:00 2001 From: rutvikrj26 Date: Mon, 4 Mar 2024 13:54:03 -0500 Subject: [PATCH 166/181] Added the slug backfill and updated the routes to work with slug rather than primary key --- .../console/training_type/course_details.html | 10 ++++---- .../console/training_type/index.html | 2 +- physionet-django/console/urls.py | 7 +++--- physionet-django/training/views.py | 22 ++++++++--------- .../user/fixtures/demo-training-type.json | 2 ++ .../user/migrations/0059_trainingtype_slug.py | 18 ++++++++++++++ .../migrations/0060_auto_20240304_1315.py | 24 +++++++++++++++++++ physionet-django/user/models.py | 14 +++++++---- 8 files changed, 74 insertions(+), 25 deletions(-) create mode 100644 physionet-django/user/migrations/0059_trainingtype_slug.py create mode 100644 physionet-django/user/migrations/0060_auto_20240304_1315.py diff --git a/physionet-django/console/templates/console/training_type/course_details.html b/physionet-django/console/templates/console/training_type/course_details.html index 125214b094..67ca59d067 100644 --- a/physionet-django/console/templates/console/training_type/course_details.html +++ b/physionet-django/console/templates/console/training_type/course_details.html @@ -28,7 +28,7 @@ data-target="#create-course">Update