This is an automated email from the ASF dual-hosted git repository.
yasithdev pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airavata-portals.git
The following commit(s) were added to refs/heads/main by this push:
new f381c6a49 chore(portal): dependency modernization, fluid layout, and
UI cleanups (#227)
f381c6a49 is described below
commit f381c6a49377760c7b201ece870aa520d22c9879
Author: Yasith Jayawardana <[email protected]>
AuthorDate: Sun Jun 14 11:04:55 2026 -0400
chore(portal): dependency modernization, fluid layout, and UI cleanups
(#227)
* fix(layout): adjust main content container to use fluid layout for better
responsiveness
* chore(portal): modernize python+js deps, drop legacy libs, clean stats
labels
- Python: requests 2.34, requests-oauthlib 2.0, urllib3 2.7, cryptography
49 (uv lock --upgrade)
- Drop legacy JS deps in favor of the stdlib: uuid -> crypto.randomUUID();
clipboard.js -> navigator.clipboard; remove the dead vue-resource plugin
- Experiment statistics: render short state aliases (e.g. COMPLETED)
instead of raw EXPERIMENT_STATE_* enum names, matching ExperimentStatusBadge
---
.../django_airavata/apps/admin/package.json | 1 -
.../statistics/ExperimentStatisticsCard.vue | 12 +-
.../admin/static/django_airavata_admin/src/main.js | 2 -
.../django_airavata/apps/api/package.json | 3 +-
.../django_airavata_api/js/models/CommandObject.js | 3 +-
.../js/models/ComputeResourceReservation.js | 3 +-
.../js/models/ExtendedUserProfileField.js | 3 +-
.../js/models/ExtendedUserProfileFieldChoice.js | 3 +-
.../js/models/ExtendedUserProfileFieldLink.js | 3 +-
.../js/models/InputDataObjectType.js | 3 +-
.../js/models/OutputDataObjectType.js | 3 +-
.../django_airavata_api/js/models/SetEnvPaths.js | 3 +-
.../common/js/components/ClipboardCopyButton.vue | 23 +-
.../common/js/components/ClipboardCopyLink.vue | 23 +-
.../django_airavata/static/common/package.json | 1 -
.../django_airavata/static/common/scss/main.scss | 2 -
.../templates/django_airavata/home.html | 2 +-
airavata-django-portal/pyproject.toml | 8 +-
airavata-django-portal/uv.lock | 369 ++++++++++++---------
19 files changed, 258 insertions(+), 212 deletions(-)
diff --git a/airavata-django-portal/django_airavata/apps/admin/package.json
b/airavata-django-portal/django_airavata/apps/admin/package.json
index 30d9a2706..d152542ab 100644
--- a/airavata-django-portal/django_airavata/apps/admin/package.json
+++ b/airavata-django-portal/django_airavata/apps/admin/package.json
@@ -22,7 +22,6 @@
"vue": "^2.7.16",
"vue-datetime": "^1.0.0-beta.10",
"vue-flatpickr-component": "^8.1.2",
- "vue-resource": "^1.3.4",
"vue-router": "^2.7.0",
"vuedraggable": "^2.16.0",
"vuelidate": "^0.7.6",
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsCard.vue
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsCard.vue
index 140333260..dfe41e0ad 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsCard.vue
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/components/statistics/ExperimentStatisticsCard.vue
@@ -16,7 +16,9 @@
@click="$emit('click')"
>
<slot name="link-text">
- <div v-for="state in states" :key="state.value">{{ state.name }}</div>
+ <div v-for="state in states" :key="state.value">
+ {{ shortName(state) }}
+ </div>
</slot>
</b-link>
</b-card>
@@ -63,6 +65,14 @@ export default {
}
},
},
+ methods: {
+ // Render the prefix-stripped short alias (e.g. "COMPLETED") instead of the
+ // raw proto member name ("EXPERIMENT_STATE_COMPLETED"), matching the rest
of
+ // the portal (see ExperimentStatusBadge).
+ shortName(state) {
+ return state.constructor.shortAlias(state.name);
+ },
+ },
};
</script>
diff --git
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/main.js
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/main.js
index 8d0fb8fe1..cf83939bf 100644
---
a/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/main.js
+++
b/airavata-django-portal/django_airavata/apps/admin/static/django_airavata_admin/src/main.js
@@ -1,5 +1,4 @@
import { components, entry } from "django-airavata-common-ui";
-import VueResource from "vue-resource";
import VueRouter from "vue-router";
import VueFlatPickr from "vue-flatpickr-component";
import App from "./App.vue";
@@ -11,7 +10,6 @@ import createStore from "./store";
entry((Vue) => {
Vue.config.productionTip = false;
- Vue.use(VueResource);
Vue.use(VueRouter);
Vue.use(VueFlatPickr);
diff --git a/airavata-django-portal/django_airavata/apps/api/package.json
b/airavata-django-portal/django_airavata/apps/api/package.json
index 8097c1382..908c80b14 100644
--- a/airavata-django-portal/django_airavata/apps/api/package.json
+++ b/airavata-django-portal/django_airavata/apps/api/package.json
@@ -17,8 +17,7 @@
"format": "prettier --write ."
},
"dependencies": {
- "stacktrace-js": "^2.0.0",
- "uuid": "^3.3.2"
+ "stacktrace-js": "^2.0.0"
},
"devDependencies": {
"eslint": "^5.12.0",
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/CommandObject.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/CommandObject.js
index 9ef8163ad..9c48f489b 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/CommandObject.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/CommandObject.js
@@ -1,12 +1,11 @@
import BaseModel from "./BaseModel";
-import uuidv4 from "uuid/v4";
const FIELDS = ["command", "command_order"];
export default class CommandObject extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ComputeResourceReservation.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ComputeResourceReservation.js
index 613bc6579..2cb68f24f 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ComputeResourceReservation.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ComputeResourceReservation.js
@@ -1,5 +1,4 @@
import BaseModel from "./BaseModel";
-import uuidv4 from "uuid/v4";
function currentTimeTopOfHour() {
const d = new Date();
@@ -31,7 +30,7 @@ const FIELDS = [
export default class ComputeResourceReservation extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
return this._key;
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileField.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileField.js
index ca0a8e2d7..293975d20 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileField.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileField.js
@@ -1,7 +1,6 @@
import BaseModel from "./BaseModel";
import ExtendedUserProfileFieldChoice from "./ExtendedUserProfileFieldChoice";
import ExtendedUserProfileFieldLink from "./ExtendedUserProfileFieldLink";
-import uuidv4 from "uuid/v4";
const FIELDS = [
"id",
@@ -38,7 +37,7 @@ const FIELDS = [
export default class ExtendedUserProfileField extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldChoice.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldChoice.js
index 3ea1ea52d..f821d9d5e 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldChoice.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldChoice.js
@@ -1,12 +1,11 @@
import BaseModel from "./BaseModel";
-import uuidv4 from "uuid/v4";
const FIELDS = ["id", "display_text", "order"];
export default class ExtendedUserProfileFieldChoice extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldLink.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldLink.js
index 31e007eaf..649574a3b 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldLink.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/ExtendedUserProfileFieldLink.js
@@ -1,5 +1,4 @@
import BaseModel from "./BaseModel";
-import uuidv4 from "uuid/v4";
const FIELDS = [
"id",
@@ -13,7 +12,7 @@ const FIELDS = [
export default class ExtendedUserProfileFieldLink extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/InputDataObjectType.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/InputDataObjectType.js
index 4c701c480..bae31f1b6 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/InputDataObjectType.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/InputDataObjectType.js
@@ -1,7 +1,6 @@
import BaseModel from "./BaseModel";
import DataType from "./DataType";
import BooleanExpressionEvaluator from
"./dependencies/BooleanExpressionEvaluator";
-import uuidv4 from "uuid/v4";
import ValidatorFactory from "./validators/ValidatorFactory";
const FIELDS = [
@@ -51,7 +50,7 @@ const IS_REQUIRED_URI_COLLECTION = "At least one file must be
selected.";
export default class InputDataObjectType extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
this.show = true;
}
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/OutputDataObjectType.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/OutputDataObjectType.js
index f3a1abdfc..3dd28ab39 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/OutputDataObjectType.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/OutputDataObjectType.js
@@ -1,6 +1,5 @@
import BaseModel from "./BaseModel";
import DataType from "./DataType";
-import uuidv4 from "uuid/v4";
import IntermediateOutput from "./IntermediateOutput";
const FIELDS = [
@@ -48,7 +47,7 @@ export default class OutputDataObjectType extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
// Copy key when cloning a model
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
diff --git
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/SetEnvPaths.js
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/SetEnvPaths.js
index 1cbc8cf20..52f7b088c 100644
---
a/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/SetEnvPaths.js
+++
b/airavata-django-portal/django_airavata/apps/api/static/django_airavata_api/js/models/SetEnvPaths.js
@@ -1,12 +1,11 @@
import BaseModel from "./BaseModel";
-import uuidv4 from "uuid/v4";
const FIELDS = ["name", "value", "env_path_order"];
export default class SetEnvPaths extends BaseModel {
constructor(data = {}) {
super(FIELDS, data);
- this._key = data.key ? data.key : uuidv4();
+ this._key = data.key ? data.key : crypto.randomUUID();
}
get key() {
diff --git
a/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyButton.vue
b/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyButton.vue
index 22330fe81..e78d2c174 100644
---
a/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyButton.vue
+++
b/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyButton.vue
@@ -3,7 +3,7 @@
ref="copyButton"
:variant="variant"
:disabled="disabled"
- :data-clipboard-text="text"
+ @click="onCopy"
>
<slot></slot>
<slot name="icon">
@@ -16,8 +16,6 @@
</template>
<script>
-import ClipboardJS from "clipboard";
-
export default {
name: "clipboard-copy-button",
props: {
@@ -39,18 +37,15 @@ export default {
return !this.text;
},
},
- mounted() {
- let clipboard = new ClipboardJS(this.$refs.copyButton);
- clipboard.on("success", this.onCopySuccess);
- },
- beforeDestroy() {
- let clipboard = new ClipboardJS(this.$refs.copyButton);
- clipboard.destroy();
- },
methods: {
- onCopySuccess() {
- this.show = true;
- setTimeout(() => (this.show = false), 2000);
+ async onCopy() {
+ try {
+ await navigator.clipboard.writeText(this.text);
+ this.show = true;
+ setTimeout(() => (this.show = false), 2000);
+ } catch (e) {
+ // Clipboard write can fail (permissions / insecure context); ignore.
+ }
},
},
};
diff --git
a/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyLink.vue
b/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyLink.vue
index 0780799e8..0771ddb28 100644
---
a/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyLink.vue
+++
b/airavata-django-portal/django_airavata/static/common/js/components/ClipboardCopyLink.vue
@@ -3,9 +3,9 @@
<a
href="#"
ref="copyLink"
- :data-clipboard-text="text"
class="action-link"
:class="linkClasses"
+ @click.prevent="onCopy"
>
<slot>
Copy Key
@@ -21,8 +21,6 @@
</template>
<script>
-import ClipboardJS from "clipboard";
-
export default {
name: "clipboard-copy-link",
props: {
@@ -39,18 +37,15 @@ export default {
show: false,
};
},
- mounted() {
- let clipboard = new ClipboardJS(this.$refs.copyLink);
- clipboard.on("success", this.onCopySuccess);
- },
- beforeDestroy() {
- let clipboard = new ClipboardJS(this.$refs.copyLink);
- clipboard.destroy();
- },
methods: {
- onCopySuccess() {
- this.show = true;
- setTimeout(() => (this.show = false), 2000);
+ async onCopy() {
+ try {
+ await navigator.clipboard.writeText(this.text);
+ this.show = true;
+ setTimeout(() => (this.show = false), 2000);
+ } catch (e) {
+ // Clipboard write can fail (permissions / insecure context); ignore.
+ }
},
},
};
diff --git a/airavata-django-portal/django_airavata/static/common/package.json
b/airavata-django-portal/django_airavata/static/common/package.json
index 9f3a2d32f..9d71c8004 100644
--- a/airavata-django-portal/django_airavata/static/common/package.json
+++ b/airavata-django-portal/django_airavata/static/common/package.json
@@ -23,7 +23,6 @@
"@uppy/xhr-upload": "^1.2.0",
"bootstrap": "^4.3.1",
"bootstrap-vue": "^2.21.2",
- "clipboard": "^2.0.4",
"django-airavata-api": "link:../../apps/api",
"jquery": "^3.3.1",
"linkifyjs": "^2.1.9",
diff --git
a/airavata-django-portal/django_airavata/static/common/scss/main.scss
b/airavata-django-portal/django_airavata/static/common/scss/main.scss
index 57728a301..aceeab25e 100644
--- a/airavata-django-portal/django_airavata/static/common/scss/main.scss
+++ b/airavata-django-portal/django_airavata/static/common/scss/main.scss
@@ -125,10 +125,8 @@ $header_height_with_border: $header_height + 1px;
.main-content {
flex-grow: 1;
padding: 1rem;
- max-width: 1200px;
&--with-sidebar {
- max-width: none;
overflow-y: auto;
}
}
diff --git
a/airavata-django-portal/django_airavata/templates/django_airavata/home.html
b/airavata-django-portal/django_airavata/templates/django_airavata/home.html
index 9c5ae3b75..86632fd40 100644
--- a/airavata-django-portal/django_airavata/templates/django_airavata/home.html
+++ b/airavata-django-portal/django_airavata/templates/django_airavata/home.html
@@ -3,7 +3,7 @@
{% block content %}
<div class="main-content-wrapper">
<main class="main-content">
-<div class="container">
+<div class="container-fluid">
<div class="jumbotron">
<h1>Welcome!</h1>
<p>This is the Django based web portal for the Airavata project. This
diff --git a/airavata-django-portal/pyproject.toml
b/airavata-django-portal/pyproject.toml
index 884058b08..40fdce70f 100644
--- a/airavata-django-portal/pyproject.toml
+++ b/airavata-django-portal/pyproject.toml
@@ -18,11 +18,11 @@ classifiers = [
"Topic :: Internet :: WWW/HTTP :: WSGI :: Application",
]
dependencies = [
- "Django==5.2.15",
- "requests==2.25.1",
- "requests-oauthlib==0.7.0",
+ "Django>=5.2.15,<6",
+ "requests>=2.32",
+ "requests-oauthlib>=2.0",
"django-webpack-loader==0.6.0",
- "PyJWT==2.13.0",
+ "PyJWT>=2.10",
# Notebook output rendering (apps/api/output_views.py).
"papermill>=2.6.0",
"nbconvert>=7.16.0",
diff --git a/airavata-django-portal/uv.lock b/airavata-django-portal/uv.lock
index 8b4fb2c54..ca103949a 100644
--- a/airavata-django-portal/uv.lock
+++ b/airavata-django-portal/uv.lock
@@ -24,14 +24,14 @@ name = "aiohttp"
version = "3.14.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
- { name = "aiohappyeyeballs", marker = "python_full_version < '3.14'" },
- { name = "aiosignal", marker = "python_full_version < '3.14'" },
- { name = "attrs", marker = "python_full_version < '3.14'" },
- { name = "frozenlist", marker = "python_full_version < '3.14'" },
- { name = "multidict", marker = "python_full_version < '3.14'" },
- { name = "propcache", marker = "python_full_version < '3.14'" },
+ { name = "aiohappyeyeballs" },
+ { name = "aiosignal" },
+ { name = "attrs" },
+ { name = "frozenlist" },
+ { name = "multidict" },
+ { name = "propcache" },
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
- { name = "yarl", marker = "python_full_version < '3.14'" },
+ { name = "yarl" },
]
sdist = { url =
"https://files.pythonhosted.org/packages/82/78/8ea7308cac6934de8c74a14f3d5f65d1c89287426688be79538d0e5c013d/aiohttp-3.14.1.tar.gz",
hash =
"sha256:307f2cff90a764d329e77040603fa032db89c5c24fdad50c4c15334cba744035", size
= 7955794, upload-time = "2026-06-07T21:09:35.529Z" }
wheels = [
@@ -124,7 +124,7 @@ name = "aiosignal"
version = "1.4.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
- { name = "frozenlist", marker = "python_full_version < '3.14'" },
+ { name = "frozenlist" },
{ name = "typing-extensions", marker = "python_full_version < '3.13'" },
]
sdist = { url =
"https://files.pythonhosted.org/packages/61/62/06741b579156360248d1ec624842ad0edf697050bbaf7c3e46394e106ad1/aiosignal-1.4.0.tar.gz",
hash =
"sha256:f47eecd9468083c2029cc99945502cb7708b082c232f9aca65da147157b251c7", size
= 25007, upload-time = "2025-07-03T22:54:43.528Z" }
@@ -159,16 +159,16 @@ dev = [
[package.metadata]
requires-dist = [
{ name = "airavata-python-sdk", editable =
"../../airavata/airavata-python-sdk" },
- { name = "django", specifier = "==5.2.15" },
+ { name = "django", specifier = ">=5.2.15,<6" },
{ name = "django-webpack-loader", specifier = "==0.6.0" },
{ name = "googleapis-common-protos", specifier = ">=1.62.0" },
{ name = "grpcio", specifier = ">=1.60.0" },
{ name = "nbconvert", specifier = ">=7.16.0" },
{ name = "papermill", specifier = ">=2.6.0" },
{ name = "protobuf", specifier = ">=5.26.0,<7.0.0" },
- { name = "pyjwt", specifier = "==2.13.0" },
- { name = "requests", specifier = "==2.25.1" },
- { name = "requests-oauthlib", specifier = "==0.7.0" },
+ { name = "pyjwt", specifier = ">=2.10" },
+ { name = "requests", specifier = ">=2.32" },
+ { name = "requests-oauthlib", specifier = ">=2.0" },
]
[package.metadata.requires-dev]
@@ -413,12 +413,76 @@ wheels = [
]
[[package]]
-name = "chardet"
-version = "4.0.0"
-source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/ee/2d/9cdc2b527e127b4c9db64b86647d567985940ac3698eeabc7ffaccb4ea61/chardet-4.0.0.tar.gz",
hash =
"sha256:0d6f53a15db4120f2b08c94f11e7d93d2c911ee118b6b30a04ec3ee8310179fa", size
= 1907771, upload-time = "2020-12-10T19:35:33.971Z" }
-wheels = [
- { url =
"https://files.pythonhosted.org/packages/19/c7/fa589626997dd07bd87d9269342ccb74b1720384a4d739a1872bd84fbe68/chardet-4.0.0-py2.py3-none-any.whl",
hash =
"sha256:f864054d66fd9118f2e67044ac8981a54775ec5b67aed0441892edb553d21da5", size
= 178743, upload-time = "2020-12-10T19:35:32.469Z" },
+name = "charset-normalizer"
+version = "3.4.7"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url =
"https://files.pythonhosted.org/packages/e7/a1/67fe25fac3c7642725500a3f6cfe5821ad557c3abb11c9d20d12c7008d3e/charset_normalizer-3.4.7.tar.gz",
hash =
"sha256:ae89db9e5f98a11a4bf50407d4363e7b09b31e55bc117b4f7d80aab97ba009e5", size
= 144271, upload-time = "2026-04-02T09:28:39.342Z" }
+wheels = [
+ { url =
"https://files.pythonhosted.org/packages/0c/eb/4fc8d0a7110eb5fc9cc161723a34a8a6c200ce3b4fbf681bc86feee22308/charset_normalizer-3.4.7-cp312-cp312-macosx_10_13_universal2.whl",
hash =
"sha256:eca9705049ad3c7345d574e3510665cb2cf844c2f2dcfe675332677f081cbd46", size
= 311328, upload-time = "2026-04-02T09:26:24.331Z" },
+ { url =
"https://files.pythonhosted.org/packages/f8/e3/0fadc706008ac9d7b9b5be6dc767c05f9d3e5df51744ce4cc9605de7b9f4/charset_normalizer-3.4.7-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:6178f72c5508bfc5fd446a5905e698c6212932f25bcdd4b47a757a50605a90e2", size
= 208061, upload-time = "2026-04-02T09:26:25.568Z" },
+ { url =
"https://files.pythonhosted.org/packages/42/f0/3dd1045c47f4a4604df85ec18ad093912ae1344ac706993aff91d38773a2/charset_normalizer-3.4.7-cp312-cp312-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl",
hash =
"sha256:e1421b502d83040e6d7fb2fb18dff63957f720da3d77b2fbd3187ceb63755d7b", size
= 229031, upload-time = "2026-04-02T09:26:26.865Z" },
+ { url =
"https://files.pythonhosted.org/packages/dc/67/675a46eb016118a2fbde5a277a5d15f4f69d5f3f5f338e5ee2f8948fcf43/charset_normalizer-3.4.7-cp312-cp312-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl",
hash =
"sha256:edac0f1ab77644605be2cbba52e6b7f630731fc42b34cb0f634be1a6eface56a", size
= 225239, upload-time = "2026-04-02T09:26:28.044Z" },
+ { url =
"https://files.pythonhosted.org/packages/4b/f8/d0118a2f5f23b02cd166fa385c60f9b0d4f9194f574e2b31cef350ad7223/charset_normalizer-3.4.7-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:5649fd1c7bade02f320a462fdefd0b4bd3ce036065836d4f42e0de958038e116", size
= 216589, upload-time = "2026-04-02T09:26:29.239Z" },
+ { url =
"https://files.pythonhosted.org/packages/b1/f1/6d2b0b261b6c4ceef0fcb0d17a01cc5bc53586c2d4796fa04b5c540bc13d/charset_normalizer-3.4.7-cp312-cp312-manylinux_2_31_armv7l.whl",
hash =
"sha256:203104ed3e428044fd943bc4bf45fa73c0730391f9621e37fe39ecf477b128cb", size
= 202733, upload-time = "2026-04-02T09:26:30.5Z" },
+ { url =
"https://files.pythonhosted.org/packages/6f/c0/7b1f943f7e87cc3db9626ba17807d042c38645f0a1d4415c7a14afb5591f/charset_normalizer-3.4.7-cp312-cp312-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl",
hash =
"sha256:298930cec56029e05497a76988377cbd7457ba864beeea92ad7e844fe74cd1f1", size
= 212652, upload-time = "2026-04-02T09:26:31.709Z" },
+ { url =
"https://files.pythonhosted.org/packages/38/dd/5a9ab159fe45c6e72079398f277b7d2b523e7f716acc489726115a910097/charset_normalizer-3.4.7-cp312-cp312-musllinux_1_2_aarch64.whl",
hash =
"sha256:708838739abf24b2ceb208d0e22403dd018faeef86ddac04319a62ae884c4f15", size
= 211229, upload-time = "2026-04-02T09:26:33.282Z" },
+ { url =
"https://files.pythonhosted.org/packages/d5/ff/531a1cad5ca855d1c1a8b69cb71abfd6d85c0291580146fda7c82857caa1/charset_normalizer-3.4.7-cp312-cp312-musllinux_1_2_armv7l.whl",
hash =
"sha256:0f7eb884681e3938906ed0434f20c63046eacd0111c4ba96f27b76084cd679f5", size
= 203552, upload-time = "2026-04-02T09:26:34.845Z" },
+ { url =
"https://files.pythonhosted.org/packages/c1/4c/a5fb52d528a8ca41f7598cb619409ece30a169fbdf9cdce592e53b46c3a6/charset_normalizer-3.4.7-cp312-cp312-musllinux_1_2_ppc64le.whl",
hash =
"sha256:4dc1e73c36828f982bfe79fadf5919923f8a6f4df2860804db9a98c48824ce8d", size
= 230806, upload-time = "2026-04-02T09:26:36.152Z" },
+ { url =
"https://files.pythonhosted.org/packages/59/7a/071feed8124111a32b316b33ae4de83d36923039ef8cf48120266844285b/charset_normalizer-3.4.7-cp312-cp312-musllinux_1_2_riscv64.whl",
hash =
"sha256:aed52fea0513bac0ccde438c188c8a471c4e0f457c2dd20cdbf6ea7a450046c7", size
= 212316, upload-time = "2026-04-02T09:26:37.672Z" },
+ { url =
"https://files.pythonhosted.org/packages/fd/35/f7dba3994312d7ba508e041eaac39a36b120f32d4c8662b8814dab876431/charset_normalizer-3.4.7-cp312-cp312-musllinux_1_2_s390x.whl",
hash =
"sha256:fea24543955a6a729c45a73fe90e08c743f0b3334bbf3201e6c4bc1b0c7fa464", size
= 227274, upload-time = "2026-04-02T09:26:38.93Z" },
+ { url =
"https://files.pythonhosted.org/packages/8a/2d/a572df5c9204ab7688ec1edc895a73ebded3b023bb07364710b05dd1c9be/charset_normalizer-3.4.7-cp312-cp312-musllinux_1_2_x86_64.whl",
hash =
"sha256:bb6d88045545b26da47aa879dd4a89a71d1dce0f0e549b1abcb31dfe4a8eac49", size
= 218468, upload-time = "2026-04-02T09:26:40.17Z" },
+ { url =
"https://files.pythonhosted.org/packages/86/eb/890922a8b03a568ca2f336c36585a4713c55d4d67bf0f0c78924be6315ca/charset_normalizer-3.4.7-cp312-cp312-win32.whl",
hash =
"sha256:2257141f39fe65a3fdf38aeccae4b953e5f3b3324f4ff0daf9f15b8518666a2c", size
= 148460, upload-time = "2026-04-02T09:26:41.416Z" },
+ { url =
"https://files.pythonhosted.org/packages/35/d9/0e7dffa06c5ab081f75b1b786f0aefc88365825dfcd0ac544bdb7b2b6853/charset_normalizer-3.4.7-cp312-cp312-win_amd64.whl",
hash =
"sha256:5ed6ab538499c8644b8a3e18debabcd7ce684f3fa91cf867521a7a0279cab2d6", size
= 159330, upload-time = "2026-04-02T09:26:42.554Z" },
+ { url =
"https://files.pythonhosted.org/packages/9e/5d/481bcc2a7c88ea6b0878c299547843b2521ccbc40980cb406267088bc701/charset_normalizer-3.4.7-cp312-cp312-win_arm64.whl",
hash =
"sha256:56be790f86bfb2c98fb742ce566dfb4816e5a83384616ab59c49e0604d49c51d", size
= 147828, upload-time = "2026-04-02T09:26:44.075Z" },
+ { url =
"https://files.pythonhosted.org/packages/c1/3b/66777e39d3ae1ddc77ee606be4ec6d8cbd4c801f65e5a1b6f2b11b8346dd/charset_normalizer-3.4.7-cp313-cp313-macosx_10_13_universal2.whl",
hash =
"sha256:f496c9c3cc02230093d8330875c4c3cdfc3b73612a5fd921c65d39cbcef08063", size
= 309627, upload-time = "2026-04-02T09:26:45.198Z" },
+ { url =
"https://files.pythonhosted.org/packages/2e/4e/b7f84e617b4854ade48a1b7915c8ccfadeba444d2a18c291f696e37f0d3b/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:0ea948db76d31190bf08bd371623927ee1339d5f2a0b4b1b4a4439a65298703c", size
= 207008, upload-time = "2026-04-02T09:26:46.824Z" },
+ { url =
"https://files.pythonhosted.org/packages/c4/bb/ec73c0257c9e11b268f018f068f5d00aa0ef8c8b09f7753ebd5f2880e248/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl",
hash =
"sha256:a277ab8928b9f299723bc1a2dabb1265911b1a76341f90a510368ca44ad9ab66", size
= 228303, upload-time = "2026-04-02T09:26:48.397Z" },
+ { url =
"https://files.pythonhosted.org/packages/85/fb/32d1f5033484494619f701e719429c69b766bfc4dbc61aa9e9c8c166528b/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl",
hash =
"sha256:3bec022aec2c514d9cf199522a802bd007cd588ab17ab2525f20f9c34d067c18", size
= 224282, upload-time = "2026-04-02T09:26:49.684Z" },
+ { url =
"https://files.pythonhosted.org/packages/fa/07/330e3a0dda4c404d6da83b327270906e9654a24f6c546dc886a0eb0ffb23/charset_normalizer-3.4.7-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:e044c39e41b92c845bc815e5ae4230804e8e7bc29e399b0437d64222d92809dd", size
= 215595, upload-time = "2026-04-02T09:26:50.915Z" },
+ { url =
"https://files.pythonhosted.org/packages/e3/7c/fc890655786e423f02556e0216d4b8c6bcb6bdfa890160dc66bf52dee468/charset_normalizer-3.4.7-cp313-cp313-manylinux_2_31_armv7l.whl",
hash =
"sha256:f495a1652cf3fbab2eb0639776dad966c2fb874d79d87ca07f9d5f059b8bd215", size
= 201986, upload-time = "2026-04-02T09:26:52.197Z" },
+ { url =
"https://files.pythonhosted.org/packages/d8/97/bfb18b3db2aed3b90cf54dc292ad79fdd5ad65c4eae454099475cbeadd0d/charset_normalizer-3.4.7-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl",
hash =
"sha256:e712b419df8ba5e42b226c510472b37bd57b38e897d3eca5e8cfd410a29fa859", size
= 211711, upload-time = "2026-04-02T09:26:53.49Z" },
+ { url =
"https://files.pythonhosted.org/packages/6f/a5/a581c13798546a7fd557c82614a5c65a13df2157e9ad6373166d2a3e645d/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_aarch64.whl",
hash =
"sha256:7804338df6fcc08105c7745f1502ba68d900f45fd770d5bdd5288ddccb8a42d8", size
= 210036, upload-time = "2026-04-02T09:26:54.975Z" },
+ { url =
"https://files.pythonhosted.org/packages/8c/bf/b3ab5bcb478e4193d517644b0fb2bf5497fbceeaa7a1bc0f4d5b50953861/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_armv7l.whl",
hash =
"sha256:481551899c856c704d58119b5025793fa6730adda3571971af568f66d2424bb5", size
= 202998, upload-time = "2026-04-02T09:26:56.303Z" },
+ { url =
"https://files.pythonhosted.org/packages/e7/4e/23efd79b65d314fa320ec6017b4b5834d5c12a58ba4610aa353af2e2f577/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_ppc64le.whl",
hash =
"sha256:f59099f9b66f0d7145115e6f80dd8b1d847176df89b234a5a6b3f00437aa0832", size
= 230056, upload-time = "2026-04-02T09:26:57.554Z" },
+ { url =
"https://files.pythonhosted.org/packages/b9/9f/1e1941bc3f0e01df116e68dc37a55c4d249df5e6fa77f008841aef68264f/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_riscv64.whl",
hash =
"sha256:f59ad4c0e8f6bba240a9bb85504faa1ab438237199d4cce5f622761507b8f6a6", size
= 211537, upload-time = "2026-04-02T09:26:58.843Z" },
+ { url =
"https://files.pythonhosted.org/packages/80/0f/088cbb3020d44428964a6c97fe1edfb1b9550396bf6d278330281e8b709c/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_s390x.whl",
hash =
"sha256:3dedcc22d73ec993f42055eff4fcfed9318d1eeb9a6606c55892a26964964e48", size
= 226176, upload-time = "2026-04-02T09:27:00.437Z" },
+ { url =
"https://files.pythonhosted.org/packages/6a/9f/130394f9bbe06f4f63e22641d32fc9b202b7e251c9aef4db044324dac493/charset_normalizer-3.4.7-cp313-cp313-musllinux_1_2_x86_64.whl",
hash =
"sha256:64f02c6841d7d83f832cd97ccf8eb8a906d06eb95d5276069175c696b024b60a", size
= 217723, upload-time = "2026-04-02T09:27:02.021Z" },
+ { url =
"https://files.pythonhosted.org/packages/73/55/c469897448a06e49f8fa03f6caae97074fde823f432a98f979cc42b90e69/charset_normalizer-3.4.7-cp313-cp313-win32.whl",
hash =
"sha256:4042d5c8f957e15221d423ba781e85d553722fc4113f523f2feb7b188cc34c5e", size
= 148085, upload-time = "2026-04-02T09:27:03.192Z" },
+ { url =
"https://files.pythonhosted.org/packages/5d/78/1b74c5bbb3f99b77a1715c91b3e0b5bdb6fe302d95ace4f5b1bec37b0167/charset_normalizer-3.4.7-cp313-cp313-win_amd64.whl",
hash =
"sha256:3946fa46a0cf3e4c8cb1cc52f56bb536310d34f25f01ca9b6c16afa767dab110", size
= 158819, upload-time = "2026-04-02T09:27:04.454Z" },
+ { url =
"https://files.pythonhosted.org/packages/68/86/46bd42279d323deb8687c4a5a811fd548cb7d1de10cf6535d099877a9a9f/charset_normalizer-3.4.7-cp313-cp313-win_arm64.whl",
hash =
"sha256:80d04837f55fc81da168b98de4f4b797ef007fc8a79ab71c6ec9bc4dd662b15b", size
= 147915, upload-time = "2026-04-02T09:27:05.971Z" },
+ { url =
"https://files.pythonhosted.org/packages/97/c8/c67cb8c70e19ef1960b97b22ed2a1567711de46c4ddf19799923adc836c2/charset_normalizer-3.4.7-cp314-cp314-macosx_10_15_universal2.whl",
hash =
"sha256:c36c333c39be2dbca264d7803333c896ab8fa7d4d6f0ab7edb7dfd7aea6e98c0", size
= 309234, upload-time = "2026-04-02T09:27:07.194Z" },
+ { url =
"https://files.pythonhosted.org/packages/99/85/c091fdee33f20de70d6c8b522743b6f831a2f1cd3ff86de4c6a827c48a76/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:1c2aed2e5e41f24ea8ef1590b8e848a79b56f3a5564a65ceec43c9d692dc7d8a", size
= 208042, upload-time = "2026-04-02T09:27:08.749Z" },
+ { url =
"https://files.pythonhosted.org/packages/87/1c/ab2ce611b984d2fd5d86a5a8a19c1ae26acac6bad967da4967562c75114d/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl",
hash =
"sha256:54523e136b8948060c0fa0bc7b1b50c32c186f2fceee897a495406bb6e311d2b", size
= 228706, upload-time = "2026-04-02T09:27:09.951Z" },
+ { url =
"https://files.pythonhosted.org/packages/a8/29/2b1d2cb00bf085f59d29eb773ce58ec2d325430f8c216804a0a5cd83cbca/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl",
hash =
"sha256:715479b9a2802ecac752a3b0efa2b0b60285cf962ee38414211abdfccc233b41", size
= 224727, upload-time = "2026-04-02T09:27:11.175Z" },
+ { url =
"https://files.pythonhosted.org/packages/47/5c/032c2d5a07fe4d4855fea851209cca2b6f03ebeb6d4e3afdb3358386a684/charset_normalizer-3.4.7-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:bd6c2a1c7573c64738d716488d2cdd3c00e340e4835707d8fdb8dc1a66ef164e", size
= 215882, upload-time = "2026-04-02T09:27:12.446Z" },
+ { url =
"https://files.pythonhosted.org/packages/2c/c2/356065d5a8b78ed04499cae5f339f091946a6a74f91e03476c33f0ab7100/charset_normalizer-3.4.7-cp314-cp314-manylinux_2_31_armv7l.whl",
hash =
"sha256:c45e9440fb78f8ddabcf714b68f936737a121355bf59f3907f4e17721b9d1aae", size
= 200860, upload-time = "2026-04-02T09:27:13.721Z" },
+ { url =
"https://files.pythonhosted.org/packages/0c/cd/a32a84217ced5039f53b29f460962abb2d4420def55afabe45b1c3c7483d/charset_normalizer-3.4.7-cp314-cp314-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl",
hash =
"sha256:3534e7dcbdcf757da6b85a0bbf5b6868786d5982dd959b065e65481644817a18", size
= 211564, upload-time = "2026-04-02T09:27:15.272Z" },
+ { url =
"https://files.pythonhosted.org/packages/44/86/58e6f13ce26cc3b8f4a36b94a0f22ae2f00a72534520f4ae6857c4b81f89/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_aarch64.whl",
hash =
"sha256:e8ac484bf18ce6975760921bb6148041faa8fef0547200386ea0b52b5d27bf7b", size
= 211276, upload-time = "2026-04-02T09:27:16.834Z" },
+ { url =
"https://files.pythonhosted.org/packages/8f/fe/d17c32dc72e17e155e06883efa84514ca375f8a528ba2546bee73fc4df81/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_armv7l.whl",
hash =
"sha256:a5fe03b42827c13cdccd08e6c0247b6a6d4b5e3cdc53fd1749f5896adcdc2356", size
= 201238, upload-time = "2026-04-02T09:27:18.229Z" },
+ { url =
"https://files.pythonhosted.org/packages/6a/29/f33daa50b06525a237451cdb6c69da366c381a3dadcd833fa5676bc468b3/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_ppc64le.whl",
hash =
"sha256:2d6eb928e13016cea4f1f21d1e10c1cebd5a421bc57ddf5b1142ae3f86824fab", size
= 230189, upload-time = "2026-04-02T09:27:19.445Z" },
+ { url =
"https://files.pythonhosted.org/packages/b6/6e/52c84015394a6a0bdcd435210a7e944c5f94ea1055f5cc5d56c5fe368e7b/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_riscv64.whl",
hash =
"sha256:e74327fb75de8986940def6e8dee4f127cc9752bee7355bb323cc5b2659b6d46", size
= 211352, upload-time = "2026-04-02T09:27:20.79Z" },
+ { url =
"https://files.pythonhosted.org/packages/8c/d7/4353be581b373033fb9198bf1da3cf8f09c1082561e8e922aa7b39bf9fe8/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_s390x.whl",
hash =
"sha256:d6038d37043bced98a66e68d3aa2b6a35505dc01328cd65217cefe82f25def44", size
= 227024, upload-time = "2026-04-02T09:27:22.063Z" },
+ { url =
"https://files.pythonhosted.org/packages/30/45/99d18aa925bd1740098ccd3060e238e21115fffbfdcb8f3ece837d0ace6c/charset_normalizer-3.4.7-cp314-cp314-musllinux_1_2_x86_64.whl",
hash =
"sha256:7579e913a5339fb8fa133f6bbcfd8e6749696206cf05acdbdca71a1b436d8e72", size
= 217869, upload-time = "2026-04-02T09:27:23.486Z" },
+ { url =
"https://files.pythonhosted.org/packages/5c/05/5ee478aa53f4bb7996482153d4bfe1b89e0f087f0ab6b294fcf92d595873/charset_normalizer-3.4.7-cp314-cp314-win32.whl",
hash =
"sha256:5b77459df20e08151cd6f8b9ef8ef1f961ef73d85c21a555c7eed5b79410ec10", size
= 148541, upload-time = "2026-04-02T09:27:25.146Z" },
+ { url =
"https://files.pythonhosted.org/packages/48/77/72dcb0921b2ce86420b2d79d454c7022bf5be40202a2a07906b9f2a35c97/charset_normalizer-3.4.7-cp314-cp314-win_amd64.whl",
hash =
"sha256:92a0a01ead5e668468e952e4238cccd7c537364eb7d851ab144ab6627dbbe12f", size
= 159634, upload-time = "2026-04-02T09:27:26.642Z" },
+ { url =
"https://files.pythonhosted.org/packages/c6/a3/c2369911cd72f02386e4e340770f6e158c7980267da16af8f668217abaa0/charset_normalizer-3.4.7-cp314-cp314-win_arm64.whl",
hash =
"sha256:67f6279d125ca0046a7fd386d01b311c6363844deac3e5b069b514ba3e63c246", size
= 148384, upload-time = "2026-04-02T09:27:28.271Z" },
+ { url =
"https://files.pythonhosted.org/packages/94/09/7e8a7f73d24dba1f0035fbbf014d2c36828fc1bf9c88f84093e57d315935/charset_normalizer-3.4.7-cp314-cp314t-macosx_10_15_universal2.whl",
hash =
"sha256:effc3f449787117233702311a1b7d8f59cba9ced946ba727bdc329ec69028e24", size
= 330133, upload-time = "2026-04-02T09:27:29.474Z" },
+ { url =
"https://files.pythonhosted.org/packages/8d/da/96975ddb11f8e977f706f45cddd8540fd8242f71ecdb5d18a80723dcf62c/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl",
hash =
"sha256:fbccdc05410c9ee21bbf16a35f4c1d16123dcdeb8a1d38f33654fa21d0234f79", size
= 216257, upload-time = "2026-04-02T09:27:30.793Z" },
+ { url =
"https://files.pythonhosted.org/packages/e5/e8/1d63bf8ef2d388e95c64b2098f45f84758f6d102a087552da1485912637b/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl",
hash =
"sha256:733784b6d6def852c814bce5f318d25da2ee65dd4839a0718641c696e09a2960", size
= 234851, upload-time = "2026-04-02T09:27:32.44Z" },
+ { url =
"https://files.pythonhosted.org/packages/9b/40/e5ff04233e70da2681fa43969ad6f66ca5611d7e669be0246c4c7aaf6dc8/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl",
hash =
"sha256:a89c23ef8d2c6b27fd200a42aa4ac72786e7c60d40efdc76e6011260b6e949c4", size
= 233393, upload-time = "2026-04-02T09:27:34.03Z" },
+ { url =
"https://files.pythonhosted.org/packages/be/c1/06c6c49d5a5450f76899992f1ee40b41d076aee9279b49cf9974d2f313d5/charset_normalizer-3.4.7-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl",
hash =
"sha256:6c114670c45346afedc0d947faf3c7f701051d2518b943679c8ff88befe14f8e", size
= 223251, upload-time = "2026-04-02T09:27:35.369Z" },
+ { url =
"https://files.pythonhosted.org/packages/2b/9f/f2ff16fb050946169e3e1f82134d107e5d4ae72647ec8a1b1446c148480f/charset_normalizer-3.4.7-cp314-cp314t-manylinux_2_31_armv7l.whl",
hash =
"sha256:a180c5e59792af262bf263b21a3c49353f25945d8d9f70628e73de370d55e1e1", size
= 206609, upload-time = "2026-04-02T09:27:36.661Z" },
+ { url =
"https://files.pythonhosted.org/packages/69/d5/a527c0cd8d64d2eab7459784fb4169a0ac76e5a6fc5237337982fd61347e/charset_normalizer-3.4.7-cp314-cp314t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl",
hash =
"sha256:3c9a494bc5ec77d43cea229c4f6db1e4d8fe7e1bbffa8b6f0f0032430ff8ab44", size
= 220014, upload-time = "2026-04-02T09:27:38.019Z" },
+ { url =
"https://files.pythonhosted.org/packages/7e/80/8a7b8104a3e203074dc9aa2c613d4b726c0e136bad1cc734594b02867972/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_aarch64.whl",
hash =
"sha256:8d828b6667a32a728a1ad1d93957cdf37489c57b97ae6c4de2860fa749b8fc1e", size
= 218979, upload-time = "2026-04-02T09:27:39.37Z" },
+ { url =
"https://files.pythonhosted.org/packages/02/9a/b759b503d507f375b2b5c153e4d2ee0a75aa215b7f2489cf314f4541f2c0/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_armv7l.whl",
hash =
"sha256:cf1493cd8607bec4d8a7b9b004e699fcf8f9103a9284cc94962cb73d20f9d4a3", size
= 209238, upload-time = "2026-04-02T09:27:40.722Z" },
+ { url =
"https://files.pythonhosted.org/packages/c2/4e/0f3f5d47b86bdb79256e7290b26ac847a2832d9a4033f7eb2cd4bcf4bb5b/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_ppc64le.whl",
hash =
"sha256:0c96c3b819b5c3e9e165495db84d41914d6894d55181d2d108cc1a69bfc9cce0", size
= 236110, upload-time = "2026-04-02T09:27:42.33Z" },
+ { url =
"https://files.pythonhosted.org/packages/96/23/bce28734eb3ed2c91dcf93abeb8a5cf393a7b2749725030bb630e554fdd8/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_riscv64.whl",
hash =
"sha256:752a45dc4a6934060b3b0dab47e04edc3326575f82be64bc4fc293914566503e", size
= 219824, upload-time = "2026-04-02T09:27:43.924Z" },
+ { url =
"https://files.pythonhosted.org/packages/2c/6f/6e897c6984cc4d41af319b077f2f600fc8214eb2fe2d6bcb79141b882400/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_s390x.whl",
hash =
"sha256:8778f0c7a52e56f75d12dae53ae320fae900a8b9b4164b981b9c5ce059cd1fcb", size
= 233103, upload-time = "2026-04-02T09:27:45.348Z" },
+ { url =
"https://files.pythonhosted.org/packages/76/22/ef7bd0fe480a0ae9b656189ec00744b60933f68b4f42a7bb06589f6f576a/charset_normalizer-3.4.7-cp314-cp314t-musllinux_1_2_x86_64.whl",
hash =
"sha256:ce3412fbe1e31eb81ea42f4169ed94861c56e643189e1e75f0041f3fe7020abe", size
= 225194, upload-time = "2026-04-02T09:27:46.706Z" },
+ { url =
"https://files.pythonhosted.org/packages/c5/a7/0e0ab3e0b5bc1219bd80a6a0d4d72ca74d9250cb2382b7c699c147e06017/charset_normalizer-3.4.7-cp314-cp314t-win32.whl",
hash =
"sha256:c03a41a8784091e67a39648f70c5f97b5b6a37f216896d44d2cdcb82615339a0", size
= 159827, upload-time = "2026-04-02T09:27:48.053Z" },
+ { url =
"https://files.pythonhosted.org/packages/7a/1d/29d32e0fb40864b1f878c7f5a0b343ae676c6e2b271a2d55cc3a152391da/charset_normalizer-3.4.7-cp314-cp314t-win_amd64.whl",
hash =
"sha256:03853ed82eeebbce3c2abfdbc98c96dc205f32a79627688ac9a27370ea61a49c", size
= 174168, upload-time = "2026-04-02T09:27:49.795Z" },
+ { url =
"https://files.pythonhosted.org/packages/de/32/d92444ad05c7a6e41fb2036749777c163baf7a0301a040cb672d6b2b1ae9/charset_normalizer-3.4.7-cp314-cp314t-win_arm64.whl",
hash =
"sha256:c35abb8bfff0185efac5878da64c45dafd2b37fb0383add1be155a763c1f083d", size
= 153018, upload-time = "2026-04-02T09:27:51.116Z" },
+ { url =
"https://files.pythonhosted.org/packages/db/8f/61959034484a4a7c527811f4721e75d02d653a35afb0b6054474d8185d4c/charset_normalizer-3.4.7-py3-none-any.whl",
hash =
"sha256:3dce51d0f5e7951f8bb4900c257dad282f49190fdbebecd4ba99bcc41fef404d", size
= 61958, upload-time = "2026-04-02T09:28:37.794Z" },
]
[[package]]
@@ -453,55 +517,52 @@ wheels = [
[[package]]
name = "cryptography"
-version = "48.0.1"
+version = "49.0.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "cffi", marker = "platform_python_implementation != 'PyPy'" },
]
-sdist = { url =
"https://files.pythonhosted.org/packages/12/45/870e7f4bef50e5f53b9f51d4428aee5290eedf58ba443f16b1ebb7ab8e66/cryptography-48.0.1.tar.gz",
hash =
"sha256:266f4ee051abb2f725b74ef8072b521ce1feacf685a3364fa6a6b45548db791a", size
= 832989, upload-time = "2026-06-09T22:32:31.8Z" }
-wheels = [
- { url =
"https://files.pythonhosted.org/packages/1b/bc/ee4137cbbe105652c0ee4252792b78fc8e7afa4b8e61d9d5dc05a7f45731/cryptography-48.0.1-cp311-abi3-macosx_10_9_universal2.whl",
hash =
"sha256:3e4a1a3232eef2e6c732827d5722db29a0cc8b27af2a4d865b094cf954be9ca1", size
= 8008324, upload-time = "2026-06-09T22:31:00.702Z" },
- { url =
"https://files.pythonhosted.org/packages/d5/85/6379d42181bfc713094f081360fc5784d6c816b599d45e7f082502d173ce/cryptography-48.0.1-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:32143b24adb918f078134e1e230f1eb8cc04886b92c28b5f0041aaf3e5699225", size
= 4696243, upload-time = "2026-06-09T22:32:33.446Z" },
- { url =
"https://files.pythonhosted.org/packages/9c/87/c85d147b53323c7eb4d850920c8901377323c2a0ff8d79c262d4fee89aa2/cryptography-48.0.1-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:f0d27a5696721ef7a672b8c810f6aded391058e0b9486e63e6d93baf765da691", size
= 4713235, upload-time = "2026-06-09T22:31:40.141Z" },
- { url =
"https://files.pythonhosted.org/packages/79/58/67cbf8cf1ee7c54b439ca07bbecf8362c07afc11a3724fea70f745784add/cryptography-48.0.1-cp311-abi3-manylinux_2_28_aarch64.whl",
hash =
"sha256:eb86ce1af36fe65041b6db9a8bb064ee621a7e5fded0f80d475ec243477cd242", size
= 4702323, upload-time = "2026-06-09T22:31:42.191Z" },
- { url =
"https://files.pythonhosted.org/packages/89/c6/24266ac10c47f6cd2a865f4446062b466da1d1f10b27189eac00e61bf0c9/cryptography-48.0.1-cp311-abi3-manylinux_2_28_ppc64le.whl",
hash =
"sha256:b024e784ad6c077ee0147b35ea9cbfc1e34e1fd4c1dcca214c2794d73a12df08", size
= 5300085, upload-time = "2026-06-09T22:31:58.703Z" },
- { url =
"https://files.pythonhosted.org/packages/d2/bb/cc4b78784f97efc8c5874c2a9743708d172be6663024b34a0467885ae0c8/cryptography-48.0.1-cp311-abi3-manylinux_2_28_x86_64.whl",
hash =
"sha256:3752f2dbc8f07a30aad2932c986cea495b03bb554887828225da104f732852b6", size
= 4746137, upload-time = "2026-06-09T22:31:31.01Z" },
- { url =
"https://files.pythonhosted.org/packages/1f/52/0c44de3f5267f8fbe8e835138017522a333436166e406f0db9b9e6e3033f/cryptography-48.0.1-cp311-abi3-manylinux_2_31_armv7l.whl",
hash =
"sha256:bd81490cd5801d755cf97bb68ac191f14b708470b1c7cf4580f669b9c9264cd8", size
= 4333867, upload-time = "2026-06-09T22:32:28.096Z" },
- { url =
"https://files.pythonhosted.org/packages/9a/2e/772d7adbfa931537bc401640b7cac9976bff689bda187833e5d63b428e49/cryptography-48.0.1-cp311-abi3-manylinux_2_34_aarch64.whl",
hash =
"sha256:66fd0771e7b9c6dcd44cf1120690d2338d16d72795cf40cae2786a39eba65429", size
= 4701805, upload-time = "2026-06-09T22:31:38.284Z" },
- { url =
"https://files.pythonhosted.org/packages/f8/a3/b06844f303873493c963caf581c04df31c7035e0c1b0f02c4814d319ec80/cryptography-48.0.1-cp311-abi3-manylinux_2_34_ppc64le.whl",
hash =
"sha256:3fd2ca57062b241c856670b073487d2e86c4637937ca5601e48f97bf8e11fc8f", size
= 5258461, upload-time = "2026-06-09T22:31:04.187Z" },
- { url =
"https://files.pythonhosted.org/packages/9f/13/8b765e2e12b07c74941caadb9d1c8fdc006c4dfbf2b8f2d610519758954d/cryptography-48.0.1-cp311-abi3-manylinux_2_34_x86_64.whl",
hash =
"sha256:0ee6ea481db1ab889cba043ec1eda17bb9c1ea79db6722f779c3667f9f70322f", size
= 4745488, upload-time = "2026-06-09T22:32:30.07Z" },
- { url =
"https://files.pythonhosted.org/packages/2e/aa/48972bce55049b32a94f4907eda4d75fa385aad8a39506cc2fc72196ecf0/cryptography-48.0.1-cp311-abi3-musllinux_1_2_aarch64.whl",
hash =
"sha256:f2ceef93cb096aa3c4cc4b5c94ca6131f9196d28c64d6111533402a9b2054d41", size
= 4830256, upload-time = "2026-06-09T22:31:43.868Z" },
- { url =
"https://files.pythonhosted.org/packages/47/a2/e5079a032fb85cf6005046ca92bbd78b0c82dad2b5751ab8c311659da06f/cryptography-48.0.1-cp311-abi3-musllinux_1_2_x86_64.whl",
hash =
"sha256:9bd3f92d76217892b15df84ca256c2c113d386fdda7a7d8691aeeced976507c6", size
= 4979117, upload-time = "2026-06-09T22:31:05.845Z" },
- { url =
"https://files.pythonhosted.org/packages/b7/a0/8f50cae9c74e718ed769d63ed5c74bd0ea830c9550a74629cebd1b9c7bc7/cryptography-48.0.1-cp311-abi3-win32.whl",
hash =
"sha256:b9a32b876490d66c8bcc9963ef220199569748434ab01a9d6aaeabf88e7f5158", size
= 3304154, upload-time = "2026-06-09T22:32:16.845Z" },
- { url =
"https://files.pythonhosted.org/packages/c5/69/0572c77dbace6fef72f33755bd52ea399c71367250d366237f8691826b9e/cryptography-48.0.1-cp311-abi3-win_amd64.whl",
hash =
"sha256:39489bfca54c7a1f6b297efcd8bc608ab92d16c4ca631b0cad4da46724588b24", size
= 3817138, upload-time = "2026-06-09T22:32:00.388Z" },
- { url =
"https://files.pythonhosted.org/packages/42/06/3e768b4c3bc78201583fa35a0e18f640dd782ff41afba88f8545481a8874/cryptography-48.0.1-cp314-cp314t-macosx_10_9_universal2.whl",
hash =
"sha256:f817adc181390bd54f2f700107a7419040fb7c1bdf2fc26f36551a06a68c3345", size
= 7989830, upload-time = "2026-06-09T22:31:07.8Z" },
- { url =
"https://files.pythonhosted.org/packages/8a/13/6476736484b94041110c8340a3eb63962fea4975baea8cb4a512adb44d4d/cryptography-48.0.1-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:d5d30989c6917b478b5817902e85fddaea2261efa8648383d965381ccb9e1ac4", size
= 4689201, upload-time = "2026-06-09T22:31:09.745Z" },
- { url =
"https://files.pythonhosted.org/packages/79/62/65a87f34d2a431546e2509b85d55e8c90df86d668f6731da64d538512ac2/cryptography-48.0.1-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:df637c05205ea7c1d7fbcbe54bbfea648a52951155f997af13d895d0ecc96991", size
= 4702822, upload-time = "2026-06-09T22:32:24.409Z" },
- { url =
"https://files.pythonhosted.org/packages/7f/59/810b5204b0a9b10f4b6bc06bd551a8b609803cd931806bc3b71884b225e5/cryptography-48.0.1-cp314-cp314t-manylinux_2_28_aarch64.whl",
hash =
"sha256:869c3b8a53bfe27147832df48b32adadf558249d50e76cb3769d40e986b13265", size
= 4694875, upload-time = "2026-06-09T22:32:08.737Z" },
- { url =
"https://files.pythonhosted.org/packages/24/dc/d8ca05ffea724eec6d232ea6f18e74c269eb6bdfdcc9bfba689790d1325f/cryptography-48.0.1-cp314-cp314t-manylinux_2_28_ppc64le.whl",
hash =
"sha256:e361afba8918070d376df76f408a4f67fec0ee9cff81a99e48fe9a233ef59e17", size
= 5290385, upload-time = "2026-06-09T22:31:15.212Z" },
- { url =
"https://files.pythonhosted.org/packages/03/8c/3be6cb4da181f5bb6c19cf560c2359d60644a6b5fc5b57854e528f47b296/cryptography-48.0.1-cp314-cp314t-manylinux_2_28_x86_64.whl",
hash =
"sha256:d069066deead00ac7f090be101be875a06855908f7ec004c27b8fefb4acfb411", size
= 4737082, upload-time = "2026-06-09T22:32:22.66Z" },
- { url =
"https://files.pythonhosted.org/packages/aa/f6/d5f60a5a1434dbfd949e227fd0065d194c7e6b6ac526b17f5c06152b8231/cryptography-48.0.1-cp314-cp314t-manylinux_2_31_armv7l.whl",
hash =
"sha256:09f73a725d582cef64b91281a322cd798d14a33b2b6f2b7ad9531dc336d84c02", size
= 4325328, upload-time = "2026-06-09T22:32:10.777Z" },
- { url =
"https://files.pythonhosted.org/packages/17/b7/ba75dd947a14b6ad907b01ae8f6b5b348cdd1b48142f0063dee9e20c1d9d/cryptography-48.0.1-cp314-cp314t-manylinux_2_34_aarch64.whl",
hash =
"sha256:15254441469dd6bf027039453288e2072124f8b6603563f5d759e1c9b69273fa", size
= 4694530, upload-time = "2026-06-09T22:31:53.105Z" },
- { url =
"https://files.pythonhosted.org/packages/62/29/50d6b9e8aff12d8b67afaeb3569335e32dc83a5723e3bbded24fdac9f809/cryptography-48.0.1-cp314-cp314t-manylinux_2_34_ppc64le.whl",
hash =
"sha256:8ace4507d1e6533c125f4fac754f8bb8b6a74c08e92179dabd7e16571a3efbf3", size
= 5245046, upload-time = "2026-06-09T22:31:25.774Z" },
- { url =
"https://files.pythonhosted.org/packages/9f/04/618f4115cfc0add0838c82507aa18a346089428da8653ad38b3ff36f5cb3/cryptography-48.0.1-cp314-cp314t-manylinux_2_34_x86_64.whl",
hash =
"sha256:b4e391975f038e66432328639620a4aff2d307513b004f1ca06d6225bced815c", size
= 4736660, upload-time = "2026-06-09T22:32:12.676Z" },
- { url =
"https://files.pythonhosted.org/packages/24/9c/06e062462a0de28a3b3911322eded4c16deb9f441b1b7575d3dc59488ab5/cryptography-48.0.1-cp314-cp314t-musllinux_1_2_aarch64.whl",
hash =
"sha256:42fcd8e26fe555d9b3577a135f5091fefa0aa4e99129c23fb56787a1bd4ada72", size
= 4822229, upload-time = "2026-06-09T22:31:17.062Z" },
- { url =
"https://files.pythonhosted.org/packages/f4/be/0561971eaaee4b8a0e7d5113c536921063ab91aaf23278ac374eaf881e11/cryptography-48.0.1-cp314-cp314t-musllinux_1_2_x86_64.whl",
hash =
"sha256:c1400da5e32a43253392277eac7490a60e497d810a63dd5608d71bbd7af507c9", size
= 4966364, upload-time = "2026-06-09T22:31:32.842Z" },
- { url =
"https://files.pythonhosted.org/packages/a4/27/728c77876f12b000820b69ae490f3c4083775e79e07827e9e60be07ad209/cryptography-48.0.1-cp314-cp314t-win32.whl",
hash =
"sha256:0df56b056bc17c1b7d6821dfa65216e62bd232d8ab05eb3db44e71d235651471", size
= 3278498, upload-time = "2026-06-09T22:31:29.154Z" },
- { url =
"https://files.pythonhosted.org/packages/06/e3/79a612c6d7b1e6ee0edd43633d53035bec2cfb78c82b76f7864f39e36f34/cryptography-48.0.1-cp314-cp314t-win_amd64.whl",
hash =
"sha256:9de21387aa95e2a895823d0745b430bed4f33503ba9ab5e0b5311f33e37d66d2", size
= 3798790, upload-time = "2026-06-09T22:31:56.697Z" },
- { url =
"https://files.pythonhosted.org/packages/ca/6c/00fa2a95997164c8b2072ce327c23d4ab20809ccc323ea5fab91e53a4bba/cryptography-48.0.1-cp39-abi3-macosx_10_9_universal2.whl",
hash =
"sha256:4fdc69f8e4316bcf0c8c8ec1f26f285d12e8142d88d96c876a59a03be3f6ae67", size
= 7987408, upload-time = "2026-06-09T22:32:20.777Z" },
- { url =
"https://files.pythonhosted.org/packages/b0/d9/45f309a7e4e5f3f8f121d6d3be9e94024a7726ec598d6e08ae04edb2f04d/cryptography-48.0.1-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:48fe40804d4caa2288f24e70ca8c64c42dd826da0ad7e4f1b41b2128d679e6c8", size
= 4690196, upload-time = "2026-06-09T22:31:54.74Z" },
- { url =
"https://files.pythonhosted.org/packages/5f/9f/a1bc8bcc798811b8527eb374bbccf30a3f3e806829d967118222bf1125eb/cryptography-48.0.1-cp39-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:86be3b1b0b6bf09482fb50a979c508d2950ed95f5621ec77f4e385962006b83a", size
= 4696782, upload-time = "2026-06-09T22:31:45.615Z" },
- { url =
"https://files.pythonhosted.org/packages/66/c2/81a4fb4e4373c500bb526bc337ac5719dd31dd15b970b84a238168c6aa08/cryptography-48.0.1-cp39-abi3-manylinux_2_28_aarch64.whl",
hash =
"sha256:4ab0a343c807bbcd90c971cd1ecf072937cd01847a9e002bef88fb47ac6be577", size
= 4696618, upload-time = "2026-06-09T22:31:11.564Z" },
- { url =
"https://files.pythonhosted.org/packages/e5/0b/aa68b221dde92d09cb29a024ede17550ee21e77a404e59fc093c82bb51e1/cryptography-48.0.1-cp39-abi3-manylinux_2_28_ppc64le.whl",
hash =
"sha256:9621de99d2da096006b629979efd8ae7eb2d8b822488d0c89ee4000c306c59b1", size
= 5289970, upload-time = "2026-06-09T22:31:20.368Z" },
- { url =
"https://files.pythonhosted.org/packages/78/13/fba657f958d2af66ea959a4ba01212632089249d34af1ae48054136344d7/cryptography-48.0.1-cp39-abi3-manylinux_2_28_x86_64.whl",
hash =
"sha256:88c852a0ae366e262e5a1744b685e6a433dc8788dd2a277e418bf4904203609d", size
= 4731873, upload-time = "2026-06-09T22:31:22.253Z" },
- { url =
"https://files.pythonhosted.org/packages/4c/4c/9a964756d24a26b3e34dfcb16f961b89838786e6700b635b0d1e3adff4b6/cryptography-48.0.1-cp39-abi3-manylinux_2_31_armv7l.whl",
hash =
"sha256:43c5835e2cb98c8733d86f57d6fc879b613f5c3478607281c3e36daffc6dd8a6", size
= 4330804, upload-time = "2026-06-09T22:31:36.56Z" },
- { url =
"https://files.pythonhosted.org/packages/4b/0f/a10f3a6eb12950a10e3a874070283aa2dd5875b2bfd15fad8a3e17b3f13e/cryptography-48.0.1-cp39-abi3-manylinux_2_34_aarch64.whl",
hash =
"sha256:fe0180af5bf9236518a087e35bf2d9a347d5f5f51e63c579d683ddff424e3d46", size
= 4696217, upload-time = "2026-06-09T22:31:13.351Z" },
- { url =
"https://files.pythonhosted.org/packages/f3/6f/5cd12f951165ea73ef85266775d97e4c763b2474ccfd816dd69d3a18d6f8/cryptography-48.0.1-cp39-abi3-manylinux_2_34_ppc64le.whl",
hash =
"sha256:b7a2d1a937a738a881737cec135a38bb61470589b17515b9f73f571d0ae10401", size
= 5245252, upload-time = "2026-06-09T22:32:02.193Z" },
- { url =
"https://files.pythonhosted.org/packages/68/ab/8aaa12e4516ec4464033ab79b6f3b592bd5a92102467c4ace8a0d970203f/cryptography-48.0.1-cp39-abi3-manylinux_2_34_x86_64.whl",
hash =
"sha256:b74ca3b8e5ecdd833bf6a002ca41b4793bb27fb8f1c06ffaf2643c9e9140e31b", size
= 4731388, upload-time = "2026-06-09T22:32:04.019Z" },
- { url =
"https://files.pythonhosted.org/packages/1b/24/50027ea4dca85ec1f40688f3c24fb32ccacd520583c9592c3cc95628e6fb/cryptography-48.0.1-cp39-abi3-musllinux_1_2_aarch64.whl",
hash =
"sha256:2c37f2461406063b417837f5f3daab668652acd82423efcd7f0a9f04be972de1", size
= 4824186, upload-time = "2026-06-09T22:32:18.707Z" },
- { url =
"https://files.pythonhosted.org/packages/52/41/04cb5eb17085ade6f50cc611fb657df6a0f5885350de8764ece89c050197/cryptography-48.0.1-cp39-abi3-musllinux_1_2_x86_64.whl",
hash =
"sha256:86fe77abb1bd87afb251d4d02ada7ecf53a32cee9b67d976abb2e45a13297475", size
= 4964539, upload-time = "2026-06-09T22:31:18.793Z" },
- { url =
"https://files.pythonhosted.org/packages/36/bf/ed70785c496e89d7e73b7cda2d21f2447fd6d4e821714b8d04ff217fed92/cryptography-48.0.1-cp39-abi3-win32.whl",
hash =
"sha256:6b2c0c3e6ccf3ade7750f836ef3ee36eea250cc467d45c256895573ac08cc6f1", size
= 3282307, upload-time = "2026-06-09T22:30:53.162Z" },
- { url =
"https://files.pythonhosted.org/packages/b3/ff/371ea7d252656ee1eb6d83eeeef3d1d0c6baf1d6497687d081ea03814670/cryptography-48.0.1-cp39-abi3-win_amd64.whl",
hash =
"sha256:9a49ca6c81417f6a5edb50375a60cccdd70fa0a91a5211829dbea74eba94d2ac", size
= 3793408, upload-time = "2026-06-09T22:32:15.191Z" },
+sdist = { url =
"https://files.pythonhosted.org/packages/1f/99/d1c90d6041656cc6ee229dc99cd67fd0cd5aec3c5f7d72fffc27cc750054/cryptography-49.0.0.tar.gz",
hash =
"sha256:f89660a348f4f78a92366240a61404e337586ef7f5909a2fef59ca88ef505493", size
= 854345, upload-time = "2026-06-12T20:02:30.512Z" }
+wheels = [
+ { url =
"https://files.pythonhosted.org/packages/9b/22/adf66990e63584a68dfb50c24f48a125c07b1699899381c8151e63ed458c/cryptography-49.0.0-cp311-abi3-macosx_11_0_arm64.whl",
hash =
"sha256:966fe0e9c67490071f14c0d2b1cb2dfb3023c5ce39457343931415f08382f2db", size
= 4032100, upload-time = "2026-06-12T20:02:32.143Z" },
+ { url =
"https://files.pythonhosted.org/packages/09/41/3797cfaf69cae04a13ee78ebd83f0678d9c02b4779d21ce24445326f1a69/cryptography-49.0.0-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:36d1709f992593689b45bda411498d62c6e365f2ca00b84657d4dadd24de16db", size
= 4692978, upload-time = "2026-06-12T20:01:21.305Z" },
+ { url =
"https://files.pythonhosted.org/packages/e6/8b/43011f7ebe515a8aa20d61f290a326cd890c2e738e16e59eaff8d9c3a412/cryptography-49.0.0-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:0e959b578856a3924bc0cbb710fc12c387b9412a951389f3ca61704a9e25f325", size
= 4716422, upload-time = "2026-06-12T20:01:48.566Z" },
+ { url =
"https://files.pythonhosted.org/packages/4a/91/01ce7303a4579e6d3a6abef01bd322848e9ea7a219adcabc5048b9033571/cryptography-49.0.0-cp311-abi3-manylinux_2_28_aarch64.whl",
hash =
"sha256:53ecee2e23f7169b6117e99fc8a944e5e50f79e69758a83b52a00cb98ab2b2d2", size
= 4700503, upload-time = "2026-06-12T20:02:47.091Z" },
+ { url =
"https://files.pythonhosted.org/packages/62/99/a2c95cf8293f07491e9e27c20cc4dcd18176d944e674679adeb1d0173fd6/cryptography-49.0.0-cp311-abi3-manylinux_2_28_ppc64le.whl",
hash =
"sha256:2eda353d8a27bcbcaa4cbed18994a74ab4d19a2ca897db188ea269ab9b71419b", size
= 5309779, upload-time = "2026-06-12T20:02:08.987Z" },
+ { url =
"https://files.pythonhosted.org/packages/20/2c/0622f20ff02b2ef32558733443805dc82fd4c275be01b2d19d14676f3a1b/cryptography-49.0.0-cp311-abi3-manylinux_2_28_x86_64.whl",
hash =
"sha256:2afe9051da7ae7bd5905da5a949280c7d2bb75682e188f650a9d0f2756b834c6", size
= 4749683, upload-time = "2026-06-12T20:02:03.335Z" },
+ { url =
"https://files.pythonhosted.org/packages/a3/5b/c5246635d5fd3b64e0d45ae10e99fd32fe9676a79915ccfe5a61ba9af1a5/cryptography-49.0.0-cp311-abi3-manylinux_2_31_armv7l.whl",
hash =
"sha256:0b82e28ee398a386f0807bba7884d30f25218855690f45115831bcce5d90822c", size
= 4337874, upload-time = "2026-06-12T20:02:54.323Z" },
+ { url =
"https://files.pythonhosted.org/packages/6d/88/05563c7fe2e914e87d1a536d06fe83e66b4e1d95cb593e05aea375531da8/cryptography-49.0.0-cp311-abi3-manylinux_2_34_aarch64.whl",
hash =
"sha256:ccac2bfebc306b862133e3bb71f3f6ee8bb525240089b2d952e4144b3a6d5da7", size
= 4700283, upload-time = "2026-06-12T20:01:34.822Z" },
+ { url =
"https://files.pythonhosted.org/packages/c4/b6/d7696e4e890d6ae1469935164c9e5215c557671cb78d6e3f458ccceaa632/cryptography-49.0.0-cp311-abi3-manylinux_2_34_ppc64le.whl",
hash =
"sha256:d0527ce944105f257f605a827d6ebead966c752038b6e8656abb9c5edee6fc68", size
= 5265844, upload-time = "2026-06-12T20:01:24.09Z" },
+ { url =
"https://files.pythonhosted.org/packages/a9/3c/f3ad17eecc1a57b0ba236dc01f90e783c51f4a2f35f64777cc4f47a184b2/cryptography-49.0.0-cp311-abi3-manylinux_2_34_x86_64.whl",
hash =
"sha256:cbc77da8c523d5abd028635ba850a6966fcee2c82e2bf65a41d1d8afe0f98be9", size
= 4749290, upload-time = "2026-06-12T20:01:30.848Z" },
+ { url =
"https://files.pythonhosted.org/packages/4f/01/339573cf1023163a400b0b5d16f6d507de413b9f60be6fd1b77feeaf6737/cryptography-49.0.0-cp311-abi3-musllinux_1_2_aarch64.whl",
hash =
"sha256:b87e65d263b3e5d3bb92a57e2a6638e2f31110fa7aa890c7b2dbba42248d0a3f", size
= 4834612, upload-time = "2026-06-12T20:01:29.246Z" },
+ { url =
"https://files.pythonhosted.org/packages/71/fd/577302e213a1be9468f92d1afef66fcf1ef83d516819d9992ca547f592bd/cryptography-49.0.0-cp311-abi3-musllinux_1_2_x86_64.whl",
hash =
"sha256:66ec79c3904820572d7e987abdf304281f141d37ad9a489b8e97066e7b9b6459", size
= 4980804, upload-time = "2026-06-12T20:01:42.853Z" },
+ { url =
"https://files.pythonhosted.org/packages/1f/09/f42b1d190c5ba75f72062a387f8030d1d75f6ab035788f1d9c4b01de6525/cryptography-49.0.0-cp311-abi3-win_amd64.whl",
hash =
"sha256:e5dfc1e64de5677cec922ffa8da89c546d0415bf6efdf081842e5d44c84e1f0e", size
= 3810026, upload-time = "2026-06-12T20:02:39.262Z" },
+ { url =
"https://files.pythonhosted.org/packages/ec/9e/db72b3ae7fc9cfad53e630e56c6ae83b9b6ff0bf3718ffb8012d20b3aabf/cryptography-49.0.0-cp314-cp314t-macosx_11_0_arm64.whl",
hash =
"sha256:73a205dce83953d131a4aa1e0fd917a2fd1c5b1eef251e9d7152efefcbf5caf7", size
= 4013892, upload-time = "2026-06-12T20:02:10.735Z" },
+ { url =
"https://files.pythonhosted.org/packages/86/12/c48a424f38db03027be9f7ed5c7dc5de9933dbee992865f98b13727a009d/cryptography-49.0.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:196ecd6a36e4e9aa10270393bb98d8df88fccee0bf1e5128b91ae4eb4375896d", size
= 4678835, upload-time = "2026-06-12T20:02:48.743Z" },
+ { url =
"https://files.pythonhosted.org/packages/68/28/8a3ad4653662c93fc44dc4e5d8fd374c25c42e07b34bbfbadf49cf57a5a8/cryptography-49.0.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:7abcee80084cda3f7691f3eb1ce480d8df49cec637b429aa35986c1de71738aa", size
= 4697239, upload-time = "2026-06-12T20:02:56.03Z" },
+ { url =
"https://files.pythonhosted.org/packages/a8/b2/2193fc74f81aee4f9b62733133b73b5176718932ed8f2e4b03fa040480a6/cryptography-49.0.0-cp314-cp314t-manylinux_2_28_aarch64.whl",
hash =
"sha256:4ae387c9cb68ea569ca17e490d66d8142b81c3cc814bf179974b7d146e490bbb", size
= 4685593, upload-time = "2026-06-12T20:02:50.666Z" },
+ { url =
"https://files.pythonhosted.org/packages/47/f1/1d3eaa243bfc5de4a187b22aa8c048b3e4980bfbe830ac46e6bac2e66947/cryptography-49.0.0-cp314-cp314t-manylinux_2_28_ppc64le.whl",
hash =
"sha256:f37d847238971164fdbc68ade6f6574aecc9c0af714190e2083429ff68f4ce9d", size
= 5289961, upload-time = "2026-06-12T20:01:46.468Z" },
+ { url =
"https://files.pythonhosted.org/packages/58/39/2d51306721330c486495853eda1c567880ff036de15a14c4b74f399934af/cryptography-49.0.0-cp314-cp314t-manylinux_2_28_x86_64.whl",
hash =
"sha256:c2bc30226390d60ea19d9f82b19db005fe0452154a23c1c410c12ea801e43561", size
= 4731145, upload-time = "2026-06-12T20:02:16.832Z" },
+ { url =
"https://files.pythonhosted.org/packages/17/50/983e838c7fd0d87fd8c969bcdd328edaf5f756e38df5281637424c155873/cryptography-49.0.0-cp314-cp314t-manylinux_2_31_armv7l.whl",
hash =
"sha256:07cab27cc7b7e0fd28e5e26bb9eeedde5c135c868b46de4a27845abe94af6122", size
= 4321719, upload-time = "2026-06-12T20:02:52.611Z" },
+ { url =
"https://files.pythonhosted.org/packages/a7/f5/8f571d7e27c55bce9f76f026143bcb1e040a4233149ecca0bea5fa5dd5f7/cryptography-49.0.0-cp314-cp314t-manylinux_2_34_aarch64.whl",
hash =
"sha256:b20133d204d2bb56ba047642199603876c872026ca53e79c35b83772ab2cc505", size
= 4685209, upload-time = "2026-06-12T20:02:07.282Z" },
+ { url =
"https://files.pythonhosted.org/packages/e7/84/0e27016a6fc5a0886f797018b26aa42f40c09a82332bff77822a451deaaa/cryptography-49.0.0-cp314-cp314t-manylinux_2_34_ppc64le.whl",
hash =
"sha256:b970c6da94d5bb18629db453d14f2a1300f6bf59b61e9b82377931ef95504866", size
= 5246285, upload-time = "2026-06-12T20:01:32.439Z" },
+ { url =
"https://files.pythonhosted.org/packages/11/2d/5e1fb307cb5931881516b464c98774b3f2c36b5d4bb9a2830253cf553cad/cryptography-49.0.0-cp314-cp314t-manylinux_2_34_x86_64.whl",
hash =
"sha256:d8ecde755e2e91bf773fc94e8c9d730cd7f2007004cb492263a794ec3899a1c8", size
= 4730441, upload-time = "2026-06-12T20:02:01.469Z" },
+ { url =
"https://files.pythonhosted.org/packages/e4/c0/bff5a02ee731d207d6a1ed51732549d8c53d2bc8da1d10ec6f2844201d68/cryptography-49.0.0-cp314-cp314t-musllinux_1_2_aarch64.whl",
hash =
"sha256:e3fb64c420688e5319ae25113a354015abbd8dffbfbc41781a1ea66fc7622ac3", size
= 4815869, upload-time = "2026-06-12T20:01:36.574Z" },
+ { url =
"https://files.pythonhosted.org/packages/b9/26/814681d14248d95d73d5c3eea0c39a94eb8302df966f670a2c60de90974b/cryptography-49.0.0-cp314-cp314t-musllinux_1_2_x86_64.whl",
hash =
"sha256:32703d93296f5c1f4b53349ad3a250c2cae0fdecd3a3dd5d47e616d8d616af27", size
= 4960948, upload-time = "2026-06-12T20:02:18.688Z" },
+ { url =
"https://files.pythonhosted.org/packages/4c/fe/93ecac273d3738939d023612ad12cca9a3740a5345d69fda04134c43fd96/cryptography-49.0.0-cp314-cp314t-win_amd64.whl",
hash =
"sha256:33cd0565932807baddb67b96dbee92f2c374b5c89dee09fd74079aeb8c8dba61", size
= 3799153, upload-time = "2026-06-12T20:01:39.059Z" },
+ { url =
"https://files.pythonhosted.org/packages/19/2a/5bb823f5bedcf80718cea7fbc95ec5515cca3769633c4b01a32be7f30e7c/cryptography-49.0.0-cp39-abi3-macosx_11_0_arm64.whl",
hash =
"sha256:ec5e529fb80935c94fe7b729f9972b50e351a0e6b50aa294fd5cabb109fcc29a", size
= 4025947, upload-time = "2026-06-12T20:01:25.745Z" },
+ { url =
"https://files.pythonhosted.org/packages/3d/df/40577043ca124e17012f408ddddaeb213b856336ac82ddb3bc915f39e29f/cryptography-49.0.0-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:f78ff2c9ed8dc2d036b0f4d640e22522213d047c1b14e61205a7e55c80a494d4", size
= 4692429, upload-time = "2026-06-12T20:01:53.628Z" },
+ { url =
"https://files.pythonhosted.org/packages/2c/99/2d13299eb3dd27b02dcfaafcc91d6b5cb3329f7cbd6d8f51921acd566c1a/cryptography-49.0.0-cp39-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:35b151772baff2c74cba7fa290ceaff4c3b11c0c881eb93eb5dbc05a7cfbba18", size
= 4700968, upload-time = "2026-06-12T20:02:45.383Z" },
+ { url =
"https://files.pythonhosted.org/packages/a5/4d/9c0cd02f95e2602dd5e563da149ee0830abef3537be8b34dc56281ebe27a/cryptography-49.0.0-cp39-abi3-manylinux_2_28_aarch64.whl",
hash =
"sha256:0f21641cf4b30fca7aee061ced0ec7ad7b073518088b7c9969a297c0ae796c69", size
= 4697758, upload-time = "2026-06-12T20:01:41.13Z" },
+ { url =
"https://files.pythonhosted.org/packages/24/01/186c825898477d77e2324d5360fefe622ff1d8d1963ec0554e2cada8ec77/cryptography-49.0.0-cp39-abi3-manylinux_2_28_ppc64le.whl",
hash =
"sha256:9e82dcc8e56052715fb18b2429e3bca4823b1629136a2084fc45a9a5cecb9b64", size
= 5298863, upload-time = "2026-06-12T20:02:24.579Z" },
+ { url =
"https://files.pythonhosted.org/packages/b8/7b/62cbbab75d0659865bf0273790031544a0b16c8072d258f9428dcd8190dc/cryptography-49.0.0-cp39-abi3-manylinux_2_28_x86_64.whl",
hash =
"sha256:6f2debedf9ca60cf1d5bd466475638af5130f89965605cd818484d19987d3a21", size
= 4735983, upload-time = "2026-06-12T20:01:50.14Z" },
+ { url =
"https://files.pythonhosted.org/packages/6c/72/3e798c064bc39e471008075d0f9bc9daf77a80879c092e4a8e170c585ed4/cryptography-49.0.0-cp39-abi3-manylinux_2_31_armv7l.whl",
hash =
"sha256:8c25ceb16df5b9435f3f6a9829204985b0e0cbee3b48aacd432c7d2c850b44d9", size
= 4334173, upload-time = "2026-06-12T20:01:44.743Z" },
+ { url =
"https://files.pythonhosted.org/packages/f0/ee/6fca21d1ac73e06f8bef71940abfd4d2f6472b4bca284d770f32bd4086f6/cryptography-49.0.0-cp39-abi3-manylinux_2_34_aarch64.whl",
hash =
"sha256:28d8b15e6275f12c8a207dc309dfa957903c927d08d0cc937ee3f63f200693cc", size
= 4697298, upload-time = "2026-06-12T20:02:20.918Z" },
+ { url =
"https://files.pythonhosted.org/packages/67/d0/a5fcd3515f0bae49a7b6d0413cc1bdccdcc1fc0047037a0d480642cdc5d6/cryptography-49.0.0-cp39-abi3-manylinux_2_34_ppc64le.whl",
hash =
"sha256:6fc361c34fb6aac015ce19435876635e5c6d21db31998b0920f675f131e043b8", size
= 5254338, upload-time = "2026-06-12T20:02:22.737Z" },
+ { url =
"https://files.pythonhosted.org/packages/a0/84/84fe36f19caf857d61cb7fc9c63035a47ffabd84ea12d1d393148efa3615/cryptography-49.0.0-cp39-abi3-manylinux_2_34_x86_64.whl",
hash =
"sha256:2400ef9c9e2299a25614eb1dea3db54a69b1349efd043bfac9c67630d136df36", size
= 4735650, upload-time = "2026-06-12T20:02:41.389Z" },
+ { url =
"https://files.pythonhosted.org/packages/6c/a0/db537264e234f7273a73ec020873d6d6b39dfd8a53db78b550ca8320440e/cryptography-49.0.0-cp39-abi3-musllinux_1_2_aarch64.whl",
hash =
"sha256:67e1d20ad9ef3a563c59ef22e7a8a0b8210bd26604369ea4a30a7c66aefe504e", size
= 4834820, upload-time = "2026-06-12T20:01:51.847Z" },
+ { url =
"https://files.pythonhosted.org/packages/93/77/8df9eb486495979bccecd1062e2eaf435250e84437040295b57d09048b0b/cryptography-49.0.0-cp39-abi3-musllinux_1_2_x86_64.whl",
hash =
"sha256:42b0684e0e40cf26122427802486f6d93aea593612603a94fbf260c7eb1e9c1b", size
= 4967968, upload-time = "2026-06-12T20:02:12.524Z" },
+ { url =
"https://files.pythonhosted.org/packages/c2/e6/f60198ea8d9dfa15fff9ed4ca02ce362f6eadd9ba757dcc50634c4257b63/cryptography-49.0.0-cp39-abi3-win_amd64.whl",
hash =
"sha256:026ac7423e6fa66872d3bf889be5974507da3944f866f704fa200eadacd00001", size
= 3785547, upload-time = "2026-06-12T20:02:26.847Z" },
]
[[package]]
@@ -657,52 +718,52 @@ wheels = [
[[package]]
name = "grpcio"
-version = "1.81.0"
+version = "1.81.1"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "typing-extensions" },
]
-sdist = { url =
"https://files.pythonhosted.org/packages/15/f3/23f47b24f8d8c2028eba501db3acfbb2f592cbb5995eaa6e363a627b74d7/grpcio-1.81.0.tar.gz",
hash =
"sha256:a5acd7efd3b1fe9b4eb0bcaaa1507eed68a0ad0678b654c3f7b464df9ba9dca5", size
= 13032272, upload-time = "2026-06-01T05:56:22.827Z" }
-wheels = [
- { url =
"https://files.pythonhosted.org/packages/82/d5/896a3aaf07068d707d88b282a04914b872db4d32d3c7e6d88e43a3b911fa/grpcio-1.81.0-cp312-cp312-linux_armv7l.whl",
hash =
"sha256:57b3b0e73a518fa286959b40c3eddd02703504ca186e8b7b2945954519bd8b2c", size
= 6053538, upload-time = "2026-06-01T05:54:58.965Z" },
- { url =
"https://files.pythonhosted.org/packages/68/6a/7e3eafa4727cd405ff917605ed2949e2af162f233f5cbdd773723a5fea7d/grpcio-1.81.0-cp312-cp312-macosx_11_0_universal2.whl",
hash =
"sha256:8bb1789c94322a13336a2b6c58d9c14d68f8628b6e24205a799c69f5bf8516ce", size
= 12053447, upload-time = "2026-06-01T05:55:01.862Z" },
- { url =
"https://files.pythonhosted.org/packages/16/79/a4302aa82428de48a922421f522b027a1a727ab4d0926368454aa953d36d/grpcio-1.81.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:e4d053900a0d24b75d7521139a3872150301b3d6bde3bed5e12318fb25791e4d", size
= 6595872, upload-time = "2026-06-01T05:55:04.946Z" },
- { url =
"https://files.pythonhosted.org/packages/b4/1f/7ff2850eaefbecf99af3f624dbb28dd1ad6c5fd4c1d8c26909ed6482673b/grpcio-1.81.0-cp312-cp312-manylinux2014_i686.manylinux_2_17_i686.whl",
hash =
"sha256:db217c2e52931719f9937bd12082cd4d7b495b35803d5760686975c285924bf8", size
= 7303857, upload-time = "2026-06-01T05:55:07.205Z" },
- { url =
"https://files.pythonhosted.org/packages/e2/98/1f3896a9baae1f2aedf4e99c55291d6fa1f30ad9603d63bc18bda967b53e/grpcio-1.81.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:19f201da7b4e5c0559198abe5a97157e726f3abe6e8f5e832d4a50740f6dcc22", size
= 6809676, upload-time = "2026-06-01T05:55:09.513Z" },
- { url =
"https://files.pythonhosted.org/packages/34/8b/3441983718095208c5d797fd3239882e97ea89a629f41c8df94b4eef4df9/grpcio-1.81.0-cp312-cp312-musllinux_1_2_aarch64.whl",
hash =
"sha256:275144b0115353339dbb8a6f28a9cf8997b5bf40e37f8f66ac0b0ea57e95b43f", size
= 7412654, upload-time = "2026-06-01T05:55:12.777Z" },
- { url =
"https://files.pythonhosted.org/packages/3c/98/1eddf07df6e4fe85cf67502a793f7b05468b2dca3d1ef35b972cf5d54468/grpcio-1.81.0-cp312-cp312-musllinux_1_2_i686.whl",
hash =
"sha256:5192857589f223e5a98ff0e31f6e551b19040e647d17bfe10116c8a2ce3b8696", size
= 8408026, upload-time = "2026-06-01T05:55:15.514Z" },
- { url =
"https://files.pythonhosted.org/packages/5c/73/3860341e6a1f5347be6ab35c6c0e1e3a8eb59d010388207fd561dcf01a88/grpcio-1.81.0-cp312-cp312-musllinux_1_2_x86_64.whl",
hash =
"sha256:c6ff087cb1f563f47b504b4e29e684129fc5ae4863faf3ebca08a327764ee6cb", size
= 7849498, upload-time = "2026-06-01T05:55:18.078Z" },
- { url =
"https://files.pythonhosted.org/packages/ae/3f/0ea06bd85c701966aa3f8f37314f2ed83520d2b7590f42d643d445d8bc8b/grpcio-1.81.0-cp312-cp312-win32.whl",
hash =
"sha256:98c6240f563178fc5877bd50e6ff274463e53e1472128f4110742450739659fa", size
= 4184161, upload-time = "2026-06-01T05:55:20.127Z" },
- { url =
"https://files.pythonhosted.org/packages/39/e3/a7c387406827a86f99ad7838b995bf9b4a182ffe2d2c439ed2873efec952/grpcio-1.81.0-cp312-cp312-win_amd64.whl",
hash =
"sha256:87e33b7afcfb3585121b5f007d2c52b8c534104d18f556e840d35193ca2a9141", size
= 4929958, upload-time = "2026-06-01T05:55:22.736Z" },
- { url =
"https://files.pythonhosted.org/packages/f3/29/779ee53c931d0fd55c1d459fde43e485172caa3ac87cbd43d003a13a0185/grpcio-1.81.0-cp313-cp313-linux_armv7l.whl",
hash =
"sha256:62bbe463c9f0f2ff24e31bd25f8dd8b4bae78900e315915a3195a0ef1471a855", size
= 6054973, upload-time = "2026-06-01T05:55:25.043Z" },
- { url =
"https://files.pythonhosted.org/packages/9e/b6/7211807926b5a17f8d9a5d47c739a163d6812fefe3e4714e81cf92945ed7/grpcio-1.81.0-cp313-cp313-macosx_11_0_universal2.whl",
hash =
"sha256:43c121e135ae44d1559b430db2b2dfad7421cbbe40e1deba506c7dc62b439719", size
= 12048662, upload-time = "2026-06-01T05:55:28.453Z" },
- { url =
"https://files.pythonhosted.org/packages/64/89/b1b93ef6b34bd20bbaf707fa99133bc9cc302139d5ec6f77a165c7169796/grpcio-1.81.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:f345de40ef2e65f63645d53d251824e6070e07804827c5b00ec2e44555f9f901", size
= 6599116, upload-time = "2026-06-01T05:55:31.185Z" },
- { url =
"https://files.pythonhosted.org/packages/eb/bc/c89f9b9d1c22895715356a1e009554dae66319e97826bb4d30bcda7d29e8/grpcio-1.81.0-cp313-cp313-manylinux2014_i686.manylinux_2_17_i686.whl",
hash =
"sha256:8c0855a350886f713b9e458e2a10d208009dcaa849f574e39cd6067db1fe1279", size
= 7307591, upload-time = "2026-06-01T05:55:33.463Z" },
- { url =
"https://files.pythonhosted.org/packages/65/4a/1df2a4cb4a1386e066ab7e4175e34bb884b35ccb60d3621c09c84af6aabb/grpcio-1.81.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:a524cd530900bd24511fcb7f2ed144da4ea37711c4b094475d0bceca7a93a170", size
= 6811797, upload-time = "2026-06-01T05:55:36.731Z" },
- { url =
"https://files.pythonhosted.org/packages/8d/dc/fa189d20601a1be25b08850cfb733879bbb1047b62a8feec3a60e3e1a87b/grpcio-1.81.0-cp313-cp313-musllinux_1_2_aarch64.whl",
hash =
"sha256:e7746ba3e6efc9e2b748eff59470a2b8684d5a9ec607c6580bcaa5be175820bc", size
= 7415131, upload-time = "2026-06-01T05:55:39.451Z" },
- { url =
"https://files.pythonhosted.org/packages/ad/a3/5625c48cb48d23c6631b3e5294f88e4c751f22a52591ae78859fab96dca1/grpcio-1.81.0-cp313-cp313-musllinux_1_2_i686.whl",
hash =
"sha256:aaaa4f7f2057d795952e4eacf3f342be8b5b156992f6ac85023c8b98794ebd47", size
= 8408398, upload-time = "2026-06-01T05:55:42.219Z" },
- { url =
"https://files.pythonhosted.org/packages/75/34/0f8202c6809a46c2b4d69125ef3667c40b1c211f8e19930e5fa1f1197039/grpcio-1.81.0-cp313-cp313-musllinux_1_2_x86_64.whl",
hash =
"sha256:0fba53cb96004b2b7fb758b46b2288cb49d0b658316a4e73f3ef67230616ee65", size
= 7844481, upload-time = "2026-06-01T05:55:44.849Z" },
- { url =
"https://files.pythonhosted.org/packages/c0/95/c3366b5b5edf4c4adc90f2e29ca16e57965a8e56dc8d2ee89565ba1905bb/grpcio-1.81.0-cp313-cp313-win32.whl",
hash =
"sha256:c197e2ef75a442528072b29e9755da299110e8610e8bcbb59a6b4cf55384f005", size
= 4182777, upload-time = "2026-06-01T05:55:47.459Z" },
- { url =
"https://files.pythonhosted.org/packages/a9/a7/932f2f748511a32e641a2aba0d30dded3ed6e8bc330e0924e4d5d86853e6/grpcio-1.81.0-cp313-cp313-win_amd64.whl",
hash =
"sha256:194eddfacc84d80f50512e9fd4ee851d5f2499f18f299c95aa8fb4748f0537e0", size
= 4928085, upload-time = "2026-06-01T05:55:50.158Z" },
- { url =
"https://files.pythonhosted.org/packages/c5/1d/28b231333857deb840bc3d182ae087510170ea6d68f21393aeb0fe499530/grpcio-1.81.0-cp314-cp314-linux_armv7l.whl",
hash =
"sha256:a9351055f52660b58f3d4890ea66188b5134399f82b11aa0c55bd4b99eff5390", size
= 6055712, upload-time = "2026-06-01T05:55:52.889Z" },
- { url =
"https://files.pythonhosted.org/packages/e8/b8/999c14f9dff0fc47549d2e827cba1343ddc18e1d1bf0d06d2cf628eecbd9/grpcio-1.81.0-cp314-cp314-macosx_11_0_universal2.whl",
hash =
"sha256:300f3337b6425fd16ead9a4f9b2ac25801acb64aa5bc0b99eb69901645b2b1d2", size
= 12057189, upload-time = "2026-06-01T05:55:55.952Z" },
- { url =
"https://files.pythonhosted.org/packages/1e/3d/1fbde079572562af65351151d840525a13879eb7b481d35b55cd64c6127a/grpcio-1.81.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:97bbd623f7ded558fd4f7cb5a4f600c4d4de65c5dd364c83a5b14b2a10a2d3b5", size
= 6608136, upload-time = "2026-06-01T05:55:59.069Z" },
- { url =
"https://files.pythonhosted.org/packages/32/89/1f17cb6882abfd8e5a303a25d5d1665abef5a8c499a96198c65a651d1b85/grpcio-1.81.0-cp314-cp314-manylinux2014_i686.manylinux_2_17_i686.whl",
hash =
"sha256:ff83d889e3ebf6341c8c7864ad8031591ad5ca61599072fc511644d1eb962d2b", size
= 7307045, upload-time = "2026-06-01T05:56:02.376Z" },
- { url =
"https://files.pythonhosted.org/packages/48/5a/f98e91b2e755652e637ea2144318b0229b290062199f761b445fe1fa6015/grpcio-1.81.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:c4fe218c5a35e1d87a5a26544237f1fa41dfd9cbd3c856b0810a30061f8b0aaf", size
= 6812794, upload-time = "2026-06-01T05:56:05.777Z" },
- { url =
"https://files.pythonhosted.org/packages/0a/0c/77892d715ac41e7ec0ace2a50080ffb64e189188056f607a66fe0014d1ee/grpcio-1.81.0-cp314-cp314-musllinux_1_2_aarch64.whl",
hash =
"sha256:b8b025b6af43ee0ad4a70307025d77bcab5adde7c4597786010d802c203e9fc5", size
= 7422767, upload-time = "2026-06-01T05:56:08.524Z" },
- { url =
"https://files.pythonhosted.org/packages/3f/b8/aa04590c6564714d94954515f15a236e59d4b9b3ad01e615f1b706d7792d/grpcio-1.81.0-cp314-cp314-musllinux_1_2_i686.whl",
hash =
"sha256:3d4e0ce5a40a998cf608c8ba60ecfe18fdf364a9aa193ae4ac3faeecd0e86757", size
= 8408551, upload-time = "2026-06-01T05:56:11.283Z" },
- { url =
"https://files.pythonhosted.org/packages/43/3d/4f4a3450a1973568910c6909cb74abbf2126f68aefae5976962f9f7ad50d/grpcio-1.81.0-cp314-cp314-musllinux_1_2_x86_64.whl",
hash =
"sha256:aa948712c8e5fa40ec250870bda14bc7578e1bb832a8912d9d2a0f720518edbe", size
= 7846468, upload-time = "2026-06-01T05:56:14.536Z" },
- { url =
"https://files.pythonhosted.org/packages/88/f4/5827fd248221ad3b44161c23ce9b5f4ee405b04fc6da5fd402a9aa87a84a/grpcio-1.81.0-cp314-cp314-win32.whl",
hash =
"sha256:fbbe81314a9d92156abce8b62c09364eb8bafc0ca2a19919a45ec64b5c6cb664", size
= 4264427, upload-time = "2026-06-01T05:56:17.192Z" },
- { url =
"https://files.pythonhosted.org/packages/0c/e8/127dc2b246096ad50ef7c8d9b7b31d757787aeb796368bcdd4454e4204c4/grpcio-1.81.0-cp314-cp314-win_amd64.whl",
hash =
"sha256:b93cee313cae4e113fbb3a0ce1ea5633db6f63cfde2b2dc1d817429026b2a50b", size
= 5070848, upload-time = "2026-06-01T05:56:19.735Z" },
+sdist = { url =
"https://files.pythonhosted.org/packages/b0/b5/1ff353970a87eda4c98251e34d2dfd214abd4982dc89119c9252a2a482d2/grpcio-1.81.1.tar.gz",
hash =
"sha256:6fa10a767143a5e82e8eaab53918af0cd8909a57a27f8cb2288b80a613ac671b", size
= 13026582, upload-time = "2026-06-11T12:46:51.673Z" }
+wheels = [
+ { url =
"https://files.pythonhosted.org/packages/85/07/9a979c81738863a738dc23d65177056e71fbb2db817740ed870b33434e7a/grpcio-1.81.1-cp312-cp312-linux_armv7l.whl",
hash =
"sha256:8b39472beafc0bdcafc4c8c73ad082ebfdb449d566897a61e7acb4fa88089115", size
= 6053264, upload-time = "2026-06-11T12:45:21.017Z" },
+ { url =
"https://files.pythonhosted.org/packages/75/95/539706ca0d3bd40dbad583dc56fd883da941f37556b629132da5762781b9/grpcio-1.81.1-cp312-cp312-macosx_11_0_universal2.whl",
hash =
"sha256:12b7524c88d4026d3dcb7b0ebe16b6714f3b4af402ddd0f0639ab064a00c87c3", size
= 12052560, upload-time = "2026-06-11T12:45:23.652Z" },
+ { url =
"https://files.pythonhosted.org/packages/e0/44/f257b7e0bd69c93b06c6cb8ac8d1b901ccb42bedabd83c1a4c77a71f8810/grpcio-1.81.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:1e123f9b37edb8375fd74130d1f69c944bbf0a7b06761ae7211154b8759e94d2", size
= 6595983, upload-time = "2026-06-11T12:45:26.963Z" },
+ { url =
"https://files.pythonhosted.org/packages/b9/f3/19782aa04c960968bef8c5539329d8e3bbc3364e2e46d19eb5e5cc5e43b7/grpcio-1.81.1-cp312-cp312-manylinux2014_i686.manylinux_2_17_i686.whl",
hash =
"sha256:2c2e2ae6867c2966b8daccc836d54a13218e0007e9a490aeb81dd05be64d22d7", size
= 7303455, upload-time = "2026-06-11T12:45:29.707Z" },
+ { url =
"https://files.pythonhosted.org/packages/eb/8c/dea020b6d91508cd84463917a63149ec196ee7db505d032ae43fcb3303b9/grpcio-1.81.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:766bc7c9a9c340342f4c864ccbda8e78111e4751f13b895812b9c148fb79e9d0", size
= 6809167, upload-time = "2026-06-11T12:45:32.52Z" },
+ { url =
"https://files.pythonhosted.org/packages/1c/c7/3030dd940408083bd32cd95d634777a71605ade4887154d93e8a89244946/grpcio-1.81.1-cp312-cp312-musllinux_1_2_aarch64.whl",
hash =
"sha256:b259a04a737cb3496be0901328eb8b7552ed8df4865d8c8f1cf1bffcfc0776a3", size
= 7412536, upload-time = "2026-06-11T12:45:35.403Z" },
+ { url =
"https://files.pythonhosted.org/packages/e0/dd/1172a9e42b168edcafefad6115346ef619a3fc02158bb170e66ced24bcdd/grpcio-1.81.1-cp312-cp312-musllinux_1_2_i686.whl",
hash =
"sha256:85b10a45b8993d195c4f3ff57025b8d1e11834909ee475c403bfa60cb4caefaf", size
= 8408276, upload-time = "2026-06-11T12:45:37.78Z" },
+ { url =
"https://files.pythonhosted.org/packages/25/7a/71437c7f3596e5246155c515852795a85a1a8d228190212432b13b97a95d/grpcio-1.81.1-cp312-cp312-musllinux_1_2_x86_64.whl",
hash =
"sha256:8ea1936c26b99999b27479853039a7f34713f56c49375ad52b38535ec93a796c", size
= 7849660, upload-time = "2026-06-11T12:45:40.627Z" },
+ { url =
"https://files.pythonhosted.org/packages/65/40/7debc0da45d2efebafb82da75644be347497fe4ee250514b8cd3b86ae8bf/grpcio-1.81.1-cp312-cp312-win32.whl",
hash =
"sha256:a185a04039df6cae8648bc8ab6d6fde7bf94f7188ecf7828e76ac52eef1e41d6", size
= 4185819, upload-time = "2026-06-11T12:45:43.027Z" },
+ { url =
"https://files.pythonhosted.org/packages/2e/b9/8fe3ba5ed462067774ebc1f9c7f26aa7ebcc280ddd476be107153de1339e/grpcio-1.81.1-cp312-cp312-win_amd64.whl",
hash =
"sha256:3ad74f8bb1a18963914c5452d289422830b39459e8776ebbcd207be1fbfb1d94", size
= 4930461, upload-time = "2026-06-11T12:45:45.775Z" },
+ { url =
"https://files.pythonhosted.org/packages/7a/42/dcc2e4b600538ef18327c0839d56b7d3c3812337c5d710df5877dbb39b1e/grpcio-1.81.1-cp313-cp313-linux_armv7l.whl",
hash =
"sha256:b10e1ff4756ed27d5a29d7fc79cfce7ef1ff56ad20025b89bac7cf79e09abbbe", size
= 6054466, upload-time = "2026-06-11T12:45:48.43Z" },
+ { url =
"https://files.pythonhosted.org/packages/7b/4a/a36e03210183a8a7d4c80c3936acee679f4bd77d5861f369db47b2cc5f05/grpcio-1.81.1-cp313-cp313-macosx_11_0_universal2.whl",
hash =
"sha256:819edbdcb42ab8598b494bcf0222684bbb7a3c772bd1b1f0be7e029a6063c28e", size
= 12048795, upload-time = "2026-06-11T12:45:54.011Z" },
+ { url =
"https://files.pythonhosted.org/packages/b0/d5/d68e30b29098f63beab6fe501100fe82674ff142b32c672532da86a99b3a/grpcio-1.81.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:c5bf2dc311127d91230cc79b92188c082634a06cf66c5234db49a43b910183b0", size
= 6599094, upload-time = "2026-06-11T12:45:57.799Z" },
+ { url =
"https://files.pythonhosted.org/packages/3d/b3/e837954d279754f638a11cca5dcf6b24a005efb398984cefaf7735945a54/grpcio-1.81.1-cp313-cp313-manylinux2014_i686.manylinux_2_17_i686.whl",
hash =
"sha256:e8ca6a1fcdb2943c9cbc1804a1baf3acb6071d72a471591678ded84218006e14", size
= 7307182, upload-time = "2026-06-11T12:46:00.568Z" },
+ { url =
"https://files.pythonhosted.org/packages/0d/1e/b47957057e729adc6cdf519a47f8be2562b7140e280f1418443eb4022192/grpcio-1.81.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:e64dd101d380a115cc5a0c7856788adb535f1a4e21fc543775602f8be95180ae", size
= 6810962, upload-time = "2026-06-11T12:46:03.312Z" },
+ { url =
"https://files.pythonhosted.org/packages/40/26/569868e364e05b19ec8f969da53d230bcd89c962cd198f7c29943155c4d3/grpcio-1.81.1-cp313-cp313-musllinux_1_2_aarch64.whl",
hash =
"sha256:98a07f9bf591e3a8919797bee1c53f026ba4acd587e5a4404c8e57c9ec36b2a5", size
= 7415698, upload-time = "2026-06-11T12:46:06.005Z" },
+ { url =
"https://files.pythonhosted.org/packages/36/0c/5440a0582cb5653fc42a6e262eeb22700943313f8076f9dc927491b20a59/grpcio-1.81.1-cp313-cp313-musllinux_1_2_i686.whl",
hash =
"sha256:c261d74b1a945cf895a9d6eccd1685a8e837531beaab782da4d630a8d12deffb", size
= 8407779, upload-time = "2026-06-11T12:46:08.84Z" },
+ { url =
"https://files.pythonhosted.org/packages/ff/aa/66fe9f39871d766987d869a03ee0842a026f499c7b1e62decb9e78a8088e/grpcio-1.81.1-cp313-cp313-musllinux_1_2_x86_64.whl",
hash =
"sha256:58ad1131c300d3c9b933802b3cc4dc69d380822935ba50b28703156ea826fbf7", size
= 7844521, upload-time = "2026-06-11T12:46:12.171Z" },
+ { url =
"https://files.pythonhosted.org/packages/f0/9e/69bb7194861bcd28fb3193261d4f9c3831b4446993f002cf59068943e7ab/grpcio-1.81.1-cp313-cp313-win32.whl",
hash =
"sha256:78e29211f26da2fdd0e9c6d2b79f489476140cf7029b6a64808ade7ca4156a42", size
= 4182786, upload-time = "2026-06-11T12:46:15.192Z" },
+ { url =
"https://files.pythonhosted.org/packages/0d/20/3da8bb0d637feccdc3e1e419bb511ce93651ce7d54164f95de22cc0b8b34/grpcio-1.81.1-cp313-cp313-win_amd64.whl",
hash =
"sha256:edb59506291b647a30884b1d51a599d605f40b20af4a7dc3d33786a47a31de60", size
= 4928648, upload-time = "2026-06-11T12:46:17.823Z" },
+ { url =
"https://files.pythonhosted.org/packages/b6/58/19414622b1bf6981bc9c05a365bd548e71876c89000083b3af489251e9c0/grpcio-1.81.1-cp314-cp314-linux_armv7l.whl",
hash =
"sha256:506f48f2f9c29b143fca3dad7b0d518c188b6c9648c75a2ae6e2d9f2c13a060b", size
= 6055336, upload-time = "2026-06-11T12:46:20.557Z" },
+ { url =
"https://files.pythonhosted.org/packages/32/f1/2ec88adb92b0eba970dd0e0e7dd086341daa3c75eba4f735f9e44bf684b0/grpcio-1.81.1-cp314-cp314-macosx_11_0_universal2.whl",
hash =
"sha256:d865db4a6318e1c1bea83292e0ed231090538fc4ca45425b0f0480eb338bbc6e", size
= 12056279, upload-time = "2026-06-11T12:46:24.255Z" },
+ { url =
"https://files.pythonhosted.org/packages/41/36/e8c5f8c6ec71de73733695ebc809e98b178b534ec6d8eaa31a7ebab4ad4c/grpcio-1.81.1-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.whl",
hash =
"sha256:e2aa72e3ce1770317ef534f63d397b55e130725f5149bd36077c3b539019db27", size
= 6608225, upload-time = "2026-06-11T12:46:27.601Z" },
+ { url =
"https://files.pythonhosted.org/packages/30/22/96fc577a845ab093326d9ab1adb874bd4936c8cf98ac8ed2f3db13a0a2fb/grpcio-1.81.1-cp314-cp314-manylinux2014_i686.manylinux_2_17_i686.whl",
hash =
"sha256:0490c30c261eded63f3f354979f9dc4502a9fb944cccb60cd9dc85f5a7349854", size
= 7306576, upload-time = "2026-06-11T12:46:30.514Z" },
+ { url =
"https://files.pythonhosted.org/packages/76/7b/61dab5d5969f28d97fb1009cead1df0a5cd987d3315e1b37f18a4449f8bc/grpcio-1.81.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.whl",
hash =
"sha256:410482da976329fe5f4067270401b12cf2bd552ff8020f054ecfaddb5475f9d6", size
= 6812165, upload-time = "2026-06-11T12:46:33.699Z" },
+ { url =
"https://files.pythonhosted.org/packages/82/78/6e501929d4f5f96462fd82fd9f0f06e5f9612207582b862868d68757b27d/grpcio-1.81.1-cp314-cp314-musllinux_1_2_aarch64.whl",
hash =
"sha256:e3657301562ac3cb8018d30d0d3ebfa39932239f7b5703422057ef14b69949f5", size
= 7422962, upload-time = "2026-06-11T12:46:36.511Z" },
+ { url =
"https://files.pythonhosted.org/packages/2a/7e/f2157589e66daa78ebb3165942d05a08bdea93b9d11c2bc1e172aef89685/grpcio-1.81.1-cp314-cp314-musllinux_1_2_i686.whl",
hash =
"sha256:24c8e57504c8f45b237e40b99262d181071e5099a07053695b75d97bb53053a0", size
= 8408176, upload-time = "2026-06-11T12:46:39.803Z" },
+ { url =
"https://files.pythonhosted.org/packages/da/df/c6717fef716e00d235ffb96123baf6dce76d6004f6233fa767c502861460/grpcio-1.81.1-cp314-cp314-musllinux_1_2_x86_64.whl",
hash =
"sha256:b427c19380991a4eaab2f6144b64b99b412043314c6bf4ab544f97bb31ee4190", size
= 7846681, upload-time = "2026-06-11T12:46:43.013Z" },
+ { url =
"https://files.pythonhosted.org/packages/36/84/3502e9f210a6a5c4438c8aca3f88edd2e04f6a27f3d41b26cf0a0024b096/grpcio-1.81.1-cp314-cp314-win32.whl",
hash =
"sha256:61233fe8951e5c85dff81c2458b6528624760166946b5b47ea150a589168411f", size
= 4264615, upload-time = "2026-06-11T12:46:45.741Z" },
+ { url =
"https://files.pythonhosted.org/packages/ff/b0/4af731ff7492c68a96e4c71bfd0f4590acde92b31c6fe4894e6465c10ff6/grpcio-1.81.1-cp314-cp314-win_amd64.whl",
hash =
"sha256:3768a5ff1b2125e6f552e561b6b2dca0e64982d8949689b4df145cf8b98d7821", size
= 5070275, upload-time = "2026-06-11T12:46:48.486Z" },
]
[[package]]
name = "idna"
-version = "2.10"
+version = "3.18"
source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/ea/b7/e0e3c1c467636186c39925827be42f16fee389dc404ac29e930e9136be70/idna-2.10.tar.gz",
hash =
"sha256:b307872f855b18632ce0c21c5e45be78c0ea7ae4c15c828c20788b26921eb3f6", size
= 175616, upload-time = "2020-06-27T23:45:05.21Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/cd/63/9496c57188a2ee585e0f1db071d75089a11e98aa86eb99d9d7618fc1edce/idna-3.18.tar.gz",
hash =
"sha256:ffb385a7e039654cef1ab9ef32c6fafe283c0c0467bba1d9029738ce4a14a848", size
= 196711, upload-time = "2026-06-02T14:34:07.794Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/a2/38/928ddce2273eaa564f6f50de919327bf3a00f091b5baba8dfa9460f3a8a8/idna-2.10-py2.py3-none-any.whl",
hash =
"sha256:b97d804b1e9b523befed77c48dacec60e6dcb0b5391d57af6a65a312a90648c0", size
= 58811, upload-time = "2020-06-27T23:45:03.457Z" },
+ { url =
"https://files.pythonhosted.org/packages/1e/5e/d4e9f1a599fb8e573b7b87160658329fbf28d19eac2718f51fc3def3aa5a/idna-3.18-py3-none-any.whl",
hash =
"sha256:7f952cbe720b688055e3f87de14f5c3e5fdaa8bc3928985c4077ca689de849a2", size
= 65455, upload-time = "2026-06-02T14:34:06.319Z" },
]
[[package]]
@@ -1610,30 +1671,30 @@ wheels = [
[[package]]
name = "requests"
-version = "2.25.1"
+version = "2.34.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "certifi" },
- { name = "chardet" },
+ { name = "charset-normalizer" },
{ name = "idna" },
{ name = "urllib3" },
]
-sdist = { url =
"https://files.pythonhosted.org/packages/6b/47/c14abc08432ab22dc18b9892252efaf005ab44066de871e72a38d6af464b/requests-2.25.1.tar.gz",
hash =
"sha256:27973dd4a904a4f13b263a19c866c13b92a39ed1c964655f025f3f8d3d75b804", size
= 102161, upload-time = "2020-12-16T19:38:36.779Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/ac/c3/e2a2b89f2d3e2179abd6d00ebd70bff6273f37fb3e0cc209f48b39d00cbf/requests-2.34.2.tar.gz",
hash =
"sha256:f288924cae4e29463698d6d60bc6a4da69c89185ad1e0bcc4104f584e960b9ed", size
= 142856, upload-time = "2026-05-14T19:25:27.735Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/29/c1/24814557f1d22c56d50280771a17307e6bf87b70727d975fd6b2ce6b014a/requests-2.25.1-py2.py3-none-any.whl",
hash =
"sha256:c210084e36a42ae6b9219e00e48287def368a26d03a048ddad7bfee44f75871e", size
= 61216, upload-time = "2020-12-16T19:38:34.329Z" },
+ { url =
"https://files.pythonhosted.org/packages/a0/f4/c67b0b3f1b9245e8d266f0f112c500d50e5b4e83cb6f3b71b6528104182a/requests-2.34.2-py3-none-any.whl",
hash =
"sha256:2a0d60c172f83ac6ab31e4554906c0f3b3588d37b5cb939b1c061f4907e278e0", size
= 73075, upload-time = "2026-05-14T19:25:26.443Z" },
]
[[package]]
name = "requests-oauthlib"
-version = "0.7.0"
+version = "2.0.0"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "oauthlib" },
{ name = "requests" },
]
-sdist = { url =
"https://files.pythonhosted.org/packages/46/9b/c28061cc63298bc29ff7d668e18c5293bb522e946aaeb98e4c552d2c0f7b/requests-oauthlib-0.7.0.tar.gz",
hash =
"sha256:198807c592b75438485c890f0403b1a8e363c86be1a87da687be18991a6850b0", size
= 82847, upload-time = "2016-09-22T12:00:20.926Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/42/f2/05f29bc3913aea15eb670be136045bf5c5bbf4b99ecb839da9b422bb2c85/requests-oauthlib-2.0.0.tar.gz",
hash =
"sha256:b3dffaebd884d8cd778494369603a9e7b58d29111bf6b41bdc2dcd87203af4e9", size
= 55650, upload-time = "2024-03-22T20:32:29.939Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/ff/2c/efaf0fdea8a6979d0ebee360771418345f1f0906bd478a908256df63ff51/requests_oauthlib-0.7.0-py2.py3-none-any.whl",
hash =
"sha256:87e1c05c1b4b4220af0c7ff4e6572ff7fba8032166cb1a12d2e1acd4a5fdaf4f", size
= 22334, upload-time = "2016-09-22T12:00:16.428Z" },
+ { url =
"https://files.pythonhosted.org/packages/3b/5d/63d4ae3b9daea098d5d6f5da83984853c1bbacd5dc826764b249fe119d24/requests_oauthlib-2.0.0-py2.py3-none-any.whl",
hash =
"sha256:7dd8a5c40426b779b0868c404bdef9768deccf22749cde15852df527e6269b36", size
= 24179, upload-time = "2024-03-22T20:32:28.055Z" },
]
[[package]]
@@ -1761,27 +1822,27 @@ wheels = [
[[package]]
name = "ruff"
-version = "0.15.16"
-source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/a6/bd/5f7ec371001337d8fa61701c186ff8b613ecac1651848c5950f4c4d5f2e9/ruff-0.15.16.tar.gz",
hash =
"sha256:d05e78d38c78caf020b03789e25106c93017db5a0cb6e2819885018c61343b78", size
= 4714267, upload-time = "2026-06-04T16:33:09.974Z" }
-wheels = [
- { url =
"https://files.pythonhosted.org/packages/0c/42/53ef1c3953f157956db9bf7861e3bc50b9b887ce93300aa48cdba8336fe6/ruff-0.15.16-py3-none-linux_armv6l.whl",
hash =
"sha256:6ac3c0b3969cc6cf6b158c4e2f8f682acb58e7d700d8a44b65ecdc72d66ab0b2", size
= 10709025, upload-time = "2026-06-04T16:32:51.935Z" },
- { url =
"https://files.pythonhosted.org/packages/93/9a/a79159346f19134a956607754e57d8d128f7a4c00f4ad2f7514d224c172c/ruff-0.15.16-py3-none-macosx_10_12_x86_64.whl",
hash =
"sha256:197c207ed75ffba54a0dec23db4aa939a27a3053073e085e0042433cbdc58e4a", size
= 11063550, upload-time = "2026-06-04T16:32:42.24Z" },
- { url =
"https://files.pythonhosted.org/packages/bc/72/3ce2ac000a5299ec238e01f51397b3b653c93b077d9b1bfe8715bb895f20/ruff-0.15.16-py3-none-macosx_11_0_arm64.whl",
hash =
"sha256:3a39fec45ab316cc23e7558f23fea4a70403ddb5648ea9a4a3854a16973d0071", size
= 10421345, upload-time = "2026-06-04T16:32:37.251Z" },
- { url =
"https://files.pythonhosted.org/packages/b0/c2/cc7fad3ec9169373f5b6a18f1917b91080feec40c3f9658334a1d28e2f03/ruff-0.15.16-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
hash =
"sha256:ba93191d79003116b95128c9d306e045200fdbd0bccb782b110f3cd1d4abc5cf", size
= 10757217, upload-time = "2026-06-04T16:32:54.722Z" },
- { url =
"https://files.pythonhosted.org/packages/69/d2/3474009eaa0a65b31fa7152a2fad5e2f050c640ceb1e6b02ee6922e94c82/ruff-0.15.16-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
hash =
"sha256:c6ee4b90520630120ef032aa5cc10db483852dff950e78b1d717e2993a61ac8d", size
= 10507035, upload-time = "2026-06-04T16:33:05.343Z" },
- { url =
"https://files.pythonhosted.org/packages/ca/81/b7ae6ccbd11f0c8dc3d5d67fc4be9b57ff57ca86ba56152021378e1277f2/ruff-0.15.16-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:4e4215bc938bc3c8215c1472c1aa437e310fee20cd427335fec9d7e609563628", size
= 11255291, upload-time = "2026-06-04T16:32:49.49Z" },
- { url =
"https://files.pythonhosted.org/packages/d9/e1/46e526f1a7cc90857ce6ddf25fbb77eb6568651ac38d71b033af07076dd5/ruff-0.15.16-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
hash =
"sha256:7c8d26be963b090f10e29abc8b3e74a2a321f6fa34e02424e30b5af89350ecbb", size
= 12124922, upload-time = "2026-06-04T16:33:07.821Z" },
- { url =
"https://files.pythonhosted.org/packages/1a/da/5c791b088b596b24d0deb967fa28ae02ad751a140c0b9ea81c5ab915d6c0/ruff-0.15.16-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl",
hash =
"sha256:f198cf4123602a2280ed46c307bcbafe41758d6fee5b456b6b6058ca1514b3b4", size
= 11332186, upload-time = "2026-06-04T16:33:02.971Z" },
- { url =
"https://files.pythonhosted.org/packages/72/11/5da87abe20047c8962361473923ebb2f62b595250126aadfad8c20649c1e/ruff-0.15.16-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:bb27515fa6240fb586ae82b901a59e67d24acff86f2190b433dc542fe0435aeb", size
= 11373541, upload-time = "2026-06-04T16:32:47.007Z" },
- { url =
"https://files.pythonhosted.org/packages/fe/2a/8554754c23a854ae3fd6b507e36ad61ddb121e298c6d5d617dec94ed0f14/ruff-0.15.16-py3-none-manylinux_2_31_riscv64.whl",
hash =
"sha256:a267c46ba1593fc26b8eecbea050b39d40c0b6bb7781ee11c90a02cd10032951", size
= 11353014, upload-time = "2026-06-04T16:32:34.795Z" },
- { url =
"https://files.pythonhosted.org/packages/62/25/62ea41529ec89f742ea3fed9cb1059c72877ec7cf9b9e99ac9cf3294d1d9/ruff-0.15.16-py3-none-musllinux_1_2_aarch64.whl",
hash =
"sha256:528c68f39a91498a8d50e91ff5985df3d105782bab49cc378e73ac26bff083e8", size
= 10737467, upload-time = "2026-06-04T16:32:26.348Z" },
- { url =
"https://files.pythonhosted.org/packages/90/17/334d3ad9de4d40f9dd58fdd09e35ce64553bb501e2f19a839e2fb6be14fc/ruff-0.15.16-py3-none-musllinux_1_2_armv7l.whl",
hash =
"sha256:7ed55c58950df60589a9a7a5d2f8fa5f54ebd287163be805adfe6ee95a9de123", size
= 10521910, upload-time = "2026-06-04T16:32:32.54Z" },
- { url =
"https://files.pythonhosted.org/packages/4d/bd/3ac7c6ae77a885c1004b3dda2446ea401768d24f851c14b4ad4b24f6639c/ruff-0.15.16-py3-none-musllinux_1_2_i686.whl",
hash =
"sha256:d482feaf51512b50f9790ceb417a56a61dd1e9d9bf967662b9ed27c01b34f53a", size
= 10979190, upload-time = "2026-06-04T16:32:57.492Z" },
- { url =
"https://files.pythonhosted.org/packages/33/d7/609546e6a413c3f216fbf2a50c928f97c80939154f6a0503114094a86191/ruff-0.15.16-py3-none-musllinux_1_2_x86_64.whl",
hash =
"sha256:1e15bc8c94513dae2a40cc9ef07c94fdd4ecc9e29dabebeebe170f952322c9e3", size
= 11477014, upload-time = "2026-06-04T16:32:44.687Z" },
- { url =
"https://files.pythonhosted.org/packages/74/0d/f2cd247ad32633a5c36e97141a2c21b11c6279f7957bc2ff360b1e08fddd/ruff-0.15.16-py3-none-win32.whl",
hash =
"sha256:580378f7bd4aa25f72e74aa54948a9622f142b1e509521dd10902e886681cc1e", size
= 10735541, upload-time = "2026-06-04T16:32:30.145Z" },
- { url =
"https://files.pythonhosted.org/packages/8b/9e/02e845ef151b1dee585e55c4739f8e1734ae1d9f1221dff65761c162208b/ruff-0.15.16-py3-none-win_amd64.whl",
hash =
"sha256:408256017284eddf98fff77b29aa4fb30f586042d535b2d9befc6512f400aaec", size
= 11843403, upload-time = "2026-06-04T16:32:39.76Z" },
- { url =
"https://files.pythonhosted.org/packages/15/19/016553f86f207450aebebc2b2b5088d086b901cc8186c02ac4284db3bd88/ruff-0.15.16-py3-none-win_arm64.whl",
hash =
"sha256:8cd61783afb39638a7133ef0d2dfb1e91277593962f81b5a8423eb0b888a6121", size
= 11134555, upload-time = "2026-06-04T16:33:00.136Z" },
+version = "0.15.17"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url =
"https://files.pythonhosted.org/packages/8c/a9/3abdf488f1bf3d24c699415e454ed554a6350d5d89ce183be1ee0a3361ac/ruff-0.15.17.tar.gz",
hash =
"sha256:2ec446937fd16c8c4de2674a209cc5af64d9c6f17d21fbf1151054fa0bcf5219", size
= 4743346, upload-time = "2026-06-11T17:54:47.663Z" }
+wheels = [
+ { url =
"https://files.pythonhosted.org/packages/db/4d/e11259f5da07cb6afb2d074c31bf09da9671993f7329d4f15d2fdc458301/ruff-0.15.17-py3-none-linux_armv6l.whl",
hash =
"sha256:d9feddb927fc68bd295f5eebc587a7e42cfaf9b65f60ca4a2386febff575da8f", size
= 10856677, upload-time = "2026-06-11T17:54:49.533Z" },
+ { url =
"https://files.pythonhosted.org/packages/29/3e/772d679e1a0dc058e58875bd2c0cb713a0530877b4a76fee3c7966df0d49/ruff-0.15.17-py3-none-macosx_10_12_x86_64.whl",
hash =
"sha256:25805a226d741c47d274a35ad5c10a7dde175fcddfa511d7cf3da0a21eb3eab7", size
= 11223443, upload-time = "2026-06-11T17:55:00.573Z" },
+ { url =
"https://files.pythonhosted.org/packages/68/58/bd41f7688b2fd5623012605130ed70e60aa7f2244baa3d5066bdd61530c8/ruff-0.15.17-py3-none-macosx_11_0_arm64.whl",
hash =
"sha256:f6ad73b14c2d18a3bf8ad7cb6974294d7f613a7898604826058e6ac64918ef4d", size
= 10566458, upload-time = "2026-06-11T17:55:07.52Z" },
+ { url =
"https://files.pythonhosted.org/packages/d8/5b/733371013fcf1ec339e477ece6ab42bfe10bdd9bba8ee88a9516aa56bfc0/ruff-0.15.17-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
hash =
"sha256:6ba0c1e4f95bcb3869d0d30cbd5917071ef2e28665abfec970cdab0492c713ed", size
= 10914483, upload-time = "2026-06-11T17:55:05.501Z" },
+ { url =
"https://files.pythonhosted.org/packages/bd/cc/6f24251cc0252f7239391ccb85833f320efad14ebe5b443943f37ced6332/ruff-0.15.17-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
hash =
"sha256:81647960f10bff57d2e51cadd0c3950fe598400c852863a038720ef5b8cca91e", size
= 10647497, upload-time = "2026-06-11T17:54:57.733Z" },
+ { url =
"https://files.pythonhosted.org/packages/68/dd/0d10c17ce1a1624d6fc3156309c3f834fdb5dfaad026ec90c85684f3990e/ruff-0.15.17-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:0e01a84ddbc8c16c23055ba3924476850f1bbc1917cebbb9376665a63e74260d", size
= 11416967, upload-time = "2026-06-11T17:54:51.461Z" },
+ { url =
"https://files.pythonhosted.org/packages/2f/91/556bfb156f6144f355e831c23db00b2fc4120f86b3ce81cc5f7fd2df51f3/ruff-0.15.17-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
hash =
"sha256:84fe9f653152f8f294f9f7e03bf3a453d8b4a27f7a59c78c8666167f2b17b96c", size
= 12335770, upload-time = "2026-06-11T17:54:45.793Z" },
+ { url =
"https://files.pythonhosted.org/packages/88/82/8b5999aa13355e926f06d9f42a32dcca862f623bf0363785ff89d607dffd/ruff-0.15.17-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl",
hash =
"sha256:8c0fe88a7676e7a05b73174d4d4a59cb2ac21ff8263583f87a81a6018475a978", size
= 11575441, upload-time = "2026-06-11T17:54:32.661Z" },
+ { url =
"https://files.pythonhosted.org/packages/11/93/f10377bb04109ca0e8cbc483ff1982c54b6d418210041776f93e8cdc7fa9/ruff-0.15.17-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:ecfc3c7878fff94633ab0348524e093f9ce3243080416dd7d14f8ba400174719", size
= 11557614, upload-time = "2026-06-11T17:54:34.698Z" },
+ { url =
"https://files.pythonhosted.org/packages/c7/a6/eeeae7f7d5493df41649ab3db92f086b2d0a30199e4efdf8e3dd7a033f24/ruff-0.15.17-py3-none-manylinux_2_31_riscv64.whl",
hash =
"sha256:b8461180b22420b1bdc289909410930761629fddf2a5aaf60fae1ab26cedc4c4", size
= 11544450, upload-time = "2026-06-11T17:54:39.042Z" },
+ { url =
"https://files.pythonhosted.org/packages/32/88/5991ce565129a24dd4a00db1254b3b5db2e53018cbe4018ea5a89738e727/ruff-0.15.17-py3-none-musllinux_1_2_aarch64.whl",
hash =
"sha256:6eccbe50a038b503e7140b441aa9c7fc8c1f36edf23ebef9f4165c2f28f568b7", size
= 10892524, upload-time = "2026-06-11T17:55:09.432Z" },
+ { url =
"https://files.pythonhosted.org/packages/f5/1d/0fdd248313425f55223968af04b0a42125466a8d88d21c1d99c6af0a51e8/ruff-0.15.17-py3-none-musllinux_1_2_armv7l.whl",
hash =
"sha256:382fc0521025f5a8ad447d8bdd523545d0d7646adb718eb1c2dac5065ec27c0f", size
= 10659573, upload-time = "2026-06-11T17:54:36.824Z" },
+ { url =
"https://files.pythonhosted.org/packages/9e/0e/072e8260deb9461062ce9311ced27a8e541229a6ffd483013dd37661e43e/ruff-0.15.17-py3-none-musllinux_1_2_i686.whl",
hash =
"sha256:456d41fcd1b2777ad63f09a6e7121d43f7b688bbc76a800c10f7f8fb1f912c3f", size
= 11127818, upload-time = "2026-06-11T17:55:03.124Z" },
+ { url =
"https://files.pythonhosted.org/packages/ab/b4/55060a34163121498014696b5f656db5b8c6963768f227dbf0d76b311073/ruff-0.15.17-py3-none-musllinux_1_2_x86_64.whl",
hash =
"sha256:b1a04bcc94ae6194e9db05d16ad31f298a7194bfbcb08258bbe589cee1d587b8", size
= 11655901, upload-time = "2026-06-11T17:54:53.562Z" },
+ { url =
"https://files.pythonhosted.org/packages/49/71/9b29d6b87cef468d697f43c6a91e3fae4a80185779d7d5a4ef27d173439f/ruff-0.15.17-py3-none-win32.whl",
hash =
"sha256:596065960ab1ff593f744220c9fe6580eda00a95003cffa9f4048bb5b1bf0392", size
= 10925574, upload-time = "2026-06-11T17:54:55.723Z" },
+ { url =
"https://files.pythonhosted.org/packages/3d/b2/8fc77f3723228836fa5d12497eb71c808f83782e10d058d2b15cfa14640b/ruff-0.15.17-py3-none-win_amd64.whl",
hash =
"sha256:6769e5fa1710b179b92e0bfa5a51735b35baea9013dadb06d5f44cbcf9547084", size
= 12058788, upload-time = "2026-06-11T17:54:41.042Z" },
+ { url =
"https://files.pythonhosted.org/packages/2d/c7/c53e8dbff9c9dc4b7928773421ae294a5d28fcb8dcda1a089579d3a7e510/ruff-0.15.17-py3-none-win_arm64.whl",
hash =
"sha256:f3be1fbb34bcdfd146240d8fb92a709d4c2c8191348580a3c044ec60fa0b4456", size
= 11355275, upload-time = "2026-06-11T17:54:43.635Z" },
]
[[package]]
@@ -1884,27 +1945,27 @@ wheels = [
[[package]]
name = "ty"
-version = "0.0.48"
-source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/0c/ad/7a6568b4a8dbb6531ef4f13cd5658e0e4fbd18b890a137b96e1ac87638d5/ty-0.0.48.tar.gz",
hash =
"sha256:aa54d69b755ea3f765975abdc5fe41f8daca45b1aabc57f91ddd3bd4b7e0c2de", size
= 5868533, upload-time = "2026-06-10T22:36:10.899Z" }
-wheels = [
- { url =
"https://files.pythonhosted.org/packages/92/14/6872bdcd4b2da07c9edebafa22280020b4bc46fe0dcfaad3900cf5b7eede/ty-0.0.48-py3-none-linux_armv6l.whl",
hash =
"sha256:a6709c6a043524fa36735448e87c902d428033c5f3df7cdf81361ed93b99552c", size
= 11810553, upload-time = "2026-06-10T22:35:40.08Z" },
- { url =
"https://files.pythonhosted.org/packages/7d/5c/5f1ee9ee82e05ec7e5456d07ee488776003e3bcc77acdf863b5b14880465/ty-0.0.48-py3-none-macosx_10_12_x86_64.whl",
hash =
"sha256:f52a04c3f9e464860e2ce44afa60d98079c5e09e4e4940990ebe5f3ba9cf3dff", size
= 11559964, upload-time = "2026-06-10T22:36:12.816Z" },
- { url =
"https://files.pythonhosted.org/packages/cd/15/933a57a0bdbbfa82f0c7cf884d45155628edc2d44e8afe9d8a172aafc0d7/ty-0.0.48-py3-none-macosx_11_0_arm64.whl",
hash =
"sha256:cd3cb6ee735cfb544e1d6c7cabda7164fd29d1a3ded84f22f092495530faafe2", size
= 10950220, upload-time = "2026-06-10T22:35:35.811Z" },
- { url =
"https://files.pythonhosted.org/packages/77/f2/12acd376cc719ebcff1d76efc1cafcc98a24c0f6fb23e730860024cdd965/ty-0.0.48-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
hash =
"sha256:5846c1c9e1777e60fa204d9b7c912e8db8647bdc8d4fcb176ccb3278ed96635a", size
= 11485715, upload-time = "2026-06-10T22:35:53.229Z" },
- { url =
"https://files.pythonhosted.org/packages/6f/db/b839e397f016274a175f71c53b959007ab5bb1c2928746fbb4a7a2c61153/ty-0.0.48-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
hash =
"sha256:518d08a7194a5d3d07b5f459cace1e2a3a8d67c58e27b092bc948078c03fdad9", size
= 11593310, upload-time = "2026-06-10T22:35:46.617Z" },
- { url =
"https://files.pythonhosted.org/packages/dc/39/908e9c2141ff133452552b1f0b0c278b52812047ea671b59dfb064f1180c/ty-0.0.48-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:bea4240fd52b1405c090c649bf1786a995f0809499e1a8bedf6a6a372f925a98", size
= 12048829, upload-time = "2026-06-10T22:36:06.842Z" },
- { url =
"https://files.pythonhosted.org/packages/e6/51/aa0e5fae345cd5fea8a8d5cfce6a900604ea42b99b3d6b7da99787e60505/ty-0.0.48-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
hash =
"sha256:7c5241363be03c1ca0cd2b60c5ccf55a5f2803ddfa80fd61944b405fc21226c1", size
= 12642932, upload-time = "2026-06-10T22:35:59.962Z" },
- { url =
"https://files.pythonhosted.org/packages/32/d0/6928525166890b04cbb9fc75d6308dbda3bdd81d1c076dade2d36c2276a6/ty-0.0.48-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl",
hash =
"sha256:e22ede258dd37a3117db0259fc80001615a6dfddc36dbb0371253f97fd7fd817", size
= 12279019, upload-time = "2026-06-10T22:35:42.036Z" },
- { url =
"https://files.pythonhosted.org/packages/ef/3d/7cb614c74f8883720034ca5ee9ce3d213aff762ad87f50315b50fad705ce/ty-0.0.48-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:ee756f22cfc8e72c8e01c695c0b97caab6de1df1a299e7c7c6e31a6249441fed", size
= 12145259, upload-time = "2026-06-10T22:35:38.02Z" },
- { url =
"https://files.pythonhosted.org/packages/f7/44/391886e74ef7d126aeb1096fc0002a595d99ed87febfb9fe0b2b859325e6/ty-0.0.48-py3-none-manylinux_2_31_riscv64.whl",
hash =
"sha256:05ebfcc99da65786ba42ddb9cab9c1f2d50ad66493f512242fce40036c51fb98", size
= 12339393, upload-time = "2026-06-10T22:35:55.216Z" },
- { url =
"https://files.pythonhosted.org/packages/7d/42/dcfe9ace7cbdf6c9a242b26ed7281c692fdf054468255422b277753dd296/ty-0.0.48-py3-none-musllinux_1_2_aarch64.whl",
hash =
"sha256:11f88996c497cb08a33fb5019ea66d096bba469d23b2fed53ee604dff5fd94ae", size
= 11442355, upload-time = "2026-06-10T22:36:01.975Z" },
- { url =
"https://files.pythonhosted.org/packages/d5/13/fbd8aabf8fc2034c70538b3ce472ada31391d5e7c86f9ea724940afdf43b/ty-0.0.48-py3-none-musllinux_1_2_armv7l.whl",
hash =
"sha256:70e5e4edbdec56c146f085617f085ae4c7d5dfecbefccef51e093f506af9b02e", size
= 11602499, upload-time = "2026-06-10T22:36:04.41Z" },
- { url =
"https://files.pythonhosted.org/packages/64/09/44e53ac462952f8988aa27a5c141c2f3535fc4fcb68f571d80baf73939e4/ty-0.0.48-py3-none-musllinux_1_2_i686.whl",
hash =
"sha256:d420c3478f338511e47a2987052e5099b7f67aa0ab725e5e1e2f5658d11099bd", size
= 11711851, upload-time = "2026-06-10T22:35:44.517Z" },
- { url =
"https://files.pythonhosted.org/packages/89/15/b1b22a01094ce9b2a5ecaf6fe1530490dc25b0260551d702e881b2601014/ty-0.0.48-py3-none-musllinux_1_2_x86_64.whl",
hash =
"sha256:0bf036e2e3a359c1e83883a46a4d2076617511d7329fe5421c7d158f28e19615", size
= 12230497, upload-time = "2026-06-10T22:35:57.714Z" },
- { url =
"https://files.pythonhosted.org/packages/74/e9/9bba0e7fcc3a5058d7fa55be410356991925cc0f6546ccd1eb0821aee48f/ty-0.0.48-py3-none-win32.whl",
hash =
"sha256:19ad4acd4347ca3e206e7455c2a05fba228e1b3186463517bcb783f88885ff78", size
= 11048763, upload-time = "2026-06-10T22:35:49.049Z" },
- { url =
"https://files.pythonhosted.org/packages/bd/6a/71d815058affbbc26d43538002c74203cf6a72a4b342981fc13324e64412/ty-0.0.48-py3-none-win_amd64.whl",
hash =
"sha256:1f496d799abab6e5a26c901a049163f171aa1b40c8e418cdf76adf3444d1b0db", size
= 12188589, upload-time = "2026-06-10T22:36:08.938Z" },
- { url =
"https://files.pythonhosted.org/packages/1a/fe/a8f8ad81612ab7f75a170c70710f8d2c4ada39e86b827a4e524086f50c24/ty-0.0.48-py3-none-win_arm64.whl",
hash =
"sha256:77c94e4484897c3a184821cd56274b71f1c001663331f9c1ba06ac889633bff6", size
= 11542770, upload-time = "2026-06-10T22:35:51.122Z" },
+version = "0.0.49"
+source = { registry = "https://pypi.org/simple" }
+sdist = { url =
"https://files.pythonhosted.org/packages/1d/8d/37cb91808069509d43a2a11743e12f1e854fd808dbef2203309d256718cd/ty-0.0.49.tar.gz",
hash =
"sha256:0a027bd0c9c75d035641a365d087ad883446057f9be0b9826251c2aecafbf145", size
= 5884753, upload-time = "2026-06-12T03:08:20.221Z" }
+wheels = [
+ { url =
"https://files.pythonhosted.org/packages/ca/de/9237c6a96356612dd0393db1e94cf21f903616adf3a3701bf3da6e4adc92/ty-0.0.49-py3-none-linux_armv6l.whl",
hash =
"sha256:12c0c4310b936d762a8586c210b53d4fa4bb361a04429afa89bf84b922e5e065", size
= 11834671, upload-time = "2026-06-12T03:07:53.062Z" },
+ { url =
"https://files.pythonhosted.org/packages/8f/15/daf5a14a5e07012277d450c75325c94614e2acfec4c620c881486118c410/ty-0.0.49-py3-none-macosx_10_12_x86_64.whl",
hash =
"sha256:737bfdc2caf9712a8580944dcdc80a450a37a4f2bc83c8fa9b7433b374f9e471", size
= 11589570, upload-time = "2026-06-12T03:08:25.779Z" },
+ { url =
"https://files.pythonhosted.org/packages/7d/58/30bdf98436488aca25f0763bf7f92a061528d42461b686453029e845e4c5/ty-0.0.49-py3-none-macosx_11_0_arm64.whl",
hash =
"sha256:ab90c1baf3b1701d282fce4b02fa552a962d109f8972c46ef6b22429503bfea4", size
= 10985236, upload-time = "2026-06-12T03:08:36.664Z" },
+ { url =
"https://files.pythonhosted.org/packages/22/45/ece503e4a1396e13a1a9a0cde51afe476a6506a1d557eeadf8ad45c83bc0/ty-0.0.49-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
hash =
"sha256:b4ce8ecf6ba6fc79bd137cc0557a754f7e5f2dfe9436412551d480d680e248ad", size
= 11504302, upload-time = "2026-06-12T03:08:01.664Z" },
+ { url =
"https://files.pythonhosted.org/packages/17/dc/5d09333d289dfbca1804eaade125c9e8a1a992a2a592a8b80c5e9b589ca9/ty-0.0.49-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl",
hash =
"sha256:10d85c6865c984e78661e0bd20b180514b4a289739224e84816e342bdf381e04", size
= 11626629, upload-time = "2026-06-12T03:08:06.844Z" },
+ { url =
"https://files.pythonhosted.org/packages/f2/36/155f41c9dd7237c4b609211f29f77755a139ee6218605dadc7fe21d5e3c8/ty-0.0.49-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl",
hash =
"sha256:1d96a67a206619e01fa92f35a22267ec634bba62be24b1d0e947020cc179995b", size
= 12074481, upload-time = "2026-06-12T03:08:09.643Z" },
+ { url =
"https://files.pythonhosted.org/packages/96/4c/998ee13cd5045f1f8b36982de7343163832ac53f27debe01b0de0e8bd968/ty-0.0.49-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl",
hash =
"sha256:3de9f648564e0a66344ef397770387cb0d093735f8679d2c5a08a4741e79814d", size
= 12678042, upload-time = "2026-06-12T03:08:39.319Z" },
+ { url =
"https://files.pythonhosted.org/packages/85/c9/9a505aba85c41ce54cbcaa14f8d79aa084b86151d2d70df11c4655b92898/ty-0.0.49-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl",
hash =
"sha256:5779179ab397d15f8c9dbb8f506ec1b1745f54eac639982f76ef3ce538943b50", size
= 12316194, upload-time = "2026-06-12T03:08:18.023Z" },
+ { url =
"https://files.pythonhosted.org/packages/c9/b8/ded37fb93503294abbc83c36470bb1413bea05048b745881d4470b518a06/ty-0.0.49-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
hash =
"sha256:792d4974e93cc09bd32f934586080bbbe21b8e777099cb521cb2de18b68a49f0", size
= 12145507, upload-time = "2026-06-12T03:07:56.505Z" },
+ { url =
"https://files.pythonhosted.org/packages/2f/07/392e80d78f02445f695b815bb9eb0fffacda68b03faee38c900f7b990815/ty-0.0.49-py3-none-manylinux_2_31_riscv64.whl",
hash =
"sha256:727bda86deb136073e525c2e78d60e38aedcce5d80579170844a52bbf7c1440d", size
= 12365967, upload-time = "2026-06-12T03:08:12.553Z" },
+ { url =
"https://files.pythonhosted.org/packages/50/d3/31b0c2a7fbedd3373e389cb1d81b8d2128f6f868fafb46557736a6f9aca8/ty-0.0.49-py3-none-musllinux_1_2_aarch64.whl",
hash =
"sha256:4f2fc2bc4a8d2ff1cca59fd94772cabdfec4062d47a0b3a0784be46d94d0540b", size
= 11475283, upload-time = "2026-06-12T03:08:28.334Z" },
+ { url =
"https://files.pythonhosted.org/packages/5a/5b/329e101638920b468a3bb63059c9f66ef99b44aac501222c44832a507321/ty-0.0.49-py3-none-musllinux_1_2_armv7l.whl",
hash =
"sha256:3724bd9badef333321578b6a941fbc571ebf49141ec2356a8590fbe4c9aa588d", size
= 11645343, upload-time = "2026-06-12T03:08:15.246Z" },
+ { url =
"https://files.pythonhosted.org/packages/a9/76/c897e615e32f80ca81c8c1bc49b9a1f72ff9e3cfea0f8345ba505fe28472/ty-0.0.49-py3-none-musllinux_1_2_i686.whl",
hash =
"sha256:166c6eb52ee4af3c5a9bb267d165d93000daa55c6758cd8ff3199741fb75917d", size
= 11725585, upload-time = "2026-06-12T03:08:33.915Z" },
+ { url =
"https://files.pythonhosted.org/packages/59/e1/fdb42ee239f618800842681af5bb8598117e74512c10974a8b7b9086a898/ty-0.0.49-py3-none-musllinux_1_2_x86_64.whl",
hash =
"sha256:91e81d832c287b05782ee32eb1b801f62c1fa08df37d589d2b88c3f1d51c9731", size
= 12237261, upload-time = "2026-06-12T03:08:31.105Z" },
+ { url =
"https://files.pythonhosted.org/packages/98/0f/a2d6a5fc9d0786cbeb3c200786da4e18c203589be3984bb5def83ca92320/ty-0.0.49-py3-none-win32.whl",
hash =
"sha256:7186af5ca9829d1f5d8916bcf767b8e819bfbf61b1b8ec843bb3fc699cb502e1", size
= 11100789, upload-time = "2026-06-12T03:07:59.092Z" },
+ { url =
"https://files.pythonhosted.org/packages/d0/9d/473ac8bc57b5a2d121da893bf9dd74a118efb19a01d711df1a6e397f05cc/ty-0.0.49-py3-none-win_amd64.whl",
hash =
"sha256:ae2142fc126a01effcca0c222908b0e6654b5ba1266d4e4d406e4866aef8e1d1", size
= 12204644, upload-time = "2026-06-12T03:08:04.327Z" },
+ { url =
"https://files.pythonhosted.org/packages/ef/a2/8959249da951ba3977fee20e688d28678b8a1d30a9ed4464228a85d45853/ty-0.0.49-py3-none-win_arm64.whl",
hash =
"sha256:75d5e2e7649765f31f4bed6c8adb149a75b18edd3fa6336dac4d0efc1a66466f", size
= 11558965, upload-time = "2026-06-12T03:08:23.012Z" },
]
[[package]]
@@ -1939,11 +2000,11 @@ wheels = [
[[package]]
name = "urllib3"
-version = "1.26.20"
+version = "2.7.0"
source = { registry = "https://pypi.org/simple" }
-sdist = { url =
"https://files.pythonhosted.org/packages/e4/e8/6ff5e6bc22095cfc59b6ea711b687e2b7ed4bdb373f7eeec370a97d7392f/urllib3-1.26.20.tar.gz",
hash =
"sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32", size
= 307380, upload-time = "2024-08-29T15:43:11.37Z" }
+sdist = { url =
"https://files.pythonhosted.org/packages/53/0c/06f8b233b8fd13b9e5ee11424ef85419ba0d8ba0b3138bf360be2ff56953/urllib3-2.7.0.tar.gz",
hash =
"sha256:231e0ec3b63ceb14667c67be60f2f2c40a518cb38b03af60abc813da26505f4c", size
= 433602, upload-time = "2026-05-07T16:13:18.596Z" }
wheels = [
- { url =
"https://files.pythonhosted.org/packages/33/cf/8435d5a7159e2a9c83a95896ed596f68cf798005fe107cc655b5c5c14704/urllib3-1.26.20-py2.py3-none-any.whl",
hash =
"sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e", size
= 144225, upload-time = "2024-08-29T15:43:08.921Z" },
+ { url =
"https://files.pythonhosted.org/packages/7f/3e/5db95bcf282c52709639744ca2a8b149baccf648e39c8cc87553df9eae0c/urllib3-2.7.0-py3-none-any.whl",
hash =
"sha256:9fb4c81ebbb1ce9531cce37674bbc6f1360472bc18ca9a553ede278ef7276897", size
= 131087, upload-time = "2026-05-07T16:13:17.151Z" },
]
[[package]]
@@ -1960,9 +2021,9 @@ name = "yarl"
version = "1.24.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
- { name = "idna", marker = "python_full_version < '3.14'" },
- { name = "multidict", marker = "python_full_version < '3.14'" },
- { name = "propcache", marker = "python_full_version < '3.14'" },
+ { name = "idna" },
+ { name = "multidict" },
+ { name = "propcache" },
]
sdist = { url =
"https://files.pythonhosted.org/packages/79/12/1e8f37460ea0f7eb59c221fdaf0ed75e7ac43e97f8093b9c6f411df50a78/yarl-1.24.2.tar.gz",
hash =
"sha256:9ac374123c6fd7abf64d1fec93962b0bd4ee2c19751755a762a72dd96c0378f8", size
= 210798, upload-time = "2026-05-19T21:31:05.599Z" }
wheels = [