From d1bd791f9c7893b0579399d2efef94833c39fcf2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 13 Nov 2025 00:07:50 +0000 Subject: [PATCH 01/14] npm(deps): bump default-browser from 5.2.1 to 5.3.0 Bumps [default-browser](https://github.com/sindresorhus/default-browser) from 5.2.1 to 5.3.0. - [Release notes](https://github.com/sindresorhus/default-browser/releases) - [Commits](https://github.com/sindresorhus/default-browser/compare/v5.2.1...v5.3.0) --- updated-dependencies: - dependency-name: default-browser dependency-version: 5.3.0 dependency-type: indirect update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- package-lock.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 676b037f4..7800132a5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1112,9 +1112,9 @@ "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" }, "node_modules/default-browser": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", - "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.3.0.tgz", + "integrity": "sha512-Qq68+VkJlc8tjnPV1i7HtbIn7ohmjZa88qUvHMIK0ZKUXMCuV45cT7cEXALPUmeXCe0q1DWQkQTemHVaLIFSrg==", "dependencies": { "bundle-name": "^4.1.0", "default-browser-id": "^5.0.0" @@ -4218,9 +4218,9 @@ "integrity": "sha512-m8FnyHXV1QX+S1cl+KPFDIl6NMkxtKsy6+U/aYyjrOqWMuwAwYWu7ePqrsUHtDR5Y8Yk2pi/KIDSgF+vT4cPOQ==" }, "default-browser": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.2.1.tgz", - "integrity": "sha512-WY/3TUME0x3KPYdRRxEJJvXRHV4PyPoUsxtZa78lwItwRQRHhd2U9xOscaT/YTf8uCXIAjeJOFBVEh/7FtD8Xg==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/default-browser/-/default-browser-5.3.0.tgz", + "integrity": "sha512-Qq68+VkJlc8tjnPV1i7HtbIn7ohmjZa88qUvHMIK0ZKUXMCuV45cT7cEXALPUmeXCe0q1DWQkQTemHVaLIFSrg==", "requires": { "bundle-name": "^4.1.0", "default-browser-id": "^5.0.0" From bfee95a465a206384f1e862e5a2bf3a0b60fe9ab Mon Sep 17 00:00:00 2001 From: Balal Saleh Date: Thu, 8 Jan 2026 20:26:30 +0000 Subject: [PATCH 02/14] [RAA-3605]-[KM]-[upgrade lxml, pytest-nhsd-apim, python + codeownders]-[BS] --- .github/CODEOWNERS | 16 +- azure/azure-build-pipeline.yml | 1 + poetry.lock | 662 +++++++++++++++------------- pyproject.toml | 6 +- scripts/macos_setup_environment.sh | 26 +- scripts/ubuntu_setup_environment.sh | 26 +- 6 files changed, 392 insertions(+), 345 deletions(-) diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index fb6dbd8e6..a89bf7b2a 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -9,11 +9,11 @@ # For version files that are updated by dependabot we have a cut down list -/sandbox/Dockerfile @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/sandbox/package.json @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/sandbox/package-lock.json @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/package.json @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/package-lock.json @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/poetry.lock @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/poetry.toml @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley -/pyproject.toml @daniel-mcadam-nhs @kevinmason-nhs @sudhanshu-arya1 @adamoldfield-nhs @nhsd-jack-wainwright @nhsd-sw @nhsd-dm @nhsd-andrew-tuley +/sandbox/Dockerfile @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/sandbox/package.json @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/sandbox/package-lock.json @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/package.json @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/package-lock.json @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/poetry.lock @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/poetry.toml @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs +/pyproject.toml @daniel-mcadam-nhs @kevinmason-nhs @balalsaleh-nhs diff --git a/azure/azure-build-pipeline.yml b/azure/azure-build-pipeline.yml index 804f5bfe3..bd92c16c1 100644 --- a/azure/azure-build-pipeline.yml +++ b/azure/azure-build-pipeline.yml @@ -22,6 +22,7 @@ resources: variables: - template: project.yml + extends: template: azure/common/apigee-build.yml@common parameters: diff --git a/poetry.lock b/poetry.lock index 6f54b615f..de4b54972 100644 --- a/poetry.lock +++ b/poetry.lock @@ -26,14 +26,14 @@ files = [ [[package]] name = "authlib" -version = "1.6.5" +version = "1.6.6" description = "The ultimate Python library in building OAuth and OpenID Connect servers and clients." optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "authlib-1.6.5-py2.py3-none-any.whl", hash = "sha256:3e0e0507807f842b02175507bdee8957a1d5707fd4afb17c32fb43fee90b6e3a"}, - {file = "authlib-1.6.5.tar.gz", hash = "sha256:6aaf9c79b7cc96c900f0b284061691c5d4e61221640a948fe690b556a6d6d10b"}, + {file = "authlib-1.6.6-py2.py3-none-any.whl", hash = "sha256:7d9e9bc535c13974313a87f53e8430eb6ea3d1cf6ae4f6efcd793f2e949143fd"}, + {file = "authlib-1.6.6.tar.gz", hash = "sha256:45770e8e056d0f283451d9996fbb59b70d45722b45d854d58f32878d0a40c38e"}, ] [package.dependencies] @@ -54,38 +54,39 @@ files = [ [[package]] name = "black" -version = "25.11.0" +version = "25.12.0" description = "The uncompromising code formatter." optional = false -python-versions = ">=3.9" +python-versions = ">=3.10" groups = ["dev"] files = [ - {file = "black-25.11.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:ec311e22458eec32a807f029b2646f661e6859c3f61bc6d9ffb67958779f392e"}, - {file = "black-25.11.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1032639c90208c15711334d681de2e24821af0575573db2810b0763bcd62e0f0"}, - {file = "black-25.11.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0c0f7c461df55cf32929b002335883946a4893d759f2df343389c4396f3b6b37"}, - {file = "black-25.11.0-cp310-cp310-win_amd64.whl", hash = "sha256:f9786c24d8e9bd5f20dc7a7f0cdd742644656987f6ea6947629306f937726c03"}, - {file = "black-25.11.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:895571922a35434a9d8ca67ef926da6bc9ad464522a5fe0db99b394ef1c0675a"}, - {file = "black-25.11.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:cb4f4b65d717062191bdec8e4a442539a8ea065e6af1c4f4d36f0cdb5f71e170"}, - {file = "black-25.11.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d81a44cbc7e4f73a9d6ae449ec2317ad81512d1e7dce7d57f6333fd6259737bc"}, - {file = "black-25.11.0-cp311-cp311-win_amd64.whl", hash = "sha256:7eebd4744dfe92ef1ee349dc532defbf012a88b087bb7ddd688ff59a447b080e"}, - {file = "black-25.11.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:80e7486ad3535636657aa180ad32a7d67d7c273a80e12f1b4bfa0823d54e8fac"}, - {file = "black-25.11.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6cced12b747c4c76bc09b4db057c319d8545307266f41aaee665540bc0e04e96"}, - {file = "black-25.11.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6cb2d54a39e0ef021d6c5eef442e10fd71fcb491be6413d083a320ee768329dd"}, - {file = "black-25.11.0-cp312-cp312-win_amd64.whl", hash = "sha256:ae263af2f496940438e5be1a0c1020e13b09154f3af4df0835ea7f9fe7bfa409"}, - {file = "black-25.11.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:0a1d40348b6621cc20d3d7530a5b8d67e9714906dfd7346338249ad9c6cedf2b"}, - {file = "black-25.11.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:51c65d7d60bb25429ea2bf0731c32b2a2442eb4bd3b2afcb47830f0b13e58bfd"}, - {file = "black-25.11.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:936c4dd07669269f40b497440159a221ee435e3fddcf668e0c05244a9be71993"}, - {file = "black-25.11.0-cp313-cp313-win_amd64.whl", hash = "sha256:f42c0ea7f59994490f4dccd64e6b2dd49ac57c7c84f38b8faab50f8759db245c"}, - {file = "black-25.11.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:35690a383f22dd3e468c85dc4b915217f87667ad9cce781d7b42678ce63c4170"}, - {file = "black-25.11.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:dae49ef7369c6caa1a1833fd5efb7c3024bb7e4499bf64833f65ad27791b1545"}, - {file = "black-25.11.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5bd4a22a0b37401c8e492e994bce79e614f91b14d9ea911f44f36e262195fdda"}, - {file = "black-25.11.0-cp314-cp314-win_amd64.whl", hash = "sha256:aa211411e94fdf86519996b7f5f05e71ba34835d8f0c0f03c00a26271da02664"}, - {file = "black-25.11.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:a3bb5ce32daa9ff0605d73b6f19da0b0e6c1f8f2d75594db539fdfed722f2b06"}, - {file = "black-25.11.0-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9815ccee1e55717fe9a4b924cae1646ef7f54e0f990da39a34fc7b264fcf80a2"}, - {file = "black-25.11.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92285c37b93a1698dcbc34581867b480f1ba3a7b92acf1fe0467b04d7a4da0dc"}, - {file = "black-25.11.0-cp39-cp39-win_amd64.whl", hash = "sha256:43945853a31099c7c0ff8dface53b4de56c41294fa6783c0441a8b1d9bf668bc"}, - {file = "black-25.11.0-py3-none-any.whl", hash = "sha256:e3f562da087791e96cefcd9dda058380a442ab322a02e222add53736451f604b"}, - {file = "black-25.11.0.tar.gz", hash = "sha256:9a323ac32f5dc75ce7470501b887250be5005a01602e931a15e45593f70f6e08"}, + {file = "black-25.12.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:f85ba1ad15d446756b4ab5f3044731bf68b777f8f9ac9cdabd2425b97cd9c4e8"}, + {file = "black-25.12.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:546eecfe9a3a6b46f9d69d8a642585a6eaf348bcbbc4d87a19635570e02d9f4a"}, + {file = "black-25.12.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:17dcc893da8d73d8f74a596f64b7c98ef5239c2cd2b053c0f25912c4494bf9ea"}, + {file = "black-25.12.0-cp310-cp310-win_amd64.whl", hash = "sha256:09524b0e6af8ba7a3ffabdfc7a9922fb9adef60fed008c7cd2fc01f3048e6e6f"}, + {file = "black-25.12.0-cp310-cp310-win_arm64.whl", hash = "sha256:b162653ed89eb942758efeb29d5e333ca5bb90e5130216f8369857db5955a7da"}, + {file = "black-25.12.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:d0cfa263e85caea2cff57d8f917f9f51adae8e20b610e2b23de35b5b11ce691a"}, + {file = "black-25.12.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1a2f578ae20c19c50a382286ba78bfbeafdf788579b053d8e4980afb079ab9be"}, + {file = "black-25.12.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d3e1b65634b0e471d07ff86ec338819e2ef860689859ef4501ab7ac290431f9b"}, + {file = "black-25.12.0-cp311-cp311-win_amd64.whl", hash = "sha256:a3fa71e3b8dd9f7c6ac4d818345237dfb4175ed3bf37cd5a581dbc4c034f1ec5"}, + {file = "black-25.12.0-cp311-cp311-win_arm64.whl", hash = "sha256:51e267458f7e650afed8445dc7edb3187143003d52a1b710c7321aef22aa9655"}, + {file = "black-25.12.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:31f96b7c98c1ddaeb07dc0f56c652e25bdedaac76d5b68a059d998b57c55594a"}, + {file = "black-25.12.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:05dd459a19e218078a1f98178c13f861fe6a9a5f88fc969ca4d9b49eb1809783"}, + {file = "black-25.12.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c1f68c5eff61f226934be6b5b80296cf6939e5d2f0c2f7d543ea08b204bfaf59"}, + {file = "black-25.12.0-cp312-cp312-win_amd64.whl", hash = "sha256:274f940c147ddab4442d316b27f9e332ca586d39c85ecf59ebdea82cc9ee8892"}, + {file = "black-25.12.0-cp312-cp312-win_arm64.whl", hash = "sha256:169506ba91ef21e2e0591563deda7f00030cb466e747c4b09cb0a9dae5db2f43"}, + {file = "black-25.12.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:a05ddeb656534c3e27a05a29196c962877c83fa5503db89e68857d1161ad08a5"}, + {file = "black-25.12.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9ec77439ef3e34896995503865a85732c94396edcc739f302c5673a2315e1e7f"}, + {file = "black-25.12.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e509c858adf63aa61d908061b52e580c40eae0dfa72415fa47ac01b12e29baf"}, + {file = "black-25.12.0-cp313-cp313-win_amd64.whl", hash = "sha256:252678f07f5bac4ff0d0e9b261fbb029fa530cfa206d0a636a34ab445ef8ca9d"}, + {file = "black-25.12.0-cp313-cp313-win_arm64.whl", hash = "sha256:bc5b1c09fe3c931ddd20ee548511c64ebf964ada7e6f0763d443947fd1c603ce"}, + {file = "black-25.12.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:0a0953b134f9335c2434864a643c842c44fba562155c738a2a37a4d61f00cad5"}, + {file = "black-25.12.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:2355bbb6c3b76062870942d8cc450d4f8ac71f9c93c40122762c8784df49543f"}, + {file = "black-25.12.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9678bd991cc793e81d19aeeae57966ee02909877cb65838ccffef24c3ebac08f"}, + {file = "black-25.12.0-cp314-cp314-win_amd64.whl", hash = "sha256:97596189949a8aad13ad12fcbb4ae89330039b96ad6742e6f6b45e75ad5cfd83"}, + {file = "black-25.12.0-cp314-cp314-win_arm64.whl", hash = "sha256:778285d9ea197f34704e3791ea9404cd6d07595745907dd2ce3da7a13627b29b"}, + {file = "black-25.12.0-py3-none-any.whl", hash = "sha256:48ceb36c16dbc84062740049eef990bb2ce07598272e673c17d1a7720c71c828"}, + {file = "black-25.12.0.tar.gz", hash = "sha256:8d3dd9cea14bff7ddc0eb243c811cdb1a011ebb4800a5f0335a01a68654796a7"}, ] [package.dependencies] @@ -468,15 +469,15 @@ files = [ [[package]] name = "exceptiongroup" -version = "1.3.0" +version = "1.3.1" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" groups = ["main", "dev"] markers = "python_version == \"3.10\"" files = [ - {file = "exceptiongroup-1.3.0-py3-none-any.whl", hash = "sha256:4d111e6e0c13d0644cad6ddaa7ed0261a0b36971f6d23e7ec9b4b9097da78a10"}, - {file = "exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88"}, + {file = "exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598"}, + {file = "exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219"}, ] [package.dependencies] @@ -720,112 +721,152 @@ files = [ [[package]] name = "lxml" -version = "4.9.4" +version = "5.4.0" description = "Powerful and Pythonic XML processing library combining libxml2/libxslt with the ElementTree API." optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, != 3.4.*" +python-versions = ">=3.6" groups = ["main", "dev"] files = [ - {file = "lxml-4.9.4-cp27-cp27m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e214025e23db238805a600f1f37bf9f9a15413c7bf5f9d6ae194f84980c78722"}, - {file = "lxml-4.9.4-cp27-cp27m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:ec53a09aee61d45e7dbe7e91252ff0491b6b5fee3d85b2d45b173d8ab453efc1"}, - {file = "lxml-4.9.4-cp27-cp27m-win32.whl", hash = "sha256:7d1d6c9e74c70ddf524e3c09d9dc0522aba9370708c2cb58680ea40174800013"}, - {file = "lxml-4.9.4-cp27-cp27m-win_amd64.whl", hash = "sha256:cb53669442895763e61df5c995f0e8361b61662f26c1b04ee82899c2789c8f69"}, - {file = "lxml-4.9.4-cp27-cp27mu-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:647bfe88b1997d7ae8d45dabc7c868d8cb0c8412a6e730a7651050b8c7289cf2"}, - {file = "lxml-4.9.4-cp27-cp27mu-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:4d973729ce04784906a19108054e1fd476bc85279a403ea1a72fdb051c76fa48"}, - {file = "lxml-4.9.4-cp310-cp310-macosx_11_0_x86_64.whl", hash = "sha256:056a17eaaf3da87a05523472ae84246f87ac2f29a53306466c22e60282e54ff8"}, - {file = "lxml-4.9.4-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:aaa5c173a26960fe67daa69aa93d6d6a1cd714a6eb13802d4e4bd1d24a530644"}, - {file = "lxml-4.9.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:647459b23594f370c1c01768edaa0ba0959afc39caeeb793b43158bb9bb6a663"}, - {file = "lxml-4.9.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:bdd9abccd0927673cffe601d2c6cdad1c9321bf3437a2f507d6b037ef91ea307"}, - {file = "lxml-4.9.4-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:00e91573183ad273e242db5585b52670eddf92bacad095ce25c1e682da14ed91"}, - {file = "lxml-4.9.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:a602ed9bd2c7d85bd58592c28e101bd9ff9c718fbde06545a70945ffd5d11868"}, - {file = "lxml-4.9.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:de362ac8bc962408ad8fae28f3967ce1a262b5d63ab8cefb42662566737f1dc7"}, - {file = "lxml-4.9.4-cp310-cp310-win32.whl", hash = "sha256:33714fcf5af4ff7e70a49731a7cc8fd9ce910b9ac194f66eaa18c3cc0a4c02be"}, - {file = "lxml-4.9.4-cp310-cp310-win_amd64.whl", hash = "sha256:d3caa09e613ece43ac292fbed513a4bce170681a447d25ffcbc1b647d45a39c5"}, - {file = "lxml-4.9.4-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:359a8b09d712df27849e0bcb62c6a3404e780b274b0b7e4c39a88826d1926c28"}, - {file = "lxml-4.9.4-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:43498ea734ccdfb92e1886dfedaebeb81178a241d39a79d5351ba2b671bff2b2"}, - {file = "lxml-4.9.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:4855161013dfb2b762e02b3f4d4a21cc7c6aec13c69e3bffbf5022b3e708dd97"}, - {file = "lxml-4.9.4-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:c71b5b860c5215fdbaa56f715bc218e45a98477f816b46cfde4a84d25b13274e"}, - {file = "lxml-4.9.4-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:9a2b5915c333e4364367140443b59f09feae42184459b913f0f41b9fed55794a"}, - {file = "lxml-4.9.4-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d82411dbf4d3127b6cde7da0f9373e37ad3a43e89ef374965465928f01c2b979"}, - {file = "lxml-4.9.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:273473d34462ae6e97c0f4e517bd1bf9588aa67a1d47d93f760a1282640e24ac"}, - {file = "lxml-4.9.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:389d2b2e543b27962990ab529ac6720c3dded588cc6d0f6557eec153305a3622"}, - {file = "lxml-4.9.4-cp311-cp311-win32.whl", hash = "sha256:8aecb5a7f6f7f8fe9cac0bcadd39efaca8bbf8d1bf242e9f175cbe4c925116c3"}, - {file = "lxml-4.9.4-cp311-cp311-win_amd64.whl", hash = "sha256:c7721a3ef41591341388bb2265395ce522aba52f969d33dacd822da8f018aff8"}, - {file = "lxml-4.9.4-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:dbcb2dc07308453db428a95a4d03259bd8caea97d7f0776842299f2d00c72fc8"}, - {file = "lxml-4.9.4-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:01bf1df1db327e748dcb152d17389cf6d0a8c5d533ef9bab781e9d5037619229"}, - {file = "lxml-4.9.4-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:e8f9f93a23634cfafbad6e46ad7d09e0f4a25a2400e4a64b1b7b7c0fbaa06d9d"}, - {file = "lxml-4.9.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3f3f00a9061605725df1816f5713d10cd94636347ed651abdbc75828df302b20"}, - {file = "lxml-4.9.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:953dd5481bd6252bd480d6ec431f61d7d87fdcbbb71b0d2bdcfc6ae00bb6fb10"}, - {file = "lxml-4.9.4-cp312-cp312-win32.whl", hash = "sha256:266f655d1baff9c47b52f529b5f6bec33f66042f65f7c56adde3fcf2ed62ae8b"}, - {file = "lxml-4.9.4-cp312-cp312-win_amd64.whl", hash = "sha256:f1faee2a831fe249e1bae9cbc68d3cd8a30f7e37851deee4d7962b17c410dd56"}, - {file = "lxml-4.9.4-cp35-cp35m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:23d891e5bdc12e2e506e7d225d6aa929e0a0368c9916c1fddefab88166e98b20"}, - {file = "lxml-4.9.4-cp35-cp35m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:e96a1788f24d03e8d61679f9881a883ecdf9c445a38f9ae3f3f193ab6c591c66"}, - {file = "lxml-4.9.4-cp36-cp36m-macosx_11_0_x86_64.whl", hash = "sha256:5557461f83bb7cc718bc9ee1f7156d50e31747e5b38d79cf40f79ab1447afd2d"}, - {file = "lxml-4.9.4-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:fdb325b7fba1e2c40b9b1db407f85642e32404131c08480dd652110fc908561b"}, - {file = "lxml-4.9.4-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3d74d4a3c4b8f7a1f676cedf8e84bcc57705a6d7925e6daef7a1e54ae543a197"}, - {file = "lxml-4.9.4-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:ac7674d1638df129d9cb4503d20ffc3922bd463c865ef3cb412f2c926108e9a4"}, - {file = "lxml-4.9.4-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:ddd92e18b783aeb86ad2132d84a4b795fc5ec612e3545c1b687e7747e66e2b53"}, - {file = "lxml-4.9.4-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:2bd9ac6e44f2db368ef8986f3989a4cad3de4cd55dbdda536e253000c801bcc7"}, - {file = "lxml-4.9.4-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:bc354b1393dce46026ab13075f77b30e40b61b1a53e852e99d3cc5dd1af4bc85"}, - {file = "lxml-4.9.4-cp36-cp36m-musllinux_1_1_aarch64.whl", hash = "sha256:f836f39678cb47c9541f04d8ed4545719dc31ad850bf1832d6b4171e30d65d23"}, - {file = "lxml-4.9.4-cp36-cp36m-musllinux_1_1_x86_64.whl", hash = "sha256:9c131447768ed7bc05a02553d939e7f0e807e533441901dd504e217b76307745"}, - {file = "lxml-4.9.4-cp36-cp36m-win32.whl", hash = "sha256:bafa65e3acae612a7799ada439bd202403414ebe23f52e5b17f6ffc2eb98c2be"}, - {file = "lxml-4.9.4-cp36-cp36m-win_amd64.whl", hash = "sha256:6197c3f3c0b960ad033b9b7d611db11285bb461fc6b802c1dd50d04ad715c225"}, - {file = "lxml-4.9.4-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:7b378847a09d6bd46047f5f3599cdc64fcb4cc5a5a2dd0a2af610361fbe77b16"}, - {file = "lxml-4.9.4-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:1343df4e2e6e51182aad12162b23b0a4b3fd77f17527a78c53f0f23573663545"}, - {file = "lxml-4.9.4-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:6dbdacf5752fbd78ccdb434698230c4f0f95df7dd956d5f205b5ed6911a1367c"}, - {file = "lxml-4.9.4-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:506becdf2ecaebaf7f7995f776394fcc8bd8a78022772de66677c84fb02dd33d"}, - {file = "lxml-4.9.4-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ca8e44b5ba3edb682ea4e6185b49661fc22b230cf811b9c13963c9f982d1d964"}, - {file = "lxml-4.9.4-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9d9d5726474cbbef279fd709008f91a49c4f758bec9c062dfbba88eab00e3ff9"}, - {file = "lxml-4.9.4-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:bbdd69e20fe2943b51e2841fc1e6a3c1de460d630f65bde12452d8c97209464d"}, - {file = "lxml-4.9.4-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:8671622256a0859f5089cbe0ce4693c2af407bc053dcc99aadff7f5310b4aa02"}, - {file = "lxml-4.9.4-cp37-cp37m-win32.whl", hash = "sha256:dd4fda67f5faaef4f9ee5383435048ee3e11ad996901225ad7615bc92245bc8e"}, - {file = "lxml-4.9.4-cp37-cp37m-win_amd64.whl", hash = "sha256:6bee9c2e501d835f91460b2c904bc359f8433e96799f5c2ff20feebd9bb1e590"}, - {file = "lxml-4.9.4-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:1f10f250430a4caf84115b1e0f23f3615566ca2369d1962f82bef40dd99cd81a"}, - {file = "lxml-4.9.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:3b505f2bbff50d261176e67be24e8909e54b5d9d08b12d4946344066d66b3e43"}, - {file = "lxml-4.9.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:1449f9451cd53e0fd0a7ec2ff5ede4686add13ac7a7bfa6988ff6d75cff3ebe2"}, - {file = "lxml-4.9.4-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:4ece9cca4cd1c8ba889bfa67eae7f21d0d1a2e715b4d5045395113361e8c533d"}, - {file = "lxml-4.9.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:59bb5979f9941c61e907ee571732219fa4774d5a18f3fa5ff2df963f5dfaa6bc"}, - {file = "lxml-4.9.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:b1980dbcaad634fe78e710c8587383e6e3f61dbe146bcbfd13a9c8ab2d7b1192"}, - {file = "lxml-4.9.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:9ae6c3363261021144121427b1552b29e7b59de9d6a75bf51e03bc072efb3c37"}, - {file = "lxml-4.9.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:bcee502c649fa6351b44bb014b98c09cb00982a475a1912a9881ca28ab4f9cd9"}, - {file = "lxml-4.9.4-cp38-cp38-win32.whl", hash = "sha256:a8edae5253efa75c2fc79a90068fe540b197d1c7ab5803b800fccfe240eed33c"}, - {file = "lxml-4.9.4-cp38-cp38-win_amd64.whl", hash = "sha256:701847a7aaefef121c5c0d855b2affa5f9bd45196ef00266724a80e439220e46"}, - {file = "lxml-4.9.4-cp39-cp39-macosx_11_0_x86_64.whl", hash = "sha256:f610d980e3fccf4394ab3806de6065682982f3d27c12d4ce3ee46a8183d64a6a"}, - {file = "lxml-4.9.4-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:aa9b5abd07f71b081a33115d9758ef6077924082055005808f68feccb27616bd"}, - {file = "lxml-4.9.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:365005e8b0718ea6d64b374423e870648ab47c3a905356ab6e5a5ff03962b9a9"}, - {file = "lxml-4.9.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:16b9ec51cc2feab009e800f2c6327338d6ee4e752c76e95a35c4465e80390ccd"}, - {file = "lxml-4.9.4-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:a905affe76f1802edcac554e3ccf68188bea16546071d7583fb1b693f9cf756b"}, - {file = "lxml-4.9.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fd814847901df6e8de13ce69b84c31fc9b3fb591224d6762d0b256d510cbf382"}, - {file = "lxml-4.9.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:91bbf398ac8bb7d65a5a52127407c05f75a18d7015a270fdd94bbcb04e65d573"}, - {file = "lxml-4.9.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f99768232f036b4776ce419d3244a04fe83784bce871b16d2c2e984c7fcea847"}, - {file = "lxml-4.9.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:bb5bd6212eb0edfd1e8f254585290ea1dadc3687dd8fd5e2fd9a87c31915cdab"}, - {file = "lxml-4.9.4-cp39-cp39-win32.whl", hash = "sha256:88f7c383071981c74ec1998ba9b437659e4fd02a3c4a4d3efc16774eb108d0ec"}, - {file = "lxml-4.9.4-cp39-cp39-win_amd64.whl", hash = "sha256:936e8880cc00f839aa4173f94466a8406a96ddce814651075f95837316369899"}, - {file = "lxml-4.9.4-pp310-pypy310_pp73-macosx_11_0_x86_64.whl", hash = "sha256:f6c35b2f87c004270fa2e703b872fcc984d714d430b305145c39d53074e1ffe0"}, - {file = "lxml-4.9.4-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:606d445feeb0856c2b424405236a01c71af7c97e5fe42fbc778634faef2b47e4"}, - {file = "lxml-4.9.4-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:a1bdcbebd4e13446a14de4dd1825f1e778e099f17f79718b4aeaf2403624b0f7"}, - {file = "lxml-4.9.4-pp37-pypy37_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:0a08c89b23117049ba171bf51d2f9c5f3abf507d65d016d6e0fa2f37e18c0fc5"}, - {file = "lxml-4.9.4-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:232fd30903d3123be4c435fb5159938c6225ee8607b635a4d3fca847003134ba"}, - {file = "lxml-4.9.4-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:231142459d32779b209aa4b4d460b175cadd604fed856f25c1571a9d78114771"}, - {file = "lxml-4.9.4-pp38-pypy38_pp73-macosx_11_0_x86_64.whl", hash = "sha256:520486f27f1d4ce9654154b4494cf9307b495527f3a2908ad4cb48e4f7ed7ef7"}, - {file = "lxml-4.9.4-pp38-pypy38_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:562778586949be7e0d7435fcb24aca4810913771f845d99145a6cee64d5b67ca"}, - {file = "lxml-4.9.4-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:a9e7c6d89c77bb2770c9491d988f26a4b161d05c8ca58f63fb1f1b6b9a74be45"}, - {file = "lxml-4.9.4-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:786d6b57026e7e04d184313c1359ac3d68002c33e4b1042ca58c362f1d09ff58"}, - {file = "lxml-4.9.4-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:95ae6c5a196e2f239150aa4a479967351df7f44800c93e5a975ec726fef005e2"}, - {file = "lxml-4.9.4-pp39-pypy39_pp73-macosx_11_0_x86_64.whl", hash = "sha256:9b556596c49fa1232b0fff4b0e69b9d4083a502e60e404b44341e2f8fb7187f5"}, - {file = "lxml-4.9.4-pp39-pypy39_pp73-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_24_i686.whl", hash = "sha256:cc02c06e9e320869d7d1bd323df6dd4281e78ac2e7f8526835d3d48c69060683"}, - {file = "lxml-4.9.4-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_24_x86_64.whl", hash = "sha256:857d6565f9aa3464764c2cb6a2e3c2e75e1970e877c188f4aeae45954a314e0c"}, - {file = "lxml-4.9.4-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c42ae7e010d7d6bc51875d768110c10e8a59494855c3d4c348b068f5fb81fdcd"}, - {file = "lxml-4.9.4-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:f10250bb190fb0742e3e1958dd5c100524c2cc5096c67c8da51233f7448dc137"}, - {file = "lxml-4.9.4.tar.gz", hash = "sha256:b1541e50b78e15fa06a2670157a1962ef06591d4c998b998047fff5e3236880e"}, + {file = "lxml-5.4.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e7bc6df34d42322c5289e37e9971d6ed114e3776b45fa879f734bded9d1fea9c"}, + {file = "lxml-5.4.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:6854f8bd8a1536f8a1d9a3655e6354faa6406621cf857dc27b681b69860645c7"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:696ea9e87442467819ac22394ca36cb3d01848dad1be6fac3fb612d3bd5a12cf"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6ef80aeac414f33c24b3815ecd560cee272786c3adfa5f31316d8b349bfade28"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3b9c2754cef6963f3408ab381ea55f47dabc6f78f4b8ebb0f0b25cf1ac1f7609"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:7a62cc23d754bb449d63ff35334acc9f5c02e6dae830d78dab4dd12b78a524f4"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8f82125bc7203c5ae8633a7d5d20bcfdff0ba33e436e4ab0abc026a53a8960b7"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_aarch64.whl", hash = "sha256:b67319b4aef1a6c56576ff544b67a2a6fbd7eaee485b241cabf53115e8908b8f"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_ppc64le.whl", hash = "sha256:a8ef956fce64c8551221f395ba21d0724fed6b9b6242ca4f2f7beb4ce2f41997"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_s390x.whl", hash = "sha256:0a01ce7d8479dce84fc03324e3b0c9c90b1ece9a9bb6a1b6c9025e7e4520e78c"}, + {file = "lxml-5.4.0-cp310-cp310-manylinux_2_28_x86_64.whl", hash = "sha256:91505d3ddebf268bb1588eb0f63821f738d20e1e7f05d3c647a5ca900288760b"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:a3bcdde35d82ff385f4ede021df801b5c4a5bcdfb61ea87caabcebfc4945dc1b"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_ppc64le.whl", hash = "sha256:aea7c06667b987787c7d1f5e1dfcd70419b711cdb47d6b4bb4ad4b76777a0563"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_s390x.whl", hash = "sha256:a7fb111eef4d05909b82152721a59c1b14d0f365e2be4c742a473c5d7372f4f5"}, + {file = "lxml-5.4.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:43d549b876ce64aa18b2328faff70f5877f8c6dede415f80a2f799d31644d776"}, + {file = "lxml-5.4.0-cp310-cp310-win32.whl", hash = "sha256:75133890e40d229d6c5837b0312abbe5bac1c342452cf0e12523477cd3aa21e7"}, + {file = "lxml-5.4.0-cp310-cp310-win_amd64.whl", hash = "sha256:de5b4e1088523e2b6f730d0509a9a813355b7f5659d70eb4f319c76beea2e250"}, + {file = "lxml-5.4.0-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:98a3912194c079ef37e716ed228ae0dcb960992100461b704aea4e93af6b0bb9"}, + {file = "lxml-5.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0ea0252b51d296a75f6118ed0d8696888e7403408ad42345d7dfd0d1e93309a7"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b92b69441d1bd39f4940f9eadfa417a25862242ca2c396b406f9272ef09cdcaa"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:20e16c08254b9b6466526bc1828d9370ee6c0d60a4b64836bc3ac2917d1e16df"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7605c1c32c3d6e8c990dd28a0970a3cbbf1429d5b92279e37fda05fb0c92190e"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ecf4c4b83f1ab3d5a7ace10bafcb6f11df6156857a3c418244cef41ca9fa3e44"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0cef4feae82709eed352cd7e97ae062ef6ae9c7b5dbe3663f104cd2c0e8d94ba"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_aarch64.whl", hash = "sha256:df53330a3bff250f10472ce96a9af28628ff1f4efc51ccba351a8820bca2a8ba"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_ppc64le.whl", hash = "sha256:aefe1a7cb852fa61150fcb21a8c8fcea7b58c4cb11fbe59c97a0a4b31cae3c8c"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_s390x.whl", hash = "sha256:ef5a7178fcc73b7d8c07229e89f8eb45b2908a9238eb90dcfc46571ccf0383b8"}, + {file = "lxml-5.4.0-cp311-cp311-manylinux_2_28_x86_64.whl", hash = "sha256:d2ed1b3cb9ff1c10e6e8b00941bb2e5bb568b307bfc6b17dffbbe8be5eecba86"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:72ac9762a9f8ce74c9eed4a4e74306f2f18613a6b71fa065495a67ac227b3056"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_ppc64le.whl", hash = "sha256:f5cb182f6396706dc6cc1896dd02b1c889d644c081b0cdec38747573db88a7d7"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_s390x.whl", hash = "sha256:3a3178b4873df8ef9457a4875703488eb1622632a9cee6d76464b60e90adbfcd"}, + {file = "lxml-5.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:e094ec83694b59d263802ed03a8384594fcce477ce484b0cbcd0008a211ca751"}, + {file = "lxml-5.4.0-cp311-cp311-win32.whl", hash = "sha256:4329422de653cdb2b72afa39b0aa04252fca9071550044904b2e7036d9d97fe4"}, + {file = "lxml-5.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:fd3be6481ef54b8cfd0e1e953323b7aa9d9789b94842d0e5b142ef4bb7999539"}, + {file = "lxml-5.4.0-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:b5aff6f3e818e6bdbbb38e5967520f174b18f539c2b9de867b1e7fde6f8d95a4"}, + {file = "lxml-5.4.0-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:942a5d73f739ad7c452bf739a62a0f83e2578afd6b8e5406308731f4ce78b16d"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:460508a4b07364d6abf53acaa0a90b6d370fafde5693ef37602566613a9b0779"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:529024ab3a505fed78fe3cc5ddc079464e709f6c892733e3f5842007cec8ac6e"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:7ca56ebc2c474e8f3d5761debfd9283b8b18c76c4fc0967b74aeafba1f5647f9"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a81e1196f0a5b4167a8dafe3a66aa67c4addac1b22dc47947abd5d5c7a3f24b5"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:00b8686694423ddae324cf614e1b9659c2edb754de617703c3d29ff568448df5"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:c5681160758d3f6ac5b4fea370495c48aac0989d6a0f01bb9a72ad8ef5ab75c4"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_ppc64le.whl", hash = "sha256:2dc191e60425ad70e75a68c9fd90ab284df64d9cd410ba8d2b641c0c45bc006e"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_s390x.whl", hash = "sha256:67f779374c6b9753ae0a0195a892a1c234ce8416e4448fe1e9f34746482070a7"}, + {file = "lxml-5.4.0-cp312-cp312-manylinux_2_28_x86_64.whl", hash = "sha256:79d5bfa9c1b455336f52343130b2067164040604e41f6dc4d8313867ed540079"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3d3c30ba1c9b48c68489dc1829a6eede9873f52edca1dda900066542528d6b20"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_ppc64le.whl", hash = "sha256:1af80c6316ae68aded77e91cd9d80648f7dd40406cef73df841aa3c36f6907c8"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_s390x.whl", hash = "sha256:4d885698f5019abe0de3d352caf9466d5de2baded00a06ef3f1216c1a58ae78f"}, + {file = "lxml-5.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:aea53d51859b6c64e7c51d522c03cc2c48b9b5d6172126854cc7f01aa11f52bc"}, + {file = "lxml-5.4.0-cp312-cp312-win32.whl", hash = "sha256:d90b729fd2732df28130c064aac9bb8aff14ba20baa4aee7bd0795ff1187545f"}, + {file = "lxml-5.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:1dc4ca99e89c335a7ed47d38964abcb36c5910790f9bd106f2a8fa2ee0b909d2"}, + {file = "lxml-5.4.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:773e27b62920199c6197130632c18fb7ead3257fce1ffb7d286912e56ddb79e0"}, + {file = "lxml-5.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:ce9c671845de9699904b1e9df95acfe8dfc183f2310f163cdaa91a3535af95de"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9454b8d8200ec99a224df8854786262b1bd6461f4280064c807303c642c05e76"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cccd007d5c95279e529c146d095f1d39ac05139de26c098166c4beb9374b0f4d"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0fce1294a0497edb034cb416ad3e77ecc89b313cff7adbee5334e4dc0d11f422"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:24974f774f3a78ac12b95e3a20ef0931795ff04dbb16db81a90c37f589819551"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:497cab4d8254c2a90bf988f162ace2ddbfdd806fce3bda3f581b9d24c852e03c"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:e794f698ae4c5084414efea0f5cc9f4ac562ec02d66e1484ff822ef97c2cadff"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_ppc64le.whl", hash = "sha256:2c62891b1ea3094bb12097822b3d44b93fc6c325f2043c4d2736a8ff09e65f60"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_s390x.whl", hash = "sha256:142accb3e4d1edae4b392bd165a9abdee8a3c432a2cca193df995bc3886249c8"}, + {file = "lxml-5.4.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:1a42b3a19346e5601d1b8296ff6ef3d76038058f311902edd574461e9c036982"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4291d3c409a17febf817259cb37bc62cb7eb398bcc95c1356947e2871911ae61"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:4f5322cf38fe0e21c2d73901abf68e6329dc02a4994e483adbcf92b568a09a54"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0be91891bdb06ebe65122aa6bf3fc94489960cf7e03033c6f83a90863b23c58b"}, + {file = "lxml-5.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:15a665ad90054a3d4f397bc40f73948d48e36e4c09f9bcffc7d90c87410e478a"}, + {file = "lxml-5.4.0-cp313-cp313-win32.whl", hash = "sha256:d5663bc1b471c79f5c833cffbc9b87d7bf13f87e055a5c86c363ccd2348d7e82"}, + {file = "lxml-5.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:bcb7a1096b4b6b24ce1ac24d4942ad98f983cd3810f9711bcd0293f43a9d8b9f"}, + {file = "lxml-5.4.0-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:7be701c24e7f843e6788353c055d806e8bd8466b52907bafe5d13ec6a6dbaecd"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:fb54f7c6bafaa808f27166569b1511fc42701a7713858dddc08afdde9746849e"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:97dac543661e84a284502e0cf8a67b5c711b0ad5fb661d1bd505c02f8cf716d7"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_28_x86_64.whl", hash = "sha256:c70e93fba207106cb16bf852e421c37bbded92acd5964390aad07cb50d60f5cf"}, + {file = "lxml-5.4.0-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.whl", hash = "sha256:9c886b481aefdf818ad44846145f6eaf373a20d200b5ce1a5c8e1bc2d8745410"}, + {file = "lxml-5.4.0-cp36-cp36m-musllinux_1_2_x86_64.whl", hash = "sha256:fa0e294046de09acd6146be0ed6727d1f42ded4ce3ea1e9a19c11b6774eea27c"}, + {file = "lxml-5.4.0-cp36-cp36m-win32.whl", hash = "sha256:61c7bbf432f09ee44b1ccaa24896d21075e533cd01477966a5ff5a71d88b2f56"}, + {file = "lxml-5.4.0-cp36-cp36m-win_amd64.whl", hash = "sha256:7ce1a171ec325192c6a636b64c94418e71a1964f56d002cc28122fceff0b6121"}, + {file = "lxml-5.4.0-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:795f61bcaf8770e1b37eec24edf9771b307df3af74d1d6f27d812e15a9ff3872"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:29f451a4b614a7b5b6c2e043d7b64a15bd8304d7e767055e8ab68387a8cacf4e"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:891f7f991a68d20c75cb13c5c9142b2a3f9eb161f1f12a9489c82172d1f133c0"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4aa412a82e460571fad592d0f93ce9935a20090029ba08eca05c614f99b0cc92"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_28_aarch64.whl", hash = "sha256:ac7ba71f9561cd7d7b55e1ea5511543c0282e2b6450f122672a2694621d63b7e"}, + {file = "lxml-5.4.0-cp37-cp37m-manylinux_2_28_x86_64.whl", hash = "sha256:c5d32f5284012deaccd37da1e2cd42f081feaa76981f0eaa474351b68df813c5"}, + {file = "lxml-5.4.0-cp37-cp37m-musllinux_1_2_aarch64.whl", hash = "sha256:ce31158630a6ac85bddd6b830cffd46085ff90498b397bd0a259f59d27a12188"}, + {file = "lxml-5.4.0-cp37-cp37m-musllinux_1_2_x86_64.whl", hash = "sha256:31e63621e073e04697c1b2d23fcb89991790eef370ec37ce4d5d469f40924ed6"}, + {file = "lxml-5.4.0-cp37-cp37m-win32.whl", hash = "sha256:be2ba4c3c5b7900246a8f866580700ef0d538f2ca32535e991027bdaba944063"}, + {file = "lxml-5.4.0-cp37-cp37m-win_amd64.whl", hash = "sha256:09846782b1ef650b321484ad429217f5154da4d6e786636c38e434fa32e94e49"}, + {file = "lxml-5.4.0-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:eaf24066ad0b30917186420d51e2e3edf4b0e2ea68d8cd885b14dc8afdcf6556"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2b31a3a77501d86d8ade128abb01082724c0dfd9524f542f2f07d693c9f1175f"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0e108352e203c7afd0eb91d782582f00a0b16a948d204d4dec8565024fafeea5"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a11a96c3b3f7551c8a8109aa65e8594e551d5a84c76bf950da33d0fb6dfafab7"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_28_aarch64.whl", hash = "sha256:ca755eebf0d9e62d6cb013f1261e510317a41bf4650f22963474a663fdfe02aa"}, + {file = "lxml-5.4.0-cp38-cp38-manylinux_2_28_x86_64.whl", hash = "sha256:4cd915c0fb1bed47b5e6d6edd424ac25856252f09120e3e8ba5154b6b921860e"}, + {file = "lxml-5.4.0-cp38-cp38-musllinux_1_2_aarch64.whl", hash = "sha256:226046e386556a45ebc787871d6d2467b32c37ce76c2680f5c608e25823ffc84"}, + {file = "lxml-5.4.0-cp38-cp38-musllinux_1_2_x86_64.whl", hash = "sha256:b108134b9667bcd71236c5a02aad5ddd073e372fb5d48ea74853e009fe38acb6"}, + {file = "lxml-5.4.0-cp38-cp38-win32.whl", hash = "sha256:1320091caa89805df7dcb9e908add28166113dcd062590668514dbd510798c88"}, + {file = "lxml-5.4.0-cp38-cp38-win_amd64.whl", hash = "sha256:073eb6dcdf1f587d9b88c8c93528b57eccda40209cf9be549d469b942b41d70b"}, + {file = "lxml-5.4.0-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:bda3ea44c39eb74e2488297bb39d47186ed01342f0022c8ff407c250ac3f498e"}, + {file = "lxml-5.4.0-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9ceaf423b50ecfc23ca00b7f50b64baba85fb3fb91c53e2c9d00bc86150c7e40"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_12_i686.manylinux2010_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:664cdc733bc87449fe781dbb1f309090966c11cc0c0cd7b84af956a02a8a4729"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:67ed8a40665b84d161bae3181aa2763beea3747f748bca5874b4af4d75998f87"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9b4a3bd174cc9cdaa1afbc4620c049038b441d6ba07629d89a83b408e54c35cd"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_28_aarch64.whl", hash = "sha256:b0989737a3ba6cf2a16efb857fb0dfa20bc5c542737fddb6d893fde48be45433"}, + {file = "lxml-5.4.0-cp39-cp39-manylinux_2_28_x86_64.whl", hash = "sha256:dc0af80267edc68adf85f2a5d9be1cdf062f973db6790c1d065e45025fa26140"}, + {file = "lxml-5.4.0-cp39-cp39-musllinux_1_2_aarch64.whl", hash = "sha256:639978bccb04c42677db43c79bdaa23785dc7f9b83bfd87570da8207872f1ce5"}, + {file = "lxml-5.4.0-cp39-cp39-musllinux_1_2_x86_64.whl", hash = "sha256:5a99d86351f9c15e4a901fc56404b485b1462039db59288b203f8c629260a142"}, + {file = "lxml-5.4.0-cp39-cp39-win32.whl", hash = "sha256:3e6d5557989cdc3ebb5302bbdc42b439733a841891762ded9514e74f60319ad6"}, + {file = "lxml-5.4.0-cp39-cp39-win_amd64.whl", hash = "sha256:a8c9b7f16b63e65bbba889acb436a1034a82d34fa09752d754f88d708eca80e1"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-macosx_10_15_x86_64.whl", hash = "sha256:1b717b00a71b901b4667226bba282dd462c42ccf618ade12f9ba3674e1fabc55"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:27a9ded0f0b52098ff89dd4c418325b987feed2ea5cc86e8860b0f844285d740"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:4b7ce10634113651d6f383aa712a194179dcd496bd8c41e191cec2099fa09de5"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:53370c26500d22b45182f98847243efb518d268374a9570409d2e2276232fd37"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c6364038c519dffdbe07e3cf42e6a7f8b90c275d4d1617a69bb59734c1a2d571"}, + {file = "lxml-5.4.0-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:b12cb6527599808ada9eb2cd6e0e7d3d8f13fe7bbb01c6311255a15ded4c7ab4"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-macosx_10_9_x86_64.whl", hash = "sha256:5f11a1526ebd0dee85e7b1e39e39a0cc0d9d03fb527f56d8457f6df48a10dc0c"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:48b4afaf38bf79109bb060d9016fad014a9a48fb244e11b94f74ae366a64d252"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de6f6bb8a7840c7bf216fb83eec4e2f79f7325eca8858167b68708b929ab2172"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:5cca36a194a4eb4e2ed6be36923d3cffd03dcdf477515dea687185506583d4c9"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:b7c86884ad23d61b025989d99bfdd92a7351de956e01c61307cb87035960bcb1"}, + {file = "lxml-5.4.0-pp37-pypy37_pp73-win_amd64.whl", hash = "sha256:53d9469ab5460402c19553b56c3648746774ecd0681b1b27ea74d5d8a3ef5590"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-macosx_10_9_x86_64.whl", hash = "sha256:56dbdbab0551532bb26c19c914848d7251d73edb507c3079d6805fa8bba5b706"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:14479c2ad1cb08b62bb941ba8e0e05938524ee3c3114644df905d2331c76cd57"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:32697d2ea994e0db19c1df9e40275ffe84973e4232b5c274f47e7c1ec9763cdd"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:24f6df5f24fc3385f622c0c9d63fe34604893bc1a5bdbb2dbf5870f85f9a404a"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:151d6c40bc9db11e960619d2bf2ec5829f0aaffb10b41dcf6ad2ce0f3c0b2325"}, + {file = "lxml-5.4.0-pp38-pypy38_pp73-win_amd64.whl", hash = "sha256:4025bf2884ac4370a3243c5aa8d66d3cb9e15d3ddd0af2d796eccc5f0244390e"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-macosx_10_15_x86_64.whl", hash = "sha256:9459e6892f59ecea2e2584ee1058f5d8f629446eab52ba2305ae13a32a059530"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:47fb24cc0f052f0576ea382872b3fc7e1f7e3028e53299ea751839418ade92a6"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:50441c9de951a153c698b9b99992e806b71c1f36d14b154592580ff4a9d0d877"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ab339536aa798b1e17750733663d272038bf28069761d5be57cb4a9b0137b4f8"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:9776af1aad5a4b4a1317242ee2bea51da54b2a7b7b48674be736d463c999f37d"}, + {file = "lxml-5.4.0-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:63e7968ff83da2eb6fdda967483a7a023aa497d85ad8f05c3ad9b1f2e8c84987"}, + {file = "lxml-5.4.0.tar.gz", hash = "sha256:d12832e1dbea4be280b22fd0ea7c9b87f0d8fc51ba06e92dc62d52f804f78ebd"}, ] [package.extras] cssselect = ["cssselect (>=0.7)"] +html-clean = ["lxml_html_clean"] html5 = ["html5lib"] htmlsoup = ["BeautifulSoup4"] -source = ["Cython (==0.29.37)"] +source = ["Cython (>=3.0.11,<3.1.0)"] [[package]] name = "markupsafe" @@ -1098,14 +1139,14 @@ dev = ["autopep8", "black", "docutils", "isort", "mypy", "pip-tools", "pypandoc" [[package]] name = "platformdirs" -version = "4.5.0" +version = "4.5.1" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." optional = false python-versions = ">=3.10" groups = ["dev"] files = [ - {file = "platformdirs-4.5.0-py3-none-any.whl", hash = "sha256:e578a81bb873cbb89a41fcc904c7ef523cc18284b7e3b3ccf06aca1403b7ebd3"}, - {file = "platformdirs-4.5.0.tar.gz", hash = "sha256:70ddccdd7c99fc5942e9fc25636a8b34d04c24b335100223152c2803e4063312"}, + {file = "platformdirs-4.5.1-py3-none-any.whl", hash = "sha256:d03afa3963c806a9bed9d5125c8f4cb2fdaf74a55ab60e5d59b3fde758104d31"}, + {file = "platformdirs-4.5.1.tar.gz", hash = "sha256:61d5cdcc6065745cdd94f0f878977f8de9437be93de97c1c12f853c9c0cdcbda"}, ] [package.extras] @@ -1237,14 +1278,14 @@ files = [ [[package]] name = "pydantic" -version = "2.12.4" +version = "2.12.5" description = "Data validation using Python type hints" optional = false python-versions = ">=3.9" groups = ["dev"] files = [ - {file = "pydantic-2.12.4-py3-none-any.whl", hash = "sha256:92d3d202a745d46f9be6df459ac5a064fdaa3c1c4cd8adcfa332ccf3c05f871e"}, - {file = "pydantic-2.12.4.tar.gz", hash = "sha256:0f8cb9555000a4b5b617f66bfd2566264c4984b27589d3b845685983e8ea85ac"}, + {file = "pydantic-2.12.5-py3-none-any.whl", hash = "sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d"}, + {file = "pydantic-2.12.5.tar.gz", hash = "sha256:4d351024c75c0f085a9febbb665ce8c0c6ec5d30e903bdb6394b7ede26aebb49"}, ] [package.dependencies] @@ -1522,14 +1563,14 @@ testing = ["coverage (>=6.2)", "hypothesis (>=5.7.1)"] [[package]] name = "pytest-check" -version = "2.6.0" +version = "2.6.2" description = "A pytest plugin that allows multiple failures per test." optional = false python-versions = ">=3.9" groups = ["main"] files = [ - {file = "pytest_check-2.6.0-py3-none-any.whl", hash = "sha256:a9735020dc0f0219b8a5298d7f90cf6d1f6fe34b709b9ecbb9e0f49393ebab38"}, - {file = "pytest_check-2.6.0.tar.gz", hash = "sha256:9be4c59a09827129109148c85d7b5964b57f0a5ced1b619459ca30e6f463ca42"}, + {file = "pytest_check-2.6.2-py3-none-any.whl", hash = "sha256:71762eb58f6b8a2d75afb9e6c8b800af7f634f67359d899a65ee48aaee087215"}, + {file = "pytest_check-2.6.2.tar.gz", hash = "sha256:5e2128405b14978ad74f21f3225fcc52bbb1cc7c41a55d5eaad9f1e3cd27e42e"}, ] [package.dependencies] @@ -1541,20 +1582,20 @@ dev = ["build", "tox", "tox-uv"] [[package]] name = "pytest-nhsd-apim" -version = "4.0.1" +version = "5.0.6" description = "Pytest plugin accessing NHSDigital's APIM proxies" optional = false python-versions = "<4.0,>=3.8" groups = ["dev"] files = [ - {file = "pytest_nhsd_apim-4.0.1-py3-none-any.whl", hash = "sha256:72250b813d894e82c643976c9a906c39316f0f3ed9497fdb96d795677690338c"}, - {file = "pytest_nhsd_apim-4.0.1.tar.gz", hash = "sha256:637ac1bdf57245eee66d2df89945aec5072b872698e050cb6b2d29b46b5dcf13"}, + {file = "pytest_nhsd_apim-5.0.6-py3-none-any.whl", hash = "sha256:b562297c62594275dcce5b08187d7cea4f56e2704f2354f1beb80c8f3db8202e"}, + {file = "pytest_nhsd_apim-5.0.6.tar.gz", hash = "sha256:77be049fe6f840c7b37bb7607ee1650ef6cea17806c29051eab5721c6b272be4"}, ] [package.dependencies] Authlib = ">=1.3.1,<2.0.0" cryptography = ">42.0.0" -lxml = ">=4.9.1,<5.0.0" +lxml = ">=5.3.1,<6.0.0" pycryptodome = ">=3.20.0,<4.0.0" pydantic = ">=2.9.2,<3.0.0" pydantic-settings = ">=2.2.1,<3.0.0" @@ -1735,127 +1776,127 @@ six = "*" [[package]] name = "rpds-py" -version = "0.29.0" +version = "0.30.0" description = "Python bindings to Rust's persistent data structures (rpds)" optional = false python-versions = ">=3.10" groups = ["main"] files = [ - {file = "rpds_py-0.29.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:4ae4b88c6617e1b9e5038ab3fccd7bac0842fdda2b703117b2aa99bc85379113"}, - {file = "rpds_py-0.29.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:7d9128ec9d8cecda6f044001fde4fb71ea7c24325336612ef8179091eb9596b9"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d37812c3da8e06f2bb35b3cf10e4a7b68e776a706c13058997238762b4e07f4f"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:66786c3fb1d8de416a7fa8e1cb1ec6ba0a745b2b0eee42f9b7daa26f1a495545"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b58f5c77f1af888b5fd1876c9a0d9858f6f88a39c9dd7c073a88e57e577da66d"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:799156ef1f3529ed82c36eb012b5d7a4cf4b6ef556dd7cc192148991d07206ae"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:453783477aa4f2d9104c4b59b08c871431647cb7af51b549bbf2d9eb9c827756"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_31_riscv64.whl", hash = "sha256:24a7231493e3c4a4b30138b50cca089a598e52c34cf60b2f35cebf62f274fdea"}, - {file = "rpds_py-0.29.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7033c1010b1f57bb44d8067e8c25aa6fa2e944dbf46ccc8c92b25043839c3fd2"}, - {file = "rpds_py-0.29.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:0248b19405422573621172ab8e3a1f29141362d13d9f72bafa2e28ea0cdca5a2"}, - {file = "rpds_py-0.29.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:f9f436aee28d13b9ad2c764fc273e0457e37c2e61529a07b928346b219fcde3b"}, - {file = "rpds_py-0.29.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:24a16cb7163933906c62c272de20ea3c228e4542c8c45c1d7dc2b9913e17369a"}, - {file = "rpds_py-0.29.0-cp310-cp310-win32.whl", hash = "sha256:1a409b0310a566bfd1be82119891fefbdce615ccc8aa558aff7835c27988cbef"}, - {file = "rpds_py-0.29.0-cp310-cp310-win_amd64.whl", hash = "sha256:c5523b0009e7c3c1263471b69d8da1c7d41b3ecb4cb62ef72be206b92040a950"}, - {file = "rpds_py-0.29.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:9b9c764a11fd637e0322a488560533112837f5334ffeb48b1be20f6d98a7b437"}, - {file = "rpds_py-0.29.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:3fd2164d73812026ce970d44c3ebd51e019d2a26a4425a5dcbdfa93a34abc383"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4a097b7f7f7274164566ae90a221fd725363c0e9d243e2e9ed43d195ccc5495c"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:7cdc0490374e31cedefefaa1520d5fe38e82fde8748cbc926e7284574c714d6b"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:89ca2e673ddd5bde9b386da9a0aac0cab0e76f40c8f0aaf0d6311b6bbf2aa311"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a5d9da3ff5af1ca1249b1adb8ef0573b94c76e6ae880ba1852f033bf429d4588"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8238d1d310283e87376c12f658b61e1ee23a14c0e54c7c0ce953efdbdc72deed"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_31_riscv64.whl", hash = "sha256:2d6fb2ad1c36f91c4646989811e84b1ea5e0c3cf9690b826b6e32b7965853a63"}, - {file = "rpds_py-0.29.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:534dc9df211387547267ccdb42253aa30527482acb38dd9b21c5c115d66a96d2"}, - {file = "rpds_py-0.29.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d456e64724a075441e4ed648d7f154dc62e9aabff29bcdf723d0c00e9e1d352f"}, - {file = "rpds_py-0.29.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:a738f2da2f565989401bd6fd0b15990a4d1523c6d7fe83f300b7e7d17212feca"}, - {file = "rpds_py-0.29.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:a110e14508fd26fd2e472bb541f37c209409876ba601cf57e739e87d8a53cf95"}, - {file = "rpds_py-0.29.0-cp311-cp311-win32.whl", hash = "sha256:923248a56dd8d158389a28934f6f69ebf89f218ef96a6b216a9be6861804d3f4"}, - {file = "rpds_py-0.29.0-cp311-cp311-win_amd64.whl", hash = "sha256:539eb77eb043afcc45314d1be09ea6d6cafb3addc73e0547c171c6d636957f60"}, - {file = "rpds_py-0.29.0-cp311-cp311-win_arm64.whl", hash = "sha256:bdb67151ea81fcf02d8f494703fb728d4d34d24556cbff5f417d74f6f5792e7c"}, - {file = "rpds_py-0.29.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a0891cfd8db43e085c0ab93ab7e9b0c8fee84780d436d3b266b113e51e79f954"}, - {file = "rpds_py-0.29.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:3897924d3f9a0361472d884051f9a2460358f9a45b1d85a39a158d2f8f1ad71c"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2a21deb8e0d1571508c6491ce5ea5e25669b1dd4adf1c9d64b6314842f708b5d"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:9efe71687d6427737a0a2de9ca1c0a216510e6cd08925c44162be23ed7bed2d5"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:40f65470919dc189c833e86b2c4bd21bd355f98436a2cef9e0a9a92aebc8e57e"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:def48ff59f181130f1a2cb7c517d16328efac3ec03951cca40c1dc2049747e83"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ad7bd570be92695d89285a4b373006930715b78d96449f686af422debb4d3949"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_31_riscv64.whl", hash = "sha256:5a572911cd053137bbff8e3a52d31c5d2dba51d3a67ad902629c70185f3f2181"}, - {file = "rpds_py-0.29.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d583d4403bcbf10cffc3ab5cee23d7643fcc960dff85973fd3c2d6c86e8dbb0c"}, - {file = "rpds_py-0.29.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:070befbb868f257d24c3bb350dbd6e2f645e83731f31264b19d7231dd5c396c7"}, - {file = "rpds_py-0.29.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:fc935f6b20b0c9f919a8ff024739174522abd331978f750a74bb68abd117bd19"}, - {file = "rpds_py-0.29.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8c5a8ecaa44ce2d8d9d20a68a2483a74c07f05d72e94a4dff88906c8807e77b0"}, - {file = "rpds_py-0.29.0-cp312-cp312-win32.whl", hash = "sha256:ba5e1aeaf8dd6d8f6caba1f5539cddda87d511331714b7b5fc908b6cfc3636b7"}, - {file = "rpds_py-0.29.0-cp312-cp312-win_amd64.whl", hash = "sha256:b5f6134faf54b3cb83375db0f113506f8b7770785be1f95a631e7e2892101977"}, - {file = "rpds_py-0.29.0-cp312-cp312-win_arm64.whl", hash = "sha256:b016eddf00dca7944721bf0cd85b6af7f6c4efaf83ee0b37c4133bd39757a8c7"}, - {file = "rpds_py-0.29.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:1585648d0760b88292eecab5181f5651111a69d90eff35d6b78aa32998886a61"}, - {file = "rpds_py-0.29.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:521807963971a23996ddaf764c682b3e46459b3c58ccd79fefbe16718db43154"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0a8896986efaa243ab713c69e6491a4138410f0fe36f2f4c71e18bd5501e8014"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1d24564a700ef41480a984c5ebed62b74e6ce5860429b98b1fede76049e953e6"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e6596b93c010d386ae46c9fba9bfc9fc5965fa8228edeac51576299182c2e31c"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:5cc58aac218826d054c7da7f95821eba94125d88be673ff44267bb89d12a5866"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:de73e40ebc04dd5d9556f50180395322193a78ec247e637e741c1b954810f295"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:295ce5ac7f0cf69a651ea75c8f76d02a31f98e5698e82a50a5f4d4982fbbae3b"}, - {file = "rpds_py-0.29.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1ea59b23ea931d494459c8338056fe7d93458c0bf3ecc061cd03916505369d55"}, - {file = "rpds_py-0.29.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f49d41559cebd608042fdcf54ba597a4a7555b49ad5c1c0c03e0af82692661cd"}, - {file = "rpds_py-0.29.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:05a2bd42768ea988294ca328206efbcc66e220d2d9b7836ee5712c07ad6340ea"}, - {file = "rpds_py-0.29.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:33ca7bdfedd83339ca55da3a5e1527ee5870d4b8369456b5777b197756f3ca22"}, - {file = "rpds_py-0.29.0-cp313-cp313-win32.whl", hash = "sha256:20c51ae86a0bb9accc9ad4e6cdeec58d5ebb7f1b09dd4466331fc65e1766aae7"}, - {file = "rpds_py-0.29.0-cp313-cp313-win_amd64.whl", hash = "sha256:6410e66f02803600edb0b1889541f4b5cc298a5ccda0ad789cc50ef23b54813e"}, - {file = "rpds_py-0.29.0-cp313-cp313-win_arm64.whl", hash = "sha256:56838e1cd9174dc23c5691ee29f1d1be9eab357f27efef6bded1328b23e1ced2"}, - {file = "rpds_py-0.29.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:37d94eadf764d16b9a04307f2ab1d7af6dc28774bbe0535c9323101e14877b4c"}, - {file = "rpds_py-0.29.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:d472cf73efe5726a067dce63eebe8215b14beabea7c12606fd9994267b3cfe2b"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:72fdfd5ff8992e4636621826371e3ac5f3e3b8323e9d0e48378e9c13c3dac9d0"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:2549d833abdf8275c901313b9e8ff8fba57e50f6a495035a2a4e30621a2f7cc4"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4448dad428f28a6a767c3e3b80cde3446a22a0efbddaa2360f4bb4dc836d0688"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:115f48170fd4296a33938d8c11f697f5f26e0472e43d28f35624764173a60e4d"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8e5bb73ffc029820f4348e9b66b3027493ae00bca6629129cd433fd7a76308ee"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:b1581fcde18fcdf42ea2403a16a6b646f8eb1e58d7f90a0ce693da441f76942e"}, - {file = "rpds_py-0.29.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:16e9da2bda9eb17ea318b4c335ec9ac1818e88922cbe03a5743ea0da9ecf74fb"}, - {file = "rpds_py-0.29.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:28fd300326dd21198f311534bdb6d7e989dd09b3418b3a91d54a0f384c700967"}, - {file = "rpds_py-0.29.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2aba991e041d031c7939e1358f583ae405a7bf04804ca806b97a5c0e0af1ea5e"}, - {file = "rpds_py-0.29.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:7f437026dbbc3f08c99cc41a5b2570c6e1a1ddbe48ab19a9b814254128d4ea7a"}, - {file = "rpds_py-0.29.0-cp313-cp313t-win32.whl", hash = "sha256:6e97846e9800a5d0fe7be4d008f0c93d0feeb2700da7b1f7528dabafb31dfadb"}, - {file = "rpds_py-0.29.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f49196aec7c4b406495f60e6f947ad71f317a765f956d74bbd83996b9edc0352"}, - {file = "rpds_py-0.29.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:394d27e4453d3b4d82bb85665dc1fcf4b0badc30fc84282defed71643b50e1a1"}, - {file = "rpds_py-0.29.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:55d827b2ae95425d3be9bc9a5838b6c29d664924f98146557f7715e331d06df8"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fc31a07ed352e5462d3ee1b22e89285f4ce97d5266f6d1169da1142e78045626"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:c4695dd224212f6105db7ea62197144230b808d6b2bba52238906a2762f1d1e7"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:fcae1770b401167f8b9e1e3f566562e6966ffa9ce63639916248a9e25fa8a244"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:90f30d15f45048448b8da21c41703b31c61119c06c216a1bf8c245812a0f0c17"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:44a91e0ab77bdc0004b43261a4b8cd6d6b451e8d443754cfda830002b5745b32"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:4aa195e5804d32c682e453b34474f411ca108e4291c6a0f824ebdc30a91c973c"}, - {file = "rpds_py-0.29.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:7971bdb7bf4ee0f7e6f67fa4c7fbc6019d9850cc977d126904392d363f6f8318"}, - {file = "rpds_py-0.29.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:8ae33ad9ce580c7a47452c3b3f7d8a9095ef6208e0a0c7e4e2384f9fc5bf8212"}, - {file = "rpds_py-0.29.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:c661132ab2fb4eeede2ef69670fd60da5235209874d001a98f1542f31f2a8a94"}, - {file = "rpds_py-0.29.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:bb78b3a0d31ac1bde132c67015a809948db751cb4e92cdb3f0b242e430b6ed0d"}, - {file = "rpds_py-0.29.0-cp314-cp314-win32.whl", hash = "sha256:f475f103488312e9bd4000bc890a95955a07b2d0b6e8884aef4be56132adbbf1"}, - {file = "rpds_py-0.29.0-cp314-cp314-win_amd64.whl", hash = "sha256:b9cf2359a4fca87cfb6801fae83a76aedf66ee1254a7a151f1341632acf67f1b"}, - {file = "rpds_py-0.29.0-cp314-cp314-win_arm64.whl", hash = "sha256:9ba8028597e824854f0f1733d8b964e914ae3003b22a10c2c664cb6927e0feb9"}, - {file = "rpds_py-0.29.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:e71136fd0612556b35c575dc2726ae04a1669e6a6c378f2240312cf5d1a2ab10"}, - {file = "rpds_py-0.29.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:76fe96632d53f3bf0ea31ede2f53bbe3540cc2736d4aec3b3801b0458499ef3a"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9459a33f077130dbb2c7c3cea72ee9932271fb3126404ba2a2661e4fe9eb7b79"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5c9546cfdd5d45e562cc0444b6dddc191e625c62e866bf567a2c69487c7ad28a"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12597d11d97b8f7e376c88929a6e17acb980e234547c92992f9f7c058f1a7310"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28de03cf48b8a9e6ec10318f2197b83946ed91e2891f651a109611be4106ac4b"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:fd7951c964069039acc9d67a8ff1f0a7f34845ae180ca542b17dc1456b1f1808"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:c07d107b7316088f1ac0177a7661ca0c6670d443f6fe72e836069025e6266761"}, - {file = "rpds_py-0.29.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1de2345af363d25696969befc0c1688a6cb5e8b1d32b515ef84fc245c6cddba3"}, - {file = "rpds_py-0.29.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:00e56b12d2199ca96068057e1ae7f9998ab6e99cda82431afafd32f3ec98cca9"}, - {file = "rpds_py-0.29.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3919a3bbecee589300ed25000b6944174e07cd20db70552159207b3f4bbb45b8"}, - {file = "rpds_py-0.29.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:e7fa2ccc312bbd91e43aa5e0869e46bc03278a3dddb8d58833150a18b0f0283a"}, - {file = "rpds_py-0.29.0-cp314-cp314t-win32.whl", hash = "sha256:97c817863ffc397f1e6a6e9d2d89fe5408c0a9922dac0329672fb0f35c867ea5"}, - {file = "rpds_py-0.29.0-cp314-cp314t-win_amd64.whl", hash = "sha256:2023473f444752f0f82a58dfcbee040d0a1b3d1b3c2ec40e884bd25db6d117d2"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:acd82a9e39082dc5f4492d15a6b6c8599aa21db5c35aaf7d6889aea16502c07d"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:715b67eac317bf1c7657508170a3e011a1ea6ccb1c9d5f296e20ba14196be6b3"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f3b1b87a237cb2dba4db18bcfaaa44ba4cd5936b91121b62292ff21df577fc43"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:1c3c3e8101bb06e337c88eb0c0ede3187131f19d97d43ea0e1c5407ea74c0cbf"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2b8e54d6e61f3ecd3abe032065ce83ea63417a24f437e4a3d73d2f85ce7b7cfe"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:3fbd4e9aebf110473a420dea85a238b254cf8a15acb04b22a5a6b5ce8925b760"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:80fdf53d36e6c72819993e35d1ebeeb8e8fc688d0c6c2b391b55e335b3afba5a"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_31_riscv64.whl", hash = "sha256:ea7173df5d86f625f8dde6d5929629ad811ed8decda3b60ae603903839ac9ac0"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:76054d540061eda273274f3d13a21a4abdde90e13eaefdc205db37c05230efce"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:9f84c549746a5be3bc7415830747a3a0312573afc9f95785eb35228bb17742ec"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-musllinux_1_2_i686.whl", hash = "sha256:0ea962671af5cb9a260489e311fa22b2e97103e3f9f0caaea6f81390af96a9ed"}, - {file = "rpds_py-0.29.0-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:f7728653900035fb7b8d06e1e5900545d8088efc9d5d4545782da7df03ec803f"}, - {file = "rpds_py-0.29.0.tar.gz", hash = "sha256:fe55fe686908f50154d1dc599232016e50c243b438c3b7432f24e2895b0e5359"}, + {file = "rpds_py-0.30.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:679ae98e00c0e8d68a7fda324e16b90fd5260945b45d3b824c892cec9eea3288"}, + {file = "rpds_py-0.30.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4cc2206b76b4f576934f0ed374b10d7ca5f457858b157ca52064bdfc26b9fc00"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:389a2d49eded1896c3d48b0136ead37c48e221b391c052fba3f4055c367f60a6"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:32c8528634e1bf7121f3de08fa85b138f4e0dc47657866630611b03967f041d7"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f207f69853edd6f6700b86efb84999651baf3789e78a466431df1331608e5324"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:67b02ec25ba7a9e8fa74c63b6ca44cf5707f2fbfadae3ee8e7494297d56aa9df"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0c0e95f6819a19965ff420f65578bacb0b00f251fefe2c8b23347c37174271f3"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_31_riscv64.whl", hash = "sha256:a452763cc5198f2f98898eb98f7569649fe5da666c2dc6b5ddb10fde5a574221"}, + {file = "rpds_py-0.30.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:e0b65193a413ccc930671c55153a03ee57cecb49e6227204b04fae512eb657a7"}, + {file = "rpds_py-0.30.0-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:858738e9c32147f78b3ac24dc0edb6610000e56dc0f700fd5f651d0a0f0eb9ff"}, + {file = "rpds_py-0.30.0-cp310-cp310-musllinux_1_2_i686.whl", hash = "sha256:da279aa314f00acbb803da1e76fa18666778e8a8f83484fba94526da5de2cba7"}, + {file = "rpds_py-0.30.0-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:7c64d38fb49b6cdeda16ab49e35fe0da2e1e9b34bc38bd78386530f218b37139"}, + {file = "rpds_py-0.30.0-cp310-cp310-win32.whl", hash = "sha256:6de2a32a1665b93233cde140ff8b3467bdb9e2af2b91079f0333a0974d12d464"}, + {file = "rpds_py-0.30.0-cp310-cp310-win_amd64.whl", hash = "sha256:1726859cd0de969f88dc8673bdd954185b9104e05806be64bcd87badbe313169"}, + {file = "rpds_py-0.30.0-cp311-cp311-macosx_10_12_x86_64.whl", hash = "sha256:a2bffea6a4ca9f01b3f8e548302470306689684e61602aa3d141e34da06cf425"}, + {file = "rpds_py-0.30.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:dc4f992dfe1e2bc3ebc7444f6c7051b4bc13cd8e33e43511e8ffd13bf407010d"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:422c3cb9856d80b09d30d2eb255d0754b23e090034e1deb4083f8004bd0761e4"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:07ae8a593e1c3c6b82ca3292efbe73c30b61332fd612e05abee07c79359f292f"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:12f90dd7557b6bd57f40abe7747e81e0c0b119bef015ea7726e69fe550e394a4"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:99b47d6ad9a6da00bec6aabe5a6279ecd3c06a329d4aa4771034a21e335c3a97"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33f559f3104504506a44bb666b93a33f5d33133765b0c216a5bf2f1e1503af89"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_31_riscv64.whl", hash = "sha256:946fe926af6e44f3697abbc305ea168c2c31d3e3ef1058cf68f379bf0335a78d"}, + {file = "rpds_py-0.30.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:495aeca4b93d465efde585977365187149e75383ad2684f81519f504f5c13038"}, + {file = "rpds_py-0.30.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:d9a0ca5da0386dee0655b4ccdf46119df60e0f10da268d04fe7cc87886872ba7"}, + {file = "rpds_py-0.30.0-cp311-cp311-musllinux_1_2_i686.whl", hash = "sha256:8d6d1cc13664ec13c1b84241204ff3b12f9bb82464b8ad6e7a5d3486975c2eed"}, + {file = "rpds_py-0.30.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:3896fa1be39912cf0757753826bc8bdc8ca331a28a7c4ae46b7a21280b06bb85"}, + {file = "rpds_py-0.30.0-cp311-cp311-win32.whl", hash = "sha256:55f66022632205940f1827effeff17c4fa7ae1953d2b74a8581baaefb7d16f8c"}, + {file = "rpds_py-0.30.0-cp311-cp311-win_amd64.whl", hash = "sha256:a51033ff701fca756439d641c0ad09a41d9242fa69121c7d8769604a0a629825"}, + {file = "rpds_py-0.30.0-cp311-cp311-win_arm64.whl", hash = "sha256:47b0ef6231c58f506ef0b74d44e330405caa8428e770fec25329ed2cb971a229"}, + {file = "rpds_py-0.30.0-cp312-cp312-macosx_10_12_x86_64.whl", hash = "sha256:a161f20d9a43006833cd7068375a94d035714d73a172b681d8881820600abfad"}, + {file = "rpds_py-0.30.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6abc8880d9d036ecaafe709079969f56e876fcf107f7a8e9920ba6d5a3878d05"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ca28829ae5f5d569bb62a79512c842a03a12576375d5ece7d2cadf8abe96ec28"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a1010ed9524c73b94d15919ca4d41d8780980e1765babf85f9a2f90d247153dd"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f8d1736cfb49381ba528cd5baa46f82fdc65c06e843dab24dd70b63d09121b3f"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:d948b135c4693daff7bc2dcfc4ec57237a29bd37e60c2fabf5aff2bbacf3e2f1"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47f236970bccb2233267d89173d3ad2703cd36a0e2a6e92d0560d333871a3d23"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_31_riscv64.whl", hash = "sha256:2e6ecb5a5bcacf59c3f912155044479af1d0b6681280048b338b28e364aca1f6"}, + {file = "rpds_py-0.30.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a8fa71a2e078c527c3e9dc9fc5a98c9db40bcc8a92b4e8858e36d329f8684b51"}, + {file = "rpds_py-0.30.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:73c67f2db7bc334e518d097c6d1e6fed021bbc9b7d678d6cc433478365d1d5f5"}, + {file = "rpds_py-0.30.0-cp312-cp312-musllinux_1_2_i686.whl", hash = "sha256:5ba103fb455be00f3b1c2076c9d4264bfcb037c976167a6047ed82f23153f02e"}, + {file = "rpds_py-0.30.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7cee9c752c0364588353e627da8a7e808a66873672bcb5f52890c33fd965b394"}, + {file = "rpds_py-0.30.0-cp312-cp312-win32.whl", hash = "sha256:1ab5b83dbcf55acc8b08fc62b796ef672c457b17dbd7820a11d6c52c06839bdf"}, + {file = "rpds_py-0.30.0-cp312-cp312-win_amd64.whl", hash = "sha256:a090322ca841abd453d43456ac34db46e8b05fd9b3b4ac0c78bcde8b089f959b"}, + {file = "rpds_py-0.30.0-cp312-cp312-win_arm64.whl", hash = "sha256:669b1805bd639dd2989b281be2cfd951c6121b65e729d9b843e9639ef1fd555e"}, + {file = "rpds_py-0.30.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:f83424d738204d9770830d35290ff3273fbb02b41f919870479fab14b9d303b2"}, + {file = "rpds_py-0.30.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:e7536cd91353c5273434b4e003cbda89034d67e7710eab8761fd918ec6c69cf8"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2771c6c15973347f50fece41fc447c054b7ac2ae0502388ce3b6738cd366e3d4"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:0a59119fc6e3f460315fe9d08149f8102aa322299deaa5cab5b40092345c2136"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:76fec018282b4ead0364022e3c54b60bf368b9d926877957a8624b58419169b7"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:692bef75a5525db97318e8cd061542b5a79812d711ea03dbc1f6f8dbb0c5f0d2"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9027da1ce107104c50c81383cae773ef5c24d296dd11c99e2629dbd7967a20c6"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:9cf69cdda1f5968a30a359aba2f7f9aa648a9ce4b580d6826437f2b291cfc86e"}, + {file = "rpds_py-0.30.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:a4796a717bf12b9da9d3ad002519a86063dcac8988b030e405704ef7d74d2d9d"}, + {file = "rpds_py-0.30.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5d4c2aa7c50ad4728a094ebd5eb46c452e9cb7edbfdb18f9e1221f597a73e1e7"}, + {file = "rpds_py-0.30.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:ba81a9203d07805435eb06f536d95a266c21e5b2dfbf6517748ca40c98d19e31"}, + {file = "rpds_py-0.30.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:945dccface01af02675628334f7cf49c2af4c1c904748efc5cf7bbdf0b579f95"}, + {file = "rpds_py-0.30.0-cp313-cp313-win32.whl", hash = "sha256:b40fb160a2db369a194cb27943582b38f79fc4887291417685f3ad693c5a1d5d"}, + {file = "rpds_py-0.30.0-cp313-cp313-win_amd64.whl", hash = "sha256:806f36b1b605e2d6a72716f321f20036b9489d29c51c91f4dd29a3e3afb73b15"}, + {file = "rpds_py-0.30.0-cp313-cp313-win_arm64.whl", hash = "sha256:d96c2086587c7c30d44f31f42eae4eac89b60dabbac18c7669be3700f13c3ce1"}, + {file = "rpds_py-0.30.0-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:eb0b93f2e5c2189ee831ee43f156ed34e2a89a78a66b98cadad955972548be5a"}, + {file = "rpds_py-0.30.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:922e10f31f303c7c920da8981051ff6d8c1a56207dbdf330d9047f6d30b70e5e"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:cdc62c8286ba9bf7f47befdcea13ea0e26bf294bda99758fd90535cbaf408000"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:47f9a91efc418b54fb8190a6b4aa7813a23fb79c51f4bb84e418f5476c38b8db"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1f3587eb9b17f3789ad50824084fa6f81921bbf9a795826570bda82cb3ed91f2"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:39c02563fc592411c2c61d26b6c5fe1e51eaa44a75aa2c8735ca88b0d9599daa"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:51a1234d8febafdfd33a42d97da7a43f5dcb120c1060e352a3fbc0c6d36e2083"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:eb2c4071ab598733724c08221091e8d80e89064cd472819285a9ab0f24bcedb9"}, + {file = "rpds_py-0.30.0-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:6bdfdb946967d816e6adf9a3d8201bfad269c67efe6cefd7093ef959683c8de0"}, + {file = "rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c77afbd5f5250bf27bf516c7c4a016813eb2d3e116139aed0096940c5982da94"}, + {file = "rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:61046904275472a76c8c90c9ccee9013d70a6d0f73eecefd38c1ae7c39045a08"}, + {file = "rpds_py-0.30.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4c5f36a861bc4b7da6516dbdf302c55313afa09b81931e8280361a4f6c9a2d27"}, + {file = "rpds_py-0.30.0-cp313-cp313t-win32.whl", hash = "sha256:3d4a69de7a3e50ffc214ae16d79d8fbb0922972da0356dcf4d0fdca2878559c6"}, + {file = "rpds_py-0.30.0-cp313-cp313t-win_amd64.whl", hash = "sha256:f14fc5df50a716f7ece6a80b6c78bb35ea2ca47c499e422aa4463455dd96d56d"}, + {file = "rpds_py-0.30.0-cp314-cp314-macosx_10_12_x86_64.whl", hash = "sha256:68f19c879420aa08f61203801423f6cd5ac5f0ac4ac82a2368a9fcd6a9a075e0"}, + {file = "rpds_py-0.30.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:ec7c4490c672c1a0389d319b3a9cfcd098dcdc4783991553c332a15acf7249be"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f251c812357a3fed308d684a5079ddfb9d933860fc6de89f2b7ab00da481e65f"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:ac98b175585ecf4c0348fd7b29c3864bda53b805c773cbf7bfdaffc8070c976f"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3e62880792319dbeb7eb866547f2e35973289e7d5696c6e295476448f5b63c87"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4e7fc54e0900ab35d041b0601431b0a0eb495f0851a0639b6ef90f7741b39a18"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:47e77dc9822d3ad616c3d5759ea5631a75e5809d5a28707744ef79d7a1bcfcad"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_31_riscv64.whl", hash = "sha256:b4dc1a6ff022ff85ecafef7979a2c6eb423430e05f1165d6688234e62ba99a07"}, + {file = "rpds_py-0.30.0-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4559c972db3a360808309e06a74628b95eaccbf961c335c8fe0d590cf587456f"}, + {file = "rpds_py-0.30.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:0ed177ed9bded28f8deb6ab40c183cd1192aa0de40c12f38be4d59cd33cb5c65"}, + {file = "rpds_py-0.30.0-cp314-cp314-musllinux_1_2_i686.whl", hash = "sha256:ad1fa8db769b76ea911cb4e10f049d80bf518c104f15b3edb2371cc65375c46f"}, + {file = "rpds_py-0.30.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:46e83c697b1f1c72b50e5ee5adb4353eef7406fb3f2043d64c33f20ad1c2fc53"}, + {file = "rpds_py-0.30.0-cp314-cp314-win32.whl", hash = "sha256:ee454b2a007d57363c2dfd5b6ca4a5d7e2c518938f8ed3b706e37e5d470801ed"}, + {file = "rpds_py-0.30.0-cp314-cp314-win_amd64.whl", hash = "sha256:95f0802447ac2d10bcc69f6dc28fe95fdf17940367b21d34e34c737870758950"}, + {file = "rpds_py-0.30.0-cp314-cp314-win_arm64.whl", hash = "sha256:613aa4771c99f03346e54c3f038e4cc574ac09a3ddfb0e8878487335e96dead6"}, + {file = "rpds_py-0.30.0-cp314-cp314t-macosx_10_12_x86_64.whl", hash = "sha256:7e6ecfcb62edfd632e56983964e6884851786443739dbfe3582947e87274f7cb"}, + {file = "rpds_py-0.30.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a1d0bc22a7cdc173fedebb73ef81e07faef93692b8c1ad3733b67e31e1b6e1b8"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0d08f00679177226c4cb8c5265012eea897c8ca3b93f429e546600c971bcbae7"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:5965af57d5848192c13534f90f9dd16464f3c37aaf166cc1da1cae1fd5a34898"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9a4e86e34e9ab6b667c27f3211ca48f73dba7cd3d90f8d5b11be56e5dbc3fb4e"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e5d3e6b26f2c785d65cc25ef1e5267ccbe1b069c5c21b8cc724efee290554419"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:626a7433c34566535b6e56a1b39a7b17ba961e97ce3b80ec62e6f1312c025551"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_31_riscv64.whl", hash = "sha256:acd7eb3f4471577b9b5a41baf02a978e8bdeb08b4b355273994f8b87032000a8"}, + {file = "rpds_py-0.30.0-cp314-cp314t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:fe5fa731a1fa8a0a56b0977413f8cacac1768dad38d16b3a296712709476fbd5"}, + {file = "rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:74a3243a411126362712ee1524dfc90c650a503502f135d54d1b352bd01f2404"}, + {file = "rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_i686.whl", hash = "sha256:3e8eeb0544f2eb0d2581774be4c3410356eba189529a6b3e36bbbf9696175856"}, + {file = "rpds_py-0.30.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:dbd936cde57abfee19ab3213cf9c26be06d60750e60a8e4dd85d1ab12c8b1f40"}, + {file = "rpds_py-0.30.0-cp314-cp314t-win32.whl", hash = "sha256:dc824125c72246d924f7f796b4f63c1e9dc810c7d9e2355864b3c3a73d59ade0"}, + {file = "rpds_py-0.30.0-cp314-cp314t-win_amd64.whl", hash = "sha256:27f4b0e92de5bfbc6f86e43959e6edd1425c33b5e69aab0984a72047f2bcf1e3"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:c2262bdba0ad4fc6fb5545660673925c2d2a5d9e2e0fb603aad545427be0fc58"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:ee6af14263f25eedc3bb918a3c04245106a42dfd4f5c2285ea6f997b1fc3f89a"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3adbb8179ce342d235c31ab8ec511e66c73faa27a47e076ccc92421add53e2bb"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:250fa00e9543ac9b97ac258bd37367ff5256666122c2d0f2bc97577c60a1818c"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:9854cf4f488b3d57b9aaeb105f06d78e5529d3145b1e4a41750167e8c213c6d3"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:993914b8e560023bc0a8bf742c5f303551992dcb85e247b1e5c7f4a7d145bda5"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:58edca431fb9b29950807e301826586e5bbf24163677732429770a697ffe6738"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_31_riscv64.whl", hash = "sha256:dea5b552272a944763b34394d04577cf0f9bd013207bc32323b5a89a53cf9c2f"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:ba3af48635eb83d03f6c9735dfb21785303e73d22ad03d489e88adae6eab8877"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-musllinux_1_2_aarch64.whl", hash = "sha256:dff13836529b921e22f15cb099751209a60009731a68519630a24d61f0b1b30a"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-musllinux_1_2_i686.whl", hash = "sha256:1b151685b23929ab7beec71080a8889d4d6d9fa9a983d213f07121205d48e2c4"}, + {file = "rpds_py-0.30.0-pp311-pypy311_pp73-musllinux_1_2_x86_64.whl", hash = "sha256:ac37f9f516c51e5753f27dfdef11a88330f04de2d564be3991384b2f3535d02e"}, + {file = "rpds_py-0.30.0.tar.gz", hash = "sha256:dd8ff7cf90014af0c0f787eea34794ebf6415242ee1d6fa91eaba725cc441e84"}, ] [[package]] @@ -1908,55 +1949,60 @@ files = [ [[package]] name = "tomli" -version = "2.3.0" +version = "2.4.0" description = "A lil' TOML parser" optional = false python-versions = ">=3.8" groups = ["main", "dev"] markers = "python_version == \"3.10\"" files = [ - {file = "tomli-2.3.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:88bd15eb972f3664f5ed4b57c1634a97153b4bac4479dcb6a495f41921eb7f45"}, - {file = "tomli-2.3.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:883b1c0d6398a6a9d29b508c331fa56adbcdff647f6ace4dfca0f50e90dfd0ba"}, - {file = "tomli-2.3.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d1381caf13ab9f300e30dd8feadb3de072aeb86f1d34a8569453ff32a7dea4bf"}, - {file = "tomli-2.3.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a0e285d2649b78c0d9027570d4da3425bdb49830a6156121360b3f8511ea3441"}, - {file = "tomli-2.3.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:0a154a9ae14bfcf5d8917a59b51ffd5a3ac1fd149b71b47a3a104ca4edcfa845"}, - {file = "tomli-2.3.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:74bf8464ff93e413514fefd2be591c3b0b23231a77f901db1eb30d6f712fc42c"}, - {file = "tomli-2.3.0-cp311-cp311-win32.whl", hash = "sha256:00b5f5d95bbfc7d12f91ad8c593a1659b6387b43f054104cda404be6bda62456"}, - {file = "tomli-2.3.0-cp311-cp311-win_amd64.whl", hash = "sha256:4dc4ce8483a5d429ab602f111a93a6ab1ed425eae3122032db7e9acf449451be"}, - {file = "tomli-2.3.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:d7d86942e56ded512a594786a5ba0a5e521d02529b3826e7761a05138341a2ac"}, - {file = "tomli-2.3.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:73ee0b47d4dad1c5e996e3cd33b8a76a50167ae5f96a2607cbe8cc773506ab22"}, - {file = "tomli-2.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:792262b94d5d0a466afb5bc63c7daa9d75520110971ee269152083270998316f"}, - {file = "tomli-2.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4f195fe57ecceac95a66a75ac24d9d5fbc98ef0962e09b2eddec5d39375aae52"}, - {file = "tomli-2.3.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:e31d432427dcbf4d86958c184b9bfd1e96b5b71f8eb17e6d02531f434fd335b8"}, - {file = "tomli-2.3.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7b0882799624980785240ab732537fcfc372601015c00f7fc367c55308c186f6"}, - {file = "tomli-2.3.0-cp312-cp312-win32.whl", hash = "sha256:ff72b71b5d10d22ecb084d345fc26f42b5143c5533db5e2eaba7d2d335358876"}, - {file = "tomli-2.3.0-cp312-cp312-win_amd64.whl", hash = "sha256:1cb4ed918939151a03f33d4242ccd0aa5f11b3547d0cf30f7c74a408a5b99878"}, - {file = "tomli-2.3.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5192f562738228945d7b13d4930baffda67b69425a7f0da96d360b0a3888136b"}, - {file = "tomli-2.3.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:be71c93a63d738597996be9528f4abe628d1adf5e6eb11607bc8fe1a510b5dae"}, - {file = "tomli-2.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c4665508bcbac83a31ff8ab08f424b665200c0e1e645d2bd9ab3d3e557b6185b"}, - {file = "tomli-2.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:4021923f97266babc6ccab9f5068642a0095faa0a51a246a6a02fccbb3514eaf"}, - {file = "tomli-2.3.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a4ea38c40145a357d513bffad0ed869f13c1773716cf71ccaa83b0fa0cc4e42f"}, - {file = "tomli-2.3.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ad805ea85eda330dbad64c7ea7a4556259665bdf9d2672f5dccc740eb9d3ca05"}, - {file = "tomli-2.3.0-cp313-cp313-win32.whl", hash = "sha256:97d5eec30149fd3294270e889b4234023f2c69747e555a27bd708828353ab606"}, - {file = "tomli-2.3.0-cp313-cp313-win_amd64.whl", hash = "sha256:0c95ca56fbe89e065c6ead5b593ee64b84a26fca063b5d71a1122bf26e533999"}, - {file = "tomli-2.3.0-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:cebc6fe843e0733ee827a282aca4999b596241195f43b4cc371d64fc6639da9e"}, - {file = "tomli-2.3.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:4c2ef0244c75aba9355561272009d934953817c49f47d768070c3c94355c2aa3"}, - {file = "tomli-2.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c22a8bf253bacc0cf11f35ad9808b6cb75ada2631c2d97c971122583b129afbc"}, - {file = "tomli-2.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0eea8cc5c5e9f89c9b90c4896a8deefc74f518db5927d0e0e8d4a80953d774d0"}, - {file = "tomli-2.3.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:b74a0e59ec5d15127acdabd75ea17726ac4c5178ae51b85bfe39c4f8a278e879"}, - {file = "tomli-2.3.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:b5870b50c9db823c595983571d1296a6ff3e1b88f734a4c8f6fc6188397de005"}, - {file = "tomli-2.3.0-cp314-cp314-win32.whl", hash = "sha256:feb0dacc61170ed7ab602d3d972a58f14ee3ee60494292d384649a3dc38ef463"}, - {file = "tomli-2.3.0-cp314-cp314-win_amd64.whl", hash = "sha256:b273fcbd7fc64dc3600c098e39136522650c49bca95df2d11cf3b626422392c8"}, - {file = "tomli-2.3.0-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:940d56ee0410fa17ee1f12b817b37a4d4e4dc4d27340863cc67236c74f582e77"}, - {file = "tomli-2.3.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:f85209946d1fe94416debbb88d00eb92ce9cd5266775424ff81bc959e001acaf"}, - {file = "tomli-2.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a56212bdcce682e56b0aaf79e869ba5d15a6163f88d5451cbde388d48b13f530"}, - {file = "tomli-2.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:c5f3ffd1e098dfc032d4d3af5c0ac64f6d286d98bc148698356847b80fa4de1b"}, - {file = "tomli-2.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:5e01decd096b1530d97d5d85cb4dff4af2d8347bd35686654a004f8dea20fc67"}, - {file = "tomli-2.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:8a35dd0e643bb2610f156cca8db95d213a90015c11fee76c946aa62b7ae7e02f"}, - {file = "tomli-2.3.0-cp314-cp314t-win32.whl", hash = "sha256:a1f7f282fe248311650081faafa5f4732bdbfef5d45fe3f2e702fbc6f2d496e0"}, - {file = "tomli-2.3.0-cp314-cp314t-win_amd64.whl", hash = "sha256:70a251f8d4ba2d9ac2542eecf008b3c8a9fc5c3f9f02c56a9d7952612be2fdba"}, - {file = "tomli-2.3.0-py3-none-any.whl", hash = "sha256:e95b1af3c5b07d9e643909b5abbec77cd9f1217e6d0bca72b0234736b9fb1f1b"}, - {file = "tomli-2.3.0.tar.gz", hash = "sha256:64be704a875d2a59753d80ee8a533c3fe183e3f06807ff7dc2232938ccb01549"}, + {file = "tomli-2.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b5ef256a3fd497d4973c11bf142e9ed78b150d36f5773f1ca6088c230ffc5867"}, + {file = "tomli-2.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5572e41282d5268eb09a697c89a7bee84fae66511f87533a6f88bd2f7b652da9"}, + {file = "tomli-2.4.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:551e321c6ba03b55676970b47cb1b73f14a0a4dce6a3e1a9458fd6d921d72e95"}, + {file = "tomli-2.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5e3f639a7a8f10069d0e15408c0b96a2a828cfdec6fca05296ebcdcc28ca7c76"}, + {file = "tomli-2.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1b168f2731796b045128c45982d3a4874057626da0e2ef1fdd722848b741361d"}, + {file = "tomli-2.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:133e93646ec4300d651839d382d63edff11d8978be23da4cc106f5a18b7d0576"}, + {file = "tomli-2.4.0-cp311-cp311-win32.whl", hash = "sha256:b6c78bdf37764092d369722d9946cb65b8767bfa4110f902a1b2542d8d173c8a"}, + {file = "tomli-2.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:d3d1654e11d724760cdb37a3d7691f0be9db5fbdaef59c9f532aabf87006dbaa"}, + {file = "tomli-2.4.0-cp311-cp311-win_arm64.whl", hash = "sha256:cae9c19ed12d4e8f3ebf46d1a75090e4c0dc16271c5bce1c833ac168f08fb614"}, + {file = "tomli-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:920b1de295e72887bafa3ad9f7a792f811847d57ea6b1215154030cf131f16b1"}, + {file = "tomli-2.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7d6d9a4aee98fac3eab4952ad1d73aee87359452d1c086b5ceb43ed02ddb16b8"}, + {file = "tomli-2.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:36b9d05b51e65b254ea6c2585b59d2c4cb91c8a3d91d0ed0f17591a29aaea54a"}, + {file = "tomli-2.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1c8a885b370751837c029ef9bc014f27d80840e48bac415f3412e6593bbc18c1"}, + {file = "tomli-2.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8768715ffc41f0008abe25d808c20c3d990f42b6e2e58305d5da280ae7d1fa3b"}, + {file = "tomli-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7b438885858efd5be02a9a133caf5812b8776ee0c969fea02c45e8e3f296ba51"}, + {file = "tomli-2.4.0-cp312-cp312-win32.whl", hash = "sha256:0408e3de5ec77cc7f81960c362543cbbd91ef883e3138e81b729fc3eea5b9729"}, + {file = "tomli-2.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:685306e2cc7da35be4ee914fd34ab801a6acacb061b6a7abca922aaf9ad368da"}, + {file = "tomli-2.4.0-cp312-cp312-win_arm64.whl", hash = "sha256:5aa48d7c2356055feef06a43611fc401a07337d5b006be13a30f6c58f869e3c3"}, + {file = "tomli-2.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84d081fbc252d1b6a982e1870660e7330fb8f90f676f6e78b052ad4e64714bf0"}, + {file = "tomli-2.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9a08144fa4cba33db5255f9b74f0b89888622109bd2776148f2597447f92a94e"}, + {file = "tomli-2.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c73add4bb52a206fd0c0723432db123c0c75c280cbd67174dd9d2db228ebb1b4"}, + {file = "tomli-2.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fb2945cbe303b1419e2706e711b7113da57b7db31ee378d08712d678a34e51e"}, + {file = "tomli-2.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bbb1b10aa643d973366dc2cb1ad94f99c1726a02343d43cbc011edbfac579e7c"}, + {file = "tomli-2.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4cbcb367d44a1f0c2be408758b43e1ffb5308abe0ea222897d6bfc8e8281ef2f"}, + {file = "tomli-2.4.0-cp313-cp313-win32.whl", hash = "sha256:7d49c66a7d5e56ac959cb6fc583aff0651094ec071ba9ad43df785abc2320d86"}, + {file = "tomli-2.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:3cf226acb51d8f1c394c1b310e0e0e61fecdd7adcb78d01e294ac297dd2e7f87"}, + {file = "tomli-2.4.0-cp313-cp313-win_arm64.whl", hash = "sha256:d20b797a5c1ad80c516e41bc1fb0443ddb5006e9aaa7bda2d71978346aeb9132"}, + {file = "tomli-2.4.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:26ab906a1eb794cd4e103691daa23d95c6919cc2fa9160000ac02370cc9dd3f6"}, + {file = "tomli-2.4.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:20cedb4ee43278bc4f2fee6cb50daec836959aadaf948db5172e776dd3d993fc"}, + {file = "tomli-2.4.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:39b0b5d1b6dd03684b3fb276407ebed7090bbec989fa55838c98560c01113b66"}, + {file = "tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a26d7ff68dfdb9f87a016ecfd1e1c2bacbe3108f4e0f8bcd2228ef9a766c787d"}, + {file = "tomli-2.4.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:20ffd184fb1df76a66e34bd1b36b4a4641bd2b82954befa32fe8163e79f1a702"}, + {file = "tomli-2.4.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:75c2f8bbddf170e8effc98f5e9084a8751f8174ea6ccf4fca5398436e0320bc8"}, + {file = "tomli-2.4.0-cp314-cp314-win32.whl", hash = "sha256:31d556d079d72db7c584c0627ff3a24c5d3fb4f730221d3444f3efb1b2514776"}, + {file = "tomli-2.4.0-cp314-cp314-win_amd64.whl", hash = "sha256:43e685b9b2341681907759cf3a04e14d7104b3580f808cfde1dfdb60ada85475"}, + {file = "tomli-2.4.0-cp314-cp314-win_arm64.whl", hash = "sha256:3d895d56bd3f82ddd6faaff993c275efc2ff38e52322ea264122d72729dca2b2"}, + {file = "tomli-2.4.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:5b5807f3999fb66776dbce568cc9a828544244a8eb84b84b9bafc080c99597b9"}, + {file = "tomli-2.4.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c084ad935abe686bd9c898e62a02a19abfc9760b5a79bc29644463eaf2840cb0"}, + {file = "tomli-2.4.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0f2e3955efea4d1cfbcb87bc321e00dc08d2bcb737fd1d5e398af111d86db5df"}, + {file = "tomli-2.4.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e0fe8a0b8312acf3a88077a0802565cb09ee34107813bba1c7cd591fa6cfc8d"}, + {file = "tomli-2.4.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:413540dce94673591859c4c6f794dfeaa845e98bf35d72ed59636f869ef9f86f"}, + {file = "tomli-2.4.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0dc56fef0e2c1c470aeac5b6ca8cc7b640bb93e92d9803ddaf9ea03e198f5b0b"}, + {file = "tomli-2.4.0-cp314-cp314t-win32.whl", hash = "sha256:d878f2a6707cc9d53a1be1414bbb419e629c3d6e67f69230217bb663e76b5087"}, + {file = "tomli-2.4.0-cp314-cp314t-win_amd64.whl", hash = "sha256:2add28aacc7425117ff6364fe9e06a183bb0251b03f986df0e78e974047571fd"}, + {file = "tomli-2.4.0-cp314-cp314t-win_arm64.whl", hash = "sha256:2b1e3b80e1d5e52e40e9b924ec43d81570f0e7d09d11081b797bc4692765a3d4"}, + {file = "tomli-2.4.0-py3-none-any.whl", hash = "sha256:1f776e7d669ebceb01dee46484485f43a4048746235e683bcdffacdf1fb4785a"}, + {file = "tomli-2.4.0.tar.gz", hash = "sha256:aa89c3f6c277dd275d8e243ad24f3b5e701491a860d5121f2cdd399fbb31fc9c"}, ] [[package]] @@ -1988,21 +2034,21 @@ typing-extensions = ">=4.12.0" [[package]] name = "urllib3" -version = "2.5.0" +version = "2.6.2" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.9" groups = ["main", "dev"] files = [ - {file = "urllib3-2.5.0-py3-none-any.whl", hash = "sha256:e6b01673c0fa6a13e374b50871808eb3bf7046c4b125b216f6bf1cc604cff0dc"}, - {file = "urllib3-2.5.0.tar.gz", hash = "sha256:3fc47733c7e419d4bc3f6b3dc2b4f890bb743906a30d56ba4a5bfa4bbff92760"}, + {file = "urllib3-2.6.2-py3-none-any.whl", hash = "sha256:ec21cddfe7724fc7cb4ba4bea7aa8e2ef36f607a4bab81aa6ce42a13dc3f03dd"}, + {file = "urllib3-2.6.2.tar.gz", hash = "sha256:016f9c98bb7e98085cb2b4b17b87d2c702975664e4f060c6532e64d1c1a5e797"}, ] [package.extras] -brotli = ["brotli (>=1.0.9) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\""] +brotli = ["brotli (>=1.2.0) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=1.2.0.0) ; platform_python_implementation != \"CPython\""] h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] -zstd = ["zstandard (>=0.18.0)"] +zstd = ["backports-zstd (>=1.0.0) ; python_version < \"3.14\""] [[package]] name = "wcwidth" @@ -2064,4 +2110,4 @@ files = [ [metadata] lock-version = "2.1" python-versions = "^3.10" -content-hash = "5ae05ff40ea9bec8144357276aa1506ab405b7ef9dab3ee0001edddb2cc7bc43" +content-hash = "166fa816f84dc2bb5d89b571ca5b41aba68922a5ad159ef8ac0701082ca21a1c" diff --git a/pyproject.toml b/pyproject.toml index 0125e5247..a07638774 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [project] -python = "^3.8" +python = "^3.10" name = "e-referrals-service-api" version = "0.0.1-alpha" description = "TODO" @@ -26,7 +26,7 @@ docopt = "^0.6.2" jsonpath-rw = "^1.4.0" semver = "^3.0.4" gitpython = "^3.1.45" -lxml = "^4.9.4" +lxml = "^5.1.0" xmlformatter = "^0.2.8" pytest-check = "^2.6.0" requests = "^2.32.5" @@ -40,7 +40,7 @@ pip-licenses = "^5.5.0" jinja2 = "^3.1.6" pytest = "^8.4.2" pytest-asyncio = "^1.3.0" -pytest-nhsd-apim = "^4.0.1" +pytest-nhsd-apim = "^5.0.6" [tool.poetry.scripts] diff --git a/scripts/macos_setup_environment.sh b/scripts/macos_setup_environment.sh index cc25ae436..0e107341f 100755 --- a/scripts/macos_setup_environment.sh +++ b/scripts/macos_setup_environment.sh @@ -45,29 +45,29 @@ else exit 2 fi -# Installing python 3.10.8 with pyenv -echo "Installing python 3.10.8 with pyenv ..." -if pyenv versions | grep -Fq "3.10.8" ; then - echo "Pyenv has already got Python 3.10.8 installed." +# Installing python 3.10 with pyenv +echo "Installing python 3.10 with pyenv ..." +if pyenv versions | grep -Fq "3.10" ; then + echo "Pyenv has already got Python 3.10 installed." else - if pyenv install 3.10.8 ; then - echo "Pyenv installed Python 3.10.8 successfully." + if pyenv install 3.10 ; then + echo "Pyenv installed Python 3.10 successfully." else - echo "Pyenv did NOT install Python 3.10.8 successfully." + echo "Pyenv did NOT install Python 3.10 successfully." exit 3 fi fi -# Creating Apigee environment with Python 3.10.8 -echo "Creating Apigee environment with Python 3.10.8 ..." +# Creating Apigee environment with Python 3.10 +echo "Creating Apigee environment with Python 3.10 ..." if pyenv versions | grep -q ".*apigee" ; then echo "A Python virtualenv named 'apigee' already exists." else - if pyenv virtualenv 3.10.8 apigee ; then - echo "A Python 3.10.8 virtualenv named 'apigee' was created." + if pyenv virtualenv 3.10 apigee ; then + echo "A Python 3.10 virtualenv named 'apigee' was created." else - echo "A Python 3.10.8 virtualenv named 'apigee' was NOT created." + echo "A Python 3.10 virtualenv named 'apigee' was NOT created." exit 4 fi fi @@ -86,7 +86,7 @@ fi # Checking python version echo "Checking python version ..." version=$(python -V 2>&1) -if [[ $version = 'Python 3.10.8' ]] ; then +if [[ $version = 'Python 3.10'* ]] ; then echo "Python version is correct." else echo "Python version is NOT correct." diff --git a/scripts/ubuntu_setup_environment.sh b/scripts/ubuntu_setup_environment.sh index 60dcbd944..f62ea2656 100755 --- a/scripts/ubuntu_setup_environment.sh +++ b/scripts/ubuntu_setup_environment.sh @@ -63,29 +63,29 @@ else fi -#Installing python 3.10.8 with pyenv -echo "Installing python 3.10.8 with pyenv ..." -if pyenv versions | grep -Fq "3.10.8" ; then - echo "Pyenv has already got Python 3.10.8 installed." +#Installing python 3.10 with pyenv +echo "Installing python 3.10 with pyenv ..." +if pyenv versions | grep -Fq "3.10" ; then + echo "Pyenv has already got Python 3.10 installed." else - if pyenv install 3.10.8 ; then - echo "Pyenv installed Python 3.10.8 successfully." + if pyenv install 3.10 ; then + echo "Pyenv installed Python 3.10 successfully." else - echo "Pyenv did NOT install Python 3.10.8 successfully." + echo "Pyenv did NOT install Python 3.10 successfully." exit 1 fi fi -#Creating Apigee environment with Python 3.10.8 -echo "Creating Apigee environment with Python 3.10.8 ..." +#Creating Apigee environment with Python 3.10 +echo "Creating Apigee environment with Python 3.10 ..." if pyenv versions | grep -q ".*apigee" ; then echo "A Python virtualenv named 'apigee' already exists." else - if pyenv virtualenv 3.10.8 apigee ; then - echo "A Python 3.10.8 virtualenv named 'apigee' was created." + if pyenv virtualenv 3.10 apigee ; then + echo "A Python 3.10 virtualenv named 'apigee' was created." else - echo "A Python 3.10.8 virtualenv named 'apigee' was NOT created." + echo "A Python 3.10 virtualenv named 'apigee' was NOT created." exit 1 fi fi @@ -104,7 +104,7 @@ fi #Checking python version echo "Checking python version ..." version=$(python -V 2>&1) -if [[ $version = 'Python 3.10.8' ]] ; then +if [[ $version = 'Python 3.10'* ]] ; then echo "Python version is correct." else echo "Python version is NOT correct." From 37e3e7b6929bd03636c62860eae5994ab5d1b280 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 22 Jan 2026 00:46:16 +0000 Subject: [PATCH 03/14] Bump lodash from 4.17.21 to 4.17.23 in /sandbox Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash dependency-version: 4.17.23 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- sandbox/package-lock.json | 14 +++++++------- sandbox/package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/sandbox/package-lock.json b/sandbox/package-lock.json index f8d535bbd..1df91973f 100644 --- a/sandbox/package-lock.json +++ b/sandbox/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@hapi/hapi": "^21.4.4", "@hapi/inert": "^7.1.0", - "lodash": "^4.17.20" + "lodash": "^4.17.23" }, "devDependencies": { "eslint": "^9.25.1", @@ -1131,9 +1131,9 @@ } }, "node_modules/lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "version": "4.17.23", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", + "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==" }, "node_modules/lodash.merge": { "version": "4.6.2", @@ -2225,9 +2225,9 @@ } }, "lodash": { - "version": "4.17.21", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + "version": "4.17.23", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.23.tgz", + "integrity": "sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==" }, "lodash.merge": { "version": "4.6.2", diff --git a/sandbox/package.json b/sandbox/package.json index 92b383c9b..0d9e5712c 100644 --- a/sandbox/package.json +++ b/sandbox/package.json @@ -14,7 +14,7 @@ "dependencies": { "@hapi/hapi": "^21.4.4", "@hapi/inert": "^7.1.0", - "lodash": "^4.17.20" + "lodash": "^4.17.23" }, "devDependencies": { "eslint": "^9.25.1", From 9b6fe46289efbcbaa6fd1d14e2541adf16ca524f Mon Sep 17 00:00:00 2001 From: edward wills Date: Thu, 29 Jan 2026 10:38:30 +0000 Subject: [PATCH 04/14] [RAA-4357]-[KM]-[Updated python version to 3.13]-[EW] --- .../continous-integration-workflow.yaml | 4 +- azure/project.yml | 2 +- poetry.lock | 108 +----------------- pyproject.toml | 2 +- scripts/macos_setup_environment.sh | 24 ++-- scripts/ubuntu_setup_environment.sh | 26 ++--- 6 files changed, 33 insertions(+), 133 deletions(-) diff --git a/.github/workflows/continous-integration-workflow.yaml b/.github/workflows/continous-integration-workflow.yaml index b63cf18fa..f8235c867 100644 --- a/.github/workflows/continous-integration-workflow.yaml +++ b/.github/workflows/continous-integration-workflow.yaml @@ -12,10 +12,10 @@ jobs: with: fetch-depth: 0 # This causes all history to be fetched, which is required for calculate-version to function - - name: Install Python 3.10 + - name: Install Python 3.13 uses: actions/setup-python@v6 with: - python-version: '3.10' + python-version: '3.13' - name: Upgrade python packaging tools run: python -m pip install --upgrade pip setuptools wheel diff --git a/azure/project.yml b/azure/project.yml index b0571a75e..3aff23fd3 100644 --- a/azure/project.yml +++ b/azure/project.yml @@ -5,4 +5,4 @@ variables: product_display_name: e-Referrals-Service product_description: The NHS e-RS vision is to enable local innovation and adoption of paperless referrals. To support this vision NHS Digital have created a set of APIs which provide a well-defined, simple to use data interface to the NHS e-Referral Service (e-RS). See https://digital.nhs.uk/developer/api-catalogue/e-referral-service-fhir spec_file: e-referrals-service-api.json - python_version: 3.10 + python_version: 3.13 diff --git a/poetry.lock b/poetry.lock index de4b54972..2cfdae2fe 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.3.1 and should not be changed by hand. [[package]] name = "annotated-types" @@ -39,19 +39,6 @@ files = [ [package.dependencies] cryptography = "*" -[[package]] -name = "backports-asyncio-runner" -version = "1.2.0" -description = "Backport of asyncio.Runner, a context manager that controls event loop life cycle." -optional = false -python-versions = "<3.11,>=3.8" -groups = ["dev"] -markers = "python_version == \"3.10\"" -files = [ - {file = "backports_asyncio_runner-1.2.0-py3-none-any.whl", hash = "sha256:0da0a936a8aeb554eccb426dc55af3ba63bcdc69fa1a600b5bb305413a4477b5"}, - {file = "backports_asyncio_runner-1.2.0.tar.gz", hash = "sha256:a5aa7b2b7d8f8bfcaa2b57313f70792df84e32a2a746f585213373f900b42162"}, -] - [[package]] name = "black" version = "25.12.0" @@ -96,8 +83,6 @@ packaging = ">=22.0" pathspec = ">=0.9.0" platformdirs = ">=2" pytokens = ">=0.3.0" -tomli = {version = ">=1.1.0", markers = "python_version < \"3.11\""} -typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} [package.extras] colorama = ["colorama (>=0.4.3)"] @@ -432,7 +417,6 @@ files = [ [package.dependencies] cffi = {version = ">=2.0.0", markers = "python_full_version >= \"3.9.0\" and platform_python_implementation != \"PyPy\""} -typing-extensions = {version = ">=4.13.2", markers = "python_full_version < \"3.11.0\""} [package.extras] docs = ["sphinx (>=5.3.0)", "sphinx-inline-tabs", "sphinx-rtd-theme (>=3.0.0)"] @@ -467,25 +451,6 @@ files = [ {file = "docopt-0.6.2.tar.gz", hash = "sha256:49b3a825280bd66b3aa83585ef59c4a8c82f2c8a522dbe754a8bc8d08c85c491"}, ] -[[package]] -name = "exceptiongroup" -version = "1.3.1" -description = "Backport of PEP 654 (exception groups)" -optional = false -python-versions = ">=3.7" -groups = ["main", "dev"] -markers = "python_version == \"3.10\"" -files = [ - {file = "exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598"}, - {file = "exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219"}, -] - -[package.dependencies] -typing-extensions = {version = ">=4.6.0", markers = "python_version < \"3.13\""} - -[package.extras] -test = ["pytest (>=6)"] - [[package]] name = "flake8" version = "7.3.0" @@ -624,7 +589,7 @@ files = [ [package.dependencies] attrs = ">=22.2.0" -jsonschema-specifications = ">=2023.03.6" +jsonschema-specifications = ">=2023.3.6" referencing = ">=0.28.4" rpds-py = ">=0.7.1" @@ -1132,7 +1097,6 @@ files = [ [package.dependencies] prettytable = ">=3.12.0" -tomli = {version = ">=2", markers = "python_version < \"3.11\""} [package.extras] dev = ["autopep8", "black", "docutils", "isort", "mypy", "pip-tools", "pypandoc", "pytest-cov", "pytest-pycodestyle", "pytest-runner", "tomli-w", "twine", "wheel"] @@ -1530,12 +1494,10 @@ files = [ [package.dependencies] colorama = {version = ">=0.4", markers = "sys_platform == \"win32\""} -exceptiongroup = {version = ">=1", markers = "python_version < \"3.11\""} iniconfig = ">=1" packaging = ">=20" pluggy = ">=1.5,<2" pygments = ">=2.7.2" -tomli = {version = ">=1", markers = "python_version < \"3.11\""} [package.extras] dev = ["argcomplete", "attrs (>=19.2)", "hypothesis (>=3.56)", "mock", "requests", "setuptools", "xmlschema"] @@ -1553,9 +1515,7 @@ files = [ ] [package.dependencies] -backports-asyncio-runner = {version = ">=1.1,<2", markers = "python_version < \"3.11\""} pytest = ">=8.2,<10" -typing-extensions = {version = ">=4.12", markers = "python_version < \"3.13\""} [package.extras] docs = ["sphinx (>=5.3)", "sphinx-rtd-theme (>=1)"] @@ -1575,7 +1535,6 @@ files = [ [package.dependencies] pytest = ">=7.0.0" -typing-extensions = {version = ">=4.12.2,<5", markers = "python_version < \"3.11\""} [package.extras] dev = ["build", "tox", "tox-uv"] @@ -1735,7 +1694,6 @@ files = [ [package.dependencies] attrs = ">=22.2.0" rpds-py = ">=0.7.0" -typing-extensions = {version = ">=4.4.0", markers = "python_version < \"3.13\""} [[package]] name = "requests" @@ -1947,64 +1905,6 @@ files = [ {file = "toml-0.10.2.tar.gz", hash = "sha256:b3bda1d108d5dd99f4a20d24d9c348e91c4db7ab1b749200bded2f839ccbe68f"}, ] -[[package]] -name = "tomli" -version = "2.4.0" -description = "A lil' TOML parser" -optional = false -python-versions = ">=3.8" -groups = ["main", "dev"] -markers = "python_version == \"3.10\"" -files = [ - {file = "tomli-2.4.0-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:b5ef256a3fd497d4973c11bf142e9ed78b150d36f5773f1ca6088c230ffc5867"}, - {file = "tomli-2.4.0-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:5572e41282d5268eb09a697c89a7bee84fae66511f87533a6f88bd2f7b652da9"}, - {file = "tomli-2.4.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:551e321c6ba03b55676970b47cb1b73f14a0a4dce6a3e1a9458fd6d921d72e95"}, - {file = "tomli-2.4.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5e3f639a7a8f10069d0e15408c0b96a2a828cfdec6fca05296ebcdcc28ca7c76"}, - {file = "tomli-2.4.0-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:1b168f2731796b045128c45982d3a4874057626da0e2ef1fdd722848b741361d"}, - {file = "tomli-2.4.0-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:133e93646ec4300d651839d382d63edff11d8978be23da4cc106f5a18b7d0576"}, - {file = "tomli-2.4.0-cp311-cp311-win32.whl", hash = "sha256:b6c78bdf37764092d369722d9946cb65b8767bfa4110f902a1b2542d8d173c8a"}, - {file = "tomli-2.4.0-cp311-cp311-win_amd64.whl", hash = "sha256:d3d1654e11d724760cdb37a3d7691f0be9db5fbdaef59c9f532aabf87006dbaa"}, - {file = "tomli-2.4.0-cp311-cp311-win_arm64.whl", hash = "sha256:cae9c19ed12d4e8f3ebf46d1a75090e4c0dc16271c5bce1c833ac168f08fb614"}, - {file = "tomli-2.4.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:920b1de295e72887bafa3ad9f7a792f811847d57ea6b1215154030cf131f16b1"}, - {file = "tomli-2.4.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:7d6d9a4aee98fac3eab4952ad1d73aee87359452d1c086b5ceb43ed02ddb16b8"}, - {file = "tomli-2.4.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:36b9d05b51e65b254ea6c2585b59d2c4cb91c8a3d91d0ed0f17591a29aaea54a"}, - {file = "tomli-2.4.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1c8a885b370751837c029ef9bc014f27d80840e48bac415f3412e6593bbc18c1"}, - {file = "tomli-2.4.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8768715ffc41f0008abe25d808c20c3d990f42b6e2e58305d5da280ae7d1fa3b"}, - {file = "tomli-2.4.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:7b438885858efd5be02a9a133caf5812b8776ee0c969fea02c45e8e3f296ba51"}, - {file = "tomli-2.4.0-cp312-cp312-win32.whl", hash = "sha256:0408e3de5ec77cc7f81960c362543cbbd91ef883e3138e81b729fc3eea5b9729"}, - {file = "tomli-2.4.0-cp312-cp312-win_amd64.whl", hash = "sha256:685306e2cc7da35be4ee914fd34ab801a6acacb061b6a7abca922aaf9ad368da"}, - {file = "tomli-2.4.0-cp312-cp312-win_arm64.whl", hash = "sha256:5aa48d7c2356055feef06a43611fc401a07337d5b006be13a30f6c58f869e3c3"}, - {file = "tomli-2.4.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84d081fbc252d1b6a982e1870660e7330fb8f90f676f6e78b052ad4e64714bf0"}, - {file = "tomli-2.4.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9a08144fa4cba33db5255f9b74f0b89888622109bd2776148f2597447f92a94e"}, - {file = "tomli-2.4.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c73add4bb52a206fd0c0723432db123c0c75c280cbd67174dd9d2db228ebb1b4"}, - {file = "tomli-2.4.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1fb2945cbe303b1419e2706e711b7113da57b7db31ee378d08712d678a34e51e"}, - {file = "tomli-2.4.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:bbb1b10aa643d973366dc2cb1ad94f99c1726a02343d43cbc011edbfac579e7c"}, - {file = "tomli-2.4.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4cbcb367d44a1f0c2be408758b43e1ffb5308abe0ea222897d6bfc8e8281ef2f"}, - {file = "tomli-2.4.0-cp313-cp313-win32.whl", hash = "sha256:7d49c66a7d5e56ac959cb6fc583aff0651094ec071ba9ad43df785abc2320d86"}, - {file = "tomli-2.4.0-cp313-cp313-win_amd64.whl", hash = "sha256:3cf226acb51d8f1c394c1b310e0e0e61fecdd7adcb78d01e294ac297dd2e7f87"}, - {file = "tomli-2.4.0-cp313-cp313-win_arm64.whl", hash = "sha256:d20b797a5c1ad80c516e41bc1fb0443ddb5006e9aaa7bda2d71978346aeb9132"}, - {file = "tomli-2.4.0-cp314-cp314-macosx_10_15_x86_64.whl", hash = "sha256:26ab906a1eb794cd4e103691daa23d95c6919cc2fa9160000ac02370cc9dd3f6"}, - {file = "tomli-2.4.0-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:20cedb4ee43278bc4f2fee6cb50daec836959aadaf948db5172e776dd3d993fc"}, - {file = "tomli-2.4.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:39b0b5d1b6dd03684b3fb276407ebed7090bbec989fa55838c98560c01113b66"}, - {file = "tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a26d7ff68dfdb9f87a016ecfd1e1c2bacbe3108f4e0f8bcd2228ef9a766c787d"}, - {file = "tomli-2.4.0-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:20ffd184fb1df76a66e34bd1b36b4a4641bd2b82954befa32fe8163e79f1a702"}, - {file = "tomli-2.4.0-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:75c2f8bbddf170e8effc98f5e9084a8751f8174ea6ccf4fca5398436e0320bc8"}, - {file = "tomli-2.4.0-cp314-cp314-win32.whl", hash = "sha256:31d556d079d72db7c584c0627ff3a24c5d3fb4f730221d3444f3efb1b2514776"}, - {file = "tomli-2.4.0-cp314-cp314-win_amd64.whl", hash = "sha256:43e685b9b2341681907759cf3a04e14d7104b3580f808cfde1dfdb60ada85475"}, - {file = "tomli-2.4.0-cp314-cp314-win_arm64.whl", hash = "sha256:3d895d56bd3f82ddd6faaff993c275efc2ff38e52322ea264122d72729dca2b2"}, - {file = "tomli-2.4.0-cp314-cp314t-macosx_10_15_x86_64.whl", hash = "sha256:5b5807f3999fb66776dbce568cc9a828544244a8eb84b84b9bafc080c99597b9"}, - {file = "tomli-2.4.0-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:c084ad935abe686bd9c898e62a02a19abfc9760b5a79bc29644463eaf2840cb0"}, - {file = "tomli-2.4.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0f2e3955efea4d1cfbcb87bc321e00dc08d2bcb737fd1d5e398af111d86db5df"}, - {file = "tomli-2.4.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0e0fe8a0b8312acf3a88077a0802565cb09ee34107813bba1c7cd591fa6cfc8d"}, - {file = "tomli-2.4.0-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:413540dce94673591859c4c6f794dfeaa845e98bf35d72ed59636f869ef9f86f"}, - {file = "tomli-2.4.0-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:0dc56fef0e2c1c470aeac5b6ca8cc7b640bb93e92d9803ddaf9ea03e198f5b0b"}, - {file = "tomli-2.4.0-cp314-cp314t-win32.whl", hash = "sha256:d878f2a6707cc9d53a1be1414bbb419e629c3d6e67f69230217bb663e76b5087"}, - {file = "tomli-2.4.0-cp314-cp314t-win_amd64.whl", hash = "sha256:2add28aacc7425117ff6364fe9e06a183bb0251b03f986df0e78e974047571fd"}, - {file = "tomli-2.4.0-cp314-cp314t-win_arm64.whl", hash = "sha256:2b1e3b80e1d5e52e40e9b924ec43d81570f0e7d09d11081b797bc4692765a3d4"}, - {file = "tomli-2.4.0-py3-none-any.whl", hash = "sha256:1f776e7d669ebceb01dee46484485f43a4048746235e683bcdffacdf1fb4785a"}, - {file = "tomli-2.4.0.tar.gz", hash = "sha256:aa89c3f6c277dd275d8e243ad24f3b5e701491a860d5121f2cdd399fbb31fc9c"}, -] - [[package]] name = "typing-extensions" version = "4.15.0" @@ -2109,5 +2009,5 @@ files = [ [metadata] lock-version = "2.1" -python-versions = "^3.10" -content-hash = "166fa816f84dc2bb5d89b571ca5b41aba68922a5ad159ef8ac0701082ca21a1c" +python-versions = "^3.13" +content-hash = "e65afc48136d4b5b3172965f3f0395322338d8f975a2d0910c062f2aef4a4e7e" diff --git a/pyproject.toml b/pyproject.toml index a07638774..d16b9cba8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,7 +20,7 @@ package-mode = false [tool.poetry.dependencies] -python = "^3.10" +python = "^3.13" pyyaml = "^6.0" docopt = "^0.6.2" jsonpath-rw = "^1.4.0" diff --git a/scripts/macos_setup_environment.sh b/scripts/macos_setup_environment.sh index 0e107341f..2eccaab60 100755 --- a/scripts/macos_setup_environment.sh +++ b/scripts/macos_setup_environment.sh @@ -45,29 +45,29 @@ else exit 2 fi -# Installing python 3.10 with pyenv -echo "Installing python 3.10 with pyenv ..." -if pyenv versions | grep -Fq "3.10" ; then - echo "Pyenv has already got Python 3.10 installed." +# Installing python 3.13 with pyenv +echo "Installing python 3.13 with pyenv ..." +if pyenv versions | grep -Fq "3.13" ; then + echo "Pyenv has already got Python 3.13 installed." else if pyenv install 3.10 ; then - echo "Pyenv installed Python 3.10 successfully." + echo "Pyenv installed Python 3.13 successfully." else - echo "Pyenv did NOT install Python 3.10 successfully." + echo "Pyenv did NOT install Python 3.13 successfully." exit 3 fi fi -# Creating Apigee environment with Python 3.10 -echo "Creating Apigee environment with Python 3.10 ..." +# Creating Apigee environment with Python 3.13 +echo "Creating Apigee environment with Python 3.13 ..." if pyenv versions | grep -q ".*apigee" ; then echo "A Python virtualenv named 'apigee' already exists." else - if pyenv virtualenv 3.10 apigee ; then - echo "A Python 3.10 virtualenv named 'apigee' was created." + if pyenv virtualenv 3.13 apigee ; then + echo "A Python 3.13 virtualenv named 'apigee' was created." else - echo "A Python 3.10 virtualenv named 'apigee' was NOT created." + echo "A Python 3.13 virtualenv named 'apigee' was NOT created." exit 4 fi fi @@ -86,7 +86,7 @@ fi # Checking python version echo "Checking python version ..." version=$(python -V 2>&1) -if [[ $version = 'Python 3.10'* ]] ; then +if [[ $version = 'Python 3.13'* ]] ; then echo "Python version is correct." else echo "Python version is NOT correct." diff --git a/scripts/ubuntu_setup_environment.sh b/scripts/ubuntu_setup_environment.sh index f62ea2656..6f6ea643b 100755 --- a/scripts/ubuntu_setup_environment.sh +++ b/scripts/ubuntu_setup_environment.sh @@ -63,29 +63,29 @@ else fi -#Installing python 3.10 with pyenv -echo "Installing python 3.10 with pyenv ..." -if pyenv versions | grep -Fq "3.10" ; then - echo "Pyenv has already got Python 3.10 installed." +#Installing python 3.13 with pyenv +echo "Installing python 3.13 with pyenv ..." +if pyenv versions | grep -Fq "3.13" ; then + echo "Pyenv has already got Python 3.13 installed." else - if pyenv install 3.10 ; then - echo "Pyenv installed Python 3.10 successfully." + if pyenv install 3.13 ; then + echo "Pyenv installed Python 3.13 successfully." else - echo "Pyenv did NOT install Python 3.10 successfully." + echo "Pyenv did NOT install Python 3.13 successfully." exit 1 fi fi -#Creating Apigee environment with Python 3.10 -echo "Creating Apigee environment with Python 3.10 ..." +#Creating Apigee environment with Python 3.13 +echo "Creating Apigee environment with Python 3.13 ..." if pyenv versions | grep -q ".*apigee" ; then echo "A Python virtualenv named 'apigee' already exists." else - if pyenv virtualenv 3.10 apigee ; then - echo "A Python 3.10 virtualenv named 'apigee' was created." + if pyenv virtualenv 3.13 apigee ; then + echo "A Python 3.13 virtualenv named 'apigee' was created." else - echo "A Python 3.10 virtualenv named 'apigee' was NOT created." + echo "A Python 3.13 virtualenv named 'apigee' was NOT created." exit 1 fi fi @@ -104,7 +104,7 @@ fi #Checking python version echo "Checking python version ..." version=$(python -V 2>&1) -if [[ $version = 'Python 3.10'* ]] ; then +if [[ $version = 'Python 3.13'* ]] ; then echo "Python version is correct." else echo "Python version is NOT correct." From 52b3189fc980d8f62ad919766deed057b21a7f1e Mon Sep 17 00:00:00 2001 From: edward wills Date: Thu, 29 Jan 2026 10:55:53 +0000 Subject: [PATCH 05/14] [RAA-4357]-[KM]-[Updated python version to 3.13]-[EW] --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index d16b9cba8..eaae2e6e3 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,5 +1,5 @@ [project] -python = "^3.10" +python = "^3.13" name = "e-referrals-service-api" version = "0.0.1-alpha" description = "TODO" From 258f8e90cfc928fa7b4af1b0cefce6c244621163 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 29 Jan 2026 12:55:36 +0000 Subject: [PATCH 06/14] Bump urllib3 from 2.5.0 to 2.6.3 Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.5.0 to 2.6.3. - [Release notes](https://github.com/urllib3/urllib3/releases) - [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst) - [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.3) --- updated-dependencies: - dependency-name: urllib3 dependency-version: 2.6.3 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- poetry.lock | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/poetry.lock b/poetry.lock index 2cfdae2fe..29ce03f6f 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.3.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 2.2.1 and should not be changed by hand. [[package]] name = "annotated-types" @@ -589,7 +589,7 @@ files = [ [package.dependencies] attrs = ">=22.2.0" -jsonschema-specifications = ">=2023.3.6" +jsonschema-specifications = ">=2023.03.6" referencing = ">=0.28.4" rpds-py = ">=0.7.1" @@ -1934,14 +1934,14 @@ typing-extensions = ">=4.12.0" [[package]] name = "urllib3" -version = "2.6.2" +version = "2.6.3" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.9" groups = ["main", "dev"] files = [ - {file = "urllib3-2.6.2-py3-none-any.whl", hash = "sha256:ec21cddfe7724fc7cb4ba4bea7aa8e2ef36f607a4bab81aa6ce42a13dc3f03dd"}, - {file = "urllib3-2.6.2.tar.gz", hash = "sha256:016f9c98bb7e98085cb2b4b17b87d2c702975664e4f060c6532e64d1c1a5e797"}, + {file = "urllib3-2.6.3-py3-none-any.whl", hash = "sha256:bf272323e553dfb2e87d9bfd225ca7b0f467b919d7bbd355436d3fd37cb0acd4"}, + {file = "urllib3-2.6.3.tar.gz", hash = "sha256:1b62b6884944a57dbe321509ab94fd4d3b307075e0c2eae991ac71ee15ad38ed"}, ] [package.extras] From c3eef9894ce08ba0463a53ad95ea707d0775f441 Mon Sep 17 00:00:00 2001 From: Nicole Balmer Date: Mon, 22 Dec 2025 16:22:27 +0000 Subject: [PATCH 07/14] [RAA-3163] Updates for version ID in A&G worklist --- .../responses/AdviceAndGuidanceRequests.json | 8 ++++++++ .../stu3/schemas/eRS-FetchWorklist-List.yaml | 15 +++++++++++++++ .../endpoints/a023-retrieve-a&g-worklist.yaml | 3 ++- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/sandbox/src/mocks/stu3/retrieveAdviceAndGuidanceWorklist/responses/AdviceAndGuidanceRequests.json b/sandbox/src/mocks/stu3/retrieveAdviceAndGuidanceWorklist/responses/AdviceAndGuidanceRequests.json index e2ce526d5..66cb0e846 100644 --- a/sandbox/src/mocks/stu3/retrieveAdviceAndGuidanceWorklist/responses/AdviceAndGuidanceRequests.json +++ b/sandbox/src/mocks/stu3/retrieveAdviceAndGuidanceWorklist/responses/AdviceAndGuidanceRequests.json @@ -91,6 +91,10 @@ } ] } + }, + { + "url": "communicationRequestVersion", + "valueInteger": 10 } ], "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-AdviceAndGuidanceRequests-WorkListItem-1" @@ -183,6 +187,10 @@ } ] } + }, + { + "url": "communicationRequestVersion", + "valueInteger": 10 } ], "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-AdviceAndGuidanceRequests-WorkListItem-1" diff --git a/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml b/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml index 9b985ea89..5ab1e4118 100644 --- a/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml +++ b/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml @@ -598,6 +598,7 @@ properties: | `referrer` | `1..1` | | | `service` | `1..1` | | | `clinicType` | `0..1` | | + | `communicationRequestVersion` | `0..1` | | items: anyOf: - $ref: './extensions/worklists/Extension-WorklistItem-Priority.yaml' @@ -693,6 +694,20 @@ properties: - $ref: './extensions/worklists/Extension-WorklistItem-Referrer.yaml' - $ref: './extensions/worklists/Extension-WorklistItem-Service.yaml' - $ref: './extensions/worklists/Extension-WorklistItem-ClinicType.yaml' + - title: communicationRequestVersion + type: object + required: + - url + - valueInteger + properties: + url: + type: string + enum: + - communicationRequestVersion + example: 'communicationRequestVersion' + valueInteger: + type: integer + example: 0 - title: Extension-eRS-RejectedTriageResponse-WorkListItem type: object required: diff --git a/specification/components/stu3/schemas/endpoints/a023-retrieve-a&g-worklist.yaml b/specification/components/stu3/schemas/endpoints/a023-retrieve-a&g-worklist.yaml index cb818b00e..507412ed3 100644 --- a/specification/components/stu3/schemas/endpoints/a023-retrieve-a&g-worklist.yaml +++ b/specification/components/stu3/schemas/endpoints/a023-retrieve-a&g-worklist.yaml @@ -8,7 +8,8 @@ description: | or to undertake an action, in order to avoid delays to patient care. Service provider organisations can retrieve the contents of their 'Advice and guidance requests' worklist using - this endpoint. This worklist contains advice and guidance requests the provider has received and which need actioning. + this endpoint. This worklist contains advice and guidance requests the provider has received and which need actioning. The version of each advice + request in the worklist will also be returned. Note that the version can change due to admin/clinical changes as well as internal e-RS processes. There are currently no advice and guidance related worklists available for referring organisations. From ebbbeb531697f98ec956ae5b1b9f43d04b273d72 Mon Sep 17 00:00:00 2001 From: Nicole Balmer Date: Wed, 14 Jan 2026 09:28:17 +0000 Subject: [PATCH 08/14] [RAA-3163] Fix cardinality --- .../components/stu3/schemas/eRS-FetchWorklist-List.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml b/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml index 5ab1e4118..53819e722 100644 --- a/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml +++ b/specification/components/stu3/schemas/eRS-FetchWorklist-List.yaml @@ -598,7 +598,7 @@ properties: | `referrer` | `1..1` | | | `service` | `1..1` | | | `clinicType` | `0..1` | | - | `communicationRequestVersion` | `0..1` | | + | `communicationRequestVersion` | `1..1` | | items: anyOf: - $ref: './extensions/worklists/Extension-WorklistItem-Priority.yaml' From a5530eb5f64d9e1117bbf6d9c33cde5ad19020d9 Mon Sep 17 00:00:00 2001 From: Nicole Balmer Date: Thu, 20 Nov 2025 15:03:38 +0000 Subject: [PATCH 09/14] [RAA-703] Update OAS docs for available actions and cancel referral --- .../bookedOutsideCabWithoutComment.json | 17 + .../requests/outpatientService.json | 21 + ...eferralBookedOutsideCabWithoutComment.json | 170 ++++++ .../CancelledReferralOutpatientService.json | 313 ++++++++++ .../ReferralCancellationReasonCodeSystem.json | 567 ++++++++++++++++-- .../stu3/schemas/CodeSystemConcept.yaml | 2 + .../stu3/schemas/CodeSystemProperties.yaml | 2 + ...ointmentRequestCancellationReasonType.yaml | 25 + .../a029-available-actions-for-user-list.yaml | 4 +- .../endpoints/a036-cancel-referral.yaml | 85 ++- ...ointmentRequestCancellationReasonType.yaml | 23 + .../responses/cancelReferral/200Response.yaml | 8 + .../responses/cancelReferral/422Response.yaml | 1 + specification/e-referrals-service-api.yaml | 6 +- 14 files changed, 1195 insertions(+), 49 deletions(-) create mode 100644 sandbox/src/mocks/stu3/cancelReferral/requests/bookedOutsideCabWithoutComment.json create mode 100644 sandbox/src/mocks/stu3/cancelReferral/requests/outpatientService.json create mode 100644 sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralBookedOutsideCabWithoutComment.json create mode 100644 sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json create mode 100644 specification/components/stu3/schemas/codings/AppointmentRequestCancellationReasonType.yaml create mode 100644 specification/components/stu3/schemas/properties/AppointmentRequestCancellationReasonType.yaml diff --git a/sandbox/src/mocks/stu3/cancelReferral/requests/bookedOutsideCabWithoutComment.json b/sandbox/src/mocks/stu3/cancelReferral/requests/bookedOutsideCabWithoutComment.json new file mode 100644 index 000000000..20e88be56 --- /dev/null +++ b/sandbox/src/mocks/stu3/cancelReferral/requests/bookedOutsideCabWithoutComment.json @@ -0,0 +1,17 @@ +{ + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-CancelReferral-Request-Parameters-1" + ] + }, + "resourceType": "Parameters", + "parameter": [ + { + "name": "cancellationReason", + "valueCoding": { + "system": "_baseurl_/STU3/CodeSystem/REFERRAL-CANCELLATION-REASON", + "code": "BOOKED_OUTSIDE_CAB" + } + } + ] +} diff --git a/sandbox/src/mocks/stu3/cancelReferral/requests/outpatientService.json b/sandbox/src/mocks/stu3/cancelReferral/requests/outpatientService.json new file mode 100644 index 000000000..f0118abe8 --- /dev/null +++ b/sandbox/src/mocks/stu3/cancelReferral/requests/outpatientService.json @@ -0,0 +1,21 @@ +{ + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-CancelReferral-Request-Parameters-1" + ] + }, + "resourceType": "Parameters", + "parameter": [ + { + "name": "cancellationReason", + "valueCoding": { + "system": "_baseurl_/STU3/CodeSystem/REFERRAL-CANCELLATION-REASON", + "code": "OUTPATIENT_SERVICE_NA" + } + }, + { + "name": "cancellationComments", + "valueString": "This is a cancellation reason comment" + } + ] +} diff --git a/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralBookedOutsideCabWithoutComment.json b/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralBookedOutsideCabWithoutComment.json new file mode 100644 index 000000000..9121b84fd --- /dev/null +++ b/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralBookedOutsideCabWithoutComment.json @@ -0,0 +1,170 @@ +{ + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-CancelReferral-Response-Parameters-1" + ] + }, + "resourceType": "Parameters", + "parameter": [ + { + "name": "updatedReferralRequest", + "resource": { + "id": "000000070000", + "meta": { + "versionId": "4", + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-ReferralRequest-1" + ] + }, + "resourceType": "ReferralRequest", + "extension": [ + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-ReferralPriority-1", + "valueCodeableConcept": { + "coding": [ + { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Priority-1", + "code": "ROUTINE", + "display": "Routine" + } + ] + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-ReferralShortlist-1", + "valueReference": { + "reference": "#shortlist" + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Commissioning-Rule-Org-1", + "valueIdentifier": { + "system": "https://fhir.nhs.uk/Id/ods-organization-code", + "value": "R69" + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-ReferralState-1", + "extension": [ + { + "url": "state", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralState-1", + "code": "CANCELLED_REFERRAL", + "display": "Cancelled Referral" + } + }, + { + "url": "reason", + "valueCoding": { + "system": "_baseUrl_/STU3/CodeSystem/REFERRAL-CANCELLATION-REASON", + "code": "BOOKED_OUTSIDE_CAB", + "display": "Patient booked outside NHS e-Referral Service" + } + } + ] + } + ], + "contained": [ + { + "id": "serviceSearchCriteria", + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-ServiceSearchCriteria-Parameters-1" + ] + }, + "resourceType": "Parameters", + "parameter": [ + { + "name": "priority", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Priority-1", + "code": "ROUTINE" + } + }, + { + "name": "specialty", + "valueCoding": { + "system": "_baseUrl_/STU3/CodeSystem/SPECIALTY", + "code": "CARDIOLOGY" + } + }, + { + "name": "clinicType", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ClinicType-1", + "code": "HEART_FAILURE" + } + }, + { + "name": "ageAndGenderAppropriate", + "valueBoolean": false + }, + { + "name": "commissioningProvisioning", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-CommissioningProvisioning-1", + "code": "ALL_AVAILABLE_FOR_BOOKING" + } + } + ] + }, + { + "id": "shortlist", + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-Shortlist-List-1" + ] + }, + "resourceType": "List", + "extension": [ + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Shortlist-SearchCriteria-1", + "valueReference": { + "reference": "#serviceSearchCriteria" + } + } + ], + "status": "current", + "mode": "snapshot", + "entry": [ + { + "item": { + "identifier": { + "system": "http://fhir.nhs.net/Id/ers-service", + "value": "11004" + }, + "display": "Cardiology Triage Business Service" + } + } + ] + } + ], + "status": "cancelled", + "specialty": { + "coding": [ + { + "system": "_baseUrl_/STU3/CodeSystem/SPECIALTY", + "code": "CARDIOLOGY", + "display": "Cardiology" + } + ] + }, + "subject": { + "identifier": { + "system": "http://fhir.nhs.net/Id/nhs-number", + "value": "9912003888" + } + }, + "supportingInfo": [], + "intent": "plan", + "identifier":[ + { + "system":"https://fhir.nhs.uk/Id/ers-request-id", + "value":"r.c18c4ec4-7d0a-480e-8506-347e0ec228b0" + } + ] + } + } + ] +} diff --git a/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json b/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json new file mode 100644 index 000000000..57c576ffa --- /dev/null +++ b/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json @@ -0,0 +1,313 @@ +{ + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-CancelReferral-Response-Parameters-1" + ] + }, + "resourceType": "Parameters", + "parameter": [ + { + "name": "updatedReferralRequest", + "resource": { + "id": "000000070000", + "meta": { + "versionId": "4", + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-ReferralRequest-1" + ] + }, + "resourceType": "ReferralRequest", + "extension": [ + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Appointment-Reference-1", + "valueReference": { + "reference": "Appointment/70001" + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Appointment-1", + "valueReference": { + "reference": "#appointment" + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-ReferralPriority-1", + "valueCodeableConcept": { + "coding": [ + { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Priority-1", + "code": "ROUTINE", + "display": "Routine" + } + ] + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-ReferralShortlist-1", + "valueReference": { + "reference": "#shortlist" + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Commissioning-Rule-Org-1", + "valueIdentifier": { + "system": "https://fhir.nhs.uk/Id/ods-organization-code", + "value": "R69" + } + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-ReferralState-1", + "extension": [ + { + "url": "state", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralState-1", + "code": "CANCELLED_REFERRAL", + "display": "Cancelled Referral" + } + }, + { + "url": "reason", + "valueCoding": { + "system": "_baseUrl_/STU3/CodeSystem/REQUEST-CANCELLATION-REASON", + "code": "OUTPATIENT_SERVICE_NA", + "display": "Sent to outpatient service not available in this system" + } + }, + { + "url": "comments", + "valueString": "This is a cancellation reason comment" + } + ] + }, + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-PatientAdditionalRequirement-1", + "valueCoding": { + "code": "TRANSPORT", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AdditionalRequirementType-1", + "display": "Transport" + } + } + ], + "contained": [ + { + "id": "serviceSearchCriteria", + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-ServiceSearchCriteria-Parameters-1" + ] + }, + "resourceType": "Parameters", + "parameter": [ + { + "name": "priority", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Priority-1", + "code": "ROUTINE" + } + }, + { + "name": "specialty", + "valueCoding": { + "system": "_baseUrl_/STU3/CodeSystem/SPECIALTY", + "code": "CARDIOLOGY" + } + }, + { + "name": "clinicType", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ClinicType-1", + "code": "HEART_FAILURE" + } + }, + { + "valueString": "LS1 2TW", + "name": "postcode" + }, + { + "name": "distanceLimit", + "valueUnsignedInt": 123 + }, + { + "name": "ageAndGenderAppropriate", + "valueBoolean": false + }, + { + "name": "commissioningProvisioning", + "valueCoding": { + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-CommissioningProvisioning-1", + "code": "ALL_AVAILABLE_FOR_BOOKING" + } + } + ] + }, + { + "id": "shortlist", + "meta": { + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-Shortlist-List-1" + ] + }, + "resourceType": "List", + "extension": [ + { + "url": "https://fhir.nhs.uk/STU3/StructureDefinition/Extension-eRS-Shortlist-SearchCriteria-1", + "valueReference": { + "reference": "#serviceSearchCriteria" + } + } + ], + "status": "current", + "mode": "snapshot", + "entry": [ + { + "item": { + "identifier": { + "system": "http://fhir.nhs.net/Id/ers-service", + "value": "11004" + }, + "display": "Cardiology Triage Business Service" + } + } + ] + }, + { + "id": "appointment", + "meta": { + "versionId": "1", + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-Appointment-1", + "https://fhir.hl7.org.uk/STU3/StructureDefinition/CareConnect-Appointment-1" + ] + }, + "language": "en", + "resourceType": "Appointment", + "status": "cancelled", + "description": "e-Referral Appointment", + "created": "2021-05-06T11:21:45.652Z", + "incomingReferral": [ + { + "reference": "ReferralRequest/000000070000/_history/4" + } + ], + "participant": [ + { + "actor": { + "identifier": { + "system": "http://fhir.nhs.net/Id/ers-service", + "value": "11004" + }, + "display": "Cardiology Triage Business Service" + }, + "status": "accepted" + }, + { + "actor": { + "identifier": { + "system": "http://fhir.nhs.net/Id/nhs-number", + "value": "9912003888" + } + }, + "status": "accepted" + }, + { + "actor": { + "identifier": { + "system": "http://fhir.nhs.net/Id/sds-user-id", + "value": "021600556514" + } + }, + "type": { + "coding": [ + { + "system": "http://hl7.org/fhir/ValueSet/encounter-participant-type", + "code": "CON" + } + ] + }, + "status": "accepted" + } + ] + } + ], + "status": "cancelled", + "specialty": { + "coding": [ + { + "system": "_baseUrl_/STU3/CodeSystem/SPECIALTY", + "code": "CARDIOLOGY", + "display": "Cardiology" + } + ] + }, + "subject": { + "identifier": { + "system": "http://fhir.nhs.net/Id/nhs-number", + "value": "9912003888" + } + }, + "supportingInfo": [], + "intent": "plan", + "identifier":[ + { + "system":"https://fhir.nhs.uk/Id/ers-request-id", + "value":"r.c18c4ec4-7d0a-480e-8506-347e0ec228b0" + } + ] + } + }, + { + "name": "updatedAppointment", + "resource": { + "id": "70001", + "meta": { + "versionId": "1", + "profile": [ + "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-Appointment-1", + "https://fhir.hl7.org.uk/STU3/StructureDefinition/CareConnect-Appointment-1" + ] + }, + "language": "en", + "resourceType": "Appointment", + "status": "cancelled", + "description": "e-Referral Appointment", + "created": "2021-05-06T11:21:45.652Z", + "reason": [ + { + "coding": [{ + "system": "_baseUrl_/STU3/CodeSystem/APPOINTMENT-CANCELLATION-REASON", + "code": "PATIENT_APPOINTMENT_CANCELLATION_OTHER" + }] + } + ], + "comment": "Intend Private Comment", + "incomingReferral": [ + { + "reference": "ReferralRequest/000000070000/_history/4" + } + ], + "participant": [ + { + "actor": { + "identifier": { + "system": "http://fhir.nhs.net/Id/ers-service", + "value": "11004" + }, + "display": "Cardiology Business Service" + }, + "status": "accepted" + }, + { + "actor": { + "identifier": { + "system": "http://fhir.nhs.net/Id/nhs-number", + "value": "9912003888" + } + }, + "status": "accepted" + } + ] + } + } + ] +} diff --git a/sandbox/src/mocks/stu3/getCodeSystem/responses/ReferralCancellationReasonCodeSystem.json b/sandbox/src/mocks/stu3/getCodeSystem/responses/ReferralCancellationReasonCodeSystem.json index 1e114f83f..94d28a7d7 100644 --- a/sandbox/src/mocks/stu3/getCodeSystem/responses/ReferralCancellationReasonCodeSystem.json +++ b/sandbox/src/mocks/stu3/getCodeSystem/responses/ReferralCancellationReasonCodeSystem.json @@ -28,6 +28,11 @@ "uri": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Concept-Properties-1#effectiveTo", "type": "dateTime" }, + { + "code": "appointmentRequestCancellationReasonType", + "uri": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Concept-Properties-1#appointmentRequestCancellationReasonType", + "type": "Coding" + }, { "code": "commentIsMandatory", "uri": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-Concept-Properties-1#commentIsMandatory", @@ -58,6 +63,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -65,6 +77,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -76,6 +116,13 @@ "code": "effectiveFrom", "valueDateTime": "2007-09-14T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -83,6 +130,34 @@ { "code": "canCancelAppointment", "valueBoolean": true + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -94,6 +169,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -101,6 +183,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -112,6 +222,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -119,6 +236,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -130,6 +275,13 @@ "code": "effectiveFrom", "valueDateTime": "2004-06-01T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PATIENT", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -141,22 +293,43 @@ { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN_ADMIN" + "code": "REFERRING_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "REFERRING_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN" + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "referrerUsage", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1", - "code": "CANCEL_REFERRAL" + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" } } ] @@ -169,6 +342,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -176,6 +356,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -187,6 +395,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -194,6 +409,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -205,6 +448,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -212,6 +462,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -223,6 +501,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -230,6 +515,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -241,6 +554,13 @@ "code": "effectiveFrom", "valueDateTime": "2004-06-01T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PATIENT", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -252,22 +572,43 @@ { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN_ADMIN" + "code": "REFERRING_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "REFERRING_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN" + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "referrerUsage", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1", - "code": "CANCEL_REFERRAL" + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" } } ] @@ -280,6 +621,13 @@ "code": "effectiveFrom", "valueDateTime": "2004-06-01T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PATIENT", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -291,22 +639,43 @@ { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN_ADMIN" + "code": "REFERRING_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "REFERRING_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN" + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "referrerUsage", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1", - "code": "CANCEL_REFERRAL" + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" } } ] @@ -319,6 +688,13 @@ "code": "effectiveFrom", "valueDateTime": "2007-09-14T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "UNKNOWN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -330,22 +706,22 @@ { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN_ADMIN" + "code": "REFERRING_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN" + "code": "REFERRING_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "referrerUsage", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1", - "code": "CANCEL_REFERRAL" + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" } } ] @@ -358,6 +734,13 @@ "code": "effectiveFrom", "valueDateTime": "2007-09-14T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "UNKNOWN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -369,22 +752,22 @@ { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN_ADMIN" + "code": "REFERRING_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN" + "code": "REFERRING_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "referrerUsage", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1", - "code": "CANCEL_REFERRAL" + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" } } ] @@ -397,6 +780,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": true @@ -404,6 +794,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -415,6 +833,13 @@ "code": "effectiveFrom", "valueDateTime": "2004-06-01T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PATIENT", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -426,22 +851,43 @@ { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN_ADMIN" + "code": "REFERRING_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "REFERRING_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "businessFunction", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1", - "code": "REFERRING_CLINICIAN" + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" } }, { "code": "referrerUsage", "valueCoding": { - "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1", - "code": "CANCEL_REFERRAL" + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" } } ] @@ -454,6 +900,13 @@ "code": "effectiveFrom", "valueDateTime": "2019-07-23T17:09:56.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PROVIDER_TRIAGE", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -461,6 +914,34 @@ { "code": "canCancelAppointment", "valueBoolean": false + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "SERVICE_PROVIDER_CLINICIAN_ADMIN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "businessFunction", + "valueCoding": { + "code": "PROVIDER_AUTHORISED_APPLICATION", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-BusinessFunction-1" + } + }, + { + "code": "referrerUsage", + "valueCoding": { + "code": "CANCEL_REFERRAL", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReferralRequestCancellationReasonUsage-1" + } } ] }, @@ -472,6 +953,13 @@ "code": "effectiveFrom", "valueDateTime": "2004-06-01T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "PATIENT", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false @@ -490,6 +978,13 @@ "code": "effectiveFrom", "valueDateTime": "2004-06-01T00:00:00.000Z" }, + { + "code": "appointmentRequestCancellationReasonType", + "valueCoding": { + "code": "UNKNOWN", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1" + } + }, { "code": "commentIsMandatory", "valueBoolean": false diff --git a/specification/components/stu3/schemas/CodeSystemConcept.yaml b/specification/components/stu3/schemas/CodeSystemConcept.yaml index 46dd37948..3ac83f9da 100644 --- a/specification/components/stu3/schemas/CodeSystemConcept.yaml +++ b/specification/components/stu3/schemas/CodeSystemConcept.yaml @@ -55,6 +55,7 @@ properties: | Usage | APPOINTMENT-CANCELLATION-REASON | | CommentIsMandatory | APPOINTMENT-CANCELLATION-REASON/REFERRAL-CANCELLATION-REASON | | businessFunction | APPOINTMENT-CANCELLATION-REASON/REFERRAL-CANCELLATION-REASON | + | AppointmentRequestCancellationReasonType | REFERRAL-CANCELLATION-REASON | | CanCancelAppointment | REFERRAL-CANCELLATION-REASON | | RequestCancellationReferrerUsage | REFERRAL-CANCELLATION-REASON | | DeferToProviderContactDays | PRIORITY | @@ -72,6 +73,7 @@ properties: - $ref: 'codings/AppointmentCancellationUsage.yaml' - $ref: 'codings/CommentIsMandatory.yaml' - $ref: 'codings/BusinessFunction.yaml' + - $ref: 'codings/AppointmentRequestCancellationReasonType.yaml' - $ref: 'codings/CanCancelAppointment.yaml' - $ref: 'codings/RequestCancellationReferrerUsage.yaml' - $ref: 'codings/DeferToProviderContactDays.yaml' diff --git a/specification/components/stu3/schemas/CodeSystemProperties.yaml b/specification/components/stu3/schemas/CodeSystemProperties.yaml index 7eeb3cd23..107ef4bba 100644 --- a/specification/components/stu3/schemas/CodeSystemProperties.yaml +++ b/specification/components/stu3/schemas/CodeSystemProperties.yaml @@ -13,6 +13,7 @@ description: | | Usage | APPOINTMENT-CANCELLATION-REASON | | CommentIsMandatory | APPOINTMENT-CANCELLATION-REASON / REFERRAL-CANCELLATION-REASON | | BusinessFunction | APPOINTMENT-CANCELLATION-REASON / REFERRAL-CANCELLATION-REASON | + | AppointmentRequestCancellationReasonType | REFERRAL-CANCELLATION-REASON | | CanCancelAppointment | REFERRAL-CANCELLATION-REASON | | ReferrerUsage | REFERRAL-CANCELLATION-REASON | | DeferToProviderContactDays | PRIORITY | @@ -29,6 +30,7 @@ items: - $ref: 'properties/Usage.yaml' - $ref: 'properties/CommentIsMandatory.yaml' - $ref: 'properties/BusinessFunction.yaml' + - $ref: 'properties/AppointmentRequestCancellationReasonType.yaml' - $ref: 'properties/CanCancelAppointment.yaml' - $ref: 'properties/ReferrerUsage.yaml' - $ref: 'properties/DeferToProviderContactDays.yaml' diff --git a/specification/components/stu3/schemas/codings/AppointmentRequestCancellationReasonType.yaml b/specification/components/stu3/schemas/codings/AppointmentRequestCancellationReasonType.yaml new file mode 100644 index 000000000..70880573e --- /dev/null +++ b/specification/components/stu3/schemas/codings/AppointmentRequestCancellationReasonType.yaml @@ -0,0 +1,25 @@ +title: Appointment request cancellation reason type +description: This will only be returned when codeSystemType is REFERRAL-CANCELLATION-REASON +type: object +required: + - code + - valueCoding +properties: + code: + type: string + enum: + - appointmentRequestCancellationReasonType + valueCoding: + type: object + required: + - system + - code + properties: + system: + type: string + enum: + - 'https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1' + example: 'https://fhir.nhs.uk/STU3/CodeSystem/eRS-AppointmentRequestCancellationReasonType-1' + code: + type: string + example: 'PROVIDER' diff --git a/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml b/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml index 69aa06daa..8cf57cb40 100644 --- a/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml +++ b/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml @@ -23,6 +23,7 @@ description: | Supported action: - Record Review Outcome + - Cancel Referral ### Healthcare worker, user-restricted access @@ -54,7 +55,8 @@ description: | - Change Shortlist and Send for Triage As a service provider, the only action returned will be: - - Record Review Outcome + - Record Review Outcome + - Cancel Referral ## Related endpoints diff --git a/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml b/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml index 1c6d8395d..3cd3f5e13 100644 --- a/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml +++ b/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml @@ -19,13 +19,15 @@ description: | In order to use this endpoint you must be an authenticated e-RS user and use one of the following e-RS roles: - `REFERRING_CLINICIAN` - `REFERRING_CLINICIAN_ADMIN` + - `SERVICE_PROVIDER_CLINICIAN` + - `SERVICE_PROVIDER_CLINICIAN_ADMIN` You must use [[HYPERLINK_A004]] to retrieve a list of reference data, which detail the reason the cancellation is being performed. You can only use reference data from the set `REFERRAL-CANCELLATION-REASON`. To find out which reference data from this set can be used, the following filters can be used depending on the cancellation scenario: - ***1. I want to cancel the referral and the current appointment*** + ***1. I want to cancel the referral and the current appointment as a Referrer*** * Obtain reference data from `REFERRAL-CANCELLATION-REASON` and filter: @@ -40,7 +42,7 @@ description: | * if provided, `effectiveTo` must **not** be in the past - ***2. I want to cancel a referral, for which there is no current appointment*** + ***2. I want to cancel a referral, for which there is no current appointment as a Referrer*** * Obtain reference data from `REFERRAL-CANCELLATION-REASON` and filter: @@ -53,7 +55,52 @@ description: | * `effectiveFrom` must be in the past, and * if provided, `effectiveTo` must **not** be in the past + + ***3. I want to cancel the referral and the current appointment as a Service Provider*** + + * Obtain reference data from `REFERRAL-CANCELLATION-REASON` and filter: + + * `referrerUsage` must be `CANCEL_REFERRAL`, and + + * `businessFunction` must be `SERVICE_PROVIDER_CLINICIAN` or `SERVICE_PROVIDER_CLINICIAN_ADMIN` (depending which authenticated user will be performing the action), and + + * `appointmentRequestCancellationReasonType` must be `PROVIDER` and `PATIENT`, and + + * `canCancelAppointment` must be true, and + + * `effectiveFrom` must be in the past, and + + * `effectiveTo` must **not** be in the past + + ***4. I want to cancel a referral, for which there is no current appointment as a Service Provider*** + + * Obtain reference data from `REFERRAL-CANCELLATION-REASON` and filter: + * `referrerUsage` must be `CANCEL_REFERRAL`, and + + * `businessFunction` must be `SERVICE_PROVIDER_CLINICIAN` or `SERVICE_PROVIDER_CLINICIAN_ADMIN` (depending which authenticated user will be performing the action), and + + * `appointmentRequestCancellationReasonType` must be `PROVIDER` and `PATIENT`, and + + * `canCancelAppointment` must be true, and + + * `effectiveFrom` must be in the past, and + + * `effectiveTo` must **not** be in the past + + ***5. I want to cancel the triage referral as a Service Provider*** + + * Obtain reference data from `REFERRAL-CANCELLATION-REASON` and filter: + + * `referrerUsage` must be `CANCEL_REFERRAL`, and + + * `businessFunction` must be `SERVICE_PROVIDER_CLINICIAN` or `SERVICE_PROVIDER_CLINICIAN_ADMIN` (depending which authenticated user will be performing the action), and + + * `appointmentRequestCancellationReasonType` must be `PROVIDER_TRIAGE`, and + + * `effectiveFrom` must be in the past, and + + * `effectiveTo` must **not** be in the past You need to use [[HYPERLINK_A005]] to retrieve details of the referral in order to make this clinical decision. @@ -64,6 +111,14 @@ description: | Further details on attachment availability status and eRS-AvailabilityStatus-1 codes can be found in the [[HYPERLINK_A005]] and [[HYPERLINK_A042]] specifications. + ## Important notes when providing an appointment request cancellation reason + + When cancelling a referral as a Service Provider Clinician: + + * If the referral is in the “Triaged - Provider to action” state, the cancellation reason must be an Appointment Request End Triage Reason type. + + * If the referral is not in that state, the cancellation reason must be a Provider Appointment Request Cancellation Reason or Patient Appointment Request Cancellation Reason type. + ## Use case As an authenticated user @@ -89,14 +144,16 @@ description: | You can test the following scenarios in our sandbox environment: - | Scenario | Request details | - | ------------------------------------------------------------------------ | --------------------------------- | - | Reason for Cancellation without Comment (Comment Not Mandatory) | Intend Private With No Comment | - | Reason for Cancellation with Comment (Comment Mandatory) | Patient Cancellation With Comment | - | Cancelled Referral | Raised in Error | - | Cancelled Appointment and Referral | Referrer Cancellation | - | Cancelled Referral After Prior Appointment Cancellation | Treatment No Longer Required | - | Cancelled Referral with Existing Review Outcome | Intend Private With Comment | + | Scenario | Request details | + | ------------------------------------------------------------------------ | ------------------------------------- | + | Reason for Cancellation without Comment (Comment Not Mandatory) | Intend Private With No Comment | + | Reason for Cancellation with Comment (Comment Mandatory) | Patient Cancellation With Comment | + | Cancelled Referral | Raised in Error | + | Cancelled Appointment and Referral | Referrer Cancellation | + | Cancelled Referral After Prior Appointment Cancellation | Treatment No Longer Required | + | Cancelled Referral with Existing Review Outcome | Intend Private With Comment | + | Cancelled Referral (Provider) without Comment (Comment Not Mandatory) | Provider Cancellation With No Comment | + | Cancelled Referral with Triage Response | Provider Cancellation via End Triage | summary: Cancel referral (A036, FHIR STU3) operationId: a036-cancel-referral tags: @@ -139,6 +196,14 @@ requestBody: summary: Cancelled Referral with Existing Review Outcome value: $ref: '../../examples/cancelReferral/requests/IntendPrivateWithComment.json' + cancel-referral-provider-without-comment: + summary: Cancelled Referral (Provider) without Comment (Comment Not Mandatory) + value: + $ref: '../../examples/cancelReferral/requests/bookedOutsideCabWithoutComment.json' + cancel-referral-with-triage-response: + summary: Cancelled Referral with Triage Response + value: + $ref: '../../examples/cancelReferral/requests/outpatientService.json' responses: '200': $ref: '../responses/cancelReferral/200Response.yaml' diff --git a/specification/components/stu3/schemas/properties/AppointmentRequestCancellationReasonType.yaml b/specification/components/stu3/schemas/properties/AppointmentRequestCancellationReasonType.yaml new file mode 100644 index 000000000..86ad3d95e --- /dev/null +++ b/specification/components/stu3/schemas/properties/AppointmentRequestCancellationReasonType.yaml @@ -0,0 +1,23 @@ +title: Appointment Request Cancellation Reason Type +description: This will only be returned when codeSystemType is REFERRAL-CANCELLATION-REASON +type: object +required: + - code + - uri + - type +properties: + code: + type: string + enum: + - appointmentRequestCancellationReasonType + example: 'appointmentRequestCancellationReasonType' + uri: + type: string + enum: + - 'https://fhir.nhs.uk/STU3/CodeSystem/eRS-Concept-Properties-1#appointmentRequestCancellationReasonType' + example: 'https://fhir.nhs.uk/STU3/CodeSystem/eRS-Concept-Properties-1#appointmentRequestCancellationReasonType' + type: + type: string + enum: + - Coding + example: 'Coding' diff --git a/specification/components/stu3/schemas/responses/cancelReferral/200Response.yaml b/specification/components/stu3/schemas/responses/cancelReferral/200Response.yaml index f20c32527..8ba4444da 100644 --- a/specification/components/stu3/schemas/responses/cancelReferral/200Response.yaml +++ b/specification/components/stu3/schemas/responses/cancelReferral/200Response.yaml @@ -35,3 +35,11 @@ content: summary: Cancelled Referral with Existing Review Outcome with Reason 'Patient will go to a private clinic' value: $ref: '../../../examples/cancelReferral/responses/CancelledReferralResolvedDeferralIntendPrivateWithComment.json' + cancelled-referral-provider-booked-outside: + summary: Cancelled Referral without Booking with Reason 'Patient booked outside NHS e-Referral Service' without Comment (Comment Not Mandatory)' + value: + $ref: '../../../examples/cancelReferral/responses/CancelledReferralBookedOutsideCabWithoutComment.json' + cancelled-referral-provider-triaged-and-sent-to-outpatient-service: + summary: Cancelled Referral with Triage Response with Reason 'Sent to outpatient service not available in this system' with Comment (Comment Mandatory)' + value: + $ref: '../../../examples/cancelReferral/responses/CancelledReferralOutpatientService.json' diff --git a/specification/components/stu3/schemas/responses/cancelReferral/422Response.yaml b/specification/components/stu3/schemas/responses/cancelReferral/422Response.yaml index 13b9aab0e..c03d70e38 100644 --- a/specification/components/stu3/schemas/responses/cancelReferral/422Response.yaml +++ b/specification/components/stu3/schemas/responses/cancelReferral/422Response.yaml @@ -9,6 +9,7 @@ description: | | PATIENT_ERROR | An error occurred while retrieving the requested patient. Do not attempt again. | | NO_RELATIONSHIP | The user does not have a legitimate relationship with the request. | | UNABLE_TO_CANCEL_APPOINTMENT | System is unable to cancel the appointment. | + | INAPPROPRIATE_VALUE | A value, which is acceptable under different conditions, is inappropriate in the context of the other information provided. | headers: X-Correlation-ID: $ref: '../../headers/response/CorrelationID.yaml' diff --git a/specification/e-referrals-service-api.yaml b/specification/e-referrals-service-api.yaml index 8e3f03fcd..3024e2545 100644 --- a/specification/e-referrals-service-api.yaml +++ b/specification/e-referrals-service-api.yaml @@ -39,6 +39,7 @@ info: - accept or reject a referral request - retrieve Advice & Guidance (A&G) conversations and send responses - convert Advice & Guidance (A&G) conversations into a referral + - cancel a referral **You cannot use this API to:** @@ -78,7 +79,7 @@ info: | Access mode | Authentication via | Functions | Availability | | ----------------------------- | -------------------------- | ----------------------- | ------------------------------- | - | Application-restricted,
unattended access | [[HYPERLINK_SIGNED_JWT]] |
  • [[HYPERLINK_A004]]
  • [[HYPERLINK_A005]]
  • [[HYPERLINK_A007]]
  • [[HYPERLINK_A008]]
  • [[HYPERLINK_A013]]
  • [[HYPERLINK_A024]]
  • [[HYPERLINK_A025]]
  • [[HYPERLINK_A028]]
  • [[HYPERLINK_A029]]
  • [[HYPERLINK_A033]]
  • [[HYPERLINK_A035]]
  • [[HYPERLINK_A037]]
  • [[HYPERLINK_A042]]
  • [[HYPERLINK_A043]]
| [[HYPERLINK_PRODUCTION]] | + | Application-restricted,
unattended access | [[HYPERLINK_SIGNED_JWT]] |
  • [[HYPERLINK_A004]]
  • [[HYPERLINK_A005]]
  • [[HYPERLINK_A007]]
  • [[HYPERLINK_A008]]
  • [[HYPERLINK_A013]]
  • [[HYPERLINK_A024]]
  • [[HYPERLINK_A025]]
  • [[HYPERLINK_A028]]
  • [[HYPERLINK_A029]]
  • [[HYPERLINK_A033]]
  • [[HYPERLINK_A035]]
  • [[HYPERLINK_A036]]
  • [[HYPERLINK_A037]]
  • [[HYPERLINK_A042]]
  • [[HYPERLINK_A043]]
| [[HYPERLINK_PRODUCTION]] | | Healthcare worker,
user-restricted access | [[HYPERLINK_CIS_AUTH_SHORT]] | All Endpoints | [[HYPERLINK_PRODUCTION]] | ##### Application-restricted, unattended access @@ -89,8 +90,9 @@ info: Write operations are currently supported for specific use cases via: - [[HYPERLINK_A028]] - [[HYPERLINK_A013]] + - [[HYPERLINK_A036]] - You will be required to submit your use case for review when using this endpoint via application-restricted, unattended access. + You will be required to submit your use case for review when using these endpoints via application-restricted, unattended access. ##### Healthcare worker, user-restricted access From 97133a842c94c88888a90a7e9f27a52b002f12a7 Mon Sep 17 00:00:00 2001 From: Nicole Balmer Date: Thu, 15 Jan 2026 07:02:26 +0000 Subject: [PATCH 10/14] [RAA-703] Further updates --- .../CancelledReferralOutpatientService.json | 67 ++++--------------- sandbox/src/routes/stu3/cancelReferral.js | 2 +- .../endpoints/a036-cancel-referral.yaml | 17 +++-- 3 files changed, 26 insertions(+), 60 deletions(-) diff --git a/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json b/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json index 57c576ffa..9e658931d 100644 --- a/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json +++ b/sandbox/src/mocks/stu3/cancelReferral/responses/CancelledReferralOutpatientService.json @@ -182,9 +182,21 @@ }, "language": "en", "resourceType": "Appointment", - "status": "cancelled", + "status": "proposed", + "reason": [ + { + "coding": [ + { + "code": "ACCEPT_REFER_BOOK_LATER", + "system": "https://fhir.nhs.uk/STU3/CodeSystem/eRS-ReviewOutcome-1", + "display": "Accept Refer Book Later" + } + ] + } + ], "description": "e-Referral Appointment", "created": "2021-05-06T11:21:45.652Z", + "comment": "Outcome", "incomingReferral": [ { "reference": "ReferralRequest/000000070000/_history/4" @@ -255,59 +267,6 @@ } ] } - }, - { - "name": "updatedAppointment", - "resource": { - "id": "70001", - "meta": { - "versionId": "1", - "profile": [ - "https://fhir.nhs.uk/STU3/StructureDefinition/eRS-Appointment-1", - "https://fhir.hl7.org.uk/STU3/StructureDefinition/CareConnect-Appointment-1" - ] - }, - "language": "en", - "resourceType": "Appointment", - "status": "cancelled", - "description": "e-Referral Appointment", - "created": "2021-05-06T11:21:45.652Z", - "reason": [ - { - "coding": [{ - "system": "_baseUrl_/STU3/CodeSystem/APPOINTMENT-CANCELLATION-REASON", - "code": "PATIENT_APPOINTMENT_CANCELLATION_OTHER" - }] - } - ], - "comment": "Intend Private Comment", - "incomingReferral": [ - { - "reference": "ReferralRequest/000000070000/_history/4" - } - ], - "participant": [ - { - "actor": { - "identifier": { - "system": "http://fhir.nhs.net/Id/ers-service", - "value": "11004" - }, - "display": "Cardiology Business Service" - }, - "status": "accepted" - }, - { - "actor": { - "identifier": { - "system": "http://fhir.nhs.net/Id/nhs-number", - "value": "9912003888" - } - }, - "status": "accepted" - } - ] - } } ] } diff --git a/sandbox/src/routes/stu3/cancelReferral.js b/sandbox/src/routes/stu3/cancelReferral.js index 2711c47a4..3fb6fd8ed 100644 --- a/sandbox/src/routes/stu3/cancelReferral.js +++ b/sandbox/src/routes/stu3/cancelReferral.js @@ -10,7 +10,7 @@ module.exports = [ path: '/FHIR/STU3/ReferralRequest/{ubrn}/$ers.cancelReferral', handler: (request, h) => { - const allowedBusinessFunctions = ["REFERRING_CLINICIAN", "REFERRING_CLINICIAN_ADMIN"] + const allowedBusinessFunctions = ["REFERRING_CLINICIAN", "REFERRING_CLINICIAN_ADMIN", "SERVICE_PROVIDER_CLINICIAN", "SERVICE_PROVIDER_CLINICIAN_ADMIN"] const validationResult = validationUtils.validateBusinessFunction(request, h, allowedBusinessFunctions) diff --git a/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml b/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml index 3cd3f5e13..999321331 100644 --- a/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml +++ b/specification/components/stu3/schemas/endpoints/a036-cancel-referral.yaml @@ -14,8 +14,15 @@ description: | ## Supported security patterns - Healthcare worker, user-restricted access + - Application-restricted, unattended access ## Pre-requisites + ### Application-restricted, unattended access + In order to use this endpoint you must be an authenticated e-RS calling application, working in the context of a Service Provider Organisation. + + To access this endpoint in application-restricted, unattended mode, you will be required to submit your use case for review. The only use case currently permitted is for non-clinical provider actions. + + ### Healthcare worker, user-restricted access In order to use this endpoint you must be an authenticated e-RS user and use one of the following e-RS roles: - `REFERRING_CLINICIAN` - `REFERRING_CLINICIAN_ADMIN` @@ -48,7 +55,7 @@ description: | * `referrerUsage` must be `CANCEL_REFERRAL`, and - * `businessFunction` must be `REFERRING_CLINICIAN` or `REFERRING_CLINICIAN_ADMIN` *(depending which authenticated user will be performing the action), and + * `businessFunction` must be `REFERRING_CLINICIAN` or `REFERRING_CLINICIAN_ADMIN` (depending which authenticated user will be performing the action), and * `canCancelAppointment` could be true or false, and @@ -82,7 +89,7 @@ description: | * `appointmentRequestCancellationReasonType` must be `PROVIDER` and `PATIENT`, and - * `canCancelAppointment` must be true, and + * `canCancelAppointment` could be true or false, and * `effectiveFrom` must be in the past, and @@ -104,7 +111,7 @@ description: | You need to use [[HYPERLINK_A005]] to retrieve details of the referral in order to make this clinical decision. - ## Important notes + ## Important note when retrieving attachments In order to retrieve an attachment using the [[HYPERLINK_A042]] (or deprecated [[HYPERLINK_A006]]) endpoint, the attachment must be available for download. The availability status of attachments associated with a referral are returned via this endpoint as a eRS-AvailabilityStatus-1 code. @@ -115,9 +122,9 @@ description: | When cancelling a referral as a Service Provider Clinician: - * If the referral is in the “Triaged - Provider to action” state, the cancellation reason must be an Appointment Request End Triage Reason type. + * If the referral is in the **"Triaged - Provider to action"** state, the cancellation reason must be an **Appointment Request End Triage Reason** type. - * If the referral is not in that state, the cancellation reason must be a Provider Appointment Request Cancellation Reason or Patient Appointment Request Cancellation Reason type. + * If the referral is **not** in that state, the cancellation reason must be a **Provider Appointment Request Cancellation Reason** or **Patient Appointment Request Cancellation Reason** type. ## Use case As an authenticated user From 2a801a5cd4b60603d84b4d063b90a7761b23cb6a Mon Sep 17 00:00:00 2001 From: Nicole Balmer Date: Fri, 16 Jan 2026 11:16:56 +0000 Subject: [PATCH 11/14] [RAA-703] Fix wording --- .../schemas/endpoints/a029-available-actions-for-user-list.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml b/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml index 8cf57cb40..38e42ad88 100644 --- a/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml +++ b/specification/components/stu3/schemas/endpoints/a029-available-actions-for-user-list.yaml @@ -54,7 +54,7 @@ description: | - Change Shortlist - Change Shortlist and Send for Triage - As a service provider, the only action returned will be: + As a service provider, the actions returned can include: - Record Review Outcome - Cancel Referral From e876df60a1ef8c62ab34f06801eebe9a069b8fb1 Mon Sep 17 00:00:00 2001 From: Nicole Balmer Date: Fri, 30 Jan 2026 12:58:46 +0000 Subject: [PATCH 12/14] RAA-703 Fix failing test --- tests/sandbox/stu3/test_a036_cancel_referral.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/sandbox/stu3/test_a036_cancel_referral.py b/tests/sandbox/stu3/test_a036_cancel_referral.py index eea2a9ab3..067522b7d 100644 --- a/tests/sandbox/stu3/test_a036_cancel_referral.py +++ b/tests/sandbox/stu3/test_a036_cancel_referral.py @@ -14,6 +14,8 @@ class TestCancelReferral(SandboxTest): allowed_business_function_data = [ "REFERRING_CLINICIAN", "REFERRING_CLINICIAN_ADMIN", + "SERVICE_PROVIDER_CLINICIAN", + "SERVICE_PROVIDER_CLINICIAN_ADMIN", ] authorised_actor_data = Actor.all( From f67ab59bfc9fb1aab36d57b359e613bf83085235 Mon Sep 17 00:00:00 2001 From: edward wills Date: Mon, 2 Feb 2026 11:05:07 +0000 Subject: [PATCH 13/14] [RAA-4409]-[KM]-[Updated python version to 3.13]-[EW] --- README.md | 2 +- scripts/macos_setup_environment.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 5cf22c3f2..18cce7f60 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ The contents of this repository are protected by Crown Copyright (C). ### Environment setup Currently, automation for setting up the right environment is only available for machines based on RedHatEnterpriseLinux (RHEL). Running the following will ensure your environment is ready for development. -It will install [pyenv](https://github.com/pyenv/pyenv), Python 3.10.8 and its dependencies (yum), create a virtual environment (named apigee), and ensure poetry is installed under it. +It will install [pyenv](https://github.com/pyenv/pyenv), Python 3.13 and its dependencies (yum), create a virtual environment (named apigee), and ensure poetry is installed under it. ``` $ make setup-environment ``` diff --git a/scripts/macos_setup_environment.sh b/scripts/macos_setup_environment.sh index 2eccaab60..62a14184c 100755 --- a/scripts/macos_setup_environment.sh +++ b/scripts/macos_setup_environment.sh @@ -50,7 +50,7 @@ echo "Installing python 3.13 with pyenv ..." if pyenv versions | grep -Fq "3.13" ; then echo "Pyenv has already got Python 3.13 installed." else - if pyenv install 3.10 ; then + if pyenv install 3.13 ; then echo "Pyenv installed Python 3.13 successfully." else echo "Pyenv did NOT install Python 3.13 successfully." From 0f3eac74cf6a0947ee59e43b2d1f206daa79b3fc Mon Sep 17 00:00:00 2001 From: kevinmason-nhs Date: Mon, 2 Feb 2026 11:34:48 +0000 Subject: [PATCH 14/14] [RAA-3776]-[DM]-[Bumping version to 1.52 +minor]-[KM]