diff --git a/.github/workflows/dependency-audit.yml b/.github/workflows/dependency-audit.yml index c81f1ebc8..b4a30c6ab 100644 --- a/.github/workflows/dependency-audit.yml +++ b/.github/workflows/dependency-audit.yml @@ -12,8 +12,10 @@ on: - "packages/yuxi-cli/uv.lock" - "web/package.json" - "web/pnpm-lock.yaml" + - "web/pnpm-workspace.yaml" - "docs/package.json" - "docs/pnpm-lock.yaml" + - "docs/pnpm-workspace.yaml" - "scripts/dependency-audit-fixtures/**" push: branches: [main] @@ -27,8 +29,10 @@ on: - "packages/yuxi-cli/uv.lock" - "web/package.json" - "web/pnpm-lock.yaml" + - "web/pnpm-workspace.yaml" - "docs/package.json" - "docs/pnpm-lock.yaml" + - "docs/pnpm-workspace.yaml" - "scripts/dependency-audit-fixtures/**" workflow_dispatch: @@ -48,14 +52,13 @@ jobs: - uses: actions/checkout@v7 - uses: astral-sh/setup-uv@v7 with: - version: "0.11.7" + version: "0.12.6" - uses: actions/setup-python@v7 with: python-version: "3.12" - name: Audit locked Python vulnerabilities working-directory: backend - # The locked PyTorch 2.12.1 wheels require setuptools<82 and no compatible 2.13 CPU pair is available yet. - run: uv audit --locked --no-dev --ignore GHSA-h35f-9h28-mq5c --ignore GHSA-rrmf-rvhw-rf47 + run: uv audit --locked --no-dev - name: Exercise Python audit negative control run: | if uv audit --script scripts/dependency-audit-fixtures/vulnerable.py >python-audit-negative.log 2>&1; then @@ -86,7 +89,7 @@ jobs: - uses: actions/checkout@v7 - uses: pnpm/action-setup@v6 with: - version: 10.11.0 + version: 11.24.0 - uses: actions/setup-node@v7 with: node-version: 22 diff --git a/.github/workflows/publish-yuxi-cli.yml b/.github/workflows/publish-yuxi-cli.yml index 1a983cb06..29e08383d 100644 --- a/.github/workflows/publish-yuxi-cli.yml +++ b/.github/workflows/publish-yuxi-cli.yml @@ -27,7 +27,7 @@ jobs: - name: Install uv uses: astral-sh/setup-uv@v7 with: - version: "0.7.2" + version: "0.12.6" - name: Set up Python uses: actions/setup-python@v7 diff --git a/.github/workflows/ruff.yml b/.github/workflows/ruff.yml index 20027c232..6baaf6ce3 100644 --- a/.github/workflows/ruff.yml +++ b/.github/workflows/ruff.yml @@ -45,7 +45,7 @@ jobs: - name: Install uv uses: astral-sh/setup-uv@v7 with: - version: "0.7.2" + version: "0.12.6" # 3. 设置 Python 环境 - name: Set up Python diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 6b4f11bce..dfcfeb8bb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -51,7 +51,7 @@ jobs: - name: Install uv uses: astral-sh/setup-uv@v7 with: - version: "0.7.2" + version: "0.12.6" - name: Set up Python uses: actions/setup-python@v7 diff --git a/.github/workflows/trust.yml b/.github/workflows/trust.yml index 40d34525c..01e7eb485 100644 --- a/.github/workflows/trust.yml +++ b/.github/workflows/trust.yml @@ -25,3 +25,5 @@ jobs: run: python3 -m unittest scripts.test_verify_engineering_contracts - name: Verify dependency update policy run: python3 -m unittest scripts.test_dependency_update_policy + - name: Verify release version synchronization + run: python3 -m unittest scripts.test_bump_version diff --git a/.github/workflows/web.yml b/.github/workflows/web.yml index cc57ba587..d2465d468 100644 --- a/.github/workflows/web.yml +++ b/.github/workflows/web.yml @@ -26,7 +26,7 @@ jobs: - uses: actions/checkout@v7 - uses: pnpm/action-setup@v6 with: - version: 10.11.0 + version: 11.24.0 - uses: actions/setup-node@v7 with: node-version: 22 diff --git a/Makefile b/Makefile index f218fe97c..b19273ee7 100644 --- a/Makefile +++ b/Makefile @@ -65,10 +65,10 @@ test: verify-trust: python3 scripts/verify_engineering_contracts.py - python3 -m unittest scripts.test_verify_engineering_contracts + python3 -m unittest scripts.test_verify_engineering_contracts scripts.test_bump_version audit-dependencies: - cd backend && uv audit --locked --no-dev --ignore GHSA-h35f-9h28-mq5c --ignore GHSA-rrmf-rvhw-rf47 + cd backend && uv audit --locked --no-dev cd packages/yuxi-cli && uv audit --locked --no-dev cd web && pnpm audit --audit-level=high --prod cd docs && pnpm audit --audit-level=high --prod diff --git a/README.en.md b/README.en.md index 9865abd53..cba56a816 100644 --- a/README.en.md +++ b/README.en.md @@ -58,7 +58,7 @@ Yuxi is a strong fit for teams that need private deployment, organizational acce **1. Clone and initialize** ```bash -git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git +git clone --branch v0.7.2.beta2 --depth 1 https://github.com/xerrors/Yuxi.git cd Yuxi # Linux/macOS diff --git a/README.md b/README.md index 498a1cadb..cb2f05f54 100644 --- a/README.md +++ b/README.md @@ -37,12 +37,12 @@ Yuxi 面向需要自己掌握数据、模型和权限的团队: ### 前置条件 -安装 [Docker Engine](https://docs.docker.com/get-docker/) 和 Docker Compose,并准备一个可用的大模型 API。当前仓库默认配置对应 `v0.7.2.beta1`,仍处于 Beta 阶段。 +安装 [Docker Engine](https://docs.docker.com/get-docker/) 和 Docker Compose,并准备一个可用的大模型 API。当前仓库默认配置对应 `v0.7.2.beta2`,仍处于 Beta 阶段。 ### 1. 获取代码并初始化 ```bash -git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git +git clone --branch v0.7.2.beta2 --depth 1 https://github.com/xerrors/Yuxi.git cd Yuxi # Linux/macOS diff --git a/backend/package/pyproject.toml b/backend/package/pyproject.toml index 75fbe9fbb..75637decb 100644 --- a/backend/package/pyproject.toml +++ b/backend/package/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "yuxi" -version = "0.7.2.beta1" +version = "0.7.2.beta2" description = "Yuxi 智能知识库与知识图谱平台核心后端包" readme = "README.md" license = { text = "MIT" } diff --git a/backend/pyproject.toml b/backend/pyproject.toml index 93cefd3ce..0fb106805 100644 --- a/backend/pyproject.toml +++ b/backend/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "yuxi-workspace" -version = "0.7.2.beta1" +version = "0.7.2.beta2" description = "基于大模型的智能知识库与知识图谱智能体开发平台,融合了 RAG 技术与知识图谱技术,基于 LangGraph v1 + Vue.js + FastAPI + LightRAG 架构构建" readme = "README.md" license = { text = "MIT" } diff --git a/backend/server/routers/knowledge_router.py b/backend/server/routers/knowledge_router.py index 684aff98b..c8e28d598 100644 --- a/backend/server/routers/knowledge_router.py +++ b/backend/server/routers/knowledge_router.py @@ -795,7 +795,10 @@ async def run_ingest(context: TaskContext): try: file_meta = await knowledge_base.add_file_record( - kb_id, item, params=params, operator_id=current_user.uid + kb_id, + item, + params=_params_for_uploaded_document_item(item, params), + operator_id=current_user.uid, ) added_files.append( { diff --git a/backend/test/unit/routers/test_knowledge_router_cleanup.py b/backend/test/unit/routers/test_knowledge_router_cleanup.py index aa0799439..9e42d97da 100644 --- a/backend/test/unit/routers/test_knowledge_router_cleanup.py +++ b/backend/test/unit/routers/test_knowledge_router_cleanup.py @@ -469,6 +469,58 @@ async def fake_enqueue(name: str, task_type: str, payload: dict, coroutine): assert context.result["items"] == [{"file_id": "file_1", "status": "indexed", "error": None}] +async def test_add_documents_passes_source_path_to_file_record(monkeypatch): + """验证包含 source_paths 的批量上传会将单文件 source_path 传递给 add_file_record。""" + context = FakeTaskContext() + item1 = "minio://knowledgebases/kb_1/upload/doc1.txt" + item2 = "minio://knowledgebases/kb_1/upload/doc2.txt" + captured_records = [] + + async def fake_ensure_database_supports_documents(kb_id: str, operation: str) -> None: + return None + + async def fake_get_database_info(kb_id: str) -> KnowledgeBaseDetail: + return _database_detail() + + async def fake_add_file_record(kb_id: str, item_path: str, params: dict, operator_id: str | None = None): + captured_records.append({"kb_id": kb_id, "item": item_path, "params": params, "operator_id": operator_id}) + return {"file_id": f"file_{len(captured_records)}", "status": "uploaded"} + + async def fake_parse_file(kb_id: str, file_id: str, operator_id: str | None = None): + return {"file_id": file_id, "status": "parsed", "error": None} + + async def fake_enqueue(name: str, task_type: str, payload: dict, coroutine): + await coroutine(context) + return SimpleNamespace(id="task_1") + + monkeypatch.setattr( + knowledge_router, + "_ensure_database_supports_documents", + fake_ensure_database_supports_documents, + ) + monkeypatch.setattr(knowledge_router.knowledge_base, "get_database_info", fake_get_database_info) + monkeypatch.setattr(knowledge_router.knowledge_base, "add_file_record", fake_add_file_record) + monkeypatch.setattr(knowledge_router.knowledge_base, "parse_file", fake_parse_file) + monkeypatch.setattr(knowledge_router.tasker, "enqueue", fake_enqueue) + + await knowledge_router.add_documents( + "kb_1", + [item1, item2], + params={ + "content_type": "file", + "content_hashes": {item1: "hash_1", item2: "hash_2"}, + "source_paths": {item1: "folder_a/sub/doc1.txt", item2: "folder_a/doc2.txt"}, + }, + current_user=SimpleNamespace(uid="uid-user"), + ) + + assert len(captured_records) == 2 + assert captured_records[0]["params"]["source_path"] == "folder_a/sub/doc1.txt" + assert "source_paths" not in captured_records[0]["params"] + assert captured_records[1]["params"]["source_path"] == "folder_a/doc2.txt" + assert "source_paths" not in captured_records[1]["params"] + + @pytest.mark.parametrize( ("payload", "error_detail"), [ diff --git a/backend/uv.lock b/backend/uv.lock index 87a7afc57..551827d36 100644 --- a/backend/uv.lock +++ b/backend/uv.lock @@ -268,23 +268,24 @@ wheels = [ [[package]] name = "argon2-cffi-bindings" -version = "25.1.0" +version = "26.1.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "cffi" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/5c/2d/db8af0df73c1cf454f71b2bbe5e356b8c1f8041c979f505b3d3186e520a9/argon2_cffi_bindings-25.1.0.tar.gz", hash = "sha256:b957f3e6ea4d55d820e40ff76f450952807013d361a65d7f28acc0acbf29229d", size = 1783441, upload-time = "2025-07-30T10:02:05.147Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0b/43/bb8b6e8708d49a5ab36781333af092d9f483b198a2710d01281204640055/argon2_cffi_bindings-26.1.0.tar.gz", hash = "sha256:63505c71542a44b68b1e38060450fb006404170da375feb31af153e7f9c6205d", size = 1790807, upload-time = "2026-08-20T07:44:22.492Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/1d/57/96b8b9f93166147826da5f90376e784a10582dd39a393c99bb62cfcf52f0/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:aecba1723ae35330a008418a91ea6cfcedf6d31e5fbaa056a166462ff066d500", size = 54121, upload-time = "2025-07-30T10:01:50.815Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0a/08/a9bebdb2e0e602dde230bdde8021b29f71f7841bd54801bcfd514acb5dcf/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_10_9_x86_64.whl", hash = "sha256:2630b6240b495dfab90aebe159ff784d08ea999aa4b0d17efa734055a07d2f44", size = 29177, upload-time = "2025-07-30T10:01:51.681Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b6/02/d297943bcacf05e4f2a94ab6f462831dc20158614e5d067c35d4e63b9acb/argon2_cffi_bindings-25.1.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:7aef0c91e2c0fbca6fc68e7555aa60ef7008a739cbe045541e438373bc54d2b0", size = 31090, upload-time = "2025-07-30T10:01:53.184Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c1/93/44365f3d75053e53893ec6d733e4a5e3147502663554b4d864587c7828a7/argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e021e87faa76ae0d413b619fe2b65ab9a037f24c60a1e6cc43457ae20de6dc6", size = 81246, upload-time = "2025-07-30T10:01:54.145Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/09/52/94108adfdd6e2ddf58be64f959a0b9c7d4ef2fa71086c38356d22dc501ea/argon2_cffi_bindings-25.1.0-cp39-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d3e924cfc503018a714f94a49a149fdc0b644eaead5d1f089330399134fa028a", size = 87126, upload-time = "2025-07-30T10:01:55.074Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/72/70/7a2993a12b0ffa2a9271259b79cc616e2389ed1a4d93842fac5a1f923ffd/argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:c87b72589133f0346a1cb8d5ecca4b933e3c9b64656c9d175270a000e73b288d", size = 80343, upload-time = "2025-07-30T10:01:56.007Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/78/9a/4e5157d893ffc712b74dbd868c7f62365618266982b64accab26bab01edc/argon2_cffi_bindings-25.1.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1db89609c06afa1a214a69a462ea741cf735b29a57530478c06eb81dd403de99", size = 86777, upload-time = "2025-07-30T10:01:56.943Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/74/cd/15777dfde1c29d96de7f18edf4cc94c385646852e7c7b0320aa91ccca583/argon2_cffi_bindings-25.1.0-cp39-abi3-win32.whl", hash = "sha256:473bcb5f82924b1becbb637b63303ec8d10e84c8d241119419897a26116515d2", size = 27180, upload-time = "2025-07-30T10:01:57.759Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e2/c6/a759ece8f1829d1f162261226fbfd2c6832b3ff7657384045286d2afa384/argon2_cffi_bindings-25.1.0-cp39-abi3-win_amd64.whl", hash = "sha256:a98cd7d17e9f7ce244c0803cad3c23a7d379c301ba618a5fa76a67d116618b98", size = 31715, upload-time = "2025-07-30T10:01:58.56Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/42/b9/f8d6fa329ab25128b7e98fd83a3cb34d9db5b059a9847eddb840a0af45dd/argon2_cffi_bindings-25.1.0-cp39-abi3-win_arm64.whl", hash = "sha256:b0fdbcf513833809c882823f98dc2f931cf659d9a1429616ac3adebb49f5db94", size = 27149, upload-time = "2025-07-30T10:01:59.329Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e7/d2/0ae991f1b2181e5be49007c574710a800ad36c2978683addb3e67c474e55/argon2_cffi_bindings-26.1.0-cp310-abi3-macosx_11_0_arm64.whl", hash = "sha256:21ca0396fe5ec995dd54431c32698189666f9224810acfa752e50d2bd94d9df2", size = 25521, upload-time = "2026-08-20T07:32:43.019Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/e4/ad91d8297638aa2258aad4501c306aca99480dfe76ccd638173fa3702db9/argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:78de2d65e0b9ea7ce9d1b1c3e87297b2d7305a02c266ee2a2d6910daddd7ee69", size = 27177, upload-time = "2026-08-20T07:32:44.158Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6f/86/5363df11b86d02cf3662208e7406496327649cc90eb365bf6f4e8a54a41f/argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:27f1821903e2ceadcb88ec2b45ef190897b7682449c772f4d9b53e42c520cf29", size = 26597, upload-time = "2026-08-20T07:32:45.172Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f4/b5/a14dcc592652347dad23ee93b278a4da5d2a25c9ed3ebd10d68eea823a4f/argon2_cffi_bindings-26.1.0-cp310-abi3-manylinux_2_34_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:d88e5f7e60f28ae0b0cc6b2f16c43e87cd642a196a86f85e0d8bb6fe016fc16d", size = 27403, upload-time = "2026-08-20T07:32:46.13Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b3/81/b4a20d4902af7f796390bf9245ff83c5217dfa7367efa1d14986956c482b/argon2_cffi_bindings-26.1.0-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:34b7d9c24a4165a2c61cc8ae11d44d48c9ce2830fb536cb7914e11fdd9962728", size = 27132, upload-time = "2026-08-20T07:32:47.13Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/1b/c8de358af07b1c490e0fcb863ef98e46ddb486e45567aca5a60bd68d9daa/argon2_cffi_bindings-26.1.0-cp310-abi3-musllinux_1_2_riscv64.whl", hash = "sha256:224865cbbcb7a2bd1356741dff12b0134df726b6d44bb7b500df8e303cbd9e81", size = 27588, upload-time = "2026-08-20T07:32:48.087Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/48/2f/7ee62a6e79f9309f9d9982d301b22a00010adb580c05c8109b94d7b33de0/argon2_cffi_bindings-26.1.0-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:ffff613aaa9ce6236766e2fc6dc560bb5abde7a2e2416e3db1f9ae395a2b4dd4", size = 26785, upload-time = "2026-08-20T07:32:48.977Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e9/10/960d0ee93d4897741bcaf4799c697dae2d81499f66fd1ed042a7dd54c1f4/argon2_cffi_bindings-26.1.0-cp310-abi3-win32.whl", hash = "sha256:a86c069c91a747a2c4e5c51473590aeb48172fff9b2130d23729a42d98665ecb", size = 23898, upload-time = "2026-08-20T07:32:50.114Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6d/3a/0cc14a05810e6add9bce5e87693334baa2222de5f647fa31781885b6573f/argon2_cffi_bindings-26.1.0-cp310-abi3-win_amd64.whl", hash = "sha256:2c36ff87b5dfaa477d0bd51e9d7f6abdae7c8955d2983c97419085d842154b3e", size = 25730, upload-time = "2026-08-20T07:32:51.091Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/4e/db/d83cf2af140547f0b9cdaece05b2dc2dcbf991be4667331d073eff771435/argon2_cffi_bindings-26.1.0-cp310-abi3-win_arm64.whl", hash = "sha256:f9c4420a7a864fe1b86ce35befc95b8e39fb852493b81cf798671ddc265de638", size = 24478, upload-time = "2026-08-20T07:32:52.111Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bb/5f/f652055e18d2627e2eed94c7f31a792127cfe38df786635395d742321674/argon2_cffi_bindings-26.1.0-cp313-cp313-pyemscripten_2025_0_wasm32.whl", hash = "sha256:af11ac37a7c53dc16cb7950a6190851b0870fe218b6c60c0bb7ac355234e3083", size = 15434, upload-time = "2026-08-20T07:32:53.143Z" }, ] [[package]] @@ -595,11 +596,11 @@ wheels = [ [[package]] name = "cloudpathlib" -version = "0.24.0" +version = "0.25.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/06/19/58bc6b5d7d0f81c7209b05445af477e147c486552f96665a5912211839b9/cloudpathlib-0.24.0.tar.gz", hash = "sha256:c521a984e77b47e656fe78e20a7e3e260e0ab45fc69e33ac01094227c979e34a", size = 53600, upload-time = "2026-04-30T00:54:43.265Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/07/9f/1791893f3d51ec36cd9e3f8da0130d278ee909a68bc17c83b3b3de98c91b/cloudpathlib-0.25.0.tar.gz", hash = "sha256:63612e17778c5e3a51b472def8d785d0aaaf347486d6b6786dc7be627556d4c6", size = 56441, upload-time = "2026-08-22T18:41:21.493Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c2/5b/ba933f896d9b0b07608d575a8501e2b4e32166b60d84c430a4a7285ebe64/cloudpathlib-0.24.0-py3-none-any.whl", hash = "sha256:b1c51e2d2ec7dc4fed6538991f4aea849d6cf11a7e6b9069f86e461aa1f9b5b4", size = 63214, upload-time = "2026-04-30T00:54:42.06Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/37/f9/9084c945d0b3ef8f129b4f0dd21baec759761a337902b70f17a3945015dd/cloudpathlib-0.25.0-py3-none-any.whl", hash = "sha256:8faef3ed3a0dd71d134e8617b4fdc5ce56a12a6b485c080cfe80106e5f1d1f5d", size = 66109, upload-time = "2026-08-22T18:41:20.417Z" }, ] [[package]] @@ -673,39 +674,39 @@ wheels = [ [[package]] name = "cryptography" -version = "50.0.0" +version = "50.0.1" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "cffi", marker = "platform_python_implementation != 'PyPy'" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/de/41/6cbdcf9142d00fe82836fbb51e503e58088575cf7a0fe1dbff6695bf0840/cryptography-50.0.0.tar.gz", hash = "sha256:eeac2acb5a20ed25e0ad6d1df9891a520b78b404266b6d11778f25d5d691a6c9", size = 880201, upload-time = "2026-07-31T14:25:10.11Z" } -wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c5/5c/59086b4aac5e879d38ddbcf74e4be7ade89cebc3eb199a55da998c3bb46a/cryptography-50.0.0-cp311-abi3-macosx_11_0_arm64.whl", hash = "sha256:031e2d5dd4bb9caa3ca9c82e5a197fd8ae680232cee62603d1a813f3f07e3d03", size = 4001252, upload-time = "2026-07-31T14:23:33.331Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/57/ef/8f2df13c7216bcad3e1c74e07f6e193d93e998e114f524a53877c9af27ad/cryptography-50.0.0-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:fd9192b7b70c573d7f214eb1ae35e00d359f6f5e4b27c7e21e30de1fc6204645", size = 4719554, upload-time = "2026-07-31T14:23:35.611Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d9/41/029086c34d91052fc3b88bcc8056f709a7c915c7a23b235a54eb800b1c97/cryptography-50.0.0-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:06a32a980526a6ab9a4b9bf8f7385800791e2bb960903cb6b530e4817509a3b7", size = 4702130, upload-time = "2026-07-31T14:23:37.635Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7d/ff/b6ce0954962e7f7b969f850a883744197bb3910bdfd7b6da162eab7d9f68/cryptography-50.0.0-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:a1b30560f2acc95aa8b2e06e716a13dbfc97314747b80d9707e307f77b40d6b3", size = 4725244, upload-time = "2026-07-31T14:23:39.471Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/06/1e/63a1027cb7fec360a182208e1b7767d5aa1fe57be3d6aa856e69a321edc0/cryptography-50.0.0-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:8d89f3976b10b4ce31118de72329025f70d2c6ead14a8217c5514dd2c6d5a78f", size = 5342265, upload-time = "2026-07-31T14:23:41.286Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6b/72/a1116d683a6d7ece94590013882515de087edf9ef0e6292aae615a44df73/cryptography-50.0.0-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:b42a28c1844fd9de8f3f7d540e36b66f3a9c83fceac7170ebc7a6a19edd9dcae", size = 4734609, upload-time = "2026-07-31T14:23:43.139Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/15/37/36a9c479bbe49acea2636c7fd3360d20f7b7e079c300352011c44850b181/cryptography-50.0.0-cp311-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:900131fafd8aead39ac7dd3a7e833be754c17a95cfd91221636949fe4eb0aa8a", size = 4356517, upload-time = "2026-07-31T14:23:44.939Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/32/98/8a151d64367204cbc63ec65d37502f1d9c53cf4bfc6ec3c532614dbec60d/cryptography-50.0.0-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:07949c449a1abcf60d1ee6e88956d89404c7df3c8258f46589e912988e551987", size = 4724529, upload-time = "2026-07-31T14:23:46.93Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/22/f6/ec13b470172126464a86bf54d2294a46d29837fc51ba3e45d4047946fb5e/cryptography-50.0.0-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:f89831ef99dd7dd169ab06d63a831adb9e20a87aac6d380266bbda5823349169", size = 5299852, upload-time = "2026-07-31T14:23:48.851Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/da/3a/f05e32c99d440c9bb891ea0e36c9091891e36be5a9a87ab2ee6ea20729f6/cryptography-50.0.0-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:82148ec5bddac30b51a5b3c1945075f896fa022cb93f8e4a01e9f6ee95292c5f", size = 4734462, upload-time = "2026-07-31T14:23:50.861Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ca/dc/bd72b26be8953f80625f63151efd38eee71c76ca6cf591c08ff34615a79e/cryptography-50.0.0-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:1489e263a8048bb8b6a8bac662eb2d402ea5d2b7b4699b72f385f1e2772db105", size = 4852708, upload-time = "2026-07-31T14:23:52.715Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/27/20/c930314a2ab476d15dec966ec87e2e9637bb02b06106b12c0396c57bb603/cryptography-50.0.0-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:7cec5b856506da6defb290f30c9ee687d5f5e8cb0bd3f6459dde43b0b4fa40ef", size = 5004179, upload-time = "2026-07-31T14:23:54.887Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/32/2e/c9db68a0c4bfa28e310707527c0ee3a2bd254104d2e02e68f368e197aa4c/cryptography-50.0.0-cp311-abi3-win_amd64.whl", hash = "sha256:bd1c592e4d5974f0d08d4888e432157adba757c66da0246918e43677fafa2d30", size = 3840395, upload-time = "2026-07-31T14:23:56.677Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/03/37/73d005be173aff344af30e9fd2a576575cb2391a7101d9cd3842e1fa8cce/cryptography-50.0.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:ccdc4a71a4dabae05de219404f9f4abc38e3b58422177ff93d0da05967dafa07", size = 4036009, upload-time = "2026-07-31T14:24:24.122Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ff/c6/7a6202a534e32103a285b7834a120869557fe198d51d7cfe59754c8bda9c/cryptography-50.0.0-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:910e1d2668e7de9648f2bcee30e180db2a6b15c30f887d7c4c93ddf96e3992e3", size = 4745252, upload-time = "2026-07-31T14:24:26.118Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/85/4f/0fa8c2f4428198f15d9ff8d63400e27afbf94ce833f6108da1eb3753f945/cryptography-50.0.0-cp39-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:a91296cb61e8df6f86d0c19cc4068228da256bf59bf86049fbd821084565327f", size = 4728939, upload-time = "2026-07-31T14:24:27.994Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d1/63/54dd723490ba2dc09b299682c10b38db38f159728bcaae8c591b8af2f22d/cryptography-50.0.0-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:e722f16708d854fe924790e051061f6704a472c3bac347b6fd88033ea8dd0dc5", size = 4748483, upload-time = "2026-07-31T14:24:30.254Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/1d/dd/7c77d26285cc7f6991efce64a0f5b4f9383bfa5dd8c5033003eaf7db4cdb/cryptography-50.0.0-cp39-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:d764dcf130c428ef66786f866dd750f53182bc608813489915e9fc106bb0c82f", size = 5367599, upload-time = "2026-07-31T14:24:32.457Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/46/c9/f60aed34c013f317f92817b6c171c2d22a78270fa41109bd4b08af26b194/cryptography-50.0.0-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:105110f43a471dbd0060b9c9516cb8a6a79233631a04cc2ba16f28323ac6e025", size = 4762647, upload-time = "2026-07-31T14:24:34.599Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/be/f3/f9a0173b139372c3a48ed98154b45cc6b9de17c789d5ab552e621c293609/cryptography-50.0.0-cp39-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:828743d939e9629bc267b8e2d08d8bb67cd4319c771a33d4b18b22dd8fb7440a", size = 4385197, upload-time = "2026-07-31T14:24:36.647Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d8/36/83bb81f6e569bc38e1e4a7bc80f29b46bb9601920bc455fc8e888f5d5742/cryptography-50.0.0-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:2a8183b489dc1f7f80f135780fadc1108f14b31b8a40411c7a5b17425f65f28b", size = 4748095, upload-time = "2026-07-31T14:24:39.493Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6b/16/d3008eff98c764979865834c3d386d4fd041b5f52e7f34fc29ac1a5eb515/cryptography-50.0.0-cp39-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:6e7d61120573a7f2cd94cc095f9e81f6967c61ccdf194285aa143ecec8e0b708", size = 5325948, upload-time = "2026-07-31T14:24:41.556Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9c/f8/d97f9603efda3888187bfdb893f26c41be4735c10631d05d284ee6b047c4/cryptography-50.0.0-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:37fdb0d0111f1e2ff07139dfb79f1b49531f8e213c46f1163dd7642979b58c47", size = 4762400, upload-time = "2026-07-31T14:24:43.636Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/64/a2/4615c8f7d81a00b1d6e6afe19f694e1543582349fb5f4076f6cb5dc36485/cryptography-50.0.0-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:c87f62a3d3b9888ed0fdde100ec06aa61ca9cd44bad9057d1dff9a516b5f5bb9", size = 4878208, upload-time = "2026-07-31T14:24:45.522Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d2/1a/efcfb02f91407149a0dacffffab791f7e19bf6385f63b3666dc8b5e5c9c8/cryptography-50.0.0-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:65c2c3add92b45fd0709db8594536aea39c2a67af0e27ffcf049c498501140b7", size = 5037050, upload-time = "2026-07-31T14:24:47.697Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/57/30/4a22984d4f1bdfb8c054f07a92bc176b97a3134cc1d6c4b3bffb1f3688b4/cryptography-50.0.0-cp39-abi3-win_amd64.whl", hash = "sha256:d24fead1d4d076e1bfb006dcec392074a3cd8d7b4fc8a595aa64073b2b7a96ba", size = 3874135, upload-time = "2026-07-31T14:24:50.085Z" }, +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bb/ad/5d6702db60b1e40b41ef513b6967ff5848f307d50f8449baf1634f5908f1/cryptography-50.0.1.tar.gz", hash = "sha256:5dd9bda1c12b4162f6ff568eeb5e0ff956c28d14406e875cfe8a63a2d414ff20", size = 880381, upload-time = "2026-08-25T19:45:45.499Z" } +wheels = [ + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ba/19/797e2aaac9df6a66f1550f49979dc1b1e39ecd2077501c30efa81e8d5d67/cryptography-50.0.1-cp311-abi3-macosx_11_0_arm64.whl", hash = "sha256:b8f852c65863251b9e3a1b8c150ce21e59b522dbb6a7d4bc80e680d38388e986", size = 4010153, upload-time = "2026-08-25T19:44:03.155Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/90/34/9ce9a62ed9dc82ca9fd6a34445b6904af56e5f38b3eae2ed32e49c36053d/cryptography-50.0.1-cp311-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:53e279950892dc102c6b4e52af03ae5ea92fac572a1ddab78ca73a997f62b69f", size = 4723133, upload-time = "2026-08-25T19:44:05.461Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/57/26/e6d4fc8512a51a5f9ee7bfdbfb853bce1197087df40c9ad993ad370b846f/cryptography-50.0.1-cp311-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:ff838d62ec1bfce4f9ba7fa16f4a7b554cd8d0c299e6be37502161a660c84eef", size = 4712478, upload-time = "2026-08-25T19:44:07.375Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e6/de/d3cdc2815697aae84126cbd6a030ca7b6b452e28a88b501b836bd3aa7a86/cryptography-50.0.1-cp311-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:e74591e283fe6eb956416c929eb58262a719fe0311fd9054c62c3350ed8760d8", size = 4730726, upload-time = "2026-08-25T19:44:09.294Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/55/32/38c0d344b98c06d34b5df8946565a9c0d6dbf32c8e0730a7f05f0a3c6cab/cryptography-50.0.1-cp311-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:5fe002589592ed749ce77fe0695fcbd3500dd61d7d6db5858a7544c612fa8e45", size = 5353524, upload-time = "2026-08-25T19:44:11.96Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e1/1b/82f0f0d8858d4432be1af790477edf62aef90324041aa07c57e57bef1af7/cryptography-50.0.1-cp311-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:51593d180cf6d179bde5c5d065bed81386b1f381656ae7d042b7ffc87a9895ad", size = 4746720, upload-time = "2026-08-25T19:44:14.051Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/29/ba/042ca458b8c64348c768284b5d23e69b92ed53d057ab779fee628564676d/cryptography-50.0.1-cp311-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:359e62deae718bce96170e223fdcb6357e4fbd3bb7a3a75f4430763532560e49", size = 4361866, upload-time = "2026-08-25T19:44:16.167Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/39/3b/e96c1ef71edef71057c7e3c3d982ce8fda554e0c52d0cc19c18845cde3eb/cryptography-50.0.1-cp311-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:e2ca8fd1b6b4b82a1c4cb02841d0837e3c12336c2e24b520ab8ab3b969733d8f", size = 4730028, upload-time = "2026-08-25T19:44:18.085Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e3/38/45abd72ef63f2e7d0754a6cacf97bd8b69512ace7f6130d24c39ece65da2/cryptography-50.0.1-cp311-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:76de83fbd91ac49c0feaaa983d0748fd7a53176afac5fb3bf7478d244f0eb527", size = 5308405, upload-time = "2026-08-25T19:44:20.197Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/85/66/6ccca4722987ddedaa7fc9c3f4708af7431f5535666c174350830888c6b7/cryptography-50.0.1-cp311-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:51afcfceb15597cf2635068e4ac9a56b2abde622edde17f37d85fd7b5306497a", size = 4746230, upload-time = "2026-08-25T19:44:22.376Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/13/0e/b1f92e013228111413f2e6743948b80bc24dfd3c1b87ba98ceea16f5df89/cryptography-50.0.1-cp311-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:be224a65493ec5b74a158ff22a5522ce4a5ca1e543c647a3a4730d4a09e5f959", size = 4862596, upload-time = "2026-08-25T19:44:24.472Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/22/c3654cccc856e9d682817b04ac3ee79731cb09ca6f95996a95c904de2883/cryptography-50.0.1-cp311-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:9ebcdd5519be9b652a46f507817a74591774fc3d6923ac364e4dfa64e36b291b", size = 5014082, upload-time = "2026-08-25T19:44:26.709Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/42/8b/cb12b1b60c91b074ca6bf0fdd59aa8f10d8bc5f73af8faece86ef0421b37/cryptography-50.0.1-cp311-abi3-win_amd64.whl", hash = "sha256:aed8db4f6d71c51efb89530e12d9464e7bf2923d46c3205dc794a2a93f8c0648", size = 3842826, upload-time = "2026-08-25T19:44:28.784Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/84/a9/ee16a903f13755e914d1eecc482fe64d1f10761c3960e5d8fa6837377aff/cryptography-50.0.1-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:ca83d00d9e69cd5eb63f2e69c3a5a59e0cecae5ae14c6ae0b35830fe3b37bad0", size = 4035307, upload-time = "2026-08-25T19:44:58.305Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/5e/a5/9ec7e81e8526c0d7a387d73386b2daed3f39e10d81a85930bd1b6bfba65c/cryptography-50.0.1-cp39-abi3-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:05ba322c4da95b262a212c345af888ef2c37c88c0509756ea00a0e6d68850f23", size = 4751900, upload-time = "2026-08-25T19:45:00.401Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/3c/0e77bd5ffcf078e9dd27d3074aad6c030d9b10d0bf69329d573c927a188c/cryptography-50.0.1-cp39-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e22dfed744bd4002e909464cb23d2f0b05c6f3113a79ef2e9864a53db737c733", size = 4738357, upload-time = "2026-08-25T19:45:02.786Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/27/3a/3c5f80daa4dcd47323c7af8a2fcb90de27a33564d4fcac69846c0972691a/cryptography-50.0.1-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:4c4188f7c0cf655be5c06342b817ed0f9595b69ffa2b12026e5353eed29dea88", size = 4758474, upload-time = "2026-08-25T19:45:04.889Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6e/2b/214cf0cf93db9628c3c20c896b229f327f6fb1b20e4b3743d8ad3f00af8b/cryptography-50.0.1-cp39-abi3-manylinux_2_28_ppc64le.whl", hash = "sha256:2ebbfb0f1fed745e91796e3e1080a1440423fdae8ece1b995a1d80883a409054", size = 5375862, upload-time = "2026-08-25T19:45:07.163Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d6/51/3f9701867a46b6c1740c9b52fc4d3bed6cbdcfedcc9b6e64305c07f39cff/cryptography-50.0.1-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:407fe2b6db00939c05c0e945e9914238f2f0a430974839429dafc82b1ee6bee5", size = 4772942, upload-time = "2026-08-25T19:45:09.396Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0d/5c/13ea642e08e2544d0f5396122055f4820cfacb3203562197b5967125ea97/cryptography-50.0.1-cp39-abi3-manylinux_2_31_armv7l.whl", hash = "sha256:2b34d76a652ea2b6faf777c35df230c5637842cd904e04f16230c3f9f03e4361", size = 4383347, upload-time = "2026-08-25T19:45:11.659Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/84/d5/7d1fe1cb93f91c428093ff234e128c89ba8ea61a6f26aab406081f9b996e/cryptography-50.0.1-cp39-abi3-manylinux_2_34_aarch64.whl", hash = "sha256:01f41478cf33fc605a6a089cd56d28b45c6c0b45a1928b61797f2621a04bac71", size = 4758050, upload-time = "2026-08-25T19:45:13.745Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/dd/04/557fc5ead96a829e0bc812a3b9dc4a52a2f27e4f7f5950da7ff27653a805/cryptography-50.0.1-cp39-abi3-manylinux_2_34_ppc64le.whl", hash = "sha256:fc3ed7ebd2a8c96f5b166de0ab9b624996bef3b07bbeb19364dfb78222c22c80", size = 5332955, upload-time = "2026-08-25T19:45:16.193Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/8c/eb/5d7124083e8d8cda8f5b348f544b71ad6f707ad63193758ef4d8e569da02/cryptography-50.0.1-cp39-abi3-manylinux_2_34_x86_64.whl", hash = "sha256:9dde0a357190eb3b1da1bb9ab750e9c85cba82ca5977aa0836cbb94e92611239", size = 4772694, upload-time = "2026-08-25T19:45:18.315Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/63/8e/f1f955e0921dd2b6d22eae7e8d24a4c4b638d10735ffbf6a71f99eb0fcb8/cryptography-50.0.1-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:fd3718b960d0b5dd213cdf03f3bcb7000e69dda0de8b956061947ff6bcff5558", size = 4888413, upload-time = "2026-08-25T19:45:20.4Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/1f/ab/89e2b798d2c3925f82e2bb72d5979f3d2f6da2dd22ef4a8cd8b70d920039/cryptography-50.0.1-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2a93d05e34d5f67fba6f891fe85d929999baa7195e853923ea6d7576c9e68c5e", size = 5044355, upload-time = "2026-08-25T19:45:22.353Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/99/89/87ef49ffe383ef4e147d27b7bf2088fb0b54ea409dd87b5a89442e5828a5/cryptography-50.0.1-cp39-abi3-win_amd64.whl", hash = "sha256:55d16b1ef3ee0958d893a977b19777887e546c9954ea81b200c3301a864013f2", size = 3875429, upload-time = "2026-08-25T19:45:24.418Z" }, ] [[package]] @@ -751,7 +752,7 @@ wheels = [ [[package]] name = "dashscope" -version = "1.27.0" +version = "1.27.1" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "aiohttp" }, @@ -769,9 +770,8 @@ dependencies = [ { name = "typer" }, { name = "websocket-client" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a8/c9/f48780a68f8e79b989fa5460353f9d309b1821760a354e089d6cc22489b1/dashscope-1.27.0.tar.gz", hash = "sha256:7837ff64eb9ccbdde51dbbe3f92149ca8ffc13d3b8cc04241938b0adb328a3ee", size = 1738606, upload-time = "2026-08-18T07:56:14Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/81/f9/c5baccc3182cd37df644943355cb7ab913a688b2e9b76af81fef3a4cddc7/dashscope-1.27.0-py3-none-any.whl", hash = "sha256:407ee50fbbdba943ddef61a6eb4313af5ae9f061159383b072891aa9b374433a", size = 1913213, upload-time = "2026-08-18T07:56:12.2Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/98/67/c2fde513904a4794d3464b85479c97ff9923dde20b840e53ad5c10ac35ef/dashscope-1.27.1-py3-none-any.whl", hash = "sha256:8416cfcd08735011ccf240d694d338c0590f7276c1bb735525bc0afc8e53eaf9", size = 1934898, upload-time = "2026-08-21T10:16:40.401Z" }, ] [[package]] @@ -789,7 +789,7 @@ wheels = [ [[package]] name = "deepagents" -version = "0.7.7" +version = "0.7.9" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "langchain" }, @@ -800,9 +800,9 @@ dependencies = [ { name = "packaging" }, { name = "wcmatch" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d3/20/6a2fff4d42984f6302f211c164d4cf1b1894086b576736d81a935a67186e/deepagents-0.7.7.tar.gz", hash = "sha256:68b8f0c861a95065b3eda39b5c3748943e09500898bc39e7e689f0b7deba9f72", size = 282001, upload-time = "2026-08-18T15:06:55.05Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c4/4b/359aa09b9fb378b9cd10b69cb7bdd75847da03c110939ad01f1db715d0e4/deepagents-0.7.9.tar.gz", hash = "sha256:e62311fe73a752d36b830b2f48352aa63afbd56f47176d924065230d983b248e", size = 287549, upload-time = "2026-08-25T21:02:41.431Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e2/15/0e029e7f119c4c7a9cb17702b604153af71571d36c646c2837e5f4d3074d/deepagents-0.7.7-py3-none-any.whl", hash = "sha256:ddce2604799205ef51dc2c17fae613c9e162bbbc90206fcff2860c4e6f48bdb1", size = 308616, upload-time = "2026-08-18T15:06:53.532Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/56/5d/6333620e6c9f519f23d85201d9e0ad346be7134fb0039555fabb3ce38e67/deepagents-0.7.9-py3-none-any.whl", hash = "sha256:fb5b382cc98ec132a6e30e5be2cacc60888231e358368aadc12f88efdec5d847", size = 314350, upload-time = "2026-08-25T21:02:39.789Z" }, ] [[package]] @@ -868,14 +868,14 @@ wheels = [ [[package]] name = "docling" -version = "2.120.3" +version = "2.122.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "docling-slim", extra = ["standard"] }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/8f/cf/02a1ad98a22ba3941796a800522db90b9fa4fadeeab9e347a29e7e6bf883/docling-2.120.3.tar.gz", hash = "sha256:a0c0653011fdd0693d3e819f12a25792207fdfd5eceb4062e923890156ac79f0", size = 9015, upload-time = "2026-08-18T07:53:27.882Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/51/5d/c7c281713a55d80b6affefb4f037f35feee2064c6ab1683a30c0ba15a7d8/docling-2.122.0.tar.gz", hash = "sha256:30fd085e3ebd729e02f9c38e9361df95cb240e4e2d52c807f95043db6df8a677", size = 9066, upload-time = "2026-08-25T09:31:37.017Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a1/a3/d48322cbce6068b1262b134e7ab05d00ab990561186b17e3532a4e909729/docling-2.120.3-py3-none-any.whl", hash = "sha256:609a7afc822bf0f097e4b8759ed48e6e2e5d48ab8b733c4cce281f452a16b973", size = 5179, upload-time = "2026-08-18T07:53:26.67Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/38/33/96cc0d16f2c3ee784469fdcab20a0536cd240eea3924759b40f36691e45a/docling-2.122.0-py3-none-any.whl", hash = "sha256:3d41c43cc901e22711a28846f750510b4b72c3070561322ffba5c747f8a999cb", size = 5226, upload-time = "2026-08-25T09:31:35.782Z" }, ] [[package]] @@ -906,7 +906,7 @@ wheels = [ chunking = [ { name = "semchunk" }, { name = "transformers", version = "5.8.1", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" }, marker = "sys_platform == 'darwin'" }, - { name = "transformers", version = "5.15.1", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" }, marker = "sys_platform != 'darwin'" }, + { name = "transformers", version = "5.16.0", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" }, marker = "sys_platform != 'darwin'" }, { name = "tree-sitter" }, { name = "tree-sitter-c" }, { name = "tree-sitter-javascript" }, @@ -934,7 +934,7 @@ dependencies = [ { name = "torchvision", version = "0.28.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "sys_platform != 'darwin'" }, { name = "tqdm" }, { name = "transformers", version = "5.8.1", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" }, marker = "sys_platform == 'darwin'" }, - { name = "transformers", version = "5.15.1", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" }, marker = "sys_platform != 'darwin'" }, + { name = "transformers", version = "5.16.0", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" }, marker = "sys_platform != 'darwin'" }, ] sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bd/b5/f95bd7df8acc3b792fd11c6d00c8a9ea3966b10edd734fb194d07be29606/docling_ibm_models-3.14.0.tar.gz", hash = "sha256:def964e3d524f66c7321ef9d48d4021278f14319f01d3f78058cd2324f641e22", size = 100765, upload-time = "2026-08-11T06:58:25.953Z" } wheels = [ @@ -943,7 +943,7 @@ wheels = [ [[package]] name = "docling-parse" -version = "7.14.0" +version = "7.16.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "docling-core" }, @@ -951,23 +951,23 @@ dependencies = [ { name = "pydantic" }, { name = "pywin32", marker = "sys_platform == 'win32'" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c8/fb/f00fe5f1e7118af5b774a60d32fb63e43da3ff41b73705b2dd2f57d24e96/docling_parse-7.14.0.tar.gz", hash = "sha256:e9d3a78ece68309ddc1667068c57f957974dcaffe18ca264e9c3b78bdbb988b7", size = 6883135, upload-time = "2026-08-18T07:05:51.1Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/99/ee/83a4fb9926b0fb0185b30797a98027a8e433284a0bf16396c11fb85a09b6/docling_parse-7.16.0.tar.gz", hash = "sha256:870e781f7b7d1403d1168bf860c19fd2ab5ddb42335c60a1927673fa8fc615e2", size = 6963225, upload-time = "2026-08-25T15:49:04.615Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9f/c9/cde495279e5e63141e73deafce24be24a222b50cbd82a0b7c5b12cda0ae6/docling_parse-7.14.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:97d5db0fa24a053e3b2bb60a541563048cfa63f8fdfe3659c11ee13b35490226", size = 9715286, upload-time = "2026-08-18T07:05:03.4Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/71/19/1200d02b4080156e93190ba43da5a99924f79ad1432c6c999f4bd817e575/docling_parse-7.14.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:184ba495b535ffa516f14f28b6f26afce52b298fb2db21fb5184ab9ae35bff97", size = 10238943, upload-time = "2026-08-18T07:05:06.105Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f3/6f/ee40ff9d41c3e081c1543c102de618c248ed99fdf68cdfcb37b055554b01/docling_parse-7.14.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:7c5baafec70d2db1a939503822bd1ecb36c35abc4d1a99de2e010d47a4d22da4", size = 10634202, upload-time = "2026-08-18T07:05:09.215Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/cf/82/20beb72815b54e604ec9f0da6043ea8fd36ff9356c9d2cead6a81def2b25/docling_parse-7.14.0-cp312-cp312-win_amd64.whl", hash = "sha256:d45b524b9d67ad02a3803f7a55786dc9a84acc94be7269829255bdf1cc8b5c52", size = 11692273, upload-time = "2026-08-18T07:05:12.037Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/83/06/1c9740a6aebac7713b28474fd8a27d125a3adb8d41f86657cf99f1f20bf2/docling_parse-7.14.0-cp312-cp312-win_arm64.whl", hash = "sha256:fe966ee9339734d77982fc271b95aa183b421911d21f3656c1a8494476dd0f0b", size = 9007927, upload-time = "2026-08-18T07:05:14.816Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/51/28/2a2127af62b7869b0545c9248c4449887a729a96afda9cf6b521efe6737a/docling_parse-7.14.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:167bc75de4f8399dc51312ef867256afe85b0241a0286b2597505e084136d820", size = 9715424, upload-time = "2026-08-18T07:05:17.923Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a8/de/b350a22140313c44bd19b7f1d80cb89654720c2b0d931cb13f66250901f8/docling_parse-7.14.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:64f519cfc31cd407144ecf60bd93f3a83a6793a405bf4194c0076fe0bb6e3af0", size = 10238731, upload-time = "2026-08-18T07:05:20.341Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/47/52/6820079375d9bf20225f5b91ec7f185d3a0e4b1f1759a53ef810856c00e2/docling_parse-7.14.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2ae30a9dfbd5c54b4fc6fca89ac41b04c1c112b7e0594013331d6fd28db6eaac", size = 10634307, upload-time = "2026-08-18T07:05:23.301Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/78/63/f34c30e1a8579e5f49d30657d6f793a6d18420598a1f24cb1a4cd00ded5f/docling_parse-7.14.0-cp313-cp313-win_amd64.whl", hash = "sha256:de57de2e72272c1b4ae33946ffdce779db10faf672b9170db37ce31c599594e9", size = 11692252, upload-time = "2026-08-18T07:05:26.153Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/93/07/2b4c1aa4245192943b8396b20f271ba1a4305cd169bca293e48dad2c9fad/docling_parse-7.14.0-cp313-cp313-win_arm64.whl", hash = "sha256:cdf09d82bc7fe199151ff2b8903d0ad63c3c0ee3003a160afd535a1923c7e034", size = 9007952, upload-time = "2026-08-18T07:05:28.752Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/08/e3/02e6e02eef860e276587c90896dd86d897e1150bf984c6135f4ab61f9352/docling_parse-7.16.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:cb173b447806ff3a4af3c06936e9585dc201b3ecbb958aebde37a2725471675f", size = 9762630, upload-time = "2026-08-25T15:48:36.814Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/25/70/3702dd16141ac8e45548d3f09d2e66c373a96ffc871086a0bb022caa81de/docling_parse-7.16.0-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b2c2bf844d567f729aa2a48f22b3c4f5d7e5a7db6b6b3a9ec07b45cf31d4ce3e", size = 10286523, upload-time = "2026-08-25T15:48:38.495Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c1/cb/cece74107282ce7cfe00d14ce5a33d2056aed689a34d20965be4779972da/docling_parse-7.16.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ab71b6b9d1085b08ca2a3529356ae3122e56a8be693a32d37e996ae88c6fe866", size = 10686779, upload-time = "2026-08-25T15:48:40.223Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/51/b3/52068732b63eae2cbae779d057c311e0010e761e5853ad233080cf201a53/docling_parse-7.16.0-cp312-cp312-win_amd64.whl", hash = "sha256:f1abfe050b670bcb25c7bcefc5d876bc3561949c1bff177e8a8a3d8d6f217314", size = 11746880, upload-time = "2026-08-25T15:48:42.089Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/23/09/2ceda924e1581c4b9fbec47d1343e0e64078ef89a314383dca2f604e6b48/docling_parse-7.16.0-cp312-cp312-win_arm64.whl", hash = "sha256:da0483decd77d9a967c54e751107c36a3c3bae186e989f81339dff5037f0a7fe", size = 9051750, upload-time = "2026-08-25T15:48:43.924Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/68/b3/1a4b65a60e0cd11d4512c55e81c03a4f5f6c7c08ed6f78fb703e983aa4b0/docling_parse-7.16.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:c3b4d67da75631a28252bf574023e4a45fdd422603ea07cf73a8e70074547436", size = 9762652, upload-time = "2026-08-25T15:48:45.716Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bc/fa/0b1a0ce72403002080231708f753cbbfbef22385b336bfd5f2252a96fe54/docling_parse-7.16.0-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1e2bebe14d3ce0b6e7f256f2e4bbc7f2405dc9ddc91bbc5031dcba07bf97d9b8", size = 10286719, upload-time = "2026-08-25T15:48:47.483Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c1/67/fe434aeb6d58bf3a69bdbcfee7b52633ec2cfad5e28ce7862d3d910f31c7/docling_parse-7.16.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6ab9b9deefd347166d670f894d27f697bf2d213a51e526516dc9ff44e0c19b5a", size = 10686793, upload-time = "2026-08-25T15:48:49.073Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/8d/79/97d07a4a056f540d7224720eb1cbdd606fe5f825d7954b5b574cf872efb8/docling_parse-7.16.0-cp313-cp313-win_amd64.whl", hash = "sha256:b4dc06844b775014bbf9a8f2d830d6700a47b2ec13c62a4ee61a2c9382fe4dca", size = 11746783, upload-time = "2026-08-25T15:48:50.855Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/42/eb/61492ee31917fdcc35117c0b5053626b81084b68cc1345e779e2428c6e08/docling_parse-7.16.0-cp313-cp313-win_arm64.whl", hash = "sha256:4dad04e693ec3d120885249a097dc61b0823f01b0a99c52696828b9eb6649e0b", size = 9051766, upload-time = "2026-08-25T15:48:52.558Z" }, ] [[package]] name = "docling-slim" -version = "2.120.3" +version = "2.122.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "certifi" }, @@ -979,9 +979,9 @@ dependencies = [ { name = "requests" }, { name = "tqdm" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/63/f5/56cfa7305d5a393e757b8c1af553a90c3e17a5b50eedbe887b48248feedd/docling_slim-2.120.3.tar.gz", hash = "sha256:d09a7cb93c47f3fc92061265a21382b31ae293c8fd012fe1b6a2970dc52e2e8d", size = 591639, upload-time = "2026-08-18T07:52:07.84Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/5c/3c/a1df26eceb6663f50743406e887ec21c70360e33efe31e7e5855e68b6895/docling_slim-2.122.0.tar.gz", hash = "sha256:a04286ab35795855e0ca480ecb30e25eccd8fbf0e234aa8d534bd0cd5f89890e", size = 611706, upload-time = "2026-08-25T09:30:12.539Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/01/5b/551172bf46c5534c270805c4fd318cca76a7e87fb77b5a5b136ed568ad17/docling_slim-2.120.3-py3-none-any.whl", hash = "sha256:a36c920b6d59a577cbda066089aee8c250da92d69551c7683ad2e043fae83728", size = 732889, upload-time = "2026-08-18T07:52:05.618Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/3a/13/ec7b4b443018778dfd57367790e79892b7ec492dfbfe835d421ce0896cc0/docling_slim-2.122.0-py3-none-any.whl", hash = "sha256:f5368d2f6713e90669194fc6bc3f6bc393446f979f6ee86da0426baddb200693", size = 767298, upload-time = "2026-08-25T09:30:10.555Z" }, ] [package.optional-dependencies] @@ -1056,14 +1056,14 @@ wheels = [ [[package]] name = "faker" -version = "40.36.0" +version = "40.37.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "tzdata", marker = "sys_platform == 'win32'" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/98/d2/026af1e002bbc6df534d1f8262b18ec79a974f928e9290bfbfdfe7c7b2af/faker-40.36.0.tar.gz", hash = "sha256:754048c76c03afa7de83eee8f4bcee3cf668cbb7d995f54a4e9678db7f110308", size = 2025903, upload-time = "2026-07-24T21:11:33.088Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f6/fb/35acc76128d5ee8983d940da871cc8eba876e7b0e9e6bd402ecd7104dcdc/faker-40.37.0.tar.gz", hash = "sha256:a92dff7f310e61fb544c61720e15edb2e7448bc33d15a321a99e9ab7b94abf54", size = 2025920, upload-time = "2026-08-21T16:33:16.261Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/50/9a/b947ed175ce9a0dcb070ccf3607f0ce8720cfb5ed1a36166a150b2acd5af/faker-40.36.0-py3-none-any.whl", hash = "sha256:82b9497d9cfe017048075bcf969298a74b1b6e39f5e4dad1211085d1133f7b62", size = 2062829, upload-time = "2026-07-24T21:11:31.37Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/3e/22/bf589b6b2c7527047f55450358fbe5961aeaadf168d6b51a1a1c67da497f/faker-40.37.0-py3-none-any.whl", hash = "sha256:ddbafa55c94d5b69c08ced3a7f202614204a02e07ba6548c729b8d18acc0b490", size = 2062853, upload-time = "2026-08-21T16:33:14.516Z" }, ] [[package]] @@ -1084,11 +1084,11 @@ wheels = [ [[package]] name = "filelock" -version = "3.32.3" +version = "3.32.4" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7d/64/a02e6765de08964ed371eca577870593245afc9dfac16d037de7c10d18e6/filelock-3.32.3.tar.gz", hash = "sha256:0ffa185a3540854c95caa7fa76b76cb219d907415e2c5dc9af25fd970563487f", size = 218135, upload-time = "2026-08-13T16:00:05.577Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6d/30/03b03951873a1a0ffc7e8ca0e10c15597b59e8d0e39260704cd2ea087bc4/filelock-3.32.4.tar.gz", hash = "sha256:2bde2e4cf732e0153406d8a7bc80620ecf5e621fe0d25e41143c4e3b4733ff30", size = 222126, upload-time = "2026-08-23T17:37:55.363Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a7/8e/50f46a9c0ce8d2861a394c1347caae037ea0431d2f67d7feb151cbc4649a/filelock-3.32.3-py3-none-any.whl", hash = "sha256:7f0ca4bcc0e181c60dbbd8aa9ab5b120ebb99e4e064e83636340056f833a1f09", size = 98901, upload-time = "2026-08-13T16:00:03.974Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/01/a4/9b63d595d748e3aff8812b65eacc1a2c4bd90b7c2012e08e72373b4835eb/filelock-3.32.4-py3-none-any.whl", hash = "sha256:22e58ca3b1ae3b98993b762d7338367ae64fe50252bf78d59da3bfebcdf1cedd", size = 99864, upload-time = "2026-08-23T17:37:53.913Z" }, ] [[package]] @@ -1176,15 +1176,15 @@ wheels = [ [[package]] name = "google-auth" -version = "2.56.3" +version = "2.57.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "cryptography" }, { name = "pyasn1-modules" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/db/4c/fa42116a48bab3f7a143cf5042ecff7df9c8b73f8a376203cd534d1dc966/google_auth-2.56.3.tar.gz", hash = "sha256:40e229fc901f0a305b553050e5fce562d509bee0435be053abfa91582b51b90c", size = 367110, upload-time = "2026-08-06T06:24:01.36Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/41/64/55f316b729f92a552d26e00aa3b1542b2e149d0a5efe2842afff0cac7af7/google_auth-2.57.0.tar.gz", hash = "sha256:9b4f96d6a1feb5f7201231f47cfb3de08d8f176f8a61f9e461555116e95a8789", size = 370794, upload-time = "2026-08-25T19:18:26.419Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bc/b3/6117b2f24065cd7e2c4f140e9a193e215f089ca8ba314cf91eb9d0b7fe0a/google_auth-2.56.3-py3-none-any.whl", hash = "sha256:8ec438808f813ad034535000261eed1067475d229d05bbf4216e78c3f2362e53", size = 259116, upload-time = "2026-08-06T06:22:51.788Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/00/f3/8508a702c094af5f6e89773f4dfdeee74913df0f41a02c21b5e7dc3d75cd/google_auth-2.57.0-py3-none-any.whl", hash = "sha256:180dafe015cfb62193bea26b677500fab5b9fd51a1e825ebf3ad9b182047ae59", size = 259728, upload-time = "2026-08-24T21:55:08.449Z" }, ] [package.optional-dependencies] @@ -1194,7 +1194,7 @@ requests = [ [[package]] name = "google-genai" -version = "2.19.0" +version = "2.20.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "anyio" }, @@ -1208,21 +1208,21 @@ dependencies = [ { name = "typing-extensions" }, { name = "websockets" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/37/1a/a834dfed90cf32dba900b533a1d14dcdefbda398bda5661d2a5a60fdc9fc/google_genai-2.19.0.tar.gz", hash = "sha256:d8f4126643793a7de230c396bcd142d21c948c8bb57507580e152549a7a41d9d", size = 659496, upload-time = "2026-08-19T23:05:43.276Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/87/dd/eacd43097318ea6b3e648862713a964d5de261a2eabcc7826db9b9de9758/google_genai-2.20.0.tar.gz", hash = "sha256:d382186f024e9050a7a4b25af6eacba9aa16c6e09594f5d1b530f22ff7f9d76f", size = 664965, upload-time = "2026-08-25T21:28:27.136Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/01/e8/de0accd8cd004cf11252ca53fc5c3dda59bcf1856abfc7609842ceba7363/google_genai-2.19.0-py3-none-any.whl", hash = "sha256:36e0326dd886b52ef765be4c46042732b46b21f637abbe060e3db7c3de23974c", size = 1051056, upload-time = "2026-08-19T23:05:41.462Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ae/a7/a979230234c9df019e008085c923726dc4d92c14a5701ad698e369c9ab2a/google_genai-2.20.0-py3-none-any.whl", hash = "sha256:49bddeccd29a4e6bf1706c5de67735f7115f537f08b6c36a70b8023c99399095", size = 1064276, upload-time = "2026-08-25T21:28:25.287Z" }, ] [[package]] name = "googleapis-common-protos" -version = "1.75.1" +version = "1.75.2" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "protobuf" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/72/73/74bcab964c9a7a61f2bb71e8179b0f13e6fa98f7ce00fd168aab291e4a2e/googleapis_common_protos-1.75.1.tar.gz", hash = "sha256:d3042c6c5a2d4e67113104d6b6818b59b6bd92a197f2a91508e801fe815cf071", size = 150967, upload-time = "2026-08-06T06:24:51.972Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c0/90/fb8f1c84537fbf210c1f53a53ae473a805f6599c5a40b93c1bbadd211f7a/googleapis_common_protos-1.75.2.tar.gz", hash = "sha256:8829a3d1e4508c5b7b9a6b9525f7fccff611f8531644579a76466c29295d4bb2", size = 154083, upload-time = "2026-08-25T19:19:13.028Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9a/51/186c02b8549b69ccda44429cf6ff5081e4b61a602ddfe6a8020d1be31d1b/googleapis_common_protos-1.75.1-py3-none-any.whl", hash = "sha256:28a1934bcd33b9c9da66ac301a0a4227e3367f095a17d0375cb98f0a09d93b79", size = 300626, upload-time = "2026-08-06T06:23:46.696Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/47/5b/1c9e55363c3b1890a98cae813de5b4ea327845756cd8fb7ee690140c7eac/googleapis_common_protos-1.75.2-py3-none-any.whl", hash = "sha256:6b83302f554ea93a0f48409c7fc2050f954bcbcddb7e3a9c76d4a823cb22920e", size = 307002, upload-time = "2026-08-25T19:18:08.927Z" }, ] [[package]] @@ -1576,11 +1576,11 @@ wheels = [ [[package]] name = "json-repair" -version = "0.63.3" +version = "0.63.4" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b5/fe/708f83b5d42f0dc687fc720b0eba1217d9632539a5ccac432c4cfc4794ee/json_repair-0.63.3.tar.gz", hash = "sha256:87747d2d136124961a56392687c84558f5609244301df5ce641b84dac52f3b92", size = 52739, upload-time = "2026-08-19T17:51:27.829Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/62/72/4ec122befe7c2091ba7370d985cf0a3d4dbeccc2f832898ddb7921b4ab94/json_repair-0.63.4.tar.gz", hash = "sha256:77aa642193d62b02b889e8ce0df33898d3ea87282f0b9d8653f8ce8772c642b4", size = 52906, upload-time = "2026-08-25T07:39:02.725Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e4/63/7d171e5fb75ec70e714ec119df1052af5a7224fc19c5668f0e99faf50e6a/json_repair-0.63.3-py3-none-any.whl", hash = "sha256:3681cc25e44f17749d6d440ae69d7c4275609a75092bcde03c6bacc3f3c8475e", size = 51170, upload-time = "2026-08-19T17:51:26.362Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a1/ea/1a7b47196b0d03f59a80f5218b2a34160587c84ca8b0bcb56cb4ee93834e/json_repair-0.63.4-py3-none-any.whl", hash = "sha256:0f374f3eee21454aef0a5d72c06b8689b660a1788f80ab392639e3f7d5c5d458", size = 51295, upload-time = "2026-08-25T07:39:01.259Z" }, ] [[package]] @@ -1654,30 +1654,30 @@ wheels = [ [[package]] name = "langchain" -version = "1.3.15" +version = "1.3.17" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "langchain-core" }, { name = "langgraph" }, { name = "pydantic" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6a/1c/b84579174a8e82ed79f4c3e0cd5a7f2323facc5ccd4d1b8390e7d175b663/langchain-1.3.15.tar.gz", hash = "sha256:ab4b775b9703f7e37babe0b325dbbaef25573bda60ecf79f7850bc875f252795", size = 665047, upload-time = "2026-08-11T19:10:52.455Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f6/35/0ecf83081916c309fb7d59dfc7e03af5c4b223a1ecac0802aba48563f8c2/langchain-1.3.17.tar.gz", hash = "sha256:d377a0f910058aa3d64eced134013b377409d52f7f27907f8e8b0817af4b3de5", size = 636412, upload-time = "2026-08-25T02:40:41.89Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/09/8d/ae721f4d68ff79a17110cabc9cb39b4568b0e3f1fe0a379b926c3f81d175/langchain-1.3.15-py3-none-any.whl", hash = "sha256:c0d2d0d51ed7da249e8ab7487173872059a9dd46fb071d905957485b7334f987", size = 147001, upload-time = "2026-08-11T19:10:50.846Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/cf/a0/7ac6a56ae7b1d9e04b935023b46700dd2cf093f291636d0e7e9074f8f02f/langchain-1.3.17-py3-none-any.whl", hash = "sha256:1ba25d0228ebe6daa102008562dff52c4c88d9683f7f3c2d19c4adc6415b61b2", size = 147872, upload-time = "2026-08-25T02:40:40.524Z" }, ] [[package]] name = "langchain-anthropic" -version = "1.6.0" +version = "1.6.1" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "anthropic" }, { name = "langchain-core" }, { name = "pydantic" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ef/db/1ff8c1ceaf0bb8febe1d3b16d8b7213d47bc7113328e68dbf46ebcf5fc38/langchain_anthropic-1.6.0.tar.gz", hash = "sha256:0307ec98b24566c747e91bac4158bc4f1510bae4b45f0d25107636cc1b616328", size = 722670, upload-time = "2026-08-19T21:39:40.395Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/15/a5/207e2495533cbc4383c7b7e18636869765bb7a9308edc29cfe80b51339a8/langchain_anthropic-1.6.1.tar.gz", hash = "sha256:8325abbbb33acac9e401a4cfabeb2584e67d3f60ef739aea4e7ee80f317d6d64", size = 722964, upload-time = "2026-08-20T14:06:33.813Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f1/f2/c62b91a0663c668ffe5bd1cc83c90c603c4423b65e74d53f01d2b4329df5/langchain_anthropic-1.6.0-py3-none-any.whl", hash = "sha256:a85df4aa8f91a201703a4276e599ff3bcc498ade64294a85f79a96d6991f3154", size = 57151, upload-time = "2026-08-19T21:39:39.415Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/23/f2/9750b14b2a707e6c9b85cb62dc36e47c3f279dead3b14bc27515f5be9e65/langchain_anthropic-1.6.1-py3-none-any.whl", hash = "sha256:befb743448b3e4c2fa0d2406ea7d564be118f21464e7984ce7dc1f5b05bad82d", size = 57166, upload-time = "2026-08-20T14:06:32.807Z" }, ] [[package]] @@ -1756,7 +1756,7 @@ wheels = [ [[package]] name = "langchain-google-genai" -version = "4.3.4" +version = "4.3.5" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "filetype" }, @@ -1764,9 +1764,9 @@ dependencies = [ { name = "langchain-core" }, { name = "pydantic" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d4/ae/8ba8ee41bd20a23dee95cda109632c8b19a53141fbc81d9f87a72f0e975c/langchain_google_genai-4.3.4.tar.gz", hash = "sha256:265655baad05f799fa7b83a030eaca7cee0e32c9ab7de846b80ea7f59c26134e", size = 287396, upload-time = "2026-08-14T18:10:00.119Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/41/e2/51eae10068e20917139f1d0b70bf2d5c15a8122d727457c1c50bed5a2d01/langchain_google_genai-4.3.5.tar.gz", hash = "sha256:bd33e6aa778f978c9bc632d59d5d6bcd1ed25fc07c2ed4aebc011a981c54f546", size = 289744, upload-time = "2026-08-20T16:31:44.51Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c9/f8/9fe4a28e319e9d6b20454e85fea9c243bf011dc866f2c3b9a89d64f9c1a1/langchain_google_genai-4.3.4-py3-none-any.whl", hash = "sha256:618fb0da1b9ba9def5569a8b05cb87e1389de41b8731c802958d09499490d2a5", size = 73338, upload-time = "2026-08-14T18:09:58.772Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e7/98/93a37f508c8a5641389642883e70fba3e088a0b6a25f213445165a57c0cf/langchain_google_genai-4.3.5-py3-none-any.whl", hash = "sha256:24ed714b191c7bb85d2dba746aaab6eb8fd352fe782fdaefe50fde0d7b7601e9", size = 74207, upload-time = "2026-08-20T16:31:43.111Z" }, ] [[package]] @@ -1848,7 +1848,7 @@ sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0e/72/a3add0e4eec4eb [[package]] name = "langfuse" -version = "4.14.4" +version = "4.14.5" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "backoff" }, @@ -1860,9 +1860,9 @@ dependencies = [ { name = "pydantic" }, { name = "wrapt" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/dd/3f/d3387db1f472d2fd4b5de40eb6abedc2f59c9da2224e9d0a79d054a90b81/langfuse-4.14.4.tar.gz", hash = "sha256:48c4bdefc290f61a42881b8048a904ab6b81d37e02496473166836e71ee0ab3a", size = 389680, upload-time = "2026-08-11T17:03:20.472Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d3/5c/f316b31abda2aab6ebadf69de99ea39df8d22ca743ac429284c0c1e12921/langfuse-4.14.5.tar.gz", hash = "sha256:75ccf86523ee87945bf9a853d4de65195376f9be5bda7178dd3d138b66fc670f", size = 391893, upload-time = "2026-08-24T13:01:08.496Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d9/1b/a198adc52aa4ffd0886ca0d4e9bb97d45f4f326db206d2395bac67677f5d/langfuse-4.14.4-py3-none-any.whl", hash = "sha256:78692a1d4785a8c255bf6ea967e673e1ee30ce078d646e7b5f7ff44549d45cce", size = 688351, upload-time = "2026-08-11T17:03:21.881Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/94/d4/914a654c3af7792f02394d93e0cbb052927b3e1e727416c62740cc49490d/langfuse-4.14.5-py3-none-any.whl", hash = "sha256:29e710b9b06adb30094e69af0034d10a47193bfb9c233296fe96b235cf1a377c", size = 695395, upload-time = "2026-08-24T13:01:09.62Z" }, ] [[package]] @@ -1975,14 +1975,14 @@ wheels = [ [[package]] name = "linkify-it-py" -version = "2.1.0" +version = "2.1.1" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "uc-micro-py" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2e/c9/06ea13676ef354f0af6169587ae292d3e2406e212876a413bf9eece4eb23/linkify_it_py-2.1.0.tar.gz", hash = "sha256:43360231720999c10e9328dc3691160e27a718e280673d444c38d7d3aaa3b98b", size = 29158, upload-time = "2026-03-01T07:48:47.683Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/53/3e/79f35b8c31a1881893b7e62be80b2573f06e38db47c33065749293ee1b97/linkify_it_py-2.1.1.tar.gz", hash = "sha256:a78f40fee177eb912e9d2375074108378523c38d3fde5d3ee804f465b6cfbfee", size = 30889, upload-time = "2026-08-24T17:16:57.028Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b4/de/88b3be5c31b22333b3ca2f6ff1de4e863d8fe45aaea7485f591970ec1d3e/linkify_it_py-2.1.0-py3-none-any.whl", hash = "sha256:0d252c1594ecba2ecedc444053db5d3a9b7ec1b0dd929c8f1d74dce89f86c05e", size = 19878, upload-time = "2026-03-01T07:48:46.098Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/eb/3d/e34b19cd144071c583317268c4feb2c59c03ac57eef69753410c7abb11c0/linkify_it_py-2.1.1-py3-none-any.whl", hash = "sha256:8539a6b470efce90ba9b69e39b848e5b15b7ad89f7f98ca17d3532c243f987dc", size = 20532, upload-time = "2026-08-24T17:16:55.965Z" }, ] [[package]] @@ -2097,16 +2097,16 @@ wheels = [ [[package]] name = "llama-index-workflows" -version = "2.23.2" +version = "2.23.3" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "llama-index-instrumentation" }, { name = "pydantic" }, { name = "typing-extensions" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ec/2f/97339da1feaa09716287c8d30ee04b0e6dfa1ab2e2aa4ac2249e2011762d/llama_index_workflows-2.23.2.tar.gz", hash = "sha256:6d791acbe11947c7e9cb02c886356e29c2b4d66f97c6593fe7eb3d288e85b351", size = 137112, upload-time = "2026-08-17T16:38:16.049Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/74/f8/cb9968d2453b16dc8951b8542ea827a59b937ecb0aa1a06d3ca418a311f4/llama_index_workflows-2.23.3.tar.gz", hash = "sha256:fba140ea4d4aa7e7ca58f3ddc2526b92bfb31bfaf45ab2b4345401ae527061b4", size = 138873, upload-time = "2026-08-22T14:26:19.13Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/31/05/bacf8b5ae50d035c3e27ea7cf83761f62705c490e6bbf37e60b8dd53a06e/llama_index_workflows-2.23.2-py3-none-any.whl", hash = "sha256:7dba6033fe776a25dcc74c163543a12a93d5f524cc7df33b193ea383b3577b6d", size = 165028, upload-time = "2026-08-17T16:38:15.005Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bf/35/27a651cee0c4e4540a5b65aaec1293f52e153b870accab7f8472d035809b/llama_index_workflows-2.23.3-py3-none-any.whl", hash = "sha256:d7ad51363ba4817b4140526c5e785d2f143861f618823456e2f379adfe0b321b", size = 166772, upload-time = "2026-08-22T14:26:17.911Z" }, ] [[package]] @@ -2201,11 +2201,11 @@ wheels = [ [[package]] name = "mail-parser" -version = "4.6.3" +version = "4.6.4" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/da/37/4fe3355cfee767234fc57cd62a48ef15829d8cd8e14c7c3412e4f1f16908/mail_parser-4.6.3.tar.gz", hash = "sha256:9b89d91d741ba4688fd4ac0f5071f2b0e238683cf9e94dec407fe3eba0c42698", size = 2898823, upload-time = "2026-08-19T22:09:14.671Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/cd/0f/b6fc717f7a7d9188e451e9d30e98b3f61866313958f866f9da7ff5ed3c84/mail_parser-4.6.4.tar.gz", hash = "sha256:1929109b7934ee061c1533a897b18c57fd0adb3548b79b5e28d901819bade872", size = 2898988, upload-time = "2026-08-21T21:47:13.58Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/05/b2/db246a5f5e430e05ab358501cd34cfe2b422951a2738daf6054f4c2af885/mail_parser-4.6.3-py3-none-any.whl", hash = "sha256:abfcba25955332c72d81c06aaf32107744fd70e610a6e50899efada542712afa", size = 50027, upload-time = "2026-08-19T22:09:13.196Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a2/f9/b35a02c12346111e997ebfaa46ebeb759828373a3eb9f0e82c1e826b3530/mail_parser-4.6.4-py3-none-any.whl", hash = "sha256:bc6e437b3afe38091893e7b6ea49c7f2188ad7616abdd4fa3059e85f1b69efce", size = 50073, upload-time = "2026-08-21T21:47:12.07Z" }, ] [[package]] @@ -2302,7 +2302,7 @@ wheels = [ [[package]] name = "mcp" -version = "1.29.0" +version = "1.29.1" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "anyio" }, @@ -2320,9 +2320,9 @@ dependencies = [ { name = "typing-inspection" }, { name = "uvicorn", marker = "sys_platform != 'emscripten'" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/30/d3/f9acc21dfc886e4f78e2add1a47db46ce16884346afde53f8a064c02c891/mcp-1.29.0.tar.gz", hash = "sha256:52d01f334de1868cc3bb2d6604931126a67631f99a6c5d3b82ba47290315ec36", size = 643148, upload-time = "2026-07-28T13:41:41.939Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b5/48/0bb26fdfe7ac16875f534a101ce2405eae192bdef37e7451f2f4507c13ec/mcp-1.29.1.tar.gz", hash = "sha256:1967ba4c315f7a375146209949f45950d18b0efd2f913d7cf3400bc723ee5f04", size = 646823, upload-time = "2026-08-24T18:30:41.161Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/01/c8/248b201f6d753d69fd5d6506011abbb35a946d9142b2ae311a948fd0be3d/mcp-1.29.0-py3-none-any.whl", hash = "sha256:f5a075bb611f23d6f4d080c6a1699fa62772eebc562ba9e66b306ddde1c755f7", size = 223436, upload-time = "2026-07-28T13:41:40.337Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0b/04/d6b4fb82eefe9e81807aabca1ac98f460ae0883974b83a997aaa20c52545/mcp-1.29.1-py3-none-any.whl", hash = "sha256:b6310eeb59153300c4ab8b9aec4c52f4819a2d6a8e429eb43d908bed7c783648", size = 224653, upload-time = "2026-08-24T18:30:39.573Z" }, ] [[package]] @@ -2512,11 +2512,11 @@ wheels = [ [[package]] name = "narwhals" -version = "2.24.0" +version = "2.25.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2b/1d/58946e5aab18393e793bd4add6985b95d0e01c3a2d832f38f54468b10dcd/narwhals-2.24.0.tar.gz", hash = "sha256:b5c0f684ccd9d7475b564111e319a4964abcf2baf79d3cf6b1003d06ac9b828d", size = 661143, upload-time = "2026-07-13T10:49:19.086Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6f/7b/6248dada39781db1ab3ebf08943080df0796098515a87f6f8696d14ec744/narwhals-2.25.0.tar.gz", hash = "sha256:62c036c810662bf7820b7737077176313bc59350eeeefb808510f388c743e4b2", size = 677076, upload-time = "2026-08-20T18:10:15.454Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/85/a5bfaebfd305ac18b57b0854d74e37e586809061a91fda62f0bd50c8518e/narwhals-2.24.0-py3-none-any.whl", hash = "sha256:42fdedf44e5b2ca7505630d45b4ac3058f38d8485cba9fe1652ca23152df7489", size = 461030, upload-time = "2026-07-13T10:49:17.571Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/eb/dc/55481808fd70ef1567cf13540ffd4702af3f74b112e35427564b03f79c2d/narwhals-2.25.0-py3-none-any.whl", hash = "sha256:1f0f403e8c7e4463cde9bfe78b12fdd809e3ae3dda6d9b2f802934fb9c7a6a8f", size = 467373, upload-time = "2026-08-20T18:10:13.834Z" }, ] [[package]] @@ -2942,11 +2942,11 @@ wheels = [ [[package]] name = "platformdirs" -version = "4.11.3" +version = "4.11.4" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b8/d7/e7bfbc86e9f99ff7807e24de7703f032e9c9ba80bb355cf26e0e9bc5a75e/platformdirs-4.11.3.tar.gz", hash = "sha256:66a73d38a849810252df809a3d8bcbda8e26f6c189920e7535ad608a48dbb5ab", size = 33050, upload-time = "2026-08-13T22:43:27.52Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/50/bb/ebc6636e1ae41314f796ebb7215fd28febb45f9aac72f2b04cb74b5071dc/platformdirs-4.11.4.tar.gz", hash = "sha256:f3373be828247211d0febabea97e238c3dfde8a60b3c90c32756fb52cb21556d", size = 34079, upload-time = "2026-08-24T14:53:49.676Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/19/a9/c34aebedd3a4c9afe5101b1b8713710b3fec18087c8a36c35d2f909861bd/platformdirs-4.11.3-py3-none-any.whl", hash = "sha256:5ed065d443751de711da036041a7a214122efc4a4de393b3f4137ba5576540e7", size = 23491, upload-time = "2026-08-13T22:43:26.121Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/28/be/0ff05fcd2938fb58ad9219bd54135968342d214737e012d62d43f06a2dd6/platformdirs-4.11.4-py3-none-any.whl", hash = "sha256:e34ff91a24bcddc6d939b878bdf3f5c437c9c46fe9e212b1bf455fdf1ee57586", size = 23741, upload-time = "2026-08-24T14:53:48.406Z" }, ] [[package]] @@ -3073,17 +3073,17 @@ wheels = [ [[package]] name = "protobuf" -version = "7.35.1" +version = "7.36.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/da/01/9ef0afd7999eb9badb3a768b4aedd78c86d4c65cfaf1958ab276199e76b4/protobuf-7.35.1.tar.gz", hash = "sha256:ce115a26fe0c39a2c29973d914d327e516a6455464489fe3cd1e51a1b354f81a", size = 458717, upload-time = "2026-06-11T21:55:40.257Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a7/e7/0553e21d25ca4d9f573135775348a372c3ec34a93a71d5f297c3bac38341/protobuf-7.36.0.tar.gz", hash = "sha256:e8e09cb0d794c6687926fa558a8a6e72aa10edb997d5ca61da0765f12a3e00ea", size = 510034, upload-time = "2026-08-20T16:34:01.071Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/10/03/8aeeb7458d22546bf64b5250ca1daeb5ff757d900e8e4a7476c6f0db843e/protobuf-7.35.1-cp310-abi3-macosx_10_9_universal2.whl", hash = "sha256:24f857477359a85c0c235261b8ba905fd51b2562f4a64ca1df5473f29850cbf6", size = 433226, upload-time = "2026-06-11T21:55:31.719Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/37/4b/dfb89eb0e652a1ff073c39a59fb5e3a83cfe9b57a2c83fa6d78270101767/protobuf-7.35.1-cp310-abi3-manylinux2014_aarch64.whl", hash = "sha256:11d6b0ec246892d85215b0a13ca6e0233cf5284b68f0ac02646427f4ff88a799", size = 328847, upload-time = "2026-06-11T21:55:34.035Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0f/58/dc12f2cd484951524af6e3382c785869b9b3fb5e52ee95ae23add53ee8f9/protobuf-7.35.1-cp310-abi3-manylinux2014_s390x.whl", hash = "sha256:b73f9489a4b8b1c9cb1f8ed951c736392592edb24b9d6819f36d2e10b171d5b4", size = 344030, upload-time = "2026-06-11T21:55:34.941Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e4/be/5b3cfe508bfab6761414ff944e3366eb13be4fd71efcd69450f89ba39f43/protobuf-7.35.1-cp310-abi3-manylinux2014_x86_64.whl", hash = "sha256:74758715c53d7158fb76caf4f0cfdacc5329a4b1bb994f865d6cf302d413a1c4", size = 327130, upload-time = "2026-06-11T21:55:35.921Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d8/bc/6d6c7ba8709c85f8f2c390b2b118d6fb08a783676a572271851bf45a7d22/protobuf-7.35.1-cp310-abi3-win32.whl", hash = "sha256:353652e4efd0bca5b5fc2656abf8307ef351f0cf938c9eba09f0e09c20a25c30", size = 428945, upload-time = "2026-06-11T21:55:37.034Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0a/19/8d0cb6f20a1ef7b18f1c8986ad5783f22f84cce39c6ce9a6e645ea55192e/protobuf-7.35.1-cp310-abi3-win_amd64.whl", hash = "sha256:230a75ddfc2de4806e56696ce9640c1cdfdb6543b7cfce98d42a4c0a0e7bdb87", size = 439996, upload-time = "2026-06-11T21:55:38.123Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/19/c7/5f7c636ec43e0c545e28d1f1db71990108306f7bdcb89f069ba97e428e7f/protobuf-7.35.1-py3-none-any.whl", hash = "sha256:4bc97768d8fe4ad6743c8a19403e314511ed9f6d13205b687e52421c023ac1b9", size = 171659, upload-time = "2026-06-11T21:55:39.155Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/8f/ae/58e3ca96cb2e118cc546b677359b3c6659f79a140935c08dec94c7998585/protobuf-7.36.0-cp310-abi3-macosx_10_9_universal2.whl", hash = "sha256:9103532dffd80c6fab7e50c65a31007680a06eb57537d437bb1b35812c138a37", size = 453256, upload-time = "2026-08-20T16:33:53.945Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f0/15/5162230af4912697f0fe406f6800f80760945babcff0e2c2fe6c84ef2d5d/protobuf-7.36.0-cp310-abi3-manylinux2014_aarch64.whl", hash = "sha256:bf94a5917c71058262de683669bc0a797a7669d3de71f0b36d058e3194f47b44", size = 341436, upload-time = "2026-08-20T16:33:55.134Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d7/09/1670b2bfc9a45e807e520c3e9be36524db9ccc7dc05ea17af7681cabdc61/protobuf-7.36.0-cp310-abi3-manylinux2014_s390x.whl", hash = "sha256:3297e60abdff301e5f74393d87f6cc59dacab5f024a89548a6e8de1d26576b16", size = 354440, upload-time = "2026-08-20T16:33:56.077Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c7/f8/bd5804695ba400e423c33fd4d9f58c28d86633d5ba1945c36ff3967d98cb/protobuf-7.36.0-cp310-abi3-manylinux2014_x86_64.whl", hash = "sha256:70f5ec8eb0da81a44360c0dc0beac99a0d78071d21956a7076bae8bd2051841b", size = 340439, upload-time = "2026-08-20T16:33:56.992Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ef/9f/acd02338235a3e7d03168c4303478347b7624fc8189ff4e7f0d2654bbe86/protobuf-7.36.0-cp310-abi3-win32.whl", hash = "sha256:7326fd717bdc419162a735938d89d4032332bcc3408804012b24ff3a37086071", size = 440216, upload-time = "2026-08-20T16:33:57.99Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0e/4e/12cb93270967a2affff5b3f720694700d4d87712a67afd05c8cb3f6fa52c/protobuf-7.36.0-cp310-abi3-win_amd64.whl", hash = "sha256:1781cc1de61249b750848029bca452c0a8b7e990080316b9bbc2518b2117b488", size = 453731, upload-time = "2026-08-20T16:33:58.951Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/01/c3/629999e78d46c1115c11886d51c6bd68c17ce4a944f1ea3e153a91316a33/protobuf-7.36.0-py3-none-any.whl", hash = "sha256:53374d53fc29a67f7dbbf0ade47d7526a0f0137bf0f9c90e48d8a60790ef748c", size = 177024, upload-time = "2026-08-20T16:34:00.053Z" }, ] [[package]] @@ -3385,11 +3385,11 @@ wheels = [ [[package]] name = "pypdf" -version = "6.16.1" +version = "6.16.2" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b6/5a/df92d1c1ef8806ca28f20f978ee059894868d93de797a7e2edebe7fe1a43/pypdf-6.16.1.tar.gz", hash = "sha256:c4d1b43ddae921387321cf63936cd16a7743b91d2da92f165c149a195c972ba9", size = 7003737, upload-time = "2026-08-14T12:24:04.531Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/44/66/54212e75406afd9f3e933d0dda23072f6aecc55c5a273077dc2e0b028b23/pypdf-6.16.2.tar.gz", hash = "sha256:595647f6191de6f402cfde1d0c455d6cbccbd509aac32b34783009c032de5d6e", size = 7008996, upload-time = "2026-08-23T13:50:07.135Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/33/a1/724b18d6757ab7253a8fecd3a430eb8d980ed26872ba16651e7b5ddfc63f/pypdf-6.16.1-py3-none-any.whl", hash = "sha256:63fec31c4092ae50b6729beedcb469055b60d20c834bde1c402df241f371f644", size = 382924, upload-time = "2026-08-14T12:24:02.854Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/13/f1/a2da3b55acd4ab737bf728c97edaaed5ec1d3c1236acb639dcdfa97e42c7/pypdf-6.16.2-py3-none-any.whl", hash = "sha256:c8b09a59399062fb45a1b8156c18a787a10a3dae03ac9674397a226712c94604", size = 385060, upload-time = "2026-08-23T13:50:05.349Z" }, ] [[package]] @@ -3885,27 +3885,27 @@ wheels = [ [[package]] name = "ruff" -version = "0.16.3" -source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/61/b3/3213589383f8f1b3938781bd1278713f6d18621a14992b3e81fefb8a5ef9/ruff-0.16.3.tar.gz", hash = "sha256:e76d33a347661a84b5be6d043d0347fdc745dfdcf825a8f4fed64b5e26eebdf2", size = 4891904, upload-time = "2026-08-13T15:17:13.381Z" } -wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bf/96/493770daebd68c0a67f1549fdf519f53be51fc435186c0585bcc272fd76c/ruff-0.16.3-py3-none-linux_armv6l.whl", hash = "sha256:0c5710e247a58a4521e66e124ba9a74655b414f61ba3a2e9e3811e11098f48f7", size = 10902799, upload-time = "2026-08-13T15:16:27.382Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/5e/e6/2becf3942fddc29a29b8df47691d456fb1085391a694f74d84513251418c/ruff-0.16.3-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:fe155130631a2471fd2e14a7a664a4dfbd7194b8229c3d7b2a40b21178639081", size = 11135539, upload-time = "2026-08-13T15:16:30.87Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/3e/1e/4b8b72f0d006dbf19326aa99f9ca0ee2ff374187c4d301cf529a51aa06fe/ruff-0.16.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:e2ed719e14aa64d895c2ee922594a90a43c861a93f0575a95ff8c47cdbd13eb9", size = 10475095, upload-time = "2026-08-13T15:16:33.259Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/92/32/2201fa49ba1f6c101ee321e83f051ac7a4b8d07b0ef6b4d3f2772b302275/ruff-0.16.3-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9e0b1da805eb043654645d74d5de1e5ce2edc686e40790d2b86f56d71cc06a84", size = 10668771, upload-time = "2026-08-13T15:16:35.65Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c3/66/4afc5c8363bd04d45effce1b7c8713ca037d7a6740b7451a2403a6e3a972/ruff-0.16.3-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:a37bdea0bbe21780f590bf437d6412c8c4e1b6cd010f91a65c2c40c5e5f5f870", size = 10699568, upload-time = "2026-08-13T15:16:38.195Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/53/fd/c67d246bf36bf1698551c56de39e95cd07f70e64433e0098e6267d77061b/ruff-0.16.3-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:09571e6d1288ed9be475207a3ac04ada404f1cd898104be0f6ab8d7df438575b", size = 11499365, upload-time = "2026-08-13T15:16:40.623Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/67/0b/00ecbceb99a263af7b12f6f05ac3c92bc47b905e91adc3f207a836e3bc01/ruff-0.16.3-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2c18c5a101eb540010638cc1ff3c84944d3adb3df62b8d98ca8f22ba484d3413", size = 12311728, upload-time = "2026-08-13T15:16:43.564Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/54/b2/b7b3bb54f4d3f7db504e476ad4ab8de530dceebe2c061384b2757ee419e8/ruff-0.16.3-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8457c44f15033c85ddbb77b15d451df9e24e4bd03b628396dd3610cedc3b8f82", size = 11699896, upload-time = "2026-08-13T15:16:46.209Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c7/30/4c468429ac195addc5ee1b717b6ab1b66632786737ca3b2ed3443fb0c26a/ruff-0.16.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:294b95c4ae0cda9388525c2047778aa758d6b8d4bb876fd4e9eaa3ebc92343eb", size = 11058736, upload-time = "2026-08-13T15:16:48.823Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/43/67/7a113cdaddf24b64d7f75b1242a99d04c82fcef4f6921fdbb832beaffb5f/ruff-0.16.3-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:3d0c7c40c87c2a820509c31ba007968da6e1306468c067b2d82fbfdbcd0e8474", size = 11586911, upload-time = "2026-08-13T15:16:51.913Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f1/c1/2e66f24c0f3ead25a5e660111778685e505e5da353c82802bf49f0cbe7b9/ruff-0.16.3-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:9f738c0fdfa8eed0b2ce7fb27ee7258208a92a68d7949e62aa15164bc7b389da", size = 10954265, upload-time = "2026-08-13T15:16:54.763Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c2/ba/4cee23bf52cba9a058d3726de623624daf50ef9638868edd86f4126157f6/ruff-0.16.3-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:fb785f0be25abe69d320415cd4f833b59e17ba7613d9ba6a958023b6bceb0a50", size = 10709886, upload-time = "2026-08-13T15:16:57.339Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/82/df/7da7194fa5d9dc0a285f7e6fa5a4722e7c63faac0b45b614ded9314363a1/ruff-0.16.3-py3-none-musllinux_1_2_i686.whl", hash = "sha256:c5536e3acfbf9563085aa2be7b13c629c3077e902afc5b941ac44024dbb9f506", size = 11210392, upload-time = "2026-08-13T15:17:00.171Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/35/85/7795f6e817af050e7517bf3e7aa9b061cce70ef33d280aad902c956c1ecf/ruff-0.16.3-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:a2d85c02f9b8e165d85e6779184d38c4132de12603dab59c51c28e22584f9e4d", size = 11626910, upload-time = "2026-08-13T15:17:03.299Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/78/9b/475b927cf27a5cbbda3c7bafb69ed6ff77e1d7923d5d85f17c2749d7ae32/ruff-0.16.3-py3-none-win32.whl", hash = "sha256:388cdf2166642bd9b13d52b5932d3170f34f8abed7e8d9a855f1d84b83645a0a", size = 10931415, upload-time = "2026-08-13T15:17:05.726Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b2/99/e2a2bfc4fbf0a1e8a916bc9ebe6fe6c58cc34c28e0ffc6ce281d572d1c2e/ruff-0.16.3-py3-none-win_amd64.whl", hash = "sha256:e80a7d69ca2a6d1c4d352ec91458cdca6e56c83cdbcabd93e4abe1e53591d948", size = 11445993, upload-time = "2026-08-13T15:17:08.353Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/69/3e/4132e539aed78c148854d4997a2685b0ed4dc4e87110b59ce528564e184e/ruff-0.16.3-py3-none-win_arm64.whl", hash = "sha256:b8ca152da82c1acc1fa8d5874b15951935f0eef46f10e6954c83859011b6178a", size = 11399302, upload-time = "2026-08-13T15:17:10.908Z" }, +version = "0.16.4" +source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/00/8f/d8074b1f25e003164087a8bfe79a0f1a3945135764dbb6aaab04103dcaf9/ruff-0.16.4.tar.gz", hash = "sha256:13171aa9d9af2240ee3504e639de73122c67e74036de5ba2e1d01422cd17e3dc", size = 4899731, upload-time = "2026-08-20T17:43:59.196Z" } +wheels = [ + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ff/80/779895ef584e089d22f2c6df0d0e99a65ec2df0805f1fffd439415b8c1f0/ruff-0.16.4-py3-none-linux_armv6l.whl", hash = "sha256:df4075f71ddac40b9934af60c3ec8a53047dd5a5fdc43224e6e4e8e9a27cb6f7", size = 10006909, upload-time = "2026-08-20T17:43:16.888Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a9/e6/f553199b5e8927a05cb5c422d921fd0656b29ab976e91c44802107c6b0da/ruff-0.16.4-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:0c95538517af68004306b0fb3214ff2f2af67a65092aee77cd9eb86db6656604", size = 10240201, upload-time = "2026-08-20T17:43:19.337Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/1c/70/4a6dc4bb34da4dee35e30f09bbd1bfbdd26f33b62fb9b8df31f08a199cd2/ruff-0.16.4-py3-none-macosx_11_0_arm64.whl", hash = "sha256:963f83df8e69e575b64d67dd447ebbc917db41a14bf38d4593a4183e7aaa8255", size = 9835122, upload-time = "2026-08-20T17:43:21.708Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/24/12/c6e22d686372c15bcb7af99831f1a1be96df696491babf4f24e4f942c527/ruff-0.16.4-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:32a5057c7ff3f6e6480a48fccfb3a412a690f48a3d03ac5cf08177d6c2da3ade", size = 9977162, upload-time = "2026-08-20T17:43:24.236Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/46/49/72b10ec912f5ab5854992eaf7aa7cd36729b6937d9dc4e0fb41b3bf428ec/ruff-0.16.4-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:b3dce8d9b0c57c265b91885a66a567d8ea1372e8eb4e250fa8e5e3f579e99cff", size = 9829789, upload-time = "2026-08-20T17:43:26.966Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/fa/80/0f30e32e7f6ee26edc39075502db9d368d788a44a79b55f763eb4ab03796/ruff-0.16.4-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7dc651db49283c69f8e72c834eec4fe5573e4c646856aebece0ce385dceb2a80", size = 10527949, upload-time = "2026-08-20T17:43:29.384Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/52/3d/86e8ad3542169e56cac3859a343afdb9df2ad54d35a59ce1e67baee83421/ruff-0.16.4-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:3817b87dbcabc92f13b05019257c5b89b5b4d51b5fb20f56fb5235ceb723cd07", size = 11333695, upload-time = "2026-08-20T17:43:31.872Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d0/16/481c29b380c20a0054a8261066665e1b3488e23636c49d0a43e75975b9bb/ruff-0.16.4-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9fce1499134b2c8c68e5166f95705a5812062bb93aacc5f9873bb1a27084bc7", size = 10727741, upload-time = "2026-08-20T17:43:34.596Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/5e/b6/56bc0b8cf45b54b28b3a5e6381c8945d51b5b18adf659454c32295209a31/ruff-0.16.4-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f2d812e482f5a7e02eee26cd73d2a37ebbdf47d795ea63ba1b89110ae93e9fb3", size = 10286522, upload-time = "2026-08-20T17:43:37.288Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e8/8b/b345b4fb110f2fbe2bd31eabd271e5e8b3b7e4ee6c0e02f2dc6be78db000/ruff-0.16.4-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:6baaf984aa7976edf93d3b627fe2d1d22ee94bbca05fa6f90fc76d73924e3454", size = 10584182, upload-time = "2026-08-20T17:43:39.984Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/29/e5/827b34041c35f58774a9681a4213994c164fc987800f4dddabcf451da0bf/ruff-0.16.4-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:bdfcf0b28662eb890372d50f92c283bb94e67e7635ed93c7fd533970acff7b2b", size = 10134195, upload-time = "2026-08-20T17:43:42.351Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0f/10/d0bffcdd6729b87afc82ba0ef377173356a7dc8e972f5179968cf2fdf98c/ruff-0.16.4-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:b66b02cb9b04f537643cadf5768e5f98dc461890d530cb67113d71c8c76e605d", size = 9825821, upload-time = "2026-08-20T17:43:44.532Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f5/32/0db2a863b796ca62d83e92a07a3ccf00921b14db02059347576a2fda3d4b/ruff-0.16.4-py3-none-musllinux_1_2_i686.whl", hash = "sha256:8528bf9a4b291a60bf02ea453511e8ce6215bd2b982ee80405b66b008b6c30a0", size = 10267658, upload-time = "2026-08-20T17:43:46.989Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b2/a0/fbdeb59e48c6261f523e56c8f12e9c08fbe693786595cc7e3959207a9232/ruff-0.16.4-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:fbd85d2875fdd67e833213a651f613bbf25303abf6aa822a5121f4531195678d", size = 10697071, upload-time = "2026-08-20T17:43:49.891Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/aa/28/0c6dd865859c6d17bc8ccc34cb72b0e02d6c7eb25e8a1e22b5bea681e2c0/ruff-0.16.4-py3-none-win32.whl", hash = "sha256:312769988007aaeb8e189b443ccdd03c0e6374489e053467be6d96518ebff76e", size = 10021687, upload-time = "2026-08-20T17:43:52.281Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a3/03/e724450f621698117f9aa6dd241c94d0274ae96781378dc86745ae29f0e7/ruff-0.16.4-py3-none-win_amd64.whl", hash = "sha256:05d9d27a18c4bcbefada602480ec9e01e0bc949d432e0ced5df77edac195919c", size = 10567657, upload-time = "2026-08-20T17:43:54.78Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0e/fe/da8b9e1347696bb22120b77280ec5ce25d500ca5cb39d5ad6e5c18de19c1/ruff-0.16.4-py3-none-win_arm64.whl", hash = "sha256:a3a61621c9b6f6a89573e938a080e648f1695baa3f58570a3a707bc51ff65a21", size = 10451579, upload-time = "2026-08-20T17:43:57.135Z" }, ] [[package]] @@ -3980,33 +3980,33 @@ wheels = [ [[package]] name = "scipy" -version = "1.18.0" +version = "1.18.1" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "numpy" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a7/25/c2700dfaf6442b4effaa91af24ebce5dc9d31bb4a69706313aae70d72cd0/scipy-1.18.0.tar.gz", hash = "sha256:67b2ad2ad54c72ca6d04975a9b2df8c3638c34ddd5b28738e94fc2b57929d378", size = 30774447, upload-time = "2026-06-19T15:01:43.456Z" } -wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6a/19/ca10ead60b0acc80b2b833c2c4a4f2ff753d0f58b811f70d911c7e94a25c/scipy-1.18.0-cp312-cp312-macosx_10_15_x86_64.whl", hash = "sha256:7bd21faaf5a1a3b2eff922d02db5f191b99a6518db9078a8fb23169f6d22259a", size = 31056519, upload-time = "2026-06-19T14:59:45.203Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/96/72/1e6442a00cd2924d361aa1b642ab6373ec35c6fabf311a760be9f76e0f13/scipy-1.18.0-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:265915e79107de9f946b855e50d7470d5893ec3f54b342e1aa6201cbdcd8bb6b", size = 28681889, upload-time = "2026-06-19T14:59:48.103Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9b/2d/11dd93d21e147a73ba22bd75c0b9208d3a2e0ec76d53170ce7d9029b1015/scipy-1.18.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:9ab7b758be6940954a713ee466e2043e9f6e2ed965c1fce5c91039f4be3d90a9", size = 20423580, upload-time = "2026-06-19T14:59:50.665Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9c/01/93552f75e0d2a7dd115a45e59209c51e8d514daff02fc887d2623be06fe1/scipy-1.18.0-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:97b6cddaaee0a779ef6b5ca83c9604b27cc16b2b8fc22c142652df8793319fb8", size = 23054441, upload-time = "2026-06-19T14:59:53.564Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/3c/23/21f5e703643d66f21faa6b4c73195bfcad70c55efcb4f1ab327cd7c4101a/scipy-1.18.0-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:52a96e21517c7292375c0e27dd796a811f03fcea5fd4d108fdfea8145dcf17ab", size = 33968720, upload-time = "2026-06-19T14:59:56.415Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/dd/aa/1b939f6c67ed68635bb538e6752d3dacc02f66535182e939a89581a44e9c/scipy-1.18.0-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:1f55797419e16e7f30cf88ffb3113ce0467f00cfe3f70d5c281730b21769bfc2", size = 35287115, upload-time = "2026-06-19T14:59:59.411Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b6/ff/eec46be7e9234208f801062b53e1983085eddebd693f6c9bfb03b459830d/scipy-1.18.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:ad033410e2e0672ffdc1042110cef20e1c46f8fd0616cee1d44d8d58fad8fc11", size = 35577989, upload-time = "2026-06-19T15:00:02.235Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/84/ca/210d4759c7210bb7d269437421959b39a33434e2776b60c5cb8a763bb30a/scipy-1.18.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:4a55985d54c769c872e64b7f4c8a81cc30ef700cc04296abbbf3705439c126de", size = 37421717, upload-time = "2026-06-19T15:00:05.102Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2b/54/9a9edb45345bd6744da5ddfb6628e5d5185920494c6a67ec45b6381004cb/scipy-1.18.0-cp312-cp312-win_amd64.whl", hash = "sha256:71ccc8faa2dd16ac310233203474a8b5cb67f10dedd54a3116d34943f4b19132", size = 36597428, upload-time = "2026-06-19T15:00:08.112Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/99/0e/33f32a2a58987e26aec0f7df252cbbad1e90ae77bdbc76f40dd4ed0cf0ea/scipy-1.18.0-cp312-cp312-win_arm64.whl", hash = "sha256:d88363fd9d8fbd3511bd273f1a49efb2a540773ddf92a91d57498ce7dd7f3e76", size = 24351481, upload-time = "2026-06-19T15:00:11.103Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/05/52/9c0136c2de7ae0779b7b366447766cec6d9f0702c56bb8ffeb04c8fd3af4/scipy-1.18.0-cp313-cp313-macosx_10_15_x86_64.whl", hash = "sha256:09143f676d157d9f546d663504ef9c1becb819824f1afc018814176411942446", size = 31036107, upload-time = "2026-06-19T15:00:14.03Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/02/73/0291a64843270f4efb86cdcf2ee0f2048631b65ec6b405398b2b4dbf11bf/scipy-1.18.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:5efe260f69417b97ddae455bfb5a95e8359f7f66ad7fa9522a60feb66f169520", size = 28663303, upload-time = "2026-06-19T15:00:16.819Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d3/0f/10ffa0b697a572f4e0d48b92a88895d366422f019f723e7e14a84c050dac/scipy-1.18.0-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:68363b7eaacd8b5dd426df56d782cc156468ac79a127a1b87ca597d6e2e82197", size = 20404960, upload-time = "2026-06-19T15:00:19.635Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/d2/e896cea21ba8edd6c81d4c55b1ffcc717e79698dcbebf9641b4cfb4c6622/scipy-1.18.0-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:c5557d8be5da8e41353fcd4d21491fdbab83b062fc579e94dc09a7c8ab4f669b", size = 23034074, upload-time = "2026-06-19T15:00:22.107Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ea/b2/e83ea34279a52c03374477c74006256ec78df65fc877baa4617d6de1d202/scipy-1.18.0-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0d13bca67c096d89fb95ced0d8921807300fce0275643aef9533cc63a0773468", size = 33942038, upload-time = "2026-06-19T15:00:24.964Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f6/af/e8fe5fb136f51e2b01678b92cb4106d10d8cd68ec147ead2e7cb0ac75398/scipy-1.18.0-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a46f9273dbd0eb1cefba61c9b8648b4dfe3cbc14a080176f9a73e44b8336dc7f", size = 35266390, upload-time = "2026-06-19T15:00:28.059Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/3a/49/2c5cbb907b56695fc67517811d1db234dfd83381a84814ec220aded2794d/scipy-1.18.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5aba46108853ddfc77906b6557aac839d2b52e900c1d72a1180adaaab58d265f", size = 35551324, upload-time = "2026-06-19T15:00:31.014Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bb/73/eda39f7a2d306ff0ffc574afd13c0bbb6d10a603d9a413998ee269487a80/scipy-1.18.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:b6f758e35f12757b5d95c00bc6de2438e229c2664b7a92e96f205959d9f2dfa4", size = 37404785, upload-time = "2026-06-19T15:00:34.072Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b7/d2/ae881ee28d014f38e0ccbfd974a06a919ba9af34f1f74bf42b5301891d63/scipy-1.18.0-cp313-cp313-win_amd64.whl", hash = "sha256:1afac4a847207c7ff8efd321734a50b06d0280b3b2a2c0fc2f413101747ad7c7", size = 36554943, upload-time = "2026-06-19T15:00:36.903Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/70/3a/21154e2d54eb3639c6bf4dbae2e531c68356bfe95990daa30df33b30d556/scipy-1.18.0-cp313-cp313-win_arm64.whl", hash = "sha256:c5dbddf60e58c2312316d097271a8e73d40eaf2eabfa4d95ed7d3695bbf2ce7b", size = 24350911, upload-time = "2026-06-19T15:00:40.062Z" }, +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/74/66de6258867beb2ef08f35f9f2ac017a52cacd5081714d239ff1a442d458/scipy-1.18.1.tar.gz", hash = "sha256:52c4b7422442aba924d03ad4019852b08a92e64ea187b933135687bfe2747307", size = 30781235, upload-time = "2026-08-21T23:28:50.599Z" } +wheels = [ + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/18/f7/240c110c08693826b4513a52f5717d62ec7c7af72f2920821247c03b17b3/scipy-1.18.1-cp312-cp312-macosx_10_15_x86_64.whl", hash = "sha256:457fd7a2a8edeb044ab6ffbc0aa03ff6cd18491356e5e0c834d76ce621b916d1", size = 31111061, upload-time = "2026-08-21T23:23:44.522Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/05/4a/78c6285577c375e7cf27277ea8ee6961224327f1e1a0c44af5f17f23635c/scipy-1.18.1-cp312-cp312-macosx_12_0_arm64.whl", hash = "sha256:e708533e8b2ae2497d65346538a7dcc92814410b25b81432eac66de0f2af8265", size = 28733332, upload-time = "2026-08-21T23:23:50.015Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a5/f6/a5b82f8abbe14d134691b8b903696f701d25a081353a29dc655c364d9e62/scipy-1.18.1-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:7bbf207c4453ce1ad2e00b17313852b33310b83090c2311bdaf97f93c0380d12", size = 20475078, upload-time = "2026-08-21T23:23:54.138Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/23/22/0858a0bbd6b3e825ceb8cd9baf9eaf3b2f2b1d77727eb6be40500bcdc92f/scipy-1.18.1-cp312-cp312-macosx_14_0_x86_64.whl", hash = "sha256:78c0665edead396b1abb4897c41a5c1d9bf090c8a637a4c20a61678e0a264e66", size = 23108904, upload-time = "2026-08-21T23:23:57.824Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/75/9a/2e71719f31eaefe0e3a1706c4a1ded94e664bfd95ffca2b219a671faee01/scipy-1.18.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:3c085faa2cfa879c5141df483f836f4d691045a078224a670fa570fa01612d89", size = 34025113, upload-time = "2026-08-21T23:24:02.209Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/df/64/ff35eb9e54894cf471ff4716abd3c81eb0a0626869217ce3e6ba4ccf17d7/scipy-1.18.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f55fa87b6c612ecd6b058f167c53231b1d14e412efe361d3d6e38b3631c73218", size = 35344199, upload-time = "2026-08-21T23:24:07.844Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d3/af/c5538be1792f7034c12c7db6ee67cace58253c7b87b122d68253eaf5de89/scipy-1.18.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c35d74ce0e193ff740c2f2be2ac913ddc232fe6c1ff40b26cfecb9c670c63314", size = 35639587, upload-time = "2026-08-21T23:24:13.05Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/91/4c/075e4f66471bac101141ac739e9e135549be1bae584571bd03a530c056e1/scipy-1.18.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:d2924a03db38dc2e848bca2fe9f077dafb891480b91a00a0963a8cf86dfc31c1", size = 37480330, upload-time = "2026-08-21T23:24:19.608Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/39/e7/979fd14e75008623df31ba70d6bb144700f68feadcea042021c06a05bf82/scipy-1.18.1-cp312-cp312-win_amd64.whl", hash = "sha256:5e4d44984abc0020154ea81b247adeddcc3ac5527b975ff798bd1ba0adc513c2", size = 36658278, upload-time = "2026-08-21T23:24:25.463Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c7/0b/e1525354ff9d7d5feb6d1b31af6d14072e5c91e9607b421fa1ec889660b3/scipy-1.18.1-cp312-cp312-win_arm64.whl", hash = "sha256:d65d448389b8436493abcf629cc94ad0cf32aecaf06e1acca1de53cc795f2f12", size = 24400588, upload-time = "2026-08-21T23:24:30.579Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b6/55/4540ee0f9c42a9ad7109d0d1a8cc70de54c3572b01c6693a2b1c70e90ceb/scipy-1.18.1-cp313-cp313-macosx_10_15_x86_64.whl", hash = "sha256:3ab3523da44749156e1f68b464dc56af11ae4cbc5c739a49d05f32b982eca9f3", size = 31089958, upload-time = "2026-08-21T23:24:35.8Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2a/f5/769f36d14922b8071a43e95d24d18b6bdafad10d7f5cf647867e1ac052bc/scipy-1.18.1-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:e6fb6a55cc0ba97b59a1f288fb86dc6fce8bdfc0fffcbfd015e3a954bf2a2d93", size = 28715106, upload-time = "2026-08-21T23:24:40.775Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9a/d7/21d890274f75ea37a8209d5519e72da3da90302e3b9fb8397a0918386a62/scipy-1.18.1-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:ea324d9dd34c38bfb9bec8ca4d1b407db97dbb74029f566b8e322b1b6fe56fe6", size = 20456846, upload-time = "2026-08-21T23:24:45.066Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/ec/01/798430ecea2e78ec7c02663d5f71c007bb6abeca931080debd40d7fa55ea/scipy-1.18.1-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:75b00eb8fb802090aa903f4ea1c7f5a584779f967361e68b7e98e531cc2d7174", size = 23087986, upload-time = "2026-08-21T23:24:49.539Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e6/5f/4634e9d35c68496e4e34cb6946eafab044458e6cedab42b40b6588e475b6/scipy-1.18.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d416b16cccfd70fbf62400e84d0bb2f4e6af519a45557f1692c749b37f14b315", size = 33998146, upload-time = "2026-08-21T23:24:54.714Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/41/48/6450ed9243315322bbc19ac57b9b70d66a20bf1d38d124c96bc4bf6af9ea/scipy-1.18.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fdaf5ea890a6183d0565f51a61799d67081bd5b1cf03c5f4b3fd3732108625c9", size = 35312578, upload-time = "2026-08-21T23:25:00.44Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/00/bd/bf5a4be6a3525676499f6dff307991739ff6fdcad1481b1aeb6745339f58/scipy-1.18.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c825cef2f49e46753726a7181a8e199804a912b29519ada542c6ebc654951899", size = 35612621, upload-time = "2026-08-21T23:25:06.144Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bd/4e/3c45c33e00a77996c4b1cb707929f833ba7b1d522ee29f882512c330676d/scipy-1.18.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e3b417bf8c2c7c16e8f58ad91db17783ec911ac16e7b50eb6eab6e809b4f5b07", size = 37457323, upload-time = "2026-08-21T23:25:12.483Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/93/0e/e0348fbc0dbab65c114cf78957e7dfeb49f8e8b556b4d930cc12ff195e18/scipy-1.18.1-cp313-cp313-win_amd64.whl", hash = "sha256:559ed65f60c1af5a03f3912605a1b5114f522c7c32fb23c3376ae8f03219fe28", size = 36622841, upload-time = "2026-08-21T23:25:18.722Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/50/a8/6a77f5f267c555108f0a864b6db714363dab567a8266422a79a385f9232b/scipy-1.18.1-cp313-cp313-win_arm64.whl", hash = "sha256:cd479fc04dd9401e3b4f49e76518768ef99c4f517a98c284eb091fd725719adf", size = 24399315, upload-time = "2026-08-21T23:25:23.458Z" }, ] [[package]] @@ -4125,7 +4125,7 @@ wheels = [ [[package]] name = "spacy" -version = "3.8.15" +version = "3.8.16" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "catalogue" }, @@ -4149,22 +4149,24 @@ dependencies = [ { name = "wasabi" }, { name = "weasel" }, ] +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/69/5d/b0b4cd2f6e8a0470e50f7f0cfc1cea6e2f25572e97fb5d404c7941d5e88a/spacy-3.8.16.tar.gz", hash = "sha256:a3d19da23637cc396b42d22fc33852680f675d8ddcb847d3e2a0d094712d1794", size = 1330989, upload-time = "2026-08-24T10:05:57.936Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/f2/e4/f206fbca55637ebf16c7183f96ade8365c0d8bb9307fdc0e0a74a25532ca/spacy-3.8.15-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:9b22d269dfa6aa3c6a000e576b261bee46c277afaf915a3fe1e0a81ad227ee7e", size = 6264500, upload-time = "2026-08-07T17:20:52.576Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2b/8c/5276816f217a1e479bc249c1b8d7be3eb11adc571e3e327950527475894f/spacy-3.8.15-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:39ac175bbf8a8381c41b8e0abbdede3ff29d1f29f3cac42644f5719671e20884", size = 6128694, upload-time = "2026-08-07T17:20:55.184Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/77/7e/36f41f0bc4d2f40f4427a0ff3dd7afc4b185e7aac9a29c17a693faf490fd/spacy-3.8.15-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b4527b7824e8228f2abed18774b224de7aad9b900d47ff66483abdf16d0c8a5e", size = 32195955, upload-time = "2026-08-07T17:20:58.053Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/49/3d/88004d9518c912c30140e47f930abcbc9e7240d4c2aebe52c05b7f70df79/spacy-3.8.15-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fa9df68fc8887c0a6440b84d1d307980e594d99b45f19a37d733e58caa9a6682", size = 32695414, upload-time = "2026-08-07T17:21:01.856Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2c/d5/be9c21d4d454b6f83c8bf876c063431172e36d52eac89cdf534259371778/spacy-3.8.15-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:4031de613e8ba666392fef107a06b5144270f0f64b6a61df37faf6a329d61b5a", size = 32304485, upload-time = "2026-08-07T17:21:05.627Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9a/d7/9ac6e8b10cb293644ad80f148f33471afc26d5e28d07fded716c2b2eecd1/spacy-3.8.15-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:cb0782680cf930e9ab984a73b2078c981343f77c5c407773c704cbf8c7df13c0", size = 33192409, upload-time = "2026-08-07T17:21:09.545Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/25/06/994516301ca55c800be99c5c1daadf669d3f62ad3b4d5053619a4bde33b0/spacy-3.8.15-cp312-cp312-win_amd64.whl", hash = "sha256:9ad71e9ce6c4e1b984a91bc82b2e4e08df23581f5cc670bbacf29a07a9822d5a", size = 14306712, upload-time = "2026-08-07T17:21:12.9Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/dc/97/32025f9065ef4db7af5aeb4cd560db62c7e3440e2bc9003f91f2493cc804/spacy-3.8.15-cp312-cp312-win_arm64.whl", hash = "sha256:35060be85c952df84e9095713ba05f8515473e127ad0c6b43cd22a1b42d4cdbc", size = 13723587, upload-time = "2026-08-07T17:21:15.834Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/88/af/32b21b02062122e3fd14d3660e7c322c2c6306bdce4991fa35e41fcc7c12/spacy-3.8.15-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c9683078efb96dee8b1a751bc0bfa9271a6604b7257547849b4254f285ce77d9", size = 6247285, upload-time = "2026-08-07T17:21:18.434Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/62/af/45038bc57767f8998e357b3be311e904daab119050dceb03cc937ee2ba54/spacy-3.8.15-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:c8b187654941e417c4cc0378ed7860bf6aad7bbbc370b925994a9cebeb8ca615", size = 6108393, upload-time = "2026-08-07T17:21:20.618Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/75/73/9241e095491abdf83ef02fe7b49c50a431fe55b11ad56ba92e56b90e3c59/spacy-3.8.15-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b27d0abf1138644837536705578dc1ea48a693796b283a49202e1dbde0a3b02", size = 31792735, upload-time = "2026-08-07T17:21:23.632Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/02/6f/2169d692c0502f73e64aa7bbc3cba14a26af85c4b648ed153083ecdce45d/spacy-3.8.15-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ce66d75279ee84b749eea058ff3ea79a31adf0ff53f887943dced258ceb6ce2a", size = 32329824, upload-time = "2026-08-07T17:21:27.674Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2a/92/bcea83328ffa9659e417a6bddc0b85ceafd863da0c6a896bbce6ff619335/spacy-3.8.15-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:37f370f579c1bb56aa767e6d585672133f37e89c1181ebbd251fd946777f0ef5", size = 31931162, upload-time = "2026-08-07T17:21:31.819Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/70/f4/2f56347442608ef75877b4d90f582a01e3ccd44742eb13391e1c8097a5ac/spacy-3.8.15-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e1aaf79b42c0e8c5dd4801b474c22a61fc68edb347fd3a6e09d5cba7e1aed5db", size = 32854888, upload-time = "2026-08-07T17:21:35.642Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/73/a1/dae0084ba86cdc786585184d4f3400129031dfc6cfbf2df4086dd083d59a/spacy-3.8.15-cp313-cp313-win_amd64.whl", hash = "sha256:aaa70356876c152f0235ff5bc4869f7a45133392ff73aa881113376f7eec0caa", size = 14295593, upload-time = "2026-08-07T17:21:39.297Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/60/b2/33e8e4cac876090c5d8b4016b23ca2647f66c2a87c518ea010047e78ee1f/spacy-3.8.16-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:e045765035e9760f38637101f41a7c89d3b69659dcc70e716bb4011a95969ac9", size = 6565218, upload-time = "2026-08-24T10:04:38.825Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d2/1e/247e43597b10576eccfed55af7999663f00ae934394acebef724cabdc1b7/spacy-3.8.16-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:44a641085abbe3a09ea56a89f2e50b5f51aea6cf69213b70305fb48e341b883b", size = 6460523, upload-time = "2026-08-24T10:04:40.873Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0e/8c/2b150ea6e9b667b710e7365328edfdd3c6729af4e48124baa80c4784c26b/spacy-3.8.16-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a2c46c35467d963a62dc0407c99d3a18562d4c85ee887a57e4a07dde020f1a38", size = 34901687, upload-time = "2026-08-24T10:04:44.138Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b9/9c/3b5d64a72ac40cf584134c6639ac67f8f2d504eb081c91da3ad2ffae5c04/spacy-3.8.16-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8d0f63c3124d0a34a37e9b519d004cee1269744be07f91f843902e6c9f3e557a", size = 35496883, upload-time = "2026-08-24T10:04:48.383Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/45/16/8c9d9afed3afbfd585e876c330ec8dcff878a64bc99c108355c8b59ea954/spacy-3.8.16-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:397a80c4d09a6237eebaaee00a2e5f8732ff4cc165f94679b899f30179d38ea8", size = 35012008, upload-time = "2026-08-24T10:04:52.983Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/32/dd/eeaf28004591f0d282da809194d9f7bfb6a1c0626ca0d7d69e8b5436751f/spacy-3.8.16-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:2810fd2ce41f6a8dde62642dad0d11fd9db7cb6a1cd40b1c8b70a01586e6ff9f", size = 36028110, upload-time = "2026-08-24T10:04:56.874Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/4e/c0/4122fa6c3670d504ad5a3094c9b512f0d0908f66cefeb8c8c3349f8c6a28/spacy-3.8.16-cp312-cp312-win_amd64.whl", hash = "sha256:5991c334e71c23b798c25e0d403295dde4d2d1fb58c2e075450b964db03c05ea", size = 15180961, upload-time = "2026-08-24T10:05:00.437Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/36/55/2fd66419866455289c090cd177faf7d3ee360f36b2eea5e4c74b2c541a58/spacy-3.8.16-cp312-cp312-win_arm64.whl", hash = "sha256:770cc0581fc06c0723cb1488dc1d1da0570801168da786674626f342d903ed37", size = 14552405, upload-time = "2026-08-24T10:05:03.382Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a5/5a/ebe53a3cd1edf5f8cb4b9465ae2383b0b4f6a2c8bd96afa0408f682df4bb/spacy-3.8.16-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f42f257404e749d9048d3b3b97004692210057d38e03c2f156817258bf6daf2b", size = 6585155, upload-time = "2026-08-24T10:05:05.818Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/29/f8/80f9ddf288c494b3a7b737bff3b938ef70328c49aaf0a90738aa90b638b8/spacy-3.8.16-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ce120d4077050352f344b987354be3e3fddb207436b537cf91a891837657ce2c", size = 6465153, upload-time = "2026-08-24T10:05:08.32Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7d/5f/b039865cf4e2fa82c8defc737c37af4480e70a56d1e1c380865b3df89f54/spacy-3.8.16-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f765cb6cbef82b5d98c46936a1385e87fb05919433fbc6b953e3c093ac30f8ef", size = 34527537, upload-time = "2026-08-24T10:05:11.65Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/12/48/60048a3558f591fbaf11a73b342262699178cf44dd6fb88827118be34335/spacy-3.8.16-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:111d817b32755d869e5ed6cc258b55c50c6687f47b78f6ebb2c14b1ce5ee707c", size = 35151231, upload-time = "2026-08-24T10:05:15.911Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/96/6e/3e09ebd5635e1c6a2b92baee5d593a907908ce1b38fb1f011dbb0d66c411/spacy-3.8.16-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:8a8a2bf3eb3486a0992176b77ac1d38ca9c669623941fdb8d3dddacb44dfd28e", size = 34649694, upload-time = "2026-08-24T10:05:20.225Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/78/8c/b31440943778f8c6a63dc568df5d0d3b4a58c9472784416474e71d04eca5/spacy-3.8.16-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:a237491463e351755f0167546f6a821d42971c5275a219a62d468f19f654138b", size = 35664934, upload-time = "2026-08-24T10:05:24.369Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/55/f4/a613999ef17bf8252d4e6a62609b9d16a932e1cfd56f9c682e5dd82d91ba/spacy-3.8.16-cp313-cp313-win_amd64.whl", hash = "sha256:cc7e449aec9a313bc037ef5ea45fb0ac99135d92dace8421d68414d16be39543", size = 15163063, upload-time = "2026-08-24T10:05:27.428Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/15/6e/97039de4f188ae3c69b5de9c852b4c5c5252896d2bc3d9ed1af93655ba1d/spacy-3.8.16-cp313-cp313-win_arm64.whl", hash = "sha256:024ce6408ea00c7f8c6387a6de65bb67aad40c51c9d63705303c5cb9a8ef51b0", size = 14540066, upload-time = "2026-08-24T10:05:30.354Z" }, ] [[package]] @@ -4302,16 +4304,16 @@ wheels = [ [[package]] name = "tavily-python" -version = "0.7.27" +version = "0.8.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "httpx" }, { name = "requests" }, { name = "tiktoken" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/92/53/e97950453a215a7b8c2c44d70b216f64c0e1d9844d8b91f025104e96d233/tavily_python-0.7.27.tar.gz", hash = "sha256:3fbbee7fc7e252479b264835e6f943b4a81395429c1bd419e8024d11bf2c1831", size = 30750, upload-time = "2026-07-30T13:44:15.245Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/92/c2/dd46d7e44093e710768f0584a9ad290148a215bd40d3f86d27e94a3e6203/tavily_python-0.8.0.tar.gz", hash = "sha256:e9e440df828a70ea9c4390f27778dbdc051159406c9c903bad1e6d8dc7df2fc4", size = 31192, upload-time = "2026-08-24T16:16:13.767Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/67/dd/cf4b6668ef06670a27ed4012f2bd3663602ad5f0e1ac9b0c23e8d45d01eb/tavily_python-0.7.27-py3-none-any.whl", hash = "sha256:e5cb40cc852d108ced8a313379b7098108642eedfbd97f821296a5e1a483e9b9", size = 21988, upload-time = "2026-07-30T13:44:14.404Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/da/7b/4d125cd672540a075e20fc5131f039ba93d42d91cfcbd4348e99ad4eab77/tavily_python-0.8.0-py3-none-any.whl", hash = "sha256:c5aaea1dab5daad0e846e8603e54c6b9088cb6da8ce0d474f2114c6940941409", size = 22098, upload-time = "2026-08-24T16:16:12.784Z" }, ] [[package]] @@ -4426,6 +4428,10 @@ wheels = [ name = "tokenizers" version = "0.22.2" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } +resolution-markers = [ + "python_full_version >= '3.13' and sys_platform == 'darwin'", + "python_full_version < '3.13' and sys_platform == 'darwin'", +] dependencies = [ { name = "huggingface-hub" }, ] @@ -4433,19 +4439,35 @@ sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/73/6f/f80cfef4a312e1 wheels = [ { url = "https://pypi.tuna.tsinghua.edu.cn/packages/92/97/5dbfabf04c7e348e655e907ed27913e03db0923abb5dfdd120d7b25630e1/tokenizers-0.22.2-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:544dd704ae7238755d790de45ba8da072e9af3eea688f698b137915ae959281c", size = 3100275, upload-time = "2026-01-05T10:41:02.158Z" }, { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2e/47/174dca0502ef88b28f1c9e06b73ce33500eedfac7a7692108aec220464e7/tokenizers-0.22.2-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:1e418a55456beedca4621dbab65a318981467a2b188e982a23e117f115ce5001", size = 2981472, upload-time = "2026-01-05T10:41:00.276Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/d6/84/7990e799f1309a8b87af6b948f31edaa12a3ed22d11b352eaf4f4b2e5753/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2249487018adec45d6e3554c71d46eb39fa8ea67156c640f7513eb26f318cec7", size = 3290736, upload-time = "2026-01-05T10:40:32.165Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/78/59/09d0d9ba94dcd5f4f1368d4858d24546b4bdc0231c2354aa31d6199f0399/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:25b85325d0815e86e0bac263506dd114578953b7b53d7de09a6485e4a160a7dd", size = 3168835, upload-time = "2026-01-05T10:40:38.847Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/47/50/b3ebb4243e7160bda8d34b731e54dd8ab8b133e50775872e7a434e524c28/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:bfb88f22a209ff7b40a576d5324bf8286b519d7358663db21d6246fb17eea2d5", size = 3521673, upload-time = "2026-01-05T10:40:56.614Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e0/fa/89f4cb9e08df770b57adb96f8cbb7e22695a4cb6c2bd5f0c4f0ebcf33b66/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1c774b1276f71e1ef716e5486f21e76333464f47bece56bbd554485982a9e03e", size = 3724818, upload-time = "2026-01-05T10:40:44.507Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/64/04/ca2363f0bfbe3b3d36e95bf67e56a4c88c8e3362b658e616d1ac185d47f2/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:df6c4265b289083bf710dff49bc51ef252f9d5be33a45ee2bed151114a56207b", size = 3379195, upload-time = "2026-01-05T10:40:51.139Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2e/76/932be4b50ef6ccedf9d3c6639b056a967a86258c6d9200643f01269211ca/tokenizers-0.22.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:369cc9fc8cc10cb24143873a0d95438bb8ee257bb80c71989e3ee290e8d72c67", size = 3274982, upload-time = "2026-01-05T10:40:58.331Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/1d/28/5f9f5a4cc211b69e89420980e483831bcc29dade307955cc9dc858a40f01/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:29c30b83d8dcd061078b05ae0cb94d3c710555fbb44861139f9f83dcca3dc3e4", size = 9478245, upload-time = "2026-01-05T10:41:04.053Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6c/fb/66e2da4704d6aadebf8cb39f1d6d1957df667ab24cff2326b77cda0dcb85/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:37ae80a28c1d3265bb1f22464c856bd23c02a05bb211e56d0c5301a435be6c1a", size = 9560069, upload-time = "2026-01-05T10:45:10.673Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/16/04/fed398b05caa87ce9b1a1bb5166645e38196081b225059a6edaff6440fac/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_i686.whl", hash = "sha256:791135ee325f2336f498590eb2f11dc5c295232f288e75c99a36c5dbce63088a", size = 9899263, upload-time = "2026-01-05T10:45:12.559Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/05/a1/d62dfe7376beaaf1394917e0f8e93ee5f67fea8fcf4107501db35996586b/tokenizers-0.22.2-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:38337540fbbddff8e999d59970f3c6f35a82de10053206a7562f1ea02d046fa5", size = 10033429, upload-time = "2026-01-05T10:45:14.333Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/fd/18/a545c4ea42af3df6effd7d13d250ba77a0a86fb20393143bbb9a92e434d4/tokenizers-0.22.2-cp39-abi3-win32.whl", hash = "sha256:a6bf3f88c554a2b653af81f3204491c818ae2ac6fbc09e76ef4773351292bc92", size = 2502363, upload-time = "2026-01-05T10:45:20.593Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/65/71/0670843133a43d43070abeb1949abfdef12a86d490bea9cd9e18e37c5ff7/tokenizers-0.22.2-cp39-abi3-win_amd64.whl", hash = "sha256:c9ea31edff2968b44a88f97d784c2f16dc0729b8b143ed004699ebca91f05c48", size = 2747786, upload-time = "2026-01-05T10:45:18.411Z" }, - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/72/f4/0de46cfa12cdcbcd464cc59fde36912af405696f687e53a091fb432f694c/tokenizers-0.22.2-cp39-abi3-win_arm64.whl", hash = "sha256:9ce725d22864a1e965217204946f830c37876eee3b2ba6fc6255e8e903d5fcbc", size = 2612133, upload-time = "2026-01-05T10:45:17.232Z" }, +] + +[[package]] +name = "tokenizers" +version = "0.23.1" +source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } +resolution-markers = [ + "python_full_version >= '3.13' and sys_platform != 'darwin'", + "python_full_version < '3.13' and sys_platform != 'darwin'", +] +dependencies = [ + { name = "huggingface-hub" }, +] +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/c1/60/21f715d9faba5f5407ff759472ade058ec4a507ad62bcea47cb847239a73/tokenizers-0.23.1.tar.gz", hash = "sha256:1feeeadf865a7915adc25445dea30e9933e593c31bb96c277cee36de227c8bfa", size = 365748, upload-time = "2026-04-27T14:43:25.606Z" } +wheels = [ + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6c/36/e006edf031154cba92b8416057d92c3abe3635e4c4b0aa0b5b9bb39dde70/tokenizers-0.23.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1bf13402aff9bc533c89cb849ec3b412dc3fbeacc9744840e423d7bf3f7dc0e3", size = 3374081, upload-time = "2026-04-27T14:43:01.241Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a2/ef/7735d226f9c7f874a6bee5e3f27fb25ecabdf207d37b8cf45286d0795893/tokenizers-0.23.1-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:f836ca703b89ae07919a309f9651f7a88fd5a33d5f718ba5ad0870ec0256bad6", size = 3247641, upload-time = "2026-04-27T14:43:03.856Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/b9/d9/24827036f6e21297bfffda0768e58eb6096a4f411e932964a01707857931/tokenizers-0.23.1-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:ae848657742035523fdf261773630cb819a26995fcd3d9ecae0c1daf6e5a4959", size = 3585624, upload-time = "2026-04-27T14:43:10.664Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0c/9a/22f3582b3a4f49358293a5206e25317621ee4526bfe9cdaa0f07a12e770e/tokenizers-0.23.1-cp310-abi3-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:53b09e85775d5187941e7bab30e941b4134ab4a7dd8c68e783d231fb7ca27c51", size = 3844062, upload-time = "2026-04-27T14:43:05.643Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/7e/65/b8f8814eef95800f20721384136d9a1d22241d50b2874357cb70542c392f/tokenizers-0.23.1-cp310-abi3-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:ea5a0ce170074329faaa8ea3f6400ecde604b6678192688533af80980daae71a", size = 3460098, upload-time = "2026-04-27T14:43:08.854Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0d/d5/1353e5f677ec27c2494fb6a6725e82d56c985f53e90ec511369e7e4f02c6/tokenizers-0.23.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5075b405006415ea148a992d093699c66eb01952bf59f4d5727089a98bda45a4", size = 3346235, upload-time = "2026-04-27T14:43:12.377Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/71/89/39b6b8fc073fb6d413d0147aa333dc7eff7be65639ac9d19930a0b21bf33/tokenizers-0.23.1-cp310-abi3-manylinux_2_31_riscv64.whl", hash = "sha256:56f3a77de629917652f876294dc9fe6bad4a0c43bc229dc72e59bb23a0f4729a", size = 3426398, upload-time = "2026-04-27T14:43:07.264Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/0f/80/127c854da64827e5b79264ce524993a90dddcb320e5cd42412c5c02f9e8a/tokenizers-0.23.1-cp310-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:9d10a6d957ef01896dc274e890eee27d41bd0e74ef31e60616f0fc311345184e", size = 9823279, upload-time = "2026-04-27T14:43:17.222Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/fe/ba/44c2502feb1a058f096ddfb4e0996ef3225a01a388e1a9b094e91689fe93/tokenizers-0.23.1-cp310-abi3-musllinux_1_2_armv7l.whl", hash = "sha256:1974288a609c343774f1b897c8b482c791ab17b75ab5c8c2b1737565c1d82288", size = 9644986, upload-time = "2026-04-27T14:43:19.45Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/9e/c1/464019a9fb059870bfe4eebb4ba12208f3042035e258bf5e782906bd3847/tokenizers-0.23.1-cp310-abi3-musllinux_1_2_i686.whl", hash = "sha256:120468fb4c24faf0543c835a4fabafa4deb3f20a035c9b6e83d0b553a97615d4", size = 9976181, upload-time = "2026-04-27T14:43:21.463Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/79/94/3ac1432bda31626071e9b6a12709b97ae05131c804b94c8f3ac622c5da32/tokenizers-0.23.1-cp310-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:e3d8f40ea6268047de7046906326abed5134f27d4e8447b23763afe5808c8a96", size = 10113853, upload-time = "2026-04-27T14:43:23.617Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6a/dd/631b21433c771b1382535326f0eca80b9c9cee2e64961dd993bc9ac4669e/tokenizers-0.23.1-cp310-abi3-win32.whl", hash = "sha256:93120a930b919416da7cd10a2f606ac9919cc69cacae7980fa2140e277660948", size = 2536263, upload-time = "2026-04-27T14:43:29.888Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/97/c9/2553f72aaf65a2797d4229e37fa7fbe38ffbf3e32912d31bdd78b3323e59/tokenizers-0.23.1-cp310-abi3-win_amd64.whl", hash = "sha256:e7bfaf995c1bdbbd21d13539decb6650967013759318627d85daeb7881af16b7", size = 2798223, upload-time = "2026-04-27T14:43:28.51Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/cd/2b/2be299bab55fc595e3d38567edb1a87f86e594842968fa9515a07bdcf422/tokenizers-0.23.1-cp310-abi3-win_arm64.whl", hash = "sha256:a26197957d8e4425dfba746315f3c425ea00cfa8367c5fbc4ec73447893dcea9", size = 2664127, upload-time = "2026-04-27T14:43:26.949Z" }, ] [[package]] @@ -4493,13 +4515,13 @@ resolution-markers = [ "python_full_version < '3.13' and sys_platform == 'darwin'", ] dependencies = [ - { name = "filelock", marker = "sys_platform == 'darwin'" }, - { name = "fsspec", marker = "sys_platform == 'darwin'" }, - { name = "jinja2", marker = "sys_platform == 'darwin'" }, - { name = "networkx", marker = "sys_platform == 'darwin'" }, - { name = "setuptools", marker = "sys_platform == 'darwin'" }, - { name = "sympy", marker = "sys_platform == 'darwin'" }, - { name = "typing-extensions", marker = "sys_platform == 'darwin'" }, + { name = "filelock" }, + { name = "fsspec" }, + { name = "jinja2" }, + { name = "networkx" }, + { name = "setuptools" }, + { name = "sympy" }, + { name = "typing-extensions" }, ] wheels = [ { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.13.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:2fe228aba290d14b9f31b049be550dbd469c3fd3013d7a19705b30454da97027", upload-time = "2026-07-08T12:26:18Z" }, @@ -4515,13 +4537,13 @@ resolution-markers = [ "python_full_version < '3.13' and sys_platform != 'darwin'", ] dependencies = [ - { name = "filelock", marker = "sys_platform != 'darwin'" }, - { name = "fsspec", marker = "sys_platform != 'darwin'" }, - { name = "jinja2", marker = "sys_platform != 'darwin'" }, - { name = "networkx", marker = "sys_platform != 'darwin'" }, - { name = "setuptools", marker = "sys_platform != 'darwin'" }, - { name = "sympy", marker = "sys_platform != 'darwin'" }, - { name = "typing-extensions", marker = "sys_platform != 'darwin'" }, + { name = "filelock" }, + { name = "fsspec" }, + { name = "jinja2" }, + { name = "networkx" }, + { name = "setuptools" }, + { name = "sympy" }, + { name = "typing-extensions" }, ] wheels = [ { url = "https://download-r2.pytorch.org/whl/cpu/torch-2.13.0%2Bcpu-cp312-cp312-linux_s390x.whl", hash = "sha256:ffadde149901c8afa138daa38d898264003cfcf1a3336ca5cd964b5af227d867", upload-time = "2026-07-08T19:28:41Z" }, @@ -4545,9 +4567,9 @@ resolution-markers = [ "python_full_version < '3.13' and sys_platform == 'darwin'", ] dependencies = [ - { name = "numpy", marker = "sys_platform == 'darwin'" }, - { name = "pillow", marker = "sys_platform == 'darwin'" }, - { name = "torch", version = "2.13.0", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "sys_platform == 'darwin'" }, + { name = "numpy" }, + { name = "pillow" }, + { name = "torch", version = "2.13.0", source = { registry = "https://download.pytorch.org/whl/cpu" } }, ] wheels = [ { url = "https://download-r2.pytorch.org/whl/cpu/torchvision-0.28.0-cp312-cp312-macosx_14_0_arm64.whl", hash = "sha256:e9f54c30cd52e3ef7fd034cc69b7bb7e0964e1c8f8743e018ab92e95b40f9eee", upload-time = "2026-07-08T12:26:40Z" }, @@ -4563,9 +4585,9 @@ resolution-markers = [ "python_full_version < '3.13' and sys_platform != 'darwin'", ] dependencies = [ - { name = "numpy", marker = "sys_platform != 'darwin'" }, - { name = "pillow", marker = "sys_platform != 'darwin'" }, - { name = "torch", version = "2.13.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" }, marker = "sys_platform != 'darwin'" }, + { name = "numpy" }, + { name = "pillow" }, + { name = "torch", version = "2.13.0+cpu", source = { registry = "https://download.pytorch.org/whl/cpu" } }, ] wheels = [ { url = "https://download-r2.pytorch.org/whl/cpu/torchvision-0.28.0%2Bcpu-cp312-cp312-manylinux_2_28_aarch64.whl", hash = "sha256:2f768c4f6d5adf6d5535061fd69ec44827608bac0e96e12114942a6fdfce1107", upload-time = "2026-07-08T12:26:39Z" }, @@ -4597,15 +4619,15 @@ resolution-markers = [ "python_full_version < '3.13' and sys_platform == 'darwin'", ] dependencies = [ - { name = "huggingface-hub", marker = "sys_platform == 'darwin'" }, - { name = "numpy", marker = "sys_platform == 'darwin'" }, - { name = "packaging", marker = "sys_platform == 'darwin'" }, - { name = "pyyaml", marker = "sys_platform == 'darwin'" }, - { name = "regex", marker = "sys_platform == 'darwin'" }, - { name = "safetensors", marker = "sys_platform == 'darwin'" }, - { name = "tokenizers", marker = "sys_platform == 'darwin'" }, - { name = "tqdm", marker = "sys_platform == 'darwin'" }, - { name = "typer", marker = "sys_platform == 'darwin'" }, + { name = "huggingface-hub" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "regex" }, + { name = "safetensors" }, + { name = "tokenizers", version = "0.22.2", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } }, + { name = "tqdm" }, + { name = "typer" }, ] sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e7/e6/4134ea2fbea322cddc7ffc94a0d8ee47fe32ce8e876b320cd37d88edfc4d/transformers-5.8.1.tar.gz", hash = "sha256:4dd5b6de4105725104d84fd6abd74b305f4debfc251b38c648ee5dd087cf543b", size = 8532019, upload-time = "2026-05-13T03:21:57.234Z" } wheels = [ @@ -4614,26 +4636,26 @@ wheels = [ [[package]] name = "transformers" -version = "5.15.1" +version = "5.16.0" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } resolution-markers = [ "python_full_version >= '3.13' and sys_platform != 'darwin'", "python_full_version < '3.13' and sys_platform != 'darwin'", ] dependencies = [ - { name = "huggingface-hub", marker = "sys_platform != 'darwin'" }, - { name = "numpy", marker = "sys_platform != 'darwin'" }, - { name = "packaging", marker = "sys_platform != 'darwin'" }, - { name = "pyyaml", marker = "sys_platform != 'darwin'" }, - { name = "regex", marker = "sys_platform != 'darwin'" }, - { name = "safetensors", marker = "sys_platform != 'darwin'" }, - { name = "tokenizers", marker = "sys_platform != 'darwin'" }, - { name = "tqdm", marker = "sys_platform != 'darwin'" }, - { name = "typer", marker = "sys_platform != 'darwin'" }, + { name = "huggingface-hub" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "pyyaml" }, + { name = "regex" }, + { name = "safetensors" }, + { name = "tokenizers", version = "0.23.1", source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } }, + { name = "tqdm" }, + { name = "typer" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/2a/92/c50c61da7046bbb59a4d011291aeadcfb4d7980ab36fdb31e93823a3fb93/transformers-5.15.1.tar.gz", hash = "sha256:27c996bd9075ddc82d40f8590dfdc81ea45f611bfca477e0db5d7fd257a482f7", size = 9378434, upload-time = "2026-08-19T11:28:20.33Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6c/3b/51cf33e0c59f46d8e9cfdcee8fb6169a542728f822e0fa3c9f23967cb2ce/transformers-5.16.0.tar.gz", hash = "sha256:ef551c6d12e8c5c82b976720d8c1e6ed597fbed2c0f46c63be73a73ae80b9102", size = 9596373, upload-time = "2026-08-26T12:32:14.935Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/41/c4/a12e1d9b387fb0c40a57116db82b457e8c771cb419163cda29204d74a595/transformers-5.15.1-py3-none-any.whl", hash = "sha256:b7cdf238ff583e3a58dbc7fa34da1aaf091ce063141f65a30538160bd5afe93f", size = 11749582, upload-time = "2026-08-19T11:28:16.726Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a9/6b/b606c1a5d6a8aa6436bea8bfbbc0fce146859430db684debb5f740c216d3/transformers-5.16.0-py3-none-any.whl", hash = "sha256:2b4adda8d99bb4c1b208da5ed967e2625ad449087827a750cb3b23ce4000b139", size = 12014254, upload-time = "2026-08-26T12:32:10.987Z" }, ] [[package]] @@ -4826,7 +4848,7 @@ wheels = [ [[package]] name = "unstructured-client" -version = "0.46.1" +version = "0.46.2" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "aiofiles" }, @@ -4837,9 +4859,9 @@ dependencies = [ { name = "pypdfium2" }, { name = "requests-toolbelt" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/eb/9e/8c1ae3db9c940a29e54674c4ee533e80dc58d5312045404b61aeef8b9da8/unstructured_client-0.46.1.tar.gz", hash = "sha256:f187bd289e4ed6d453af35e22ddd3c0a5d776e35442d4fa24a31ecd57a1b84b6", size = 103595, upload-time = "2026-08-05T16:13:53.245Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/5f/02/170f8186ff068ca468fe5927c1042936e9484100d1bd1bc39728dcad3099/unstructured_client-0.46.2.tar.gz", hash = "sha256:f7de567c7c677475309142c719bc3e9824197cf2a5c44b8456aed67f77919136", size = 104385, upload-time = "2026-08-24T15:43:13.912Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/1c/1b/eb3b2538956283060f7c9f5ae5265ce45c015717aaf32d8031c891e58be7/unstructured_client-0.46.1-py3-none-any.whl", hash = "sha256:dc297e7468c2e653af7db5bd293a3ece681bb7d4b2161c0052c8c5f47b8712cc", size = 169176, upload-time = "2026-08-05T16:13:51.591Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/15/00/80f36aac1c853edc63a3baea8ba1016a4cd4cb49a3fb25d071bdc00e8c67/unstructured_client-0.46.2-py3-none-any.whl", hash = "sha256:42fe6d56631fcfb4e942db2c9304002aa39d7169fe4fc657760f013afb32e720", size = 169646, upload-time = "2026-08-24T15:43:12.413Z" }, ] [[package]] @@ -4933,7 +4955,7 @@ wheels = [ [[package]] name = "volcengine-python-sdk" -version = "5.0.45" +version = "5.0.46" source = { registry = "https://pypi.tuna.tsinghua.edu.cn/simple" } dependencies = [ { name = "certifi" }, @@ -4941,9 +4963,9 @@ dependencies = [ { name = "six" }, { name = "urllib3" }, ] -sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/a4/95/1df7c9fe48417b995e47c141c68829ed5e14c397fcb2844ffa8ba6aadc59/volcengine_python_sdk-5.0.45.tar.gz", hash = "sha256:10fb5182dd612896719c977e69e31e4a8fb1c3eca3f3e679ea40341f1828756a", size = 10497294, upload-time = "2026-08-13T09:41:16.294Z" } +sdist = { url = "https://pypi.tuna.tsinghua.edu.cn/packages/6e/c6/2094e5ef1303393aa78599cd750f95f32143643ee330ddfe0b23faaf59fd/volcengine_python_sdk-5.0.46.tar.gz", hash = "sha256:3d7ee12ad559d07bb53a160b4ba98feaeee09f4a03d87a86855b162571ff717a", size = 10694620, upload-time = "2026-08-20T11:55:35.039Z" } wheels = [ - { url = "https://pypi.tuna.tsinghua.edu.cn/packages/bd/b2/f6bc73d4f191e3a9156402c686a4e9b25821b7b797c4c7efad1d061eea84/volcengine_python_sdk-5.0.45-py2.py3-none-any.whl", hash = "sha256:dd0e9fc358836483cd31e26d934ed69117190679c5aa0799dc1523aedd0f8641", size = 42085309, upload-time = "2026-08-13T09:41:09.415Z" }, + { url = "https://pypi.tuna.tsinghua.edu.cn/packages/e4/f0/171e760424849eabfe735c4b37e29949b2279555dd1654819db973ee7be7/volcengine_python_sdk-5.0.46-py2.py3-none-any.whl", hash = "sha256:f73e8f675f9ff545d0fec54b7057436dba0f1c420fcb235848a76a5120e5bf18", size = 43011218, upload-time = "2026-08-20T11:55:28.333Z" }, ] [[package]] @@ -5265,7 +5287,7 @@ wheels = [ [[package]] name = "yuxi" -version = "0.7.2.beta1" +version = "0.7.2.beta2" source = { editable = "package" } dependencies = [ { name = "agent-sandbox" }, @@ -5418,7 +5440,7 @@ requires-dist = [ [[package]] name = "yuxi-workspace" -version = "0.7.2.beta1" +version = "0.7.2.beta2" source = { virtual = "." } dependencies = [ { name = "arq" }, diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index 53db6498b..387988f2e 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -41,7 +41,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.2.beta2} container_name: api-prod working_dir: /app user: "1000:1000" @@ -85,7 +85,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.2.beta2} container_name: worker-prod working_dir: /app user: "1000:1000" @@ -127,7 +127,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.2.beta2} working_dir: /app user: "0:0" networks: @@ -207,7 +207,7 @@ services: context: . dockerfile: docker/web.Dockerfile target: production - image: yuxi-web:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-web:${YUXI_VERSION:-0.7.2.beta2} container_name: web-prod ports: - "80:80" diff --git a/docker-compose.yml b/docker-compose.yml index c0264547e..e8c657480 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -48,7 +48,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.2.beta2} container_name: api-dev working_dir: /app user: "1000:1000" @@ -100,7 +100,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.2.beta2} container_name: worker-dev working_dir: /app user: "1000:1000" @@ -149,7 +149,7 @@ services: build: context: . dockerfile: docker/api.Dockerfile - image: yuxi-api:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-api:${YUXI_VERSION:-0.7.2.beta2} working_dir: /app user: "0:0" volumes: @@ -178,7 +178,7 @@ services: build: context: ./docker/sandbox_provisioner dockerfile: Dockerfile - image: yuxi-sandbox-provisioner:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-sandbox-provisioner:${YUXI_VERSION:-0.7.2.beta2} container_name: sandbox-provisioner volumes: - ./docker/volumes/yuxi/threads:/app/user-data @@ -238,7 +238,7 @@ services: context: . dockerfile: docker/web.Dockerfile target: development - image: yuxi-web:${YUXI_VERSION:-0.7.2.beta1} + image: yuxi-web:${YUXI_VERSION:-0.7.2.beta2} container_name: web-dev volumes: - ./web/src:/app/src diff --git a/docker/api.Dockerfile b/docker/api.Dockerfile index 053d92985..fd98c6b1e 100644 --- a/docker/api.Dockerfile +++ b/docker/api.Dockerfile @@ -1,6 +1,6 @@ # 使用轻量级Python基础镜像 FROM python:3.13-slim -COPY --from=ghcr.io/astral-sh/uv:0.11.26 /uv /uvx /bin/ +COPY --from=ghcr.io/astral-sh/uv:0.12.6 /uv /uvx /bin/ COPY --from=node:24-slim /usr/local/bin /usr/local/bin COPY --from=node:24-slim /usr/local/lib/node_modules /usr/local/lib/node_modules COPY --from=node:24-slim /usr/local/include /usr/local/include diff --git a/docker/save_docker_images.ps1 b/docker/save_docker_images.ps1 index 6f84ebd6c..9052daeab 100644 --- a/docker/save_docker_images.ps1 +++ b/docker/save_docker_images.ps1 @@ -15,7 +15,7 @@ Write-Host "开始导出Docker镜像到 $OutputFile..." -ForegroundColor Cyan # 从各个文件中提取的基础镜像列表 $Images = @( "python:3.11-slim", - "ghcr.io/astral-sh/uv:0.11.26", + "ghcr.io/astral-sh/uv:0.12.6", "node:24-alpine", "node:24-slim", "nginx:alpine", diff --git a/docker/save_docker_images.sh b/docker/save_docker_images.sh index cd89e39bc..17a261913 100644 --- a/docker/save_docker_images.sh +++ b/docker/save_docker_images.sh @@ -12,7 +12,7 @@ echo "开始导出 Docker 镜像到 $OUTPUT_FILE..." # 从各个文件中提取的基础镜像列表 IMAGES=( "python:3.13-slim", - "ghcr.io/astral-sh/uv:0.11.26", + "ghcr.io/astral-sh/uv:0.12.6", "node:24-alpine", "node:24-slim", "nginx:alpine", diff --git a/docker/web.Dockerfile b/docker/web.Dockerfile index 3036c0357..1a426b0d4 100644 --- a/docker/web.Dockerfile +++ b/docker/web.Dockerfile @@ -4,11 +4,12 @@ WORKDIR /app ENV TZ=Asia/Shanghai # 安装 pnpm(版本与 package.json 的 packageManager 字段对齐,避免 pnpm@latest 与旧 lockfile 不兼容) -RUN npm install -g pnpm@10.11.0 +RUN npm install -g pnpm@11.24.0 -# 复制 package.json 和 pnpm-lock.yaml +# 复制 pnpm 依赖声明与锁文件 COPY ./web/package*.json ./ COPY ./web/pnpm-lock.yaml* ./ +COPY ./web/pnpm-workspace.yaml ./ # 安装依赖(--frozen-lockfile 保证 dev 与 build/CI 三处依赖与 pnpm-lock.yaml 一致,避免漂移) RUN pnpm install --frozen-lockfile --registry=https://registry.npmmirror.com @@ -26,11 +27,12 @@ FROM node:24-alpine AS build-stage WORKDIR /app # 安装 pnpm -RUN npm install -g pnpm@10.11.0 +RUN npm install -g pnpm@11.24.0 # 复制依赖文件 COPY ./web/package*.json ./ COPY ./web/pnpm-lock.yaml* ./ +COPY ./web/pnpm-workspace.yaml ./ # 安装依赖 RUN pnpm install --frozen-lockfile --registry=https://registry.npmmirror.com diff --git a/docs/.vitepress/theme/components/YuxiHome.vue b/docs/.vitepress/theme/components/YuxiHome.vue index 9bde0140a..0fd212796 100644 --- a/docs/.vitepress/theme/components/YuxiHome.vue +++ b/docs/.vitepress/theme/components/YuxiHome.vue @@ -469,7 +469,7 @@ const vReveal = {
# 1. 克隆并初始化
-git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git
+git clone --branch v0.7.2.beta2 --depth 1 https://github.com/xerrors/Yuxi.git
cd Yuxi && ./scripts/init.sh
# 2. 使用 Docker 启动
diff --git a/docs/advanced/deployment.md b/docs/advanced/deployment.md
index fe46b5168..bbaebdfa7 100644
--- a/docs/advanced/deployment.md
+++ b/docs/advanced/deployment.md
@@ -1,6 +1,6 @@
# 生产部署
-本页说明如何用 Docker Compose 部署 Yuxi、验证服务状态,以及从 v0.7.1 升级到当前 `v0.7.2.beta1`。当前版本仍是 Beta,重要数据上线前请先在备份环境演练恢复。
+本页说明如何用 Docker Compose 部署 Yuxi、验证服务状态,以及从 v0.7.1 升级到当前 `v0.7.2.beta2`。当前版本仍是 Beta,重要数据上线前请先在备份环境演练恢复。
## 前置条件
@@ -76,7 +76,7 @@ docker compose --env-file .env.prod -f docker-compose.prod.yml --profile all up
检出目标版本后,先停止 API、worker 和 provisioner,再运行仓库提供的迁移入口:
```bash
-git checkout v0.7.2.beta1
+git checkout v0.7.2.beta2
bash scripts/migrate-storage.sh \
--env-file .env.prod \
-f docker-compose.prod.yml
diff --git a/docs/develop-guides/changelog.md b/docs/develop-guides/changelog.md
index fcbb95622..0f3c84279 100644
--- a/docs/develop-guides/changelog.md
+++ b/docs/develop-guides/changelog.md
@@ -4,6 +4,19 @@
同一版本的多次更新按功能归并。后续修复某项功能引入的问题时,直接更新原条目,避免同一问题在多个位置重复出现。当前版本的条目优先说明用户影响、操作变化和验证边界;实现细节只保留对升级、排障或贡献有帮助的部分。
+## v0.7.2.beta2 (2026-08-26)
+
+::: warning Beta 升级说明
+beta2 延续 beta1 的存储与数据库迁移边界。从 v0.7.1 或更早版本升级时,仍须先完整备份 PostgreSQL、MinIO 和文件卷,并按[生产部署与升级](../advanced/deployment.md)执行停机迁移;不要只恢复其中一项。
+:::
+
+- Project Workdir 内的 `write_file` 与 `edit_file` 在默认审批模式下可自动放行;Project 外写入和 `execute` 继续要求审批,Sandbox 文件权限边界不变。
+- 修复文件夹上传未保留相对目录结构和文件统计的问题,并完善知识库真实文件夹管理、历史虚拟目录迁移与大规模列表性能。
+- Agent 交付物支持选择保存目录,Office/PDF 预览链路和对话绑定模型优先级得到修复;调试面板按真实 Run 分组并可精确跳转 Langfuse trace。
+- Dashboard、用户管理分页、知识库 OCR 配置和数据库 schema 迁移入口完成收敛,减少大数据量和升级场景中的不一致。
+- pnpm 升级到 11.24.0、uv 升级到 0.12.6,并刷新 Web、docs、backend 与 CLI 锁文件;生产依赖审计无已知漏洞。
+- Vue 图标依赖从已废弃的 `lucide-vue-next` 迁移到官方 `@lucide/vue` 1.34.0,现有图标名称、尺寸和样式保持兼容。
+
## v0.7.2.beta1 (2026-08-23)
::: danger Beta 版本与数据风险
diff --git a/docs/develop-guides/contributing.md b/docs/develop-guides/contributing.md
index aedcd9e2d..2e4957bf0 100644
--- a/docs/develop-guides/contributing.md
+++ b/docs/develop-guides/contributing.md
@@ -79,7 +79,7 @@ LITE 模式不会注册知识库、图谱和评估能力。需要完整链路时
前端代码位于 `web/`,使用 `pnpm` 和 LESS:
- API 封装放在 `web/src/apis`;
-- 图标优先使用 `lucide-vue-next`;
+- 图标优先使用 `@lucide/vue`;
- 颜色优先使用 `base.css` 和 `base.dark.css` 的变量;
- 浅色、暗色、loading、empty、error、focus 和响应式状态都要检查;
- UI 改动遵循[产品体验与界面设计规范](./design.md)。
diff --git a/docs/develop-guides/decisions/implemented/2026-08-26-beta2-version-bump-coverage.md b/docs/develop-guides/decisions/implemented/2026-08-26-beta2-version-bump-coverage.md
new file mode 100644
index 000000000..ad35bdb1f
--- /dev/null
+++ b/docs/develop-guides/decisions/implemented/2026-08-26-beta2-version-bump-coverage.md
@@ -0,0 +1,41 @@
+# Beta2 版本升级与脚本覆盖收敛
+
+状态:implemented
+类型:bug-fix
+Owner:scripts/bump-version.sh
+
+## 问题
+
+`bump-version.sh` 声明同步所有当前硬编码版本,但正式版本模式此前只更新 clone 命令,没有更新 README、快速开始和部署指南中的“当前版本”文案及部署 checkout 目标。运行脚本从 `0.7.2.beta1` 升级到 `0.7.2.beta2` 后,这些活动文档仍指向 beta1,而 changelog 中的 beta1 发布记录又必须保持历史事实。
+
+## 决策
+
+正式版本模式在已知活动文档位置更新当前版本说明、clone 分支和部署 checkout 目标;`--dev` 继续跳过这些发布文档。changelog 与迁移说明中的历史版本不参与替换。隔离文件树回归测试覆盖真实数量的重复 Compose 标签、正式版本更新、dev 跳过语义、非法版本输入和历史记录保留,并接入 Make 与 Engineering Trust workflow。
+
+本次通过脚本将后端包、工作区、Web、Compose 镜像默认标签、锁文件和发布文档统一升级到 `0.7.2.beta2`,同时新增 beta2 发布记录。版本格式沿用仓库现有 `0.7.2.betaN` 约定;uv 接受该 PEP 440 版本并保持锁文件可复现。
+
+## 替代方案
+
+- 每次手工补改文档:不能闭合脚本“自动同步”的承诺,拒绝。
+- 全仓字符串替换 beta1:会篡改 changelog 和迁移历史,拒绝。
+- `--dev` 模式升级 beta2:会故意跳过发布文档,不符合 Beta 发布目标。
+
+## 后果
+
+活动版本入口现在由脚本定点同步,历史版本仍可独立保留。新增活动文档时仍需同时扩展脚本与回归 fixture。`make format` 还收敛了两个 Lucide import 的 Prettier 格式,没有改变运行时行为。
+
+Tag、远端推送和 CI 属于提交后的外部状态;tag 只能在本地门禁与独立 Review 通过后创建,不覆盖同名 tag。
+
+## 验证
+
+- `make format`:通过;backend 233 files unchanged,Web 只格式化两个 `@lucide/vue` import。
+- `make lint`:通过。
+- `make test`:1590 passed。
+- `cd web && pnpm run test:unit && pnpm run build`:136 passed,build 通过。
+- `cd packages/yuxi-cli && uv run --python 3.13 --group test pytest`:90 passed。
+- `cd docs && pnpm run build`:通过;保留既有 VitePress/Rolldown 警告。
+- `make verify-trust`、`scripts.test_dependency_update_policy`:通过;版本脚本 3 个隔离案例全部通过。
+- `make audit-dependencies`:backend、CLI、Web、docs 生产依赖无已知漏洞,Python/Node 漏洞负控按预期命中。
+- backend/web/docs frozen lock、dev Compose 和带临时非敏感占位变量的 production Compose config:通过。
+- 版本 Owner oracle、uv lock check、脚本幂等检查和 `git diff --check`:通过。
+- 独立 Reviewer 指出的决策状态、重复入口/dev/非法输入测试覆盖和审计证据均已收敛。
diff --git a/docs/develop-guides/decisions/implemented/2026-08-26-dependency-toolchain-refresh.md b/docs/develop-guides/decisions/implemented/2026-08-26-dependency-toolchain-refresh.md
new file mode 100644
index 000000000..316ded585
--- /dev/null
+++ b/docs/develop-guides/decisions/implemented/2026-08-26-dependency-toolchain-refresh.md
@@ -0,0 +1,42 @@
+# 依赖工具链与锁文件刷新
+
+状态:implemented
+类型:process
+Owner:web/pnpm-workspace.yaml
+
+## 问题
+
+仓库需要让本地、CI 与 Docker 使用一致的当前稳定 pnpm 和 uv,并刷新 Dependabot 所覆盖的 npm 与 uv 依赖。pnpm 11 不读取 `package.json` 中旧的 `pnpm` 配置,因此版本升级同时需要迁移安全 override 和构建脚本许可,避免工具升级削弱供应链约束。
+
+## 决策
+
+本地、package manifest、Docker 与 CI 固定使用 pnpm 11.24.0;本地、Docker uv 镜像和 setup-uv 固定版本使用 uv 0.12.6。Web `pnpm-workspace.yaml` 是 pnpm 11 安全配置的首要 Owner;docs 的同名文件、两个 package manifest、Dockerfile 与 workflows 分别拥有各自装配事实。Web 与 docs 的 overrides 移入各自 workspace 配置,pnpm 11 只允许当前依赖图需要的 `esbuild` 和 Web `core-js` 执行安装脚本。Docker dependency layer 复制 workspace 配置,dependency-audit 的路径 Owner 同时覆盖这两个文件。
+
+Web、docs、backend 与 CLI 锁文件按当前 manifest 约束刷新。后端锁文件获得兼容的 PyTorch 2.13 CPU 依赖后,漏洞审计删除不再命中的两个历史 ignore。Dependabot 常规版本 PR 按仓库策略关闭;本次通过受管 manifest 的 outdated/lock upgrade 重建更新范围。唯一 open security alert 属于故意脆弱的 Node 审计负控 fixture,因此保留其漏洞版本。历史上已关闭的 PostgreSQL、Milvus、Redis、Python、Node 等跨主版本镜像更新不在缺少迁移与真实拓扑验证时重新引入。
+
+## 替代方案
+
+- 只改版本字符串、不迁移 pnpm overrides:pnpm 11 会忽略原配置,因此不采用。
+- 将所有 Docker 镜像升级到最新主版本:会改变数据库格式、服务协议和部署兼容,超出工具链与锁文件刷新范围。
+- 修复审计 fixture 的 open alert:会破坏证明审计 gate 能检测真实漏洞的负控,因此不采用。
+- 保留已失效的 uv audit ignore:产生无匹配警告并扩大未来审计盲区,因此删除。
+
+## 后果
+
+pnpm 11 frozen install 在本地、CI 和 Web Docker build 中读取同一 workspace 安全配置。后端与 CLI 使用 uv 0.12.6 生成的锁文件,API Docker build 从同版本镜像复制 uv。工具链刷新时 Web 没有可更新的正常依赖;当时 deprecated 的 `lucide-vue-next` 不存在更高版本,替换包被留给后续独立迁移,现已由[迁移 Lucide Vue 官方包](2026-08-26-lucide-vue-package-migration.md)完成。docs 和直接 Python 依赖没有剩余 outdated 项。
+
+版本查询与 Dependabot 状态是本次更新时间点的证据,之后会随上游漂移。真实 PostgreSQL integration、完整 E2E、外部 provider 和 Windows PowerShell 7 初始化脚本未由本次验证覆盖。
+
+## 验证
+
+- `pnpm --version` 与 `uv --version`:分别为 11.24.0 和 0.12.6;构建出的 Web/API 镜像回读版本一致。
+- Web `pnpm install --frozen-lockfile`、`pnpm run lint:check`、`pnpm run test:unit`、`pnpm run build`:通过,136 tests passed。
+- `cd docs && pnpm install --frozen-lockfile && pnpm run build`:通过;保留既有 VitePress/Rolldown 兼容警告。
+- `uv run --project backend --python 3.13 --group test pytest backend/test/unit -m 'not slow' -q`:1590 passed。
+- `cd packages/yuxi-cli && uv run --python 3.13 --group test pytest`:90 passed。
+- `docker build -f docker/web.Dockerfile --target build-stage -t yuxi-web:pnpm11-test .` 与 `docker build -f docker/api.Dockerfile -t yuxi-api:uv012-test .`:通过。
+- `make audit-dependencies`:四个生产依赖集合无已知漏洞,Python/Node 漏洞 fixture 负控均按预期失败并命中目标 advisory。
+- `make audit-licenses`:backend 与 CLI 许可证清单成功生成。
+- `python3 scripts/verify_engineering_contracts.py && python3 -m unittest scripts.test_verify_engineering_contracts scripts.test_dependency_update_policy`:通过,66 tests passed。
+- `uv lock --check`(backend、CLI)、npm/uv outdated 检查和 `git diff --check`:通过;工具链刷新时 Web 仅报告无更新版本的 deprecated `lucide-vue-next`,随后已独立迁移。
+- 独立 Reviewer:No blocking findings;未审查工作区同时存在的文件夹上传并发变更。
diff --git a/docs/develop-guides/decisions/implemented/2026-08-26-lucide-vue-package-migration.md b/docs/develop-guides/decisions/implemented/2026-08-26-lucide-vue-package-migration.md
new file mode 100644
index 000000000..47fde25df
--- /dev/null
+++ b/docs/develop-guides/decisions/implemented/2026-08-26-lucide-vue-package-migration.md
@@ -0,0 +1,39 @@
+# 迁移 Lucide Vue 官方包
+
+状态:implemented
+类型:process
+Owner:web/package.json
+
+## 问题
+
+`lucide-vue-next@1.0.0` 已被 Lucide 官方标记为 deprecated,并明确要求 Vue 用户改用 `@lucide/vue`。Web 有 96 个源码文件直接导入旧包,继续保留会产生安装警告并失去正常版本更新路径。
+
+## 决策
+
+直接依赖替换为当前稳定版 `@lucide/vue@^1.34.0`,所有静态命名导入的 module specifier 从旧包机械替换为 `@lucide/vue`。不建立本地 wrapper,不批量重命名图标,也不改变组件属性、尺寸、样式或页面布局。`web/AGENTS.md`、设计规范和贡献指南同步使用当前包名,避免继续引入旧包。
+
+新版包的真实 ESM exports 是导入兼容性的 oracle。迁移脚本从 `web/src` 和 `web/test` 收集到 167 个实际使用的命名导出,全部存在于新版包;生产 build 同时证明 Vue 组件编译和 tree-shaking 链路可用。现有 CSS 只依赖新版继续提供的 `.lucide` 稳定类,没有依赖图标专属类名。
+
+## 替代方案
+
+- 继续使用 deprecated 的旧包:失去维护和更新路径,不采用。
+- 固定到旧包最后一个 0.x 版本:只能推迟迁移,并非最新版适配,不采用。
+- 建立统一图标 wrapper:当前 consumer 都使用稳定的命名导入,额外间接层没有独立业务语义,不采用。
+- 借迁移统一图标名称或视觉:会扩大 UI 回归面,不属于依赖迁移。
+
+## 后果
+
+依赖和 96 个 import source 发生变化,但所有现有图标名称、props、尺寸和样式保持原样。新包继续声明 Vue 3 peer dependency、`sideEffects: false` 并输出 `.lucide` class;主 bundle 大小基本不变。
+
+上游 SVG path 可能随图标版本演进而发生细节变化。编译和测试能证明 API、DOM 类名与打包兼容,不能替代全部真实页面的像素级视觉对比;本次未执行全页面截图回归。
+
+## 验证
+
+- 官方 npm 元数据:`lucide-vue-next@1.0.0` deprecated 并指向 `@lucide/vue`;当前稳定版为 1.34.0,仓库均为 `lucide-icons/lucide`。
+- `pnpm install --frozen-lockfile`:通过;`pnpm list` 只包含 `@lucide/vue@1.34.0`,旧 package/import 搜索为空。
+- 命名导出 oracle:167 个实际导入全部存在于新版 6101 个 ESM exports。
+- `cd web && pnpm run lint:check && pnpm run test:unit && pnpm run build`:通过,136 tests passed。
+- `pnpm --dir web audit --prod --audit-level=moderate`:无已知漏洞;`pnpm outdated` 为空。
+- `docker build -f docker/web.Dockerfile --target build-stage -t yuxi-web:lucide-vue-test .`:frozen install 和生产 build 通过。
+- 工程契约、相关策略测试、docs build 与 `git diff --check`:通过。
+- 独立 Reviewer:No blocking findings;指出活动开发文档仍引用旧包,已同步修复。
diff --git a/docs/develop-guides/design.md b/docs/develop-guides/design.md
index bba2cf050..680b45768 100644
--- a/docs/develop-guides/design.md
+++ b/docs/develop-guides/design.md
@@ -114,7 +114,7 @@ Yuxi 通过 `:root.dark` 覆盖同名 token。新增 UI 必须使用 CSS 变量
### 技术栈约束
- 包管理器:`pnpm`
-- 图标库:优先使用 `lucide-vue-next`
+- 图标库:优先使用 `@lucide/vue`
- 样式语言:LESS
- 颜色变量:使用 `base.css` / `base.dark.css` 中的 CSS 变量
- UI 基础:复用 Ant Design Vue 和项目现有组件模式,避免为单次需求封装新组件体系
@@ -238,7 +238,7 @@ Yuxi 默认采用“背景 + 边框”的轻量层级:
- 为新增交互补齐 hover、focus、disabled、loading、empty、error 等必要状态。
- 用背景、边框、字号、间距建立层级。
- 保持浅色和暗色模式一致可用。
-- 复用 `lucide-vue-next`、Ant Design Vue 和项目已有组件模式。
+- 复用 `@lucide/vue`、Ant Design Vue 和项目已有组件模式。
- 在复杂配置区保留简短说明,帮助用户理解设置影响。
### Don't
@@ -302,7 +302,7 @@ AI agent 修改或生成 Yuxi UI 时,优先按这一节执行。
实现工具栏按钮:
```text
-实现一个工具栏按钮:优先使用 lucide-vue-next 图标,图标尺寸 16px,按钮添加 lucide-icon-btn。默认使用中性色,hover 时使用 var(--main-color) 或 var(--main-10) 强化,不位移、不放大。
+实现一个工具栏按钮:优先使用 @lucide/vue 图标,图标尺寸 16px,按钮添加 lucide-icon-btn。默认使用中性色,hover 时使用 var(--main-color) 或 var(--main-10) 强化,不位移、不放大。
```
实现状态标签:
@@ -322,7 +322,7 @@ AI agent 修改或生成 Yuxi UI 时,优先按这一节执行。
- hover、focus、disabled、loading、empty、error 状态符合场景。
- 没有使用 hover 位移、放大、旋转或装饰性动画。
- 普通卡片没有使用重阴影。
-- 图标来自 `lucide-vue-next`,尺寸和对齐符合现有模式。
+- 图标来自 `@lucide/vue`,尺寸和对齐符合现有模式。
- API 接口、组件位置、样式语言符合前端开发规范。
- 已在真实页面和关键响应式宽度截图验收,而不只依赖构建通过。
diff --git a/docs/intro/quick-start.md b/docs/intro/quick-start.md
index 0c99c44c4..4f36f5efc 100644
--- a/docs/intro/quick-start.md
+++ b/docs/intro/quick-start.md
@@ -12,10 +12,10 @@
## 1. 获取代码
-仓库当前默认配置对应 `v0.7.2.beta1`。这个版本仍处于 Beta 阶段;用于重要数据前,请先阅读[生产部署与升级](../advanced/deployment.md)中的备份和迁移说明。
+仓库当前默认配置对应 `v0.7.2.beta2`。这个版本仍处于 Beta 阶段;用于重要数据前,请先阅读[生产部署与升级](../advanced/deployment.md)中的备份和迁移说明。
```bash
-git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git
+git clone --branch v0.7.2.beta2 --depth 1 https://github.com/xerrors/Yuxi.git
cd Yuxi
```
diff --git a/docs/package.json b/docs/package.json
index 660228a3a..3e047a5a9 100644
--- a/docs/package.json
+++ b/docs/package.json
@@ -11,14 +11,5 @@
"devDependencies": {
"esbuild": "0.28.2"
},
- "pnpm": {
- "overrides": {
- "esbuild": "0.28.2",
- "nanoid": "3.3.18",
- "postcss": "8.5.26",
- "vitepress>@vitejs/plugin-vue": "6.0.6",
- "vitepress>vite": "8.0.16"
- }
- },
- "packageManager": "pnpm@10.11.0"
+ "packageManager": "pnpm@11.24.0"
}
diff --git a/docs/pnpm-lock.yaml b/docs/pnpm-lock.yaml
index 151addf5d..89ebad338 100644
--- a/docs/pnpm-lock.yaml
+++ b/docs/pnpm-lock.yaml
@@ -20,7 +20,7 @@ importers:
version: 1.0.6
vitepress:
specifier: ^1.6.4
- version: 1.6.4(@algolia/client-search@5.53.0)(esbuild@0.28.2)(postcss@8.5.26)(search-insights@2.17.3)
+ version: 1.6.4(@algolia/client-search@5.57.0)(esbuild@0.28.2)(postcss@8.5.26)(search-insights@2.17.3)
devDependencies:
esbuild:
specifier: 0.28.2
@@ -28,8 +28,8 @@ importers:
packages:
- '@algolia/abtesting@1.19.0':
- resolution: {integrity: sha512-Lhnez3hhXHk25lfxLAMxvkP4fmN3+1RgADhD2ssMDBYuAsDVReeyP+3SGRx+ntq8ijMrLqUyfvO72TB6jsTteQ==}
+ '@algolia/abtesting@1.23.0':
+ resolution: {integrity: sha512-j45MBISstltys9QyQ4xf6quRiN1g7vMuwQL9VM4dx8YuRZvCQ173b9royZAx6iAbRX3IB1VnG1z//NuwyQ8jpQ==}
engines: {node: '>= 14.0.0'}
'@algolia/autocomplete-core@1.17.7':
@@ -52,56 +52,56 @@ packages:
'@algolia/client-search': '>= 4.9.1 < 6'
algoliasearch: '>= 4.9.1 < 6'
- '@algolia/client-abtesting@5.53.0':
- resolution: {integrity: sha512-0ZjA5Hcmaoz5Lj6OG0zhfIyeqzJZnLW2CRJA1W17UwMFGRtZAJ9yJKRvPEDA6gkpsIoQxORTSW6sWFiuYncPNQ==}
+ '@algolia/client-abtesting@5.57.0':
+ resolution: {integrity: sha512-JVFFujiZUCguk5tz3LZr4fTQxqpIrj4/Jw3SI7kMljSqtfLxYn/s/TWH0J2s4iNfsDpxPhgFGMotCpmDI4kZ8w==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-analytics@5.53.0':
- resolution: {integrity: sha512-kWNodP75iiEaOtemC9F/hlxNBG5E2QUjN1BusnE6m2b4l7Qh/BUO3fGCVsmKJI65VO4VKGGmT43ICvHtTcJ2JQ==}
+ '@algolia/client-analytics@5.57.0':
+ resolution: {integrity: sha512-6KqECK4ED3JJQEoDrQWnGPQzElA828xAD4qK5ceawNNyP/LcSvzAoLHjFkoTPksZ/kxj6VUtCRH+IHZesLltng==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-common@5.53.0':
- resolution: {integrity: sha512-YPN45TXD9Wrse185t/Ta7nktZsqpv97oOjCzp2sblHnCL6rBc9TDeJAg1IGl2UpdwnSD05Zu/5wLB4watOUMyg==}
+ '@algolia/client-common@5.57.0':
+ resolution: {integrity: sha512-uqpGF3oXYsoCbQq5d7BzNrNTfIfuvJyGP1CKvSW27T9boUg7KOwyxsAw1AX0a3jSW2HrYEJ/NN+Z4MiGivbpeQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-insights@5.53.0':
- resolution: {integrity: sha512-qAcYTDJE6m924FDDUQvdD6vh7DYaqOeSpFS74IP37/JRV0v4cGBauyxTF2WzDnokUylQDbqreoFIJZfg0Fitmw==}
+ '@algolia/client-insights@5.57.0':
+ resolution: {integrity: sha512-u5NboJVJXDEFplvNnqqX4CxkXPYysjJRj47hOSh9329H8kG5gFLKJBIiS5utMQ+GZm8xQl3Te7NInDk6elEADQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-personalization@5.53.0':
- resolution: {integrity: sha512-fQaY+DkSJOpuUVUe8MQTwrdiKAqkJGhpDarB08duBn/sUv7Bkib6MDRQauCcWTWTe4HIW+EbwQP9R4kci1V/Yw==}
+ '@algolia/client-personalization@5.57.0':
+ resolution: {integrity: sha512-uzc0b2LmHAK9/QID4xeo35OG84AkZl4YewkCqawqAOGLjT2eZpM/OZx45ESygMHG30Ws+ZTSdluPtMJcUnrbWQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-query-suggestions@5.53.0':
- resolution: {integrity: sha512-o72tsiEZGfeS/dxL9IADfzcZWGEwKDEe5CvtrBuT//3JR+SHuTtHRI2ZTf7D7bcKagcbojvO8hnkHdfoakSlYg==}
+ '@algolia/client-query-suggestions@5.57.0':
+ resolution: {integrity: sha512-dIAhnM6ue/ssa5PjgNfu4g8A4yTojl9ZOUzZU3wIaIKRerL2R/3Emuf9n/D6ICXXP167KC6XCeC7nliSw7cuSw==}
engines: {node: '>= 14.0.0'}
- '@algolia/client-search@5.53.0':
- resolution: {integrity: sha512-Ds16IyPm/dNJPCU8OzApo2gwGrgWT5BYHhE3NFwZbpCveqyvPDB9sZDDkJ5DsdOGT2aC+R3i0/M1OVXF2qdgPg==}
+ '@algolia/client-search@5.57.0':
+ resolution: {integrity: sha512-2TTPTTKSJmCptvhCm4Xf3bBYMqZni+Pgc2hVdqc4l9wsBpSJNVTVIKpnd10OubUgkGcmppVDj1XQqYaf6EnPSQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/ingestion@1.53.0':
- resolution: {integrity: sha512-oNbT6z4NwD8Pou9VPINGlN/tlG1afESh2EbxqnP6rwl95xKVD/Zlciis1PpNeO/9U/rrajc1+7DcfKi03tX1KQ==}
+ '@algolia/ingestion@1.57.0':
+ resolution: {integrity: sha512-W4JseHKt+pzOxlFV+T3MWEG0h4Z2Se5zjoXUD0ewlw8aOWMG/yjRdopUdLQsXULepB/My2tDuZjkwk2sMfsUrQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/monitoring@1.53.0':
- resolution: {integrity: sha512-G+KZb/yd+qAOFn/cEvTGeLxQm8aP3a0od50l3z/ylccY+/o4YG3TNcjU1tFQHW4mXC137GPyR7W70R0kRQDLnA==}
+ '@algolia/monitoring@1.57.0':
+ resolution: {integrity: sha512-BrxJVE0/eLinEPICCD7BKN/2xnt0nkjge70u8zzE2ISP3fuB3tjLgcwpanUycvlHBFLI4gK0l5ol54p6IYuR/Q==}
engines: {node: '>= 14.0.0'}
- '@algolia/recommend@5.53.0':
- resolution: {integrity: sha512-6aVfYd55Un6IUgPLbo84WfgFZlS3L0vA1ttzXL5vahHewUJ8jYgd89TzlWRTeej7w70mb9RWsVlFYGmJ/diQww==}
+ '@algolia/recommend@5.57.0':
+ resolution: {integrity: sha512-Gc29jkeiLKlVfHvyrIgyUHHE+aYTdXEeLfK42rjr5/1TTVsYwUJz0XkvoIBIqfMjcDg6gXeHb1jTUZ0H+SYIlQ==}
engines: {node: '>= 14.0.0'}
- '@algolia/requester-browser-xhr@5.53.0':
- resolution: {integrity: sha512-ke27DqgzCOlt+RbeEdCxtXxMQOnAOi8ujr2wid0DmDKzR95Kw/f9sBsuhBxtjevCqJRJszfRTLY0B1pbO6IhkA==}
+ '@algolia/requester-browser-xhr@5.57.0':
+ resolution: {integrity: sha512-PIPnPN7MP3fp2VAi01BVXhCWmD366ZB2Hkq5TlYKtThd4KxUtMmaaNDpFgVCTXtSIqWVZLJntOHRvxg/sIPd8Q==}
engines: {node: '>= 14.0.0'}
- '@algolia/requester-fetch@5.53.0':
- resolution: {integrity: sha512-GngiOqt2Gq4oLno6yXQVj9om+qSO9SWAoduoTOEg79dKZ62brB8OOIvSJG/vDNoanYi6a7Al9uDZwXvi+bcVTg==}
+ '@algolia/requester-fetch@5.57.0':
+ resolution: {integrity: sha512-AX3RlOudXMdTwtwUqdAf5hAVLvXfOZZH1FZh6ALDdrhVLT0TtAIe48N6nYcWcTnwoTxK/wDIQqZ19IMjK8zJAA==}
engines: {node: '>= 14.0.0'}
- '@algolia/requester-node-http@5.53.0':
- resolution: {integrity: sha512-6mF9LZMUk0QqWvrnxkxBqhswwz6Xfiwy6/gmTzL5HrlhdVG3ITAqGV2k3XmVThP1h0Ulc3VQwiNCD7/Nr4JNlQ==}
+ '@algolia/requester-node-http@5.57.0':
+ resolution: {integrity: sha512-cWZc1dKb7wy9/wPpwMtL1y89gK2G7y2A47Coa7zwf1ydtIeJm4+S+XxoQ2b/ZRiQnrC1YHavLjYUPDCdnT7Khg==}
engines: {node: '>= 14.0.0'}
'@babel/helper-string-parser@7.29.7':
@@ -112,13 +112,13 @@ packages:
resolution: {integrity: sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==}
engines: {node: '>=6.9.0'}
- '@babel/parser@7.29.7':
- resolution: {integrity: sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg==}
+ '@babel/parser@7.29.8':
+ resolution: {integrity: sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA==}
engines: {node: '>=6.0.0'}
hasBin: true
- '@babel/types@7.29.7':
- resolution: {integrity: sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA==}
+ '@babel/types@7.29.8':
+ resolution: {integrity: sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==}
engines: {node: '>=6.9.0'}
'@docsearch/css@3.8.2':
@@ -309,8 +309,8 @@ packages:
cpu: [x64]
os: [win32]
- '@iconify-json/simple-icons@1.2.85':
- resolution: {integrity: sha512-Hp5LXvd3LRk+e+1558wtonA7c1Z0/Phmi7xCqpgtb8bs8cuyGnP34GDbt5uhhUXxKlzacnnhAcXgcDxe9bUa1w==}
+ '@iconify-json/simple-icons@1.2.93':
+ resolution: {integrity: sha512-/XhANjfGYOuqvSR3TmUnkQkINvQ4GVjVuukvymRbxtVFBvIq/yiXJqCDycKcQPT401OYT9H2vIY6ihAlz1QIAw==}
'@iconify/types@2.0.0':
resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==}
@@ -318,11 +318,12 @@ packages:
'@jridgewell/sourcemap-codec@1.5.5':
resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==}
- '@napi-rs/wasm-runtime@1.1.5':
- resolution: {integrity: sha512-AWPoBRJ9tsnVhor4sjO7rkni+7p+2IAEFj6cx06UgP10jkQHqay/36uRV/bFkgrh18D9vb4cr8Q0Pthskgzy+Q==}
+ '@napi-rs/wasm-runtime@1.2.3':
+ resolution: {integrity: sha512-UMduMbqO5s5zF2NkNacMT/yK5Y5QiKvWr2+50bzIIxFDwVJ2h49b+oyjaCGPhJxd2/gC2x39EHv/gHVuu36x2Q==}
+ engines: {node: ^20.19.0 || ^22.13.0 || >=23.5.0}
peerDependencies:
- '@emnapi/core': ^1.7.1
- '@emnapi/runtime': ^1.7.1
+ '@emnapi/core': ^1.7.1 || ^2.0.0-alpha.4
+ '@emnapi/runtime': ^1.7.1 || ^2.0.0-alpha.4
'@oxc-project/types@0.133.0':
resolution: {integrity: sha512-KzkdCd6Uxqnf6l3HOw1xfatAlUURA0g14cvBYFyJ5SaNOQbOUvBr9PKArcPcrNIeRsBdgcUzOGrhKveVpvOIGA==}
@@ -362,36 +363,42 @@ packages:
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-arm64-musl@1.0.3':
resolution: {integrity: sha512-VWkUHwWriDciit80wleYwKILoR/KMvxh/IdwS/paX+ZgpuRpCrKLUdadJbc0NpBEiyhpYawsJ73j9aCvOH+f7Q==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
+ libc: [musl]
'@rolldown/binding-linux-ppc64-gnu@1.0.3':
resolution: {integrity: sha512-5f1laC0SlIR0yDbFCd8acUhvJIag6N3zC5P7oUPN6wX0aOma+uKJ0wBDH5aq7I1PVI2ttTlhJwzwRIBnLiSGEg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-s390x-gnu@1.0.3':
resolution: {integrity: sha512-Iq4ko0r4XsgbrF/LunNgHtAGLRRVE2kXonAXQ/MV0mC6jQpMOhW1SvtZja2EhC/kd05++bP78dsqBeIQyYJ6Yg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-x64-gnu@1.0.3':
resolution: {integrity: sha512-B8m6tD5+/N5FeNQFbKlLA/2yVq9ycQP1SeedyEYYKWBNR3ZQbkvIUcNnDNM03lO1l5F2roiiFJGgvoLLyZXtSg==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-x64-musl@1.0.3':
resolution: {integrity: sha512-pSdpdUJHkuCxun9LE7jvgUB9qsRgaiyNNCX7m/AvHTcq67AiT/Yhoxvw5zPfhrM8k/BfP8ce/hMOpthKDpEUow==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
+ libc: [musl]
'@rolldown/binding-openharmony-arm64@1.0.3':
resolution: {integrity: sha512-OXXS3RKJgX2uLwM+gYyuH5omcH8fL1LJs96pZGgtetVCahON57+d4SJHzTgZiOjxgGkSnpXpOsWuPDGAKAigEg==}
@@ -446,17 +453,17 @@ packages:
'@shikijs/vscode-textmate@10.0.2':
resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==}
- '@tybys/wasm-util@0.10.2':
- resolution: {integrity: sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg==}
+ '@tybys/wasm-util@0.10.3':
+ resolution: {integrity: sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==}
- '@types/hast@3.0.4':
- resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
+ '@types/hast@3.0.5':
+ resolution: {integrity: sha512-rp/ezSWaD1m44dPKICGhiskI13nVr7qTloFwDa/IYkhhf5nzwP+zIQcIJh3WIFSBOy/H1PzB40jPjMDksN4F+g==}
'@types/linkify-it@5.0.0':
resolution: {integrity: sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==}
- '@types/markdown-it@14.1.2':
- resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==}
+ '@types/markdown-it@14.2.0':
+ resolution: {integrity: sha512-NoQ2yGlLWj4wpxMs+TYmRKk3thDrQ97agr7sFqfLsAlvoS8SNQuTrlObhFqG9iugdTtgOE9jpJ6FNM4ZGsa5xQ==}
'@types/mdast@4.0.4':
resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
@@ -470,8 +477,8 @@ packages:
'@types/web-bluetooth@0.0.21':
resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==}
- '@ungap/structured-clone@1.3.1':
- resolution: {integrity: sha512-mUFwbeTqrVgDQxFveS+df2yfap6iuP20NAKAsBt5jDEoOTDew+zwLAOilHCeQJOVSvmgCX4ogqIrA0mnyr08yQ==}
+ '@ungap/structured-clone@1.3.3':
+ resolution: {integrity: sha512-60YRaenCQcVjYEKOcG824+DRGGIQ3VKErcBoAEDJZz5bKIs2ZG+X/H9Nk+Q6EVkwJk5QNApxbrc5QtBSwtrXAg==}
'@vitejs/plugin-vue@6.0.6':
resolution: {integrity: sha512-u9HHgfrq3AjXlysn0eINFnWQOJQLO9WN6VprZ8FXl7A2bYisv3Hui9Ij+7QZ41F/WYWarHjwBbXtD7dKg3uxbg==}
@@ -480,43 +487,41 @@ packages:
vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0
vue: ^3.2.25
- '@vue/compiler-core@3.5.35':
- resolution: {integrity: sha512-BUmHaR1J+O+CKZ9uJucdVTEr1LHsdyvv7vG3eNRhK3CczEHeMd/LtsHAuD7PbrxvI2envCY2v7HI1vC1aBRzKw==}
+ '@vue/compiler-core@3.5.41':
+ resolution: {integrity: sha512-q0Xtv/F9w2YO/7htQhtiL+Ev2WCJbe5N2hc+XfgyKkEKqWpSxknmT8QOuGdEKNdjPq0c3F7rNpFkTo3Kfrm7pg==}
- '@vue/compiler-dom@3.5.35':
- resolution: {integrity: sha512-k+bprkXxuqhVajgTx5mUHuir7TwQzUKOWR40ng1ncAqQRPnrLngGGgqVEEhOnTMlc8btHYVKmrP8s5Qyg0hvYA==}
+ '@vue/compiler-dom@3.5.41':
+ resolution: {integrity: sha512-oKacVfNglLvGjnS6BXOlGL7EyG2h8X03pqXCjzotRZUaXGjbrTJUnVAQjrCqUnS+lyu31nwQjZY/d817GmCnfw==}
- '@vue/compiler-sfc@3.5.35':
- resolution: {integrity: sha512-G5VPMcXTSywXBgtFOZOnHKBxKSrwXUcvY1iaF5/hRcy7t0J6CH/d8ha9F4nzi00Fax1eLV0QHM7v4mQu68jydw==}
+ '@vue/compiler-sfc@3.5.41':
+ resolution: {integrity: sha512-XJhip7R2wy6vX3knCxdZN4KracFaZUef58s1KYewqluedHIJaPIVfXoYT7MF1F8nCvv6k8bWWxDC8opMkg1VTQ==}
- '@vue/compiler-ssr@3.5.35':
- resolution: {integrity: sha512-rGhAeXgdM7/ffTJGXT69rCCdTmjDewnFuUZfBQQHTdcEBeWdT5HCGY60y2ytLJr9/Dsu7IntUi5z/w0h6Rjnzw==}
+ '@vue/compiler-ssr@3.5.41':
+ resolution: {integrity: sha512-U3v5OejKEGqOI0Wy0+Sz7hGuIFZHA4LSXzrNM3IMIeDyJEBBfTpX26n3SDgToRpP2bLc9FfI2j/kSgcJ8Emq5A==}
- '@vue/devtools-api@7.7.9':
- resolution: {integrity: sha512-kIE8wvwlcZ6TJTbNeU2HQNtaxLx3a84aotTITUuL/4bzfPxzajGBOoqjMhwZJ8L9qFYDU/lAYMEEm11dnZOD6g==}
+ '@vue/devtools-api@7.7.10':
+ resolution: {integrity: sha512-KxtEpUOOpFz/qOGRrAwA36QF7DqIA+FXgCYit9mk9wjbaZt0sXOFz81ElOZtKA4HbWHUdwNjZHBFsFFyp5BZiA==}
- '@vue/devtools-kit@7.7.9':
- resolution: {integrity: sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==}
+ '@vue/devtools-kit@7.7.10':
+ resolution: {integrity: sha512-3WNi2Kq4tbpVbmhml7RiphmAt0279oh3fKNeWMQIrltfX8Q91b4i5PL8DtyNKdwmcsGrV4fg+erwWOmD05CLIw==}
- '@vue/devtools-shared@7.7.9':
- resolution: {integrity: sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==}
+ '@vue/devtools-shared@7.7.10':
+ resolution: {integrity: sha512-wOPslzB8vTvpxwdaOcR2qAbwmuSP0L+rhpoC6Cf56V3Jip+HWb7PQQXOUPgBNQARpXsbQX/+mvi8kKucmBGRwQ==}
- '@vue/reactivity@3.5.35':
- resolution: {integrity: sha512-tVc+SsHConvh/Lz64qq1pP3rYArBmK42xonovEcxY74SQtvctZodG/zhq54P5dr38cVuw25d27cPNRdlMidpGQ==}
+ '@vue/reactivity@3.5.41':
+ resolution: {integrity: sha512-rznsqKM0np0x18EjzF8x88MpEhdNsffbvFbckLL5+oUKz1BxAImEmO7J1ArRYSyo6aQaVoBDp7jEkT91OOxydA==}
- '@vue/runtime-core@3.5.35':
- resolution: {integrity: sha512-A/xFNX9loIcWDygeQuNCfKuh0CoYBzxhqEMNah5TSFg9Z53DrFYEN2qi5CU9necjM1OWYegYREUTHmXTmhfXtg==}
+ '@vue/runtime-core@3.5.41':
+ resolution: {integrity: sha512-Vcry58hiAKwGen9Z1jUZE0feFsNArPCMOImYI8el48A9Idf6DuQYD0U05zZIF2Iad1hGhPSvcbBbAOhNr55fhg==}
- '@vue/runtime-dom@3.5.35':
- resolution: {integrity: sha512-odrJ1C391dbGnyDRh8U+rnP7J2amIEzfmRk5vXy7xi3aZhEXofTvpi0T4HJb6jlNqQZTNPR5MPHSB3RHNkIORA==}
+ '@vue/runtime-dom@3.5.41':
+ resolution: {integrity: sha512-3vVBahVBS9+U6cmXBLyb8nE6/yYo4J/CGI9eVFs3KiMc0YHuudwKyShTD65jtJy/L9PUUxNAFu4cj4LiJ0UFbw==}
- '@vue/server-renderer@3.5.35':
- resolution: {integrity: sha512-NkebSOYdB97wi8OQcO3HqzZSlymJi/aWsN/7h74OSVhRTm6qGs3Jp3e0rCXynmWwSlKeRrnlIug+ilYoHBmQDA==}
- peerDependencies:
- vue: 3.5.35
+ '@vue/server-renderer@3.5.41':
+ resolution: {integrity: sha512-n6hx/pNFfbD6SuyeuMVkvqox8bwf/ET9JlA/kAz/imw8sw++wkqKe2mHX5KutjPpbKE4Z56yTHszoOjGMI9igQ==}
- '@vue/shared@3.5.35':
- resolution: {integrity: sha512-zSbjL7gRXwks2ZQLRGCajBtBXEOXW9Ddhn/HvSdrGkE2dqGnumzW8XtusRrxrE9LvqtiqDXQ+A60Hp6mvdYxfA==}
+ '@vue/shared@3.5.41':
+ resolution: {integrity: sha512-IOnwSCma8j+9xJT6b8H0dEYidC80NsYmNMlZxRsukYcSoGaDBohog5hDxzeUXdFeGWFA++vWvxqOmrr96VlqMA==}
'@vueuse/core@12.8.2':
resolution: {integrity: sha512-HbvCmZdzAu3VGi/pWYm5Ut+Kd9mn1ZHnn4L5G8kOQTPs/IwIAmJoBrmYk2ckLArgMXZj0AW3n5CAejLUO+PhdQ==}
@@ -568,8 +573,8 @@ packages:
'@vueuse/shared@12.8.2':
resolution: {integrity: sha512-dznP38YzxZoNloI0qpEfpkms8knDtaoQ6Y/sfS0L7Yki4zh40LFHEhur0odJC6xTHG5dxWVPiUWBXn+wCG2s5w==}
- algoliasearch@5.53.0:
- resolution: {integrity: sha512-OGW1q6b91CRSSeiOnM8LxuR5NYJ2esvw66jUZ4IIvdv+ItNkx3pwLuyR+jaCdbGee4ov5WgUnyPryyh11xvByQ==}
+ algoliasearch@5.57.0:
+ resolution: {integrity: sha512-HpND7MBGctOAkd1GoQoDZCGoCpqNTS5NG1LuhElFet3RdLJkwnyTYZXZhXwtpAQPrI36fqQ3eT6KQrdKDTKu3A==}
engines: {node: '>= 14.0.0'}
birpc@2.9.0:
@@ -587,8 +592,8 @@ packages:
comma-separated-tokens@2.0.3:
resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
- copy-anything@4.0.5:
- resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==}
+ copy-anything@4.1.0:
+ resolution: {integrity: sha512-ufbM3smX/Jbnpk5wcQjzd1MgBpzmqfNETUAyZNrGwU9foRlyHoGzMMBBCRzEhQLBjZfFDE1W2ufPXX2vdWkV8Q==}
engines: {node: '>=18'}
csstype@3.2.3:
@@ -649,78 +654,78 @@ packages:
html-void-elements@3.0.0:
resolution: {integrity: sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==}
- is-what@5.5.0:
- resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==}
- engines: {node: '>=18'}
-
- lightningcss-android-arm64@1.32.0:
- resolution: {integrity: sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==}
+ lightningcss-android-arm64@1.33.0:
+ resolution: {integrity: sha512-gEpRTalKdosp4Bb8qWtc2iOgE5SeIHlpS1up9bFq2wAyYhl1UdTObYiHe98zEM9SQvSoqQZ1IQD0JNpg3Ml5pg==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [android]
- lightningcss-darwin-arm64@1.32.0:
- resolution: {integrity: sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==}
+ lightningcss-darwin-arm64@1.33.0:
+ resolution: {integrity: sha512-Sciaz8eenNTKn9b3t7+xr0ipTp9YxKQY4npwQ3mrRuL0BAVHBLyZxofhaKBAVtzmtRZ/zTyo0/to4B1uWG/Djg==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [darwin]
- lightningcss-darwin-x64@1.32.0:
- resolution: {integrity: sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==}
+ lightningcss-darwin-x64@1.33.0:
+ resolution: {integrity: sha512-Z5UPAxzrjlWNNyGy6i65cJzzvgJ5D3T6wMvs+gWpY9d7qRhANrxqAp6LhxIgZhWEw18RfJTGcRxjuLIBr+m8XQ==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [darwin]
- lightningcss-freebsd-x64@1.32.0:
- resolution: {integrity: sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==}
+ lightningcss-freebsd-x64@1.33.0:
+ resolution: {integrity: sha512-QQM/Ti/hQajJwCY+RiWuCZ9sdtI/XQk7nDK5vC8kkdwixezOlDgvDx7+RT+QjK6FcFT4MpsuoBnHIo/O3StRRg==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [freebsd]
- lightningcss-linux-arm-gnueabihf@1.32.0:
- resolution: {integrity: sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==}
+ lightningcss-linux-arm-gnueabihf@1.33.0:
+ resolution: {integrity: sha512-N7FVBe6iS24MlM6R/4RBTxGhQheZGs7tiQ9U32UtF75NzP5Q7xWPRqLBCKxlRQRk3rY1jCIPLzx7WzOhuUIRLQ==}
engines: {node: '>= 12.0.0'}
cpu: [arm]
os: [linux]
- lightningcss-linux-arm64-gnu@1.32.0:
- resolution: {integrity: sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==}
+ lightningcss-linux-arm64-gnu@1.33.0:
+ resolution: {integrity: sha512-j2v/itmy4HlNxlc6voKXYgBqNi0Ng2LShg4z7GufpEgs05P+2suBVyi9I6YHq5uoVFx9ETin3eCEhLVyXGQnKg==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [linux]
+ libc: [glibc]
- lightningcss-linux-arm64-musl@1.32.0:
- resolution: {integrity: sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==}
+ lightningcss-linux-arm64-musl@1.33.0:
+ resolution: {integrity: sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [linux]
+ libc: [musl]
- lightningcss-linux-x64-gnu@1.32.0:
- resolution: {integrity: sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==}
+ lightningcss-linux-x64-gnu@1.33.0:
+ resolution: {integrity: sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [linux]
+ libc: [glibc]
- lightningcss-linux-x64-musl@1.32.0:
- resolution: {integrity: sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==}
+ lightningcss-linux-x64-musl@1.33.0:
+ resolution: {integrity: sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [linux]
+ libc: [musl]
- lightningcss-win32-arm64-msvc@1.32.0:
- resolution: {integrity: sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==}
+ lightningcss-win32-arm64-msvc@1.33.0:
+ resolution: {integrity: sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [win32]
- lightningcss-win32-x64-msvc@1.32.0:
- resolution: {integrity: sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==}
+ lightningcss-win32-x64-msvc@1.33.0:
+ resolution: {integrity: sha512-OlEICDx/Xl0FqSp4bry8zFnCvGpig3Gl4gCquvYwHuqJKEC1+n9NgDniFvqHGmMv1ZkqDJrDqKKSykTDX+ehuA==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [win32]
- lightningcss@1.32.0:
- resolution: {integrity: sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==}
+ lightningcss@1.33.0:
+ resolution: {integrity: sha512-WkUDrojuJs0xkgGf2udWxa3yGBRxPtxUkB79i6aCZLRgc7PM8fZe9TosfPDcvEpQZbuFASnHYmRLBLUbmLOIIA==}
engines: {node: '>= 12.0.0'}
magic-string@0.30.21:
@@ -770,16 +775,21 @@ packages:
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
- picomatch@4.0.4:
- resolution: {integrity: sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A==}
+ picomatch@4.0.7:
+ resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==}
engines: {node: '>=12'}
postcss@8.5.26:
resolution: {integrity: sha512-u82N74LFzG8ca+dD8puPnplTXoGH4fTPpVGuIbt36G3qvNlkvfD0lEAZSxaly3KX8TS/L1A1gsCEmvKmBcVbkQ==}
engines: {node: ^10 || ^12 || >=14}
- preact@10.29.2:
- resolution: {integrity: sha512-7tNmwg/7mzzAoB/8kSg6Hl37JraAZw3Z3A0JSY7VXlZwo82Xn0G7wKbNNs2qoF4ZEEsQGTwDAroNdqKs1ofJxQ==}
+ preact@10.29.8:
+ resolution: {integrity: sha512-ej2aVZ+vZ8WO7tvlQWRM9N63A0KzF9q4mWJfDUHgYaIofWY9hu74QdnQrjoPMmZi2/nZ5gN0bJCQF49xQqx09Q==}
+ peerDependencies:
+ preact-render-to-string: '>=5'
+ peerDependenciesMeta:
+ preact-render-to-string:
+ optional: true
property-information@7.2.0:
resolution: {integrity: sha512-IAtzIB6sUiWaJYrX9smp3V46pBGbBeLFRGdh25kg1334VcBlD8HzhPeNIWQH9zhGmo2itIe25EHt9dQP7G5hmg==}
@@ -825,8 +835,8 @@ packages:
resolution: {integrity: sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==}
engines: {node: '>=16'}
- tabbable@6.4.0:
- resolution: {integrity: sha512-05PUHKSNE8ou2dwIxTngl4EzcnsCDZGJ/iCLtDflR/SHB/ny14rXc+qU5P4mG9JkusiV7EivzY9Mhm55AzAvCg==}
+ tabbable@6.5.0:
+ resolution: {integrity: sha512-wieBHXygIm7OyQOu5hQlkk62/WyCFYGlWg7L6/ZCUZwx0o398Zkn4pVmMyfYhfMG8kGrj/Krt8eIk6UKC6VzwA==}
tinyglobby@0.2.17:
resolution: {integrity: sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==}
@@ -914,8 +924,8 @@ packages:
postcss:
optional: true
- vue@3.5.35:
- resolution: {integrity: sha512-cx89fnr+0kVGHiNFG6y6s0bdjypJRFNZn6x3WPstNdQR1bi1mbB7h4v5IBGTsPJU3nK1+0Iqj3Zf+hZWMieR4Q==}
+ vue@3.5.41:
+ resolution: {integrity: sha512-2laE0p+aK+/AOPG/XL/WepOs/GlK755LJ1XECi9kDUrz1FKNw8rb2Xzlw9JS1rqEV55nb0ttsKxVlTCcd+R5cg==}
peerDependencies:
typescript: '*'
peerDependenciesMeta:
@@ -927,150 +937,151 @@ packages:
snapshots:
- '@algolia/abtesting@1.19.0':
+ '@algolia/abtesting@1.23.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)(search-insights@2.17.3)':
+ '@algolia/autocomplete-core@1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)(search-insights@2.17.3)':
dependencies:
- '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)(search-insights@2.17.3)
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)
+ '@algolia/autocomplete-plugin-algolia-insights': 1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)(search-insights@2.17.3)
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)
transitivePeerDependencies:
- '@algolia/client-search'
- algoliasearch
- search-insights
- '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)(search-insights@2.17.3)':
+ '@algolia/autocomplete-plugin-algolia-insights@1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)(search-insights@2.17.3)':
dependencies:
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)
search-insights: 2.17.3
transitivePeerDependencies:
- '@algolia/client-search'
- algoliasearch
- '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)':
+ '@algolia/autocomplete-preset-algolia@1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)':
dependencies:
- '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)
- '@algolia/client-search': 5.53.0
- algoliasearch: 5.53.0
+ '@algolia/autocomplete-shared': 1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)
+ '@algolia/client-search': 5.57.0
+ algoliasearch: 5.57.0
- '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)':
+ '@algolia/autocomplete-shared@1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)':
dependencies:
- '@algolia/client-search': 5.53.0
- algoliasearch: 5.53.0
+ '@algolia/client-search': 5.57.0
+ algoliasearch: 5.57.0
- '@algolia/client-abtesting@5.53.0':
+ '@algolia/client-abtesting@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/client-analytics@5.53.0':
+ '@algolia/client-analytics@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/client-common@5.53.0': {}
+ '@algolia/client-common@5.57.0': {}
- '@algolia/client-insights@5.53.0':
+ '@algolia/client-insights@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/client-personalization@5.53.0':
+ '@algolia/client-personalization@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/client-query-suggestions@5.53.0':
+ '@algolia/client-query-suggestions@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/client-search@5.53.0':
+ '@algolia/client-search@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/ingestion@1.53.0':
+ '@algolia/ingestion@1.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/monitoring@1.53.0':
+ '@algolia/monitoring@1.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/recommend@5.53.0':
+ '@algolia/recommend@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
- '@algolia/requester-browser-xhr@5.53.0':
+ '@algolia/requester-browser-xhr@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
+ '@algolia/client-common': 5.57.0
- '@algolia/requester-fetch@5.53.0':
+ '@algolia/requester-fetch@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
+ '@algolia/client-common': 5.57.0
- '@algolia/requester-node-http@5.53.0':
+ '@algolia/requester-node-http@5.57.0':
dependencies:
- '@algolia/client-common': 5.53.0
+ '@algolia/client-common': 5.57.0
'@babel/helper-string-parser@7.29.7': {}
'@babel/helper-validator-identifier@7.29.7': {}
- '@babel/parser@7.29.7':
+ '@babel/parser@7.29.8':
dependencies:
- '@babel/types': 7.29.7
+ '@babel/types': 7.29.8
- '@babel/types@7.29.7':
+ '@babel/types@7.29.8':
dependencies:
'@babel/helper-string-parser': 7.29.7
'@babel/helper-validator-identifier': 7.29.7
'@docsearch/css@3.8.2': {}
- '@docsearch/js@3.8.2(@algolia/client-search@5.53.0)(search-insights@2.17.3)':
+ '@docsearch/js@3.8.2(@algolia/client-search@5.57.0)(search-insights@2.17.3)':
dependencies:
- '@docsearch/react': 3.8.2(@algolia/client-search@5.53.0)(search-insights@2.17.3)
- preact: 10.29.2
+ '@docsearch/react': 3.8.2(@algolia/client-search@5.57.0)(search-insights@2.17.3)
+ preact: 10.29.8
transitivePeerDependencies:
- '@algolia/client-search'
- '@types/react'
+ - preact-render-to-string
- react
- react-dom
- search-insights
- '@docsearch/react@3.8.2(@algolia/client-search@5.53.0)(search-insights@2.17.3)':
+ '@docsearch/react@3.8.2(@algolia/client-search@5.57.0)(search-insights@2.17.3)':
dependencies:
- '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)(search-insights@2.17.3)
- '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.53.0)(algoliasearch@5.53.0)
+ '@algolia/autocomplete-core': 1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)(search-insights@2.17.3)
+ '@algolia/autocomplete-preset-algolia': 1.17.7(@algolia/client-search@5.57.0)(algoliasearch@5.57.0)
'@docsearch/css': 3.8.2
- algoliasearch: 5.53.0
+ algoliasearch: 5.57.0
optionalDependencies:
search-insights: 2.17.3
transitivePeerDependencies:
@@ -1170,7 +1181,7 @@ snapshots:
'@esbuild/win32-x64@0.28.2':
optional: true
- '@iconify-json/simple-icons@1.2.85':
+ '@iconify-json/simple-icons@1.2.93':
dependencies:
'@iconify/types': 2.0.0
@@ -1178,11 +1189,11 @@ snapshots:
'@jridgewell/sourcemap-codec@1.5.5': {}
- '@napi-rs/wasm-runtime@1.1.5(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)':
+ '@napi-rs/wasm-runtime@1.2.3(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)':
dependencies:
'@emnapi/core': 1.10.0
'@emnapi/runtime': 1.10.0
- '@tybys/wasm-util': 0.10.2
+ '@tybys/wasm-util': 0.10.3
optional: true
'@oxc-project/types@0.133.0': {}
@@ -1227,7 +1238,7 @@ snapshots:
dependencies:
'@emnapi/core': 1.10.0
'@emnapi/runtime': 1.10.0
- '@napi-rs/wasm-runtime': 1.1.5(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)
+ '@napi-rs/wasm-runtime': 1.2.3(@emnapi/core@1.10.0)(@emnapi/runtime@1.10.0)
optional: true
'@rolldown/binding-win32-arm64-msvc@1.0.3':
@@ -1246,7 +1257,7 @@ snapshots:
'@shikijs/engine-oniguruma': 2.5.0
'@shikijs/types': 2.5.0
'@shikijs/vscode-textmate': 10.0.2
- '@types/hast': 3.0.4
+ '@types/hast': 3.0.5
hast-util-to-html: 9.0.5
'@shikijs/engine-javascript@2.5.0':
@@ -1276,22 +1287,22 @@ snapshots:
'@shikijs/types@2.5.0':
dependencies:
'@shikijs/vscode-textmate': 10.0.2
- '@types/hast': 3.0.4
+ '@types/hast': 3.0.5
'@shikijs/vscode-textmate@10.0.2': {}
- '@tybys/wasm-util@0.10.2':
+ '@tybys/wasm-util@0.10.3':
dependencies:
tslib: 2.8.1
optional: true
- '@types/hast@3.0.4':
+ '@types/hast@3.0.5':
dependencies:
'@types/unist': 3.0.3
'@types/linkify-it@5.0.0': {}
- '@types/markdown-it@14.1.2':
+ '@types/markdown-it@14.2.0':
dependencies:
'@types/linkify-it': 5.0.0
'@types/mdurl': 2.0.0
@@ -1306,51 +1317,51 @@ snapshots:
'@types/web-bluetooth@0.0.21': {}
- '@ungap/structured-clone@1.3.1': {}
+ '@ungap/structured-clone@1.3.3': {}
- '@vitejs/plugin-vue@6.0.6(vite@8.0.16(esbuild@0.28.2))(vue@3.5.35)':
+ '@vitejs/plugin-vue@6.0.6(vite@8.0.16(esbuild@0.28.2))(vue@3.5.41)':
dependencies:
'@rolldown/pluginutils': 1.0.0-rc.13
vite: 8.0.16(esbuild@0.28.2)
- vue: 3.5.35
+ vue: 3.5.41
- '@vue/compiler-core@3.5.35':
+ '@vue/compiler-core@3.5.41':
dependencies:
- '@babel/parser': 7.29.7
- '@vue/shared': 3.5.35
+ '@babel/parser': 7.29.8
+ '@vue/shared': 3.5.41
entities: 7.0.1
estree-walker: 2.0.2
source-map-js: 1.2.1
- '@vue/compiler-dom@3.5.35':
+ '@vue/compiler-dom@3.5.41':
dependencies:
- '@vue/compiler-core': 3.5.35
- '@vue/shared': 3.5.35
+ '@vue/compiler-core': 3.5.41
+ '@vue/shared': 3.5.41
- '@vue/compiler-sfc@3.5.35':
+ '@vue/compiler-sfc@3.5.41':
dependencies:
- '@babel/parser': 7.29.7
- '@vue/compiler-core': 3.5.35
- '@vue/compiler-dom': 3.5.35
- '@vue/compiler-ssr': 3.5.35
- '@vue/shared': 3.5.35
+ '@babel/parser': 7.29.8
+ '@vue/compiler-core': 3.5.41
+ '@vue/compiler-dom': 3.5.41
+ '@vue/compiler-ssr': 3.5.41
+ '@vue/shared': 3.5.41
estree-walker: 2.0.2
magic-string: 0.30.21
postcss: 8.5.26
source-map-js: 1.2.1
- '@vue/compiler-ssr@3.5.35':
+ '@vue/compiler-ssr@3.5.41':
dependencies:
- '@vue/compiler-dom': 3.5.35
- '@vue/shared': 3.5.35
+ '@vue/compiler-dom': 3.5.41
+ '@vue/shared': 3.5.41
- '@vue/devtools-api@7.7.9':
+ '@vue/devtools-api@7.7.10':
dependencies:
- '@vue/devtools-kit': 7.7.9
+ '@vue/devtools-kit': 7.7.10
- '@vue/devtools-kit@7.7.9':
+ '@vue/devtools-kit@7.7.10':
dependencies:
- '@vue/devtools-shared': 7.7.9
+ '@vue/devtools-shared': 7.7.10
birpc: 2.9.0
hookable: 5.5.3
mitt: 3.0.1
@@ -1358,40 +1369,40 @@ snapshots:
speakingurl: 14.0.1
superjson: 2.2.6
- '@vue/devtools-shared@7.7.9':
+ '@vue/devtools-shared@7.7.10':
dependencies:
rfdc: 1.4.1
- '@vue/reactivity@3.5.35':
+ '@vue/reactivity@3.5.41':
dependencies:
- '@vue/shared': 3.5.35
+ '@vue/shared': 3.5.41
- '@vue/runtime-core@3.5.35':
+ '@vue/runtime-core@3.5.41':
dependencies:
- '@vue/reactivity': 3.5.35
- '@vue/shared': 3.5.35
+ '@vue/reactivity': 3.5.41
+ '@vue/shared': 3.5.41
- '@vue/runtime-dom@3.5.35':
+ '@vue/runtime-dom@3.5.41':
dependencies:
- '@vue/reactivity': 3.5.35
- '@vue/runtime-core': 3.5.35
- '@vue/shared': 3.5.35
+ '@vue/reactivity': 3.5.41
+ '@vue/runtime-core': 3.5.41
+ '@vue/shared': 3.5.41
csstype: 3.2.3
- '@vue/server-renderer@3.5.35(vue@3.5.35)':
+ '@vue/server-renderer@3.5.41':
dependencies:
- '@vue/compiler-ssr': 3.5.35
- '@vue/shared': 3.5.35
- vue: 3.5.35
+ '@vue/compiler-ssr': 3.5.41
+ '@vue/runtime-dom': 3.5.41
+ '@vue/shared': 3.5.41
- '@vue/shared@3.5.35': {}
+ '@vue/shared@3.5.41': {}
'@vueuse/core@12.8.2':
dependencies:
'@types/web-bluetooth': 0.0.21
'@vueuse/metadata': 12.8.2
'@vueuse/shared': 12.8.2
- vue: 3.5.35
+ vue: 3.5.41
transitivePeerDependencies:
- typescript
@@ -1399,7 +1410,7 @@ snapshots:
dependencies:
'@vueuse/core': 12.8.2
'@vueuse/shared': 12.8.2
- vue: 3.5.35
+ vue: 3.5.41
optionalDependencies:
focus-trap: 7.8.0
transitivePeerDependencies:
@@ -1409,26 +1420,26 @@ snapshots:
'@vueuse/shared@12.8.2':
dependencies:
- vue: 3.5.35
+ vue: 3.5.41
transitivePeerDependencies:
- typescript
- algoliasearch@5.53.0:
- dependencies:
- '@algolia/abtesting': 1.19.0
- '@algolia/client-abtesting': 5.53.0
- '@algolia/client-analytics': 5.53.0
- '@algolia/client-common': 5.53.0
- '@algolia/client-insights': 5.53.0
- '@algolia/client-personalization': 5.53.0
- '@algolia/client-query-suggestions': 5.53.0
- '@algolia/client-search': 5.53.0
- '@algolia/ingestion': 1.53.0
- '@algolia/monitoring': 1.53.0
- '@algolia/recommend': 5.53.0
- '@algolia/requester-browser-xhr': 5.53.0
- '@algolia/requester-fetch': 5.53.0
- '@algolia/requester-node-http': 5.53.0
+ algoliasearch@5.57.0:
+ dependencies:
+ '@algolia/abtesting': 1.23.0
+ '@algolia/client-abtesting': 5.57.0
+ '@algolia/client-analytics': 5.57.0
+ '@algolia/client-common': 5.57.0
+ '@algolia/client-insights': 5.57.0
+ '@algolia/client-personalization': 5.57.0
+ '@algolia/client-query-suggestions': 5.57.0
+ '@algolia/client-search': 5.57.0
+ '@algolia/ingestion': 1.57.0
+ '@algolia/monitoring': 1.57.0
+ '@algolia/recommend': 5.57.0
+ '@algolia/requester-browser-xhr': 5.57.0
+ '@algolia/requester-fetch': 5.57.0
+ '@algolia/requester-node-http': 5.57.0
birpc@2.9.0: {}
@@ -1440,9 +1451,7 @@ snapshots:
comma-separated-tokens@2.0.3: {}
- copy-anything@4.0.5:
- dependencies:
- is-what: 5.5.0
+ copy-anything@4.1.0: {}
csstype@3.2.3: {}
@@ -1489,20 +1498,20 @@ snapshots:
estree-walker@2.0.2: {}
- fdir@6.5.0(picomatch@4.0.4):
+ fdir@6.5.0(picomatch@4.0.7):
optionalDependencies:
- picomatch: 4.0.4
+ picomatch: 4.0.7
focus-trap@7.8.0:
dependencies:
- tabbable: 6.4.0
+ tabbable: 6.5.0
fsevents@2.3.3:
optional: true
hast-util-to-html@9.0.5:
dependencies:
- '@types/hast': 3.0.4
+ '@types/hast': 3.0.5
'@types/unist': 3.0.3
ccount: 2.0.1
comma-separated-tokens: 2.0.3
@@ -1516,62 +1525,60 @@ snapshots:
hast-util-whitespace@3.0.0:
dependencies:
- '@types/hast': 3.0.4
+ '@types/hast': 3.0.5
hookable@5.5.3: {}
html-void-elements@3.0.0: {}
- is-what@5.5.0: {}
-
- lightningcss-android-arm64@1.32.0:
+ lightningcss-android-arm64@1.33.0:
optional: true
- lightningcss-darwin-arm64@1.32.0:
+ lightningcss-darwin-arm64@1.33.0:
optional: true
- lightningcss-darwin-x64@1.32.0:
+ lightningcss-darwin-x64@1.33.0:
optional: true
- lightningcss-freebsd-x64@1.32.0:
+ lightningcss-freebsd-x64@1.33.0:
optional: true
- lightningcss-linux-arm-gnueabihf@1.32.0:
+ lightningcss-linux-arm-gnueabihf@1.33.0:
optional: true
- lightningcss-linux-arm64-gnu@1.32.0:
+ lightningcss-linux-arm64-gnu@1.33.0:
optional: true
- lightningcss-linux-arm64-musl@1.32.0:
+ lightningcss-linux-arm64-musl@1.33.0:
optional: true
- lightningcss-linux-x64-gnu@1.32.0:
+ lightningcss-linux-x64-gnu@1.33.0:
optional: true
- lightningcss-linux-x64-musl@1.32.0:
+ lightningcss-linux-x64-musl@1.33.0:
optional: true
- lightningcss-win32-arm64-msvc@1.32.0:
+ lightningcss-win32-arm64-msvc@1.33.0:
optional: true
- lightningcss-win32-x64-msvc@1.32.0:
+ lightningcss-win32-x64-msvc@1.33.0:
optional: true
- lightningcss@1.32.0:
+ lightningcss@1.33.0:
dependencies:
detect-libc: 2.1.2
optionalDependencies:
- lightningcss-android-arm64: 1.32.0
- lightningcss-darwin-arm64: 1.32.0
- lightningcss-darwin-x64: 1.32.0
- lightningcss-freebsd-x64: 1.32.0
- lightningcss-linux-arm-gnueabihf: 1.32.0
- lightningcss-linux-arm64-gnu: 1.32.0
- lightningcss-linux-arm64-musl: 1.32.0
- lightningcss-linux-x64-gnu: 1.32.0
- lightningcss-linux-x64-musl: 1.32.0
- lightningcss-win32-arm64-msvc: 1.32.0
- lightningcss-win32-x64-msvc: 1.32.0
+ lightningcss-android-arm64: 1.33.0
+ lightningcss-darwin-arm64: 1.33.0
+ lightningcss-darwin-x64: 1.33.0
+ lightningcss-freebsd-x64: 1.33.0
+ lightningcss-linux-arm-gnueabihf: 1.33.0
+ lightningcss-linux-arm64-gnu: 1.33.0
+ lightningcss-linux-arm64-musl: 1.33.0
+ lightningcss-linux-x64-gnu: 1.33.0
+ lightningcss-linux-x64-musl: 1.33.0
+ lightningcss-win32-arm64-msvc: 1.33.0
+ lightningcss-win32-x64-msvc: 1.33.0
magic-string@0.30.21:
dependencies:
@@ -1583,9 +1590,9 @@ snapshots:
mdast-util-to-hast@13.2.1:
dependencies:
- '@types/hast': 3.0.4
+ '@types/hast': 3.0.5
'@types/mdast': 4.0.4
- '@ungap/structured-clone': 1.3.1
+ '@ungap/structured-clone': 1.3.3
devlop: 1.1.0
micromark-util-sanitize-uri: 2.0.1
trim-lines: 3.0.1
@@ -1626,7 +1633,7 @@ snapshots:
picocolors@1.1.1: {}
- picomatch@4.0.4: {}
+ picomatch@4.0.7: {}
postcss@8.5.26:
dependencies:
@@ -1634,7 +1641,7 @@ snapshots:
picocolors: 1.1.1
source-map-js: 1.2.1
- preact@10.29.2: {}
+ preact@10.29.8: {}
property-information@7.2.0: {}
@@ -1682,7 +1689,7 @@ snapshots:
'@shikijs/themes': 2.5.0
'@shikijs/types': 2.5.0
'@shikijs/vscode-textmate': 10.0.2
- '@types/hast': 3.0.4
+ '@types/hast': 3.0.5
source-map-js@1.2.1: {}
@@ -1697,14 +1704,14 @@ snapshots:
superjson@2.2.6:
dependencies:
- copy-anything: 4.0.5
+ copy-anything: 4.1.0
- tabbable@6.4.0: {}
+ tabbable@6.5.0: {}
tinyglobby@0.2.17:
dependencies:
- fdir: 6.5.0(picomatch@4.0.4)
- picomatch: 4.0.4
+ fdir: 6.5.0(picomatch@4.0.7)
+ picomatch: 4.0.7
trim-lines@3.0.1: {}
@@ -1746,8 +1753,8 @@ snapshots:
vite@8.0.16(esbuild@0.28.2):
dependencies:
- lightningcss: 1.32.0
- picomatch: 4.0.4
+ lightningcss: 1.33.0
+ picomatch: 4.0.7
postcss: 8.5.26
rolldown: 1.0.3
tinyglobby: 0.2.17
@@ -1755,18 +1762,18 @@ snapshots:
esbuild: 0.28.2
fsevents: 2.3.3
- vitepress@1.6.4(@algolia/client-search@5.53.0)(esbuild@0.28.2)(postcss@8.5.26)(search-insights@2.17.3):
+ vitepress@1.6.4(@algolia/client-search@5.57.0)(esbuild@0.28.2)(postcss@8.5.26)(search-insights@2.17.3):
dependencies:
'@docsearch/css': 3.8.2
- '@docsearch/js': 3.8.2(@algolia/client-search@5.53.0)(search-insights@2.17.3)
- '@iconify-json/simple-icons': 1.2.85
+ '@docsearch/js': 3.8.2(@algolia/client-search@5.57.0)(search-insights@2.17.3)
+ '@iconify-json/simple-icons': 1.2.93
'@shikijs/core': 2.5.0
'@shikijs/transformers': 2.5.0
'@shikijs/types': 2.5.0
- '@types/markdown-it': 14.1.2
- '@vitejs/plugin-vue': 6.0.6(vite@8.0.16(esbuild@0.28.2))(vue@3.5.35)
- '@vue/devtools-api': 7.7.9
- '@vue/shared': 3.5.35
+ '@types/markdown-it': 14.2.0
+ '@vitejs/plugin-vue': 6.0.6(vite@8.0.16(esbuild@0.28.2))(vue@3.5.41)
+ '@vue/devtools-api': 7.7.10
+ '@vue/shared': 3.5.41
'@vueuse/core': 12.8.2
'@vueuse/integrations': 12.8.2(focus-trap@7.8.0)
focus-trap: 7.8.0
@@ -1774,7 +1781,7 @@ snapshots:
minisearch: 7.2.0
shiki: 2.5.0
vite: 8.0.16(esbuild@0.28.2)
- vue: 3.5.35
+ vue: 3.5.41
optionalDependencies:
postcss: 8.5.26
transitivePeerDependencies:
@@ -1793,6 +1800,7 @@ snapshots:
- jwt-decode
- less
- nprogress
+ - preact-render-to-string
- qrcode
- react
- react-dom
@@ -1808,12 +1816,12 @@ snapshots:
- universal-cookie
- yaml
- vue@3.5.35:
+ vue@3.5.41:
dependencies:
- '@vue/compiler-dom': 3.5.35
- '@vue/compiler-sfc': 3.5.35
- '@vue/runtime-dom': 3.5.35
- '@vue/server-renderer': 3.5.35(vue@3.5.35)
- '@vue/shared': 3.5.35
+ '@vue/compiler-dom': 3.5.41
+ '@vue/compiler-sfc': 3.5.41
+ '@vue/runtime-dom': 3.5.41
+ '@vue/server-renderer': 3.5.41
+ '@vue/shared': 3.5.41
zwitch@2.0.4: {}
diff --git a/docs/pnpm-workspace.yaml b/docs/pnpm-workspace.yaml
new file mode 100644
index 000000000..d6abb43c8
--- /dev/null
+++ b/docs/pnpm-workspace.yaml
@@ -0,0 +1,11 @@
+packages: []
+
+allowBuilds:
+ esbuild: true
+
+overrides:
+ esbuild: 0.28.2
+ nanoid: 3.3.18
+ postcss: 8.5.26
+ vitepress>@vitejs/plugin-vue: 6.0.6
+ vitepress>vite: 8.0.16
diff --git a/packages/yuxi-cli/uv.lock b/packages/yuxi-cli/uv.lock
index 25b74ca30..b0c0906ae 100644
--- a/packages/yuxi-cli/uv.lock
+++ b/packages/yuxi-cli/uv.lock
@@ -193,14 +193,14 @@ wheels = [
[[package]]
name = "googleapis-common-protos"
-version = "1.75.1"
+version = "1.75.2"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "protobuf" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/72/73/74bcab964c9a7a61f2bb71e8179b0f13e6fa98f7ce00fd168aab291e4a2e/googleapis_common_protos-1.75.1.tar.gz", hash = "sha256:d3042c6c5a2d4e67113104d6b6818b59b6bd92a197f2a91508e801fe815cf071", size = 150967, upload-time = "2026-08-06T06:24:51.972Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/c0/90/fb8f1c84537fbf210c1f53a53ae473a805f6599c5a40b93c1bbadd211f7a/googleapis_common_protos-1.75.2.tar.gz", hash = "sha256:8829a3d1e4508c5b7b9a6b9525f7fccff611f8531644579a76466c29295d4bb2", size = 154083, upload-time = "2026-08-25T19:19:13.028Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/9a/51/186c02b8549b69ccda44429cf6ff5081e4b61a602ddfe6a8020d1be31d1b/googleapis_common_protos-1.75.1-py3-none-any.whl", hash = "sha256:28a1934bcd33b9c9da66ac301a0a4227e3367f095a17d0375cb98f0a09d93b79", size = 300626, upload-time = "2026-08-06T06:23:46.696Z" },
+ { url = "https://files.pythonhosted.org/packages/47/5b/1c9e55363c3b1890a98cae813de5b4ea327845756cd8fb7ee690140c7eac/googleapis_common_protos-1.75.2-py3-none-any.whl", hash = "sha256:6b83302f554ea93a0f48409c7fc2050f954bcbcddb7e3a9c76d4a823cb22920e", size = 307002, upload-time = "2026-08-25T19:18:08.927Z" },
]
[[package]]
@@ -260,7 +260,7 @@ wheels = [
[[package]]
name = "langfuse"
-version = "4.14.4"
+version = "4.14.5"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "backoff" },
@@ -272,9 +272,9 @@ dependencies = [
{ name = "pydantic" },
{ name = "wrapt" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/dd/3f/d3387db1f472d2fd4b5de40eb6abedc2f59c9da2224e9d0a79d054a90b81/langfuse-4.14.4.tar.gz", hash = "sha256:48c4bdefc290f61a42881b8048a904ab6b81d37e02496473166836e71ee0ab3a", size = 389680, upload-time = "2026-08-11T17:03:20.472Z" }
+sdist = { url = "https://files.pythonhosted.org/packages/d3/5c/f316b31abda2aab6ebadf69de99ea39df8d22ca743ac429284c0c1e12921/langfuse-4.14.5.tar.gz", hash = "sha256:75ccf86523ee87945bf9a853d4de65195376f9be5bda7178dd3d138b66fc670f", size = 391893, upload-time = "2026-08-24T13:01:08.496Z" }
wheels = [
- { url = "https://files.pythonhosted.org/packages/d9/1b/a198adc52aa4ffd0886ca0d4e9bb97d45f4f326db206d2395bac67677f5d/langfuse-4.14.4-py3-none-any.whl", hash = "sha256:78692a1d4785a8c255bf6ea967e673e1ee30ce078d646e7b5f7ff44549d45cce", size = 688351, upload-time = "2026-08-11T17:03:21.881Z" },
+ { url = "https://files.pythonhosted.org/packages/94/d4/914a654c3af7792f02394d93e0cbb052927b3e1e727416c62740cc49490d/langfuse-4.14.5-py3-none-any.whl", hash = "sha256:29e710b9b06adb30094e69af0034d10a47193bfb9c233296fe96b235cf1a377c", size = 695395, upload-time = "2026-08-24T13:01:09.62Z" },
]
[[package]]
diff --git a/scripts/bump-version.sh b/scripts/bump-version.sh
index 432701f2a..121f03668 100755
--- a/scripts/bump-version.sh
+++ b/scripts/bump-version.sh
@@ -10,7 +10,7 @@ set -euo pipefail
#
# 该脚本从 backend/package/pyproject.toml 读取当前版本,
# 自动同步所有需要硬编码版本号的位置。
-# --dev 模式不会更新 README.md、docs/intro/quick-start.md 和文档首页中 git clone --branch 的版本号。
+# --dev 模式不会更新 README、快速开始、部署指南和文档首页中的发布版本引用。
#
# 更新 tag 标准流程(给人工和 agent 使用):
#
@@ -107,6 +107,7 @@ if [ "$DEV_MODE" = false ]; then
echo " - README.md"
echo " - README.en.md"
echo " - docs/intro/quick-start.md"
+ echo " - docs/advanced/deployment.md"
echo " - docs/.vitepress/theme/components/YuxiHome.vue"
fi
echo ""
@@ -166,7 +167,7 @@ perl -0pi -e "s/(^name = \"yuxi-workspace\"\nversion = \")[^\"]+/\${1}${NEW_VERS
# 发布历史记录(如 [2026/04/01] v0.6.1 版本发布)不修改,保持为历史版本记录
if [ "$DEV_MODE" = false ]; then
echo "→ 更新 README.md"
- perl -pi -e "s/(git clone --branch v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g" \
+ perl -pi -e "s/(git clone --branch v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g; s/(当前仓库默认配置对应 \`v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g" \
"${PROJECT_ROOT}/README.md"
echo "→ 更新 README.en.md"
@@ -174,14 +175,18 @@ if [ "$DEV_MODE" = false ]; then
"${PROJECT_ROOT}/README.en.md"
echo "→ 更新 docs/intro/quick-start.md"
- perl -pi -e "s/(git clone --branch v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g" \
+ perl -pi -e "s/(git clone --branch v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g; s/(仓库当前默认配置对应 \`v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g" \
"${PROJECT_ROOT}/docs/intro/quick-start.md"
+ echo "→ 更新 docs/advanced/deployment.md"
+ perl -pi -e "s/(升级到当前 \`v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g; s/(git checkout v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g" \
+ "${PROJECT_ROOT}/docs/advanced/deployment.md"
+
echo "→ 更新 docs/.vitepress/theme/components/YuxiHome.vue"
perl -pi -e "s/(git clone --branch v)[0-9]+\\.[0-9]+\\.[0-9]+(\\.[a-zA-Z0-9]+)?/\${1}${NEW_VERSION}/g" \
"${PROJECT_ROOT}/docs/.vitepress/theme/components/YuxiHome.vue"
else
- echo "→ dev 模式,跳过 README.md、README.en.md、docs/intro/quick-start.md 和文档首页的分支版本更新"
+ echo "→ dev 模式,跳过 README、快速开始、部署指南和文档首页的发布版本更新"
fi
# -----------------------------------------------------------------------------
diff --git a/scripts/dependency-audit-fixtures/node/package.json b/scripts/dependency-audit-fixtures/node/package.json
index 2488b4b39..db8fc4377 100644
--- a/scripts/dependency-audit-fixtures/node/package.json
+++ b/scripts/dependency-audit-fixtures/node/package.json
@@ -4,5 +4,5 @@
"dependencies": {
"js-yaml": "4.3.0"
},
- "packageManager": "pnpm@10.11.0"
+ "packageManager": "pnpm@11.24.0"
}
diff --git a/scripts/init.ps1 b/scripts/init.ps1
index f4371da06..1c74dfdf9 100644
--- a/scripts/init.ps1
+++ b/scripts/init.ps1
@@ -285,7 +285,7 @@ $images = @(
"milvusdb/milvus:v2.5.6",
"neo4j:5.26.29",
"minio/minio:RELEASE.2023-03-20T20-16-18Z",
- "ghcr.io/astral-sh/uv:0.11.26",
+ "ghcr.io/astral-sh/uv:0.12.6",
"nginx:alpine",
"quay.io/coreos/etcd:v3.5.5",
"postgres:16",
diff --git a/scripts/init.sh b/scripts/init.sh
index 3f0fa9a48..ffdef40d4 100755
--- a/scripts/init.sh
+++ b/scripts/init.sh
@@ -299,7 +299,7 @@ images=(
"milvusdb/milvus:v2.5.6"
"neo4j:5.26.29"
"minio/minio:RELEASE.2023-03-20T20-16-18Z"
- "ghcr.io/astral-sh/uv:0.11.26"
+ "ghcr.io/astral-sh/uv:0.12.6"
"nginx:alpine"
"quay.io/coreos/etcd:v3.5.5"
"postgres:16"
diff --git a/scripts/test_bump_version.py b/scripts/test_bump_version.py
new file mode 100644
index 000000000..fba15c74a
--- /dev/null
+++ b/scripts/test_bump_version.py
@@ -0,0 +1,156 @@
+import shutil
+import subprocess
+import tempfile
+import unittest
+from pathlib import Path
+
+
+class BumpVersionScriptTests(unittest.TestCase):
+ """验证版本脚本同步活动引用且保留历史记录。"""
+
+ def _create_fixture(self, root: Path) -> Path:
+ """创建包含重复版本入口和历史记录的最小仓库。"""
+ script = root / "scripts/bump-version.sh"
+ script.parent.mkdir(parents=True)
+ shutil.copy2(Path(__file__).with_name("bump-version.sh"), script)
+
+ fixtures = {
+ "backend/package/pyproject.toml": 'version = "0.7.2.beta1"\n',
+ "backend/pyproject.toml": 'version = "0.7.2.beta1"\n',
+ "backend/uv.lock": (
+ 'name = "yuxi"\nversion = "0.7.2b1"\n\n'
+ 'name = "yuxi-workspace"\nversion = "0.7.2b1"\n'
+ ),
+ "web/package.json": '{\n "version": "0.7.2.beta1"\n}\n',
+ "docker-compose.yml": "\n".join(
+ f"image: {name}:${{YUXI_VERSION:-0.7.2.beta1}}"
+ for name in (
+ "yuxi-api",
+ "yuxi-api",
+ "yuxi-api",
+ "yuxi-sandbox-provisioner",
+ "yuxi-web",
+ )
+ )
+ + "\n",
+ "docker-compose.prod.yml": "\n".join(
+ f"image: {name}:${{YUXI_VERSION:-0.7.2.beta1}}"
+ for name in ("yuxi-api", "yuxi-api", "yuxi-api", "yuxi-web")
+ )
+ + "\n",
+ "README.md": (
+ "当前仓库默认配置对应 `v0.7.2.beta1`。\n"
+ "git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git\n"
+ ),
+ "README.en.md": (
+ "git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git\n"
+ ),
+ "docs/intro/quick-start.md": (
+ "仓库当前默认配置对应 `v0.7.2.beta1`。\n"
+ "git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git\n"
+ ),
+ "docs/advanced/deployment.md": (
+ "从 v0.7.1 升级到当前 `v0.7.2.beta1`。\n"
+ "git checkout v0.7.2.beta1\n"
+ ),
+ "docs/.vitepress/theme/components/YuxiHome.vue": (
+ "git clone --branch v0.7.2.beta1 --depth 1 https://github.com/xerrors/Yuxi.git\n"
+ ),
+ "docs/develop-guides/changelog.md": "## v0.7.2.beta1 (历史记录)\n",
+ }
+ for relative_path, content in fixtures.items():
+ path = root / relative_path
+ path.parent.mkdir(parents=True, exist_ok=True)
+ path.write_text(content)
+ return script
+
+ def test_release_bump_updates_current_references_only(self) -> None:
+ """正式版本升级应覆盖重复入口但不改 changelog。"""
+ with tempfile.TemporaryDirectory() as temp_dir:
+ root = Path(temp_dir)
+ script = self._create_fixture(root)
+ subprocess.run(
+ ["bash", str(script), "0.7.2.beta2"],
+ input="y\n",
+ text=True,
+ check=True,
+ capture_output=True,
+ )
+
+ current_paths = [
+ "backend/package/pyproject.toml",
+ "backend/pyproject.toml",
+ "backend/uv.lock",
+ "web/package.json",
+ "docker-compose.yml",
+ "docker-compose.prod.yml",
+ "README.md",
+ "README.en.md",
+ "docs/intro/quick-start.md",
+ "docs/advanced/deployment.md",
+ "docs/.vitepress/theme/components/YuxiHome.vue",
+ ]
+ for relative_path in current_paths:
+ content = (root / relative_path).read_text()
+ self.assertIn("0.7.2.beta2", content, relative_path)
+ self.assertNotIn("0.7.2.beta1", content, relative_path)
+ self.assertNotIn("0.7.2b1", content, relative_path)
+
+ self.assertEqual(
+ (root / "docker-compose.yml").read_text().count("0.7.2.beta2"), 5
+ )
+ self.assertEqual(
+ (root / "docker-compose.prod.yml").read_text().count("0.7.2.beta2"), 4
+ )
+ changelog = (root / "docs/develop-guides/changelog.md").read_text()
+ self.assertIn("v0.7.2.beta1", changelog)
+ self.assertNotIn("v0.7.2.beta2", changelog)
+
+ def test_dev_bump_keeps_release_document_references(self) -> None:
+ """开发版本升级不得移动公开发布文档的稳定目标。"""
+ with tempfile.TemporaryDirectory() as temp_dir:
+ root = Path(temp_dir)
+ script = self._create_fixture(root)
+ subprocess.run(
+ ["bash", str(script), "--dev", "0.7.2.dev2"],
+ input="y\n",
+ text=True,
+ check=True,
+ capture_output=True,
+ )
+
+ self.assertIn(
+ 'version = "0.7.2.dev2"',
+ (root / "backend/package/pyproject.toml").read_text(),
+ )
+ for relative_path in (
+ "README.md",
+ "README.en.md",
+ "docs/intro/quick-start.md",
+ "docs/advanced/deployment.md",
+ "docs/.vitepress/theme/components/YuxiHome.vue",
+ ):
+ self.assertIn("0.7.2.beta1", (root / relative_path).read_text())
+ self.assertNotIn("0.7.2.dev2", (root / relative_path).read_text())
+
+ def test_invalid_version_is_rejected_before_writes(self) -> None:
+ """非法版本输入必须在读取或改写项目文件前失败。"""
+ with tempfile.TemporaryDirectory() as temp_dir:
+ root = Path(temp_dir)
+ script = root / "scripts/bump-version.sh"
+ script.parent.mkdir(parents=True)
+ shutil.copy2(Path(__file__).with_name("bump-version.sh"), script)
+
+ result = subprocess.run(
+ ["bash", str(script), "0.7.2;touch-pwned"],
+ text=True,
+ capture_output=True,
+ )
+
+ self.assertNotEqual(result.returncode, 0)
+ self.assertIn("版本号格式无效", result.stdout)
+ self.assertFalse((root / "touch-pwned").exists())
+
+
+if __name__ == "__main__":
+ unittest.main()
diff --git a/scripts/test_dependency_update_policy.py b/scripts/test_dependency_update_policy.py
index eed66be31..5d888cf0f 100644
--- a/scripts/test_dependency_update_policy.py
+++ b/scripts/test_dependency_update_policy.py
@@ -51,8 +51,10 @@ def verify_policy(root: Path) -> list[str]:
'"packages/yuxi-cli/uv.lock"',
'"web/package.json"',
'"web/pnpm-lock.yaml"',
+ '"web/pnpm-workspace.yaml"',
'"docs/package.json"',
'"docs/pnpm-lock.yaml"',
+ '"docs/pnpm-workspace.yaml"',
'"scripts/dependency-audit-fixtures/**"',
)
pull_request_paths = workflow.split(" pull_request:\n", 1)[-1].split(
diff --git a/web/AGENTS.md b/web/AGENTS.md
index f5da8d802..9df55c1af 100644
--- a/web/AGENTS.md
+++ b/web/AGENTS.md
@@ -4,7 +4,7 @@
- API 调用统一放在 `src/apis`;组件不直接拼接普通 HTTP 请求。
- 前端权限与路由守卫只提供体验约束,后端始终执行最终授权。
-- 复用 `src/assets/css/base.css` 变量和 `lucide-vue-next`;不为一次性视觉需求引入新依赖。
+- 复用 `src/assets/css/base.css` 变量和 `@lucide/vue`;不为一次性视觉需求引入新依赖。
- 保持 loading、empty、error、断线恢复和终态投影语义一致;不要用乐观 UI 覆盖 PostgreSQL 返回的最终事实。
- `pnpm run lint:check` 是只读 gate;`pnpm run lint` 才允许本地自动修复。
diff --git a/web/package.json b/web/package.json
index b3a0a6548..d4b2ee592 100644
--- a/web/package.json
+++ b/web/package.json
@@ -1,6 +1,6 @@
{
"name": "yuxi-web",
- "version": "0.7.2.beta1",
+ "version": "0.7.2.beta2",
"private": true,
"type": "module",
"scripts": {
@@ -17,7 +17,8 @@
"dependencies": {
"@ant-design/icons-vue": "^7.0.1",
"@antv/g6": "^5.1.1",
- "@opencode-ai/models": "0.0.51",
+ "@lucide/vue": "^1.34.0",
+ "@opencode-ai/models": "0.0.55",
"@sigma/edge-curve": "^3.1.0",
"@sigma/node-border": "^3.0.0",
"@vscode/markdown-it-katex": "^1.1.2",
@@ -30,10 +31,9 @@
"graphology": "^0.26.0",
"graphology-generators": "^0.11.2",
"highlight.js": "^11.12.0",
- "js-yaml": "^5.3.0",
+ "js-yaml": "^5.4.0",
"katex": "^0.18.4",
"less": "^4.9.0",
- "lucide-vue-next": "^1.0.0",
"markdown-it": "^15.0.0",
"markdown-it-task-lists": "^2.1.1",
"markmap-lib": "^0.18.12",
@@ -51,27 +51,12 @@
"@vitejs/plugin-vue": "^6.0.8",
"@vue/eslint-config-prettier": "^10.2.0",
"esbuild": "0.28.2",
- "eslint": "^10.9.0",
+ "eslint": "^10.9.1",
"eslint-plugin-vue": "^10.10.0",
"globals": "^17.11.0",
"prettier": "^3.9.6",
"vite": "^8.2.2",
"vue-eslint-parser": "^10.4.1"
},
- "pnpm": {
- "overrides": {
- "brace-expansion": "5.0.9",
- "esbuild": "0.28.2",
- "eslint-scope": "9.1.2",
- "flatted": "3.4.2",
- "lodash": "4.18.1",
- "lodash-es": "4.18.1",
- "nanoid": "3.3.18",
- "postcss": "8.5.26",
- "undici": "6.28.0",
- "yaml": "2.8.3"
- },
- "auditConfig": {}
- },
- "packageManager": "pnpm@10.11.0"
+ "packageManager": "pnpm@11.24.0"
}
diff --git a/web/pnpm-lock.yaml b/web/pnpm-lock.yaml
index 0eccde6b0..72620925d 100644
--- a/web/pnpm-lock.yaml
+++ b/web/pnpm-lock.yaml
@@ -26,9 +26,12 @@ importers:
'@antv/g6':
specifier: ^5.1.1
version: 5.1.1
+ '@lucide/vue':
+ specifier: ^1.34.0
+ version: 1.34.0(vue@3.5.41)
'@opencode-ai/models':
- specifier: 0.0.51
- version: 0.0.51
+ specifier: 0.0.55
+ version: 0.0.55
'@sigma/edge-curve':
specifier: ^3.1.0
version: 3.1.0(sigma@3.0.3(graphology-types@0.24.8))
@@ -66,17 +69,14 @@ importers:
specifier: ^11.12.0
version: 11.12.0
js-yaml:
- specifier: ^5.3.0
- version: 5.3.0
+ specifier: ^5.4.0
+ version: 5.4.0
katex:
specifier: ^0.18.4
version: 0.18.4
less:
specifier: ^4.9.0
version: 4.9.0
- lucide-vue-next:
- specifier: ^1.0.0
- version: 1.0.0(vue@3.5.41)
markdown-it:
specifier: ^15.0.0
version: 15.0.0
@@ -113,22 +113,22 @@ importers:
devDependencies:
'@eslint/js':
specifier: ^10.0.1
- version: 10.0.1(eslint@10.9.0)
+ version: 10.0.1(eslint@10.9.1)
'@vitejs/plugin-vue':
specifier: ^6.0.8
version: 6.0.8(vite@8.2.2(esbuild@0.28.2)(less@4.9.0)(yaml@2.8.3))(vue@3.5.41)
'@vue/eslint-config-prettier':
specifier: ^10.2.0
- version: 10.2.0(eslint@10.9.0)(prettier@3.9.6)
+ version: 10.2.0(eslint@10.9.1)(prettier@3.9.6)
esbuild:
specifier: 0.28.2
version: 0.28.2
eslint:
- specifier: ^10.9.0
- version: 10.9.0
+ specifier: ^10.9.1
+ version: 10.9.1
eslint-plugin-vue:
specifier: ^10.10.0
- version: 10.10.0(eslint@10.9.0)(vue-eslint-parser@10.4.1(eslint@10.9.0))
+ version: 10.10.0(eslint@10.9.1)(vue-eslint-parser@10.4.1(eslint@10.9.1))
globals:
specifier: ^17.11.0
version: 17.11.0
@@ -140,7 +140,7 @@ importers:
version: 8.2.2(esbuild@0.28.2)(less@4.9.0)(yaml@2.8.3)
vue-eslint-parser:
specifier: ^10.4.1
- version: 10.4.1(eslint@10.9.0)
+ version: 10.4.1(eslint@10.9.1)
packages:
@@ -492,6 +492,11 @@ packages:
'@jridgewell/trace-mapping@0.3.31':
resolution: {integrity: sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==}
+ '@lucide/vue@1.34.0':
+ resolution: {integrity: sha512-eB48kx1oe9O6mJAg0gFWgv66y4rhYJYuhfWF8wIz/YBFPDDHWHI7+kRJpkvz/8kePY6ddbwxXIGfP8E54wlGhA==}
+ peerDependencies:
+ vue: '>=3.0.1'
+
'@napi-rs/canvas-android-arm64@1.0.8':
resolution: {integrity: sha512-5+nkh8i3gt6lqS/d2jTZ1xAn6tdgtB4Lf1mW6T0Qm5/rXNwBuV1sAEyLEWan5o9gJPU/GuvHR3rvSeZ+FaGrbw==}
engines: {node: '>= 10'}
@@ -521,30 +526,35 @@ packages:
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
+ libc: [glibc]
'@napi-rs/canvas-linux-arm64-musl@1.0.8':
resolution: {integrity: sha512-yYkPbJDJiWj6N0gASA3CAvRypZmVpJnxU0DQg3aBhneLDQde9TPLKADsQkobNoJUtTT/lj46aWpzT48PDb3Qcg==}
engines: {node: '>= 10'}
cpu: [arm64]
os: [linux]
+ libc: [musl]
'@napi-rs/canvas-linux-riscv64-gnu@1.0.8':
resolution: {integrity: sha512-PB00MSKAp4VwK/xwe6duKxRKmH8UH4GIl1pqHSbxng0jnU9Dr7FwaDypDiqwNFZ774N+8G7mJLGuLtg9NTcQsg==}
engines: {node: '>= 10'}
cpu: [riscv64]
os: [linux]
+ libc: [glibc]
'@napi-rs/canvas-linux-x64-gnu@1.0.8':
resolution: {integrity: sha512-TWM2XWJoitLiIPCvgJh7SriC+L/T9qkYCVzC66AidsZy0QP1hkKzBzVwshCdcA3q6fIn3yE0ISbq4lMJSy8jFw==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
+ libc: [glibc]
'@napi-rs/canvas-linux-x64-musl@1.0.8':
resolution: {integrity: sha512-hb20MxKXXb5IB7AAwN8UHz9WRsa2HmdZfjsDCzjElwJoeV1aotVEwFU4FrFQcYQVzsJQLeaCc/2Qdt/0Q72mMg==}
engines: {node: '>= 10'}
cpu: [x64]
os: [linux]
+ libc: [musl]
'@napi-rs/canvas-win32-arm64-msvc@1.0.8':
resolution: {integrity: sha512-WwPN08IXE4SkL+FhJyPz/iFnycMAUkbphFIT4cmKLlvbSU0Zfn1R7BGJ3Hqky1S89QUYc0Q4IOScXb/42Re9wQ==}
@@ -562,8 +572,8 @@ packages:
resolution: {integrity: sha512-/SaLcvlqGWdm0HSCWMgHu7cjJiQXfP8/mOY+6dUyV9flQz7sPBBZ+ed2zYtoukojPmxOaL7bm+d/G4GeWWoN7g==}
engines: {node: '>= 10'}
- '@opencode-ai/models@0.0.51':
- resolution: {integrity: sha512-6MyIH9s2ztVMb+xWi4dbNebzbsHukcEG0s67s/xniIIrIKBlsj/neJtUHqK1C7/jYZcyIs+xeFlW8aZBk7dI5g==}
+ '@opencode-ai/models@0.0.55':
+ resolution: {integrity: sha512-dJTGe3XMq0T/UYVmwjyWly4xsGuVbWaAqCMTTxjWYbLBuos6c+46SQjFnnXk+nzOkJu5guuGJl7gvW5q1Z0pGA==}
engines: {node: '>=18'}
peerDependencies:
effect: 4.0.0-beta.83
@@ -619,36 +629,42 @@ packages:
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-arm64-musl@1.2.5':
resolution: {integrity: sha512-xMvZgnbZg4YVnR/AX2b3oOPDTFYJvUVaJg5FedA/LuvexAtXibZQej4cnTkw3rjsJ/ggUROB64TdtETiim+FYA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [arm64]
os: [linux]
+ libc: [musl]
'@rolldown/binding-linux-ppc64-gnu@1.2.5':
resolution: {integrity: sha512-GRjeqTUDHTo5GwntsLaAMcBahG3nlpjftXWZLN73HiYQlhwEowvarFgQnRnQZtIp4keXX7quXFbG38uPZBa2EA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [ppc64]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-s390x-gnu@1.2.5':
resolution: {integrity: sha512-vLNTR45F2Uwc8AufkNXPmB4VliaXs+FvcheEogIzOXzO4l+LzieXF5A/TWxLy5HtqpsRCHUfd0lPVrrdgXdLHQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [s390x]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-x64-gnu@1.2.5':
resolution: {integrity: sha512-Mgj59/HTuYeK9Gz2MA+mBWKnHsAgkBSec15ZMb1st3oIfFbX7gCjOae7GydHhzcyQi9Z/7M1QuN9bR3oFqF0jQ==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
+ libc: [glibc]
'@rolldown/binding-linux-x64-musl@1.2.5':
resolution: {integrity: sha512-mY8AP0/ichsbhAxGnLa3d3+MwV0EfgrPND2bplI3Ym8T6R2pJ0N87bvrKVwNXmdy3jnr6eQBecdqx/HMknBmpA==}
engines: {node: ^20.19.0 || >=22.12.0}
cpu: [x64]
os: [linux]
+ libc: [musl]
'@rolldown/binding-openharmony-arm64@1.2.5':
resolution: {integrity: sha512-8SLssA2oweAxyRgDp789ACfRb/3P+zNRJpzZxSizxF9m8NUDQ4+3xjo8ttjhVGGw6Qxb70oZiEtIjaKikCO7Yw==}
@@ -1319,8 +1335,8 @@ packages:
resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
- eslint@10.9.0:
- resolution: {integrity: sha512-5KeEOJZBfEVA47boFiBsf+6MmmJpffM7qEBg4pLla2e4nlKgdKlqCW0oSLOGsT8Wl5uCGJptLV1bkaiShj90Gw==}
+ eslint@10.9.1:
+ resolution: {integrity: sha512-9VaAkDURekixUQJy0oJYl2DcN6oKMfxay7XzaGYAWQwsb6qfKf+x76R2k1L8kb1boc+FyCAaTA9GmiKaaiaF+A==}
engines: {node: ^20.19.0 || ^22.13.0 || >=24}
hasBin: true
peerDependencies:
@@ -1527,8 +1543,8 @@ packages:
js-tokens@4.0.0:
resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==}
- js-yaml@5.3.0:
- resolution: {integrity: sha512-muutsYr+e2+d3rTgUGslq5rxbBlUy3cJ61IsHag2QNDQV+7zXWjkUpmALIajhrlLlrgRUiymj6U3zUr/TMK84Q==}
+ js-yaml@5.4.0:
+ resolution: {integrity: sha512-jE7vUJIebKzYQI5xu4co5CRBDlDEYnHrdzsxs4O2giCz4v2SbVMYKpmt1D9L38OKQAeCWmrOTRiCV93u0UkaJA==}
hasBin: true
jsesc@3.1.0:
@@ -1605,24 +1621,28 @@ packages:
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [linux]
+ libc: [glibc]
lightningcss-linux-arm64-musl@1.33.0:
resolution: {integrity: sha512-yiO5ROMuYQgXbC60yjZU5CYSFZGKXL0HFATXt9mHJn1+zW55oCtMI9NfcVhYLMFDL7gV7oBPon/EmMMGg2OvtQ==}
engines: {node: '>= 12.0.0'}
cpu: [arm64]
os: [linux]
+ libc: [musl]
lightningcss-linux-x64-gnu@1.33.0:
resolution: {integrity: sha512-ar+Ju7LmcN0Jo4FpL4hpFybwNG9/3A/Br5KW2n2jyODg3MEZXaDYADdemoNS+BDNfMgKvylJLj4S5tyRActuAg==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [linux]
+ libc: [glibc]
lightningcss-linux-x64-musl@1.33.0:
resolution: {integrity: sha512-RYiYbkokw0trfKqqzfF55lginwEPrD3OJDfTuJzFs1MK6iFnDenaz1fqLLtX4ITG3OktJQXOeTaw1awrBAlZPw==}
engines: {node: '>= 12.0.0'}
cpu: [x64]
os: [linux]
+ libc: [musl]
lightningcss-win32-arm64-msvc@1.33.0:
resolution: {integrity: sha512-1K+MPfLSFVpphzpdbfkhlWk6wBrTObBzS2T6db10PNOZgR9GoVsAWzwNyuhUYYbTp23j+4RrncfujZ4uAzXvwA==}
@@ -1667,12 +1687,6 @@ packages:
resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==}
hasBin: true
- lucide-vue-next@1.0.0:
- resolution: {integrity: sha512-V6SPvx1IHTj/UY+FrIYWV5faISsPSb8BnWSFDxAtezWKvWc9ZZ40PDrdu1/Qb5vg4lHWr1hs1BAMGVGm6V1Xdg==}
- deprecated: Package deprecated. Please use @lucide/vue instead.
- peerDependencies:
- vue: '>=3.0.1'
-
magic-string-ast@1.0.3:
resolution: {integrity: sha512-CvkkH1i81zl7mmb94DsRiFeG9V2fR2JeuK8yDgS8oiZSFa++wWLEgZ5ufEOyLHbvSbD1gTRKv9NdX69Rnvr9JA==}
engines: {node: '>=20.19.0'}
@@ -1870,8 +1884,8 @@ packages:
picocolors@1.1.1:
resolution: {integrity: sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==}
- picomatch@4.0.5:
- resolution: {integrity: sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==}
+ picomatch@4.0.7:
+ resolution: {integrity: sha512-qcJu88Q2IWqJsDD529JKMdwGm/dvInW4HvQnRwiH9JtihJvzGOscDtHE3x1pBKeUOTysQ8kVmLnJ2kJu7yhcGA==}
engines: {node: '>=12'}
pinia-plugin-persistedstate@4.7.1:
@@ -2558,9 +2572,9 @@ snapshots:
'@esbuild/win32-x64@0.28.2':
optional: true
- '@eslint-community/eslint-utils@4.10.1(eslint@10.9.0)':
+ '@eslint-community/eslint-utils@4.10.1(eslint@10.9.1)':
dependencies:
- eslint: 10.9.0
+ eslint: 10.9.1
eslint-visitor-keys: 3.4.3
'@eslint-community/regexpp@4.12.2': {}
@@ -2581,9 +2595,9 @@ snapshots:
dependencies:
'@types/json-schema': 7.0.15
- '@eslint/js@10.0.1(eslint@10.9.0)':
+ '@eslint/js@10.0.1(eslint@10.9.1)':
optionalDependencies:
- eslint: 10.9.0
+ eslint: 10.9.1
'@eslint/object-schema@3.0.5': {}
@@ -2631,6 +2645,10 @@ snapshots:
'@jridgewell/resolve-uri': 3.1.2
'@jridgewell/sourcemap-codec': 1.5.5
+ '@lucide/vue@1.34.0(vue@3.5.41)':
+ dependencies:
+ vue: 3.5.41
+
'@napi-rs/canvas-android-arm64@1.0.8':
optional: true
@@ -2679,7 +2697,7 @@ snapshots:
'@napi-rs/canvas-win32-x64-msvc': 1.0.8
optional: true
- '@opencode-ai/models@0.0.51': {}
+ '@opencode-ai/models@0.0.55': {}
'@oxc-project/types@0.146.0': {}
@@ -2923,11 +2941,11 @@ snapshots:
'@vue/devtools-shared@8.2.1': {}
- '@vue/eslint-config-prettier@10.2.0(eslint@10.9.0)(prettier@3.9.6)':
+ '@vue/eslint-config-prettier@10.2.0(eslint@10.9.1)(prettier@3.9.6)':
dependencies:
- eslint: 10.9.0
- eslint-config-prettier: 10.1.8(eslint@10.9.0)
- eslint-plugin-prettier: 5.5.6(eslint-config-prettier@10.1.8(eslint@10.9.0))(eslint@10.9.0)(prettier@3.9.6)
+ eslint: 10.9.1
+ eslint-config-prettier: 10.1.8(eslint@10.9.1)
+ eslint-plugin-prettier: 5.5.6(eslint-config-prettier@10.1.8(eslint@10.9.1))(eslint@10.9.1)(prettier@3.9.6)
prettier: 3.9.6
transitivePeerDependencies:
- '@types/eslint'
@@ -3416,28 +3434,28 @@ snapshots:
escape-string-regexp@4.0.0: {}
- eslint-config-prettier@10.1.8(eslint@10.9.0):
+ eslint-config-prettier@10.1.8(eslint@10.9.1):
dependencies:
- eslint: 10.9.0
+ eslint: 10.9.1
- eslint-plugin-prettier@5.5.6(eslint-config-prettier@10.1.8(eslint@10.9.0))(eslint@10.9.0)(prettier@3.9.6):
+ eslint-plugin-prettier@5.5.6(eslint-config-prettier@10.1.8(eslint@10.9.1))(eslint@10.9.1)(prettier@3.9.6):
dependencies:
- eslint: 10.9.0
+ eslint: 10.9.1
prettier: 3.9.6
prettier-linter-helpers: 1.0.1
synckit: 0.11.13
optionalDependencies:
- eslint-config-prettier: 10.1.8(eslint@10.9.0)
+ eslint-config-prettier: 10.1.8(eslint@10.9.1)
- eslint-plugin-vue@10.10.0(eslint@10.9.0)(vue-eslint-parser@10.4.1(eslint@10.9.0)):
+ eslint-plugin-vue@10.10.0(eslint@10.9.1)(vue-eslint-parser@10.4.1(eslint@10.9.1)):
dependencies:
- '@eslint-community/eslint-utils': 4.10.1(eslint@10.9.0)
- eslint: 10.9.0
+ '@eslint-community/eslint-utils': 4.10.1(eslint@10.9.1)
+ eslint: 10.9.1
natural-compare: 1.4.0
nth-check: 2.1.1
postcss-selector-parser: 7.1.5
semver: 7.8.5
- vue-eslint-parser: 10.4.1(eslint@10.9.0)
+ vue-eslint-parser: 10.4.1(eslint@10.9.1)
xml-name-validator: 5.0.0
eslint-scope@9.1.2:
@@ -3451,9 +3469,9 @@ snapshots:
eslint-visitor-keys@5.0.1: {}
- eslint@10.9.0:
+ eslint@10.9.1:
dependencies:
- '@eslint-community/eslint-utils': 4.10.1(eslint@10.9.0)
+ '@eslint-community/eslint-utils': 4.10.1(eslint@10.9.1)
'@eslint-community/regexpp': 4.12.2
'@eslint/config-array': 0.23.5
'@eslint/config-helpers': 0.7.0
@@ -3520,9 +3538,9 @@ snapshots:
fast-levenshtein@2.0.6: {}
- fdir@6.5.0(picomatch@4.0.5):
+ fdir@6.5.0(picomatch@4.0.7):
optionalDependencies:
- picomatch: 4.0.5
+ picomatch: 4.0.7
fecha@4.2.3: {}
@@ -3669,7 +3687,7 @@ snapshots:
js-tokens@4.0.0: {}
- js-yaml@5.3.0:
+ js-yaml@5.4.0:
dependencies:
argparse: 2.0.1
@@ -3793,10 +3811,6 @@ snapshots:
dependencies:
js-tokens: 4.0.0
- lucide-vue-next@1.0.0(vue@3.5.41):
- dependencies:
- vue: 3.5.41
-
magic-string-ast@1.0.3:
dependencies:
magic-string: 0.30.21
@@ -4035,7 +4049,7 @@ snapshots:
picocolors@1.1.1: {}
- picomatch@4.0.5: {}
+ picomatch@4.0.7: {}
pinia-plugin-persistedstate@4.7.1(pinia@4.0.3(@vue/devtools-api@8.2.1)(vue@3.5.41)):
dependencies:
@@ -4219,8 +4233,8 @@ snapshots:
tinyglobby@0.2.17:
dependencies:
- fdir: 6.5.0(picomatch@4.0.5)
- picomatch: 4.0.5
+ fdir: 6.5.0(picomatch@4.0.7)
+ picomatch: 4.0.7
trim-lines@3.0.1: {}
@@ -4266,12 +4280,12 @@ snapshots:
unplugin-utils@0.3.2:
dependencies:
pathe: 2.0.3
- picomatch: 4.0.5
+ picomatch: 4.0.7
unplugin@3.3.0(esbuild@0.28.2)(rolldown@1.2.5)(vite@8.2.2(esbuild@0.28.2)(less@4.9.0)(yaml@2.8.3)):
dependencies:
'@jridgewell/remapping': 2.3.5
- picomatch: 4.0.5
+ picomatch: 4.0.7
webpack-virtual-modules: 0.6.2
optionalDependencies:
esbuild: 0.28.2
@@ -4301,7 +4315,7 @@ snapshots:
vite@8.2.2(esbuild@0.28.2)(less@4.9.0)(yaml@2.8.3):
dependencies:
lightningcss: 1.33.0
- picomatch: 4.0.5
+ picomatch: 4.0.7
postcss: 8.5.26
rolldown: 1.2.5
tinyglobby: 0.2.17
@@ -4311,10 +4325,10 @@ snapshots:
less: 4.9.0
yaml: 2.8.3
- vue-eslint-parser@10.4.1(eslint@10.9.0):
+ vue-eslint-parser@10.4.1(eslint@10.9.1):
dependencies:
debug: 4.4.3
- eslint: 10.9.0
+ eslint: 10.9.1
eslint-scope: 9.1.2
eslint-visitor-keys: 5.0.1
espree: 11.2.0
@@ -4337,7 +4351,7 @@ snapshots:
muggle-string: 0.4.1
nostics: 1.2.0
pathe: 2.0.3
- picomatch: 4.0.5
+ picomatch: 4.0.7
scule: 1.3.0
tinyglobby: 0.2.17
unplugin: 3.3.0(esbuild@0.28.2)(rolldown@1.2.5)(vite@8.2.2(esbuild@0.28.2)(less@4.9.0)(yaml@2.8.3))
diff --git a/web/pnpm-workspace.yaml b/web/pnpm-workspace.yaml
new file mode 100644
index 000000000..a2e9a6e2e
--- /dev/null
+++ b/web/pnpm-workspace.yaml
@@ -0,0 +1,20 @@
+packages: []
+
+allowBuilds:
+ core-js: true
+ esbuild: true
+
+minimumReleaseAgeExclude:
+ - '@opencode-ai/models@0.0.55'
+
+overrides:
+ brace-expansion: 5.0.9
+ esbuild: 0.28.2
+ eslint-scope: 9.1.2
+ flatted: 3.4.2
+ lodash: 4.18.1
+ lodash-es: 4.18.1
+ nanoid: 3.3.18
+ postcss: 8.5.26
+ undici: 6.28.0
+ yaml: 2.8.3
diff --git a/web/src/components/AccountSettingsComponent.vue b/web/src/components/AccountSettingsComponent.vue
index 1aa1d2903..31a121ef0 100644
--- a/web/src/components/AccountSettingsComponent.vue
+++ b/web/src/components/AccountSettingsComponent.vue
@@ -119,7 +119,7 @@ import UserConfigSettingsCard from '@/components/UserConfigSettingsCard.vue'
import { computed, nextTick, reactive, ref, watch } from 'vue'
import { message } from 'ant-design-vue'
-import { Building2, RefreshCw, ShieldCheck, Upload } from 'lucide-vue-next'
+import { Building2, RefreshCw, ShieldCheck, Upload } from '@lucide/vue'
import FallbackAvatar from '@/components/common/FallbackAvatar.vue'
import { useUserStore } from '@/stores/user'
import { generatePixelAvatar } from '@/utils/pixelAvatar'
diff --git a/web/src/components/AgentArtifactsCard.vue b/web/src/components/AgentArtifactsCard.vue
index 5ab2f9355..98f5d58c0 100644
--- a/web/src/components/AgentArtifactsCard.vue
+++ b/web/src/components/AgentArtifactsCard.vue
@@ -54,7 +54,7 @@
diff --git a/web/src/components/ToolApprovalModeSelector.vue b/web/src/components/ToolApprovalModeSelector.vue
index c60a9b080..02ac312c4 100644
--- a/web/src/components/ToolApprovalModeSelector.vue
+++ b/web/src/components/ToolApprovalModeSelector.vue
@@ -52,7 +52,7 @@