17 Commits

Author SHA1 Message Date
e11d10655d 调整关于 Flashback 模组的说明
All checks were successful
continuous-integration/drone/push Build is passing
2026-03-26 23:03:16 +08:00
b7ac139144 调整自然段
All checks were successful
continuous-integration/drone/push Build is passing
2026-03-26 21:08:24 +08:00
f9278f81f4 添加信息
All checks were successful
continuous-integration/drone/push Build is passing
2026-03-26 21:07:12 +08:00
1eb5b28623 增加 Minecraft 服务器信息
All checks were successful
continuous-integration/drone/push Build is passing
2026-03-26 21:04:14 +08:00
2da9f5819d Issue Pinboard 链接
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-13 16:39:07 +08:00
9498bd7210 坠毁标记
All checks were successful
continuous-integration/drone/push Build is passing
2026-01-01 20:42:42 +08:00
97a4c0156a 添加1
All checks were successful
continuous-integration/drone/push Build is passing
2025-12-11 00:50:21 +08:00
6e95791960 202511251650
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-25 16:50:57 +08:00
46c0cd24ed 修复网站链接问题
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-20 23:39:01 +08:00
a8367628e9 添加更新日志,添加新的插件
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-20 23:28:46 +08:00
878ab8ae15 更新链接
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-13 21:38:43 +08:00
40ea856d53 添加向阳庄
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-09 01:38:51 +08:00
ee3f5e73af 先更新一波
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-09 01:30:46 +08:00
4dfff467d5 fix3
All checks were successful
continuous-integration/drone/push Build is passing
2025-11-09 00:52:19 +08:00
5e68c73f3e fix2
Some checks failed
continuous-integration/drone/push Build is failing
2025-11-09 00:51:15 +08:00
a85089d10f 修正 docker 编排网络
Some checks failed
continuous-integration/drone/push Build is failing
2025-11-09 00:49:32 +08:00
9f9a18ed4d Merge pull request '添加 Anubis' (#1) from feature/add-anubis into master
Some checks failed
continuous-integration/drone/push Build is failing
Reviewed-on: #1
2025-11-09 00:45:51 +08:00
21 changed files with 326 additions and 22 deletions

View File

@ -22,8 +22,6 @@ services:
timeout: 30s
retries: 5
start_period: 500ms
depends_on:
- server
networks:
- mttu-web-inner
- caddy-internal
@ -33,3 +31,5 @@ services:
networks:
caddy-internal:
external: true
mttu-web-inner:
driver: bridge

6
docs/blog/.authors.yml Normal file
View File

@ -0,0 +1,6 @@
authors:
passthem:
name: 钟晓帕
description: 电工师傅
avatar: https://cdn.passthem.top/sharex/2025/11/%E6%93%A6%E6%B1%97%E5%90%8E_%E6%96%B9%E5%BD%A2.png.upscale.png
url: https://space.bilibili.com/92852604

2
docs/blog/index.md Normal file
View File

@ -0,0 +1,2 @@
# Blog

View File

@ -0,0 +1,25 @@
---
authors:
- passthem
categories:
- 日志
- 基础设施
date: 2025-11-20
readtime: 3
slug: update-2025-11-20
---
# 2025 年 11 月 20 日基础设施更新
以下是 2025 年 11 月 20 日的基础设施更新情况。
## 放宽了 Gitea 实例的 Anubis 限制
因为 [Anubis](https://anubis.techaro.lol/) 的反爬虫机制过于严格,导致有些 API 甚至都被限制。为了让 Gitea 官方的 cli 工具 [tea](https://gitea.com/gitea/tea) 正常工作,我放开了 [/api/v1](https://gitea.com/api/swagger#/) 和 [/login/oauth](https://docs.gitea.com/development/oauth2-provider) API 的 Anubis 限制。
## 为 MTTU 文档引入了 RSS 和博客功能
鉴于目前还没有找到一个能够替代我的博客站的全能多用户博客系统,我先启用了该文档的 [RSS](https://guts.github.io/mkdocs-rss-plugin/) 功能和 [Blog](https://squidfunk.github.io/mkdocs-material/plugins/blog) 功能,以满足撰写(不那么重要的)更新日志的需要,并且可以方便使用我们基础设施的朋友们。
你可以订阅 [feed_rss_updated.xml](/feed_rss_updated.xml) 以获取本站点页面的更新,订阅 [feed_rss_created.xml](/feed_rss_created.xml) 以获取本站点创建的新页面。

View File

@ -0,0 +1,29 @@
---
authors:
- passthem
categories:
- 日志
- 此方 Bot
date: 2025-11-25
readtime: 1
slug: update-2025-11-25
---
# 2025 年 11 月 25 日基础设施更新
以下是 2025 年 11 月 25 日的基础设施更新情况。
## 此方 Bot 引入了阿里绿网云盾
对于云盾,详细可见[阿里官方文档](https://help.aliyun.com/document_detail/2671445.html?spm=a2c4g.11186623.0.0.11e05674MYxuDc#54b02ff4efehj)。使用方法:
```python
from konabot.common.apis.ali_content_safety import AlibabaGreen
async def main():
if await AlibabaGreen.detect("正常文本"):
print("没有检测到违规情况")
else:
print("发现违规异常")
```

View File

@ -10,4 +10,4 @@ MTTU 是由 passthem 建立的邀请制可爱小群聊集合体!该集合体
请先阅读[群聊规则](./rules.md),这些是对主群聊的聊天的一些小规矩,希望大家遵守!
除此之外,在传送锚点部分,你可以加入与本群有关的一些子群聊。
除此之外,在[传送锚点](./links/links.md)部分,你可以加入与本群有关的一些子群聊。

9
docs/links/links.md Normal file
View File

@ -0,0 +1,9 @@
# 传送锚点
在这里有一些其他的群聊推荐。有一些**子群聊**以 MTTU 的名义建立,但它们可能并不由我管理。其他一些群和本群的关联更小,但是也欢迎群里的大家加入。
## 我想要宣群 / 扩列
你可以联系我passthem我可以帮助你把你的群聊放在这个站点上。除此之外如果你认为你有技术和能力欢迎你直接编辑该站点的代码库。
如果你想宣传自己,也非常欢迎!或者,想贴一些其他的社交平台链接,也是非常欢迎的!

5
docs/links/mokie-kig.md Normal file
View File

@ -0,0 +1,5 @@
# 蛋奶星星星球杯
榆木华运营的小群。欢迎 Kigurumi / 异头 / 兽装kig 系)/ MC 头 / Cosplay / 兽装类内容。同时,也有其他华子哥喜欢的内容,例如穿搭 / 宅舞 / 新怪谈 / 核类美学 / 泞之翼 / 日式恐解。
本群不直接放开链接,请私聊榆木华加入群聊。

19
docs/links/mono-group.md Normal file
View File

@ -0,0 +1,19 @@
# モノクロ荘(黑白庄)
モノクロ子的个人群。
## 介绍
欢迎您光临 モノクロ荘 ,这里是由 モノクロ子 建立的个人小群。
这个群的内容(构想)是 工作进度、近期的想法、作词、学习相关 之类的东西。当然,如果你想的话也可以在这边随意说说话,基本上什么都可以聊。
在这里唯二禁止的事情是:任何逾越了正常道德底线的内容;卖弱、捧杀等让他人感到任何一方不平等的举止。
但需要注意:这个群很冷清,由于曾经是邀请制,邀请的均为 モノクロ子 的好友故群聊成员成分复杂。大约有界隈、音Mad、绘画、其他。
如果缺少共同话题的话,请慎重加群。
警告:由于 モノクロ子 的心理状态不稳定,负面内容可能较多,但绝对不会超出正常限度(如血图、极端言论等),一般是负面情绪的倾诉。
但如果不太能接受,也请慎重加群。
## 链接
群号882689959
会视熟悉程度决定是否同意加群申请,如果不太熟悉的话可能被拒绝。

View File

@ -8,5 +8,5 @@ Ralmon 的计数器「自习室」,大家会在这里直播连麦写作业。
## 链接
[https://discord.gg/wv499GKC](https://discord.gg/wv499GKC)
[Discord 链接(梯子需要)](https://discord.gg/Vc8WUx2J)

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 153 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 221 KiB

View File

@ -2,6 +2,10 @@
此方 Bot (QQ: 3928110595) 是一个主要活动于 MTTU并且被引入了多个群聊的多功能 QQ 机器人。这个 Bot 欢迎大家进行自由开发,也欢迎所有刚开始学习 Python 的朋友使用这个项目练习。如果需要代码的编辑权限,请联系我以获得账号密码。
## 我有一些改进建议想要提供
你可以在 [Konabot Issue Pinboard](https://docs.qq.com/sheet/DVERjZ3puY3V6Z1VT?no_promotion=1&is_blank_or_template=blank&tab=BB08J2) 中提交你的 Issue。
## 我有一些功能需要私聊
请添加此方 Bot 的好友,这个操作可能需要我手动通过。

View File

@ -0,0 +1,98 @@
# 一起玩 Minecraft 吧!
MTTU 会不时开放 [Minecraft](https://minecraft.wiki/w/Minecraft_Wiki) 服务器供大家游玩!范围会涉及小游戏、生存、速通等多个方面。
## 活动
### Minecraft Bingo
使用 [Yet Another Bingo](https://modrinth.com/mod/yet-another-minecraft-bingo) 模组部署的 Minecraft Bingo 游戏。游戏玩法:玩家分成多个队伍,获得 Bingo 棋盘上的物品。最先连成行、列或对角线的队伍获胜。
![Yet Another Bingo 演示图](./imgs/bingo.png)
游戏安装详见 [腾讯文档](https://docs.qq.com/doc/DVE5qSUFvRFZ1a2Fp)。
在群聊中通过指令 `宾几人`,查询 [此方 BOT](./konabot.md) 服务器在线情况等有关信息。
### 通关Random Blocks
在 [Random Block World](https://modrinth.com/mod/randomblocks) 模组的基础上通关 Minecraft 的挑战。
![Random Blocks 演示图](./imgs/random-blocks.jpg)
#### 配置启动器
首先,先下载一个 Minecraft 启动器。[PCL2](https://pcl2.aoe.top/)、[HMCL](https://hmcl.huangyuhui.net/)、[XMCL](https://xmcl.app/zh/) 等都可以。下面以 PCL2 为例继续配置游戏。
将游戏启动器放置到一个空的文件夹里面,**不要放置在桌面**。你可以把启动器放在一个文件夹里面之后,创建一个桌面快捷方式。这个文件夹之后应该会像这样:
```
PS F:\Minecraft> Get-ChildItem -Depth 1
目录: F:\Minecraft
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2024/3/23 21:52 .minecraft
d----- 2026/3/25 23:42 PCL
-a---- 2024/3/2 9:58 3180872 Plain Craft Launcher 2.exe
```
双击打开启动器,根据指引创建一个账号。如果你没有购买 Minecraft你可以创建一个离线账号。
#### 安装游戏
我提供了方便使用的基础模组包,可以一件安装。
!!! warning "如果不想使用这个模组包..."
虽然 Random Block World 是一个服务端模组,理论上你可以使用原版 Minecraft 进入游戏,但是为了能够一起协作游戏,请最低限度安装一个 [Simple Voice Chat](https://modrinth.com/mod/simple-voice-chat) 模组。另外No Chat Report 等模组,也可以让离线玩家在服务器内正常使用聊天等功能。
在 [这个链接](https://gitea.service.jazzwhom.top/Passthem/pt-minecraft-modpack/releases) 下载最新的 `.mrpack` 文件,然后将 `.mrpack` 文件拖到启动器内。
![演示:将文件拖放到启动器上](./imgs/minecraft-install-mrpack.png)
等待游戏安装完成,然后点击**版本选择**,选择刚刚安装的游戏版本,然后启动游戏。
!!! info "关于该模组包"
打包的基础模组包包括:
- [Iris](https://modrinth.com/mod/iris) 和 [Complementary Shader](https://modrinth.com/shader/complementary-reimagined):如果你喜欢比较细致的游戏画面,可以在视觉设置中打开光影包,会有更好看的游戏画面。
- [Flashback](https://modrinth.com/mod/flashback):如果你启用了录像,你可以在之后回顾游戏流程,也可以把录像文件上传到群里,让有想法的人做一点好玩的回顾视频等。具体的录像配置,请阅读下文「配置录像模组」部分。
以及其他一些工具型等的模组,你可以在安装后查看模组列表,并配置你想要的模组。你也可以在 [代码仓库](https://gitea.service.jazzwhom.top/Passthem/pt-minecraft-modpack/src/branch/main/client) 查阅整合包中存在的模组。
#### 配置语音模组
打开游戏后,在游戏主界面点击**模组**,然后在列表中找到 Simple Voice Chat点击配置然后根据指引配置可用的扬声器和麦克风。
如果你在游戏中需要更改配置,则在游戏中按下 `V` 键。
#### 配置录像模组
!!! danger "注意力1111"
录像模组是选配的,你不一定要启用它。有可能在一些情况下,生成的录像会非常非常大,如果你不想录像,请忽略此项目。但是,如果你下载了 v1.0.0 版本的整合包,你仍然需要参考这一章节来关闭自动录像等功能。
在主菜单点击**模组**,然后在列表里找到 Flashback 并配置。
在录像控制菜单,可以设置是否自动开始录像。
在录制菜单,可以选择是否录制 SimpleVoiceChat 语音,以及其他的一些辅助信息。
如果你决定录像,我比较推荐的配置是:
- 打开自动录像(除非你记得住在每次进入游戏时,按下 `Esc` 然后手动开始录像)
- 关闭快速保存。在快速保存窗口,你可以查看保存的录像的一些信息。
- 第一人称更新为 60/秒,这可以让第一人称的录像不会看起来很假。
- 录制语音聊天设置为开。
#### 加入游戏
到时候在群内会公开游戏的地址。在游戏主菜单点击**多人游戏**,点击**添加服务器**,服务器名称可以随便写。在服务器地址一栏,粘贴游戏的地址,不要带多余空格。然后,点击完成。
在多人游戏菜单中,可以双击进入游戏。

View File

@ -17,6 +17,6 @@
## 统一的投稿活动
### 2026 元旦投稿祭
### 2026 元旦投稿祭(已坠毁)
详细请阅读群文档 `置放场素材` 文件夹内的 PDF 文件。

View File

@ -24,6 +24,7 @@ date: 2025-10-24
- ❌ 刷屏、Shitpost 等干扰正常聊天的东西
- ⚠️ 在倒垃圾之前请先阅读上下文,或许可以选择人少的时候,再倾诉自己的难过之处
- ⚠️ 建议不要发真实的、未经卡通化的青蛙、蟑螂、蜘蛛等比较容易引起一些成员不适的动物
- ⚠️ 在没有完全公开的情况下,请避免谈及真人姓名以及谐音梗
- ⚠️ 建议减少涉及以上禁止内容的谐音梗,如果知道,还请尽量避免
- ✅ 推荐分享生活、技术、艺术鉴赏或者极客探索
- ✅ 可爱的、帅气的或者神奇的吸引人的东西是被推荐的

View File

@ -1,5 +1,5 @@
serve:
watchfiles "mkdocs serve" docs mkdocs.yml
./.venv/bin/python -m watchfiles "./.venv/bin/python -m mkdocs serve" docs mkdocs.yml
build:
mkdocs build
./.venv/bin/python -m mkdocs build

View File

@ -1,17 +1,34 @@
# 元数据
site_name: MTTU 文档
site_author: passthem 和他的朋友们
site_description: 关于 MTTU 还有它的基础设施的文档
site_url: https://important-readme-please.mttu.passthem.top
repo_url: https://gitea.service.jazzwhom.top/mttu-developers/mttu-docs
repo_name: mttu-developers/mttu-docs
edit_uri: _edit/master/docs/
# 页面列表
nav:
- 主页: index.md
- 主群聊规则: rules.md
- 传送锚点:
- MTTU 雾之湖校区: links/mttu-wzh.md
- MTTU Discord 校区: links/mttu-discord.md
- MTTU Matrix 校区: links/mttu-matrix.md
- MTTU 成语接龙社: links/mttu-cyjl.md
- 小帕游戏屋 (Oopz): links/pt-oopz.md
- Ralmon 每日计数器: links/ralmon-discord.md
- 关于「传送锚点」: links/links.md
- MTTU 雾之湖校区: links/mttu-wzh.md
- MTTU Discord 校区: links/mttu-discord.md
- MTTU Matrix 校区: links/mttu-matrix.md
- MTTU 成语接龙社: links/mttu-cyjl.md
- 小帕游戏屋 (Oopz): links/pt-oopz.md
- Ralmon 每日计数器: links/ralmon-discord.md
- 蛋奶星星星球杯: links/mokie-kig.md
- モノクロ荘: links/mono-group.md
- MTTU 的活动与项目:
- 此方 Bot: projects/konabot.md
- 小帕置放场: projects/okiba.md
- 此方 Bot: projects/konabot.md
- 小帕置放场: projects/okiba.md
- Minecraft 服务器: projects/minecraft.md
- 更新日志:
- blog/index.md
# 插件与扩展
markdown_extensions:
- abbr
- admonition
@ -31,9 +48,11 @@ markdown_extensions:
- md_in_html
plugins:
- search
- blog
- git-revision-date-localized:
enable_creation_date: true
site_url: https://mttu.passthem.top
- rss
theme:
name: material
language: zh
@ -67,6 +86,3 @@ theme:
toggle:
icon: material/brightness-4
name: 切换到系统偏好模式
repo_url: https://gitea.service.jazzwhom.top/mttu-developers/mttu-docs
repo_name: mttu-developers/mttu-docs
edit_uri: _edit/master/docs/

View File

@ -8,6 +8,7 @@ dependencies = [
"mkdocs>=1.6.1",
"mkdocs-git-revision-date-localized-plugin>=1.5.0",
"mkdocs-material>=9.6.23",
"mkdocs-rss-plugin>=1.17.7",
]
[dependency-groups]

95
uv.lock generated
View File

@ -10,6 +10,7 @@ dependencies = [
{ name = "mkdocs" },
{ name = "mkdocs-git-revision-date-localized-plugin" },
{ name = "mkdocs-material" },
{ name = "mkdocs-rss-plugin" },
]
[package.dev-dependencies]
@ -22,6 +23,7 @@ requires-dist = [
{ name = "mkdocs", specifier = ">=1.6.1" },
{ name = "mkdocs-git-revision-date-localized-plugin", specifier = ">=1.5.0" },
{ name = "mkdocs-material", specifier = ">=9.6.23" },
{ name = "mkdocs-rss-plugin", specifier = ">=1.17.7" },
]
[package.metadata.requires-dev]
@ -64,6 +66,24 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/41/ff/392bff89415399a979be4a65357a41d92729ae8580a66073d8ec8d810f98/backrefs-5.9-py39-none-any.whl", hash = "sha256:f48ee18f6252b8f5777a22a00a09a85de0ca931658f1dd96d4406a34f3748c60", size = 380265, upload-time = "2025-06-22T19:34:12.405Z" },
]
[[package]]
name = "cachecontrol"
version = "0.14.4"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "msgpack" },
{ name = "requests" },
]
sdist = { url = "https://files.pythonhosted.org/packages/2d/f6/c972b32d80760fb79d6b9eeb0b3010a46b89c0b23cf6329417ff7886cd22/cachecontrol-0.14.4.tar.gz", hash = "sha256:e6220afafa4c22a47dd0badb319f84475d79108100d04e26e8542ef7d3ab05a1", size = 16150, upload-time = "2025-11-14T04:32:13.138Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/ef/79/c45f2d53efe6ada1110cf6f9fca095e4ff47a0454444aefdde6ac4789179/cachecontrol-0.14.4-py3-none-any.whl", hash = "sha256:b7ac014ff72ee199b5f8af1de29d60239954f223e948196fa3d84adaffc71d2b", size = 22247, upload-time = "2025-11-14T04:32:11.733Z" },
]
[package.optional-dependencies]
filecache = [
{ name = "filelock" },
]
[[package]]
name = "certifi"
version = "2025.10.5"
@ -151,6 +171,15 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335, upload-time = "2022-10-25T02:36:20.889Z" },
]
[[package]]
name = "filelock"
version = "3.20.0"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/58/46/0028a82567109b5ef6e4d2a1f04a583fb513e6cf9527fcdd09afd817deeb/filelock-3.20.0.tar.gz", hash = "sha256:711e943b4ec6be42e1d4e6690b48dc175c822967466bb31c0c293f34334c13f4", size = 18922, upload-time = "2025-10-08T18:03:50.056Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl", hash = "sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2", size = 16054, upload-time = "2025-10-08T18:03:48.35Z" },
]
[[package]]
name = "ghp-import"
version = "2.1.0"
@ -373,6 +402,66 @@ wheels = [
{ url = "https://files.pythonhosted.org/packages/5b/54/662a4743aa81d9582ee9339d4ffa3c8fd40a4965e033d77b9da9774d3960/mkdocs_material_extensions-1.3.1-py3-none-any.whl", hash = "sha256:adff8b62700b25cb77b53358dad940f3ef973dd6db797907c49e3c2ef3ab4e31", size = 8728, upload-time = "2023-11-22T19:09:43.465Z" },
]
[[package]]
name = "mkdocs-rss-plugin"
version = "1.17.7"
source = { registry = "https://pypi.org/simple" }
dependencies = [
{ name = "cachecontrol", extra = ["filecache"] },
{ name = "gitpython" },
{ name = "mkdocs" },
{ name = "requests" },
{ name = "tzdata", marker = "sys_platform == 'win32'" },
]
sdist = { url = "https://files.pythonhosted.org/packages/90/d3/3e5f900d616fcdaa9f436c6ea5bd6b50b995263086237c1ae5a09089f3e5/mkdocs_rss_plugin-1.17.7.tar.gz", hash = "sha256:6903f85e75ee976ae5f21eb05a54fa4d848bc246a227523945eaf6be7580c930", size = 569581, upload-time = "2025-11-14T20:29:32.964Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/ed/49/d6b35e99efac4cde91f37d9123ef073a1aa909bd11fefd730d912efd1319/mkdocs_rss_plugin-1.17.7-py3-none-any.whl", hash = "sha256:17b7b78c2c0b6418b83644b701867d5b2c48ecf069609917250b829bd4c3a718", size = 31404, upload-time = "2025-11-14T20:29:31.225Z" },
]
[[package]]
name = "msgpack"
version = "1.1.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/4d/f2/bfb55a6236ed8725a96b0aa3acbd0ec17588e6a2c3b62a93eb513ed8783f/msgpack-1.1.2.tar.gz", hash = "sha256:3b60763c1373dd60f398488069bcdc703cd08a711477b5d480eecc9f9626f47e", size = 173581, upload-time = "2025-10-08T09:15:56.596Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/ad/bd/8b0d01c756203fbab65d265859749860682ccd2a59594609aeec3a144efa/msgpack-1.1.2-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:70a0dff9d1f8da25179ffcf880e10cf1aad55fdb63cd59c9a49a1b82290062aa", size = 81939, upload-time = "2025-10-08T09:15:01.472Z" },
{ url = "https://files.pythonhosted.org/packages/34/68/ba4f155f793a74c1483d4bdef136e1023f7bcba557f0db4ef3db3c665cf1/msgpack-1.1.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:446abdd8b94b55c800ac34b102dffd2f6aa0ce643c55dfc017ad89347db3dbdb", size = 85064, upload-time = "2025-10-08T09:15:03.764Z" },
{ url = "https://files.pythonhosted.org/packages/f2/60/a064b0345fc36c4c3d2c743c82d9100c40388d77f0b48b2f04d6041dbec1/msgpack-1.1.2-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c63eea553c69ab05b6747901b97d620bb2a690633c77f23feb0c6a947a8a7b8f", size = 417131, upload-time = "2025-10-08T09:15:05.136Z" },
{ url = "https://files.pythonhosted.org/packages/65/92/a5100f7185a800a5d29f8d14041f61475b9de465ffcc0f3b9fba606e4505/msgpack-1.1.2-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:372839311ccf6bdaf39b00b61288e0557916c3729529b301c52c2d88842add42", size = 427556, upload-time = "2025-10-08T09:15:06.837Z" },
{ url = "https://files.pythonhosted.org/packages/f5/87/ffe21d1bf7d9991354ad93949286f643b2bb6ddbeab66373922b44c3b8cc/msgpack-1.1.2-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:2929af52106ca73fcb28576218476ffbb531a036c2adbcf54a3664de124303e9", size = 404920, upload-time = "2025-10-08T09:15:08.179Z" },
{ url = "https://files.pythonhosted.org/packages/ff/41/8543ed2b8604f7c0d89ce066f42007faac1eaa7d79a81555f206a5cdb889/msgpack-1.1.2-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:be52a8fc79e45b0364210eef5234a7cf8d330836d0a64dfbb878efa903d84620", size = 415013, upload-time = "2025-10-08T09:15:09.83Z" },
{ url = "https://files.pythonhosted.org/packages/41/0d/2ddfaa8b7e1cee6c490d46cb0a39742b19e2481600a7a0e96537e9c22f43/msgpack-1.1.2-cp312-cp312-win32.whl", hash = "sha256:1fff3d825d7859ac888b0fbda39a42d59193543920eda9d9bea44d958a878029", size = 65096, upload-time = "2025-10-08T09:15:11.11Z" },
{ url = "https://files.pythonhosted.org/packages/8c/ec/d431eb7941fb55a31dd6ca3404d41fbb52d99172df2e7707754488390910/msgpack-1.1.2-cp312-cp312-win_amd64.whl", hash = "sha256:1de460f0403172cff81169a30b9a92b260cb809c4cb7e2fc79ae8d0510c78b6b", size = 72708, upload-time = "2025-10-08T09:15:12.554Z" },
{ url = "https://files.pythonhosted.org/packages/c5/31/5b1a1f70eb0e87d1678e9624908f86317787b536060641d6798e3cf70ace/msgpack-1.1.2-cp312-cp312-win_arm64.whl", hash = "sha256:be5980f3ee0e6bd44f3a9e9dea01054f175b50c3e6cdb692bc9424c0bbb8bf69", size = 64119, upload-time = "2025-10-08T09:15:13.589Z" },
{ url = "https://files.pythonhosted.org/packages/6b/31/b46518ecc604d7edf3a4f94cb3bf021fc62aa301f0cb849936968164ef23/msgpack-1.1.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:4efd7b5979ccb539c221a4c4e16aac1a533efc97f3b759bb5a5ac9f6d10383bf", size = 81212, upload-time = "2025-10-08T09:15:14.552Z" },
{ url = "https://files.pythonhosted.org/packages/92/dc/c385f38f2c2433333345a82926c6bfa5ecfff3ef787201614317b58dd8be/msgpack-1.1.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:42eefe2c3e2af97ed470eec850facbe1b5ad1d6eacdbadc42ec98e7dcf68b4b7", size = 84315, upload-time = "2025-10-08T09:15:15.543Z" },
{ url = "https://files.pythonhosted.org/packages/d3/68/93180dce57f684a61a88a45ed13047558ded2be46f03acb8dec6d7c513af/msgpack-1.1.2-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1fdf7d83102bf09e7ce3357de96c59b627395352a4024f6e2458501f158bf999", size = 412721, upload-time = "2025-10-08T09:15:16.567Z" },
{ url = "https://files.pythonhosted.org/packages/5d/ba/459f18c16f2b3fc1a1ca871f72f07d70c07bf768ad0a507a698b8052ac58/msgpack-1.1.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:fac4be746328f90caa3cd4bc67e6fe36ca2bf61d5c6eb6d895b6527e3f05071e", size = 424657, upload-time = "2025-10-08T09:15:17.825Z" },
{ url = "https://files.pythonhosted.org/packages/38/f8/4398c46863b093252fe67368b44edc6c13b17f4e6b0e4929dbf0bdb13f23/msgpack-1.1.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:fffee09044073e69f2bad787071aeec727183e7580443dfeb8556cbf1978d162", size = 402668, upload-time = "2025-10-08T09:15:19.003Z" },
{ url = "https://files.pythonhosted.org/packages/28/ce/698c1eff75626e4124b4d78e21cca0b4cc90043afb80a507626ea354ab52/msgpack-1.1.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5928604de9b032bc17f5099496417f113c45bc6bc21b5c6920caf34b3c428794", size = 419040, upload-time = "2025-10-08T09:15:20.183Z" },
{ url = "https://files.pythonhosted.org/packages/67/32/f3cd1667028424fa7001d82e10ee35386eea1408b93d399b09fb0aa7875f/msgpack-1.1.2-cp313-cp313-win32.whl", hash = "sha256:a7787d353595c7c7e145e2331abf8b7ff1e6673a6b974ded96e6d4ec09f00c8c", size = 65037, upload-time = "2025-10-08T09:15:21.416Z" },
{ url = "https://files.pythonhosted.org/packages/74/07/1ed8277f8653c40ebc65985180b007879f6a836c525b3885dcc6448ae6cb/msgpack-1.1.2-cp313-cp313-win_amd64.whl", hash = "sha256:a465f0dceb8e13a487e54c07d04ae3ba131c7c5b95e2612596eafde1dccf64a9", size = 72631, upload-time = "2025-10-08T09:15:22.431Z" },
{ url = "https://files.pythonhosted.org/packages/e5/db/0314e4e2db56ebcf450f277904ffd84a7988b9e5da8d0d61ab2d057df2b6/msgpack-1.1.2-cp313-cp313-win_arm64.whl", hash = "sha256:e69b39f8c0aa5ec24b57737ebee40be647035158f14ed4b40e6f150077e21a84", size = 64118, upload-time = "2025-10-08T09:15:23.402Z" },
{ url = "https://files.pythonhosted.org/packages/22/71/201105712d0a2ff07b7873ed3c220292fb2ea5120603c00c4b634bcdafb3/msgpack-1.1.2-cp314-cp314-macosx_10_13_x86_64.whl", hash = "sha256:e23ce8d5f7aa6ea6d2a2b326b4ba46c985dbb204523759984430db7114f8aa00", size = 81127, upload-time = "2025-10-08T09:15:24.408Z" },
{ url = "https://files.pythonhosted.org/packages/1b/9f/38ff9e57a2eade7bf9dfee5eae17f39fc0e998658050279cbb14d97d36d9/msgpack-1.1.2-cp314-cp314-macosx_11_0_arm64.whl", hash = "sha256:6c15b7d74c939ebe620dd8e559384be806204d73b4f9356320632d783d1f7939", size = 84981, upload-time = "2025-10-08T09:15:25.812Z" },
{ url = "https://files.pythonhosted.org/packages/8e/a9/3536e385167b88c2cc8f4424c49e28d49a6fc35206d4a8060f136e71f94c/msgpack-1.1.2-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:99e2cb7b9031568a2a5c73aa077180f93dd2e95b4f8d3b8e14a73ae94a9e667e", size = 411885, upload-time = "2025-10-08T09:15:27.22Z" },
{ url = "https://files.pythonhosted.org/packages/2f/40/dc34d1a8d5f1e51fc64640b62b191684da52ca469da9cd74e84936ffa4a6/msgpack-1.1.2-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:180759d89a057eab503cf62eeec0aa61c4ea1200dee709f3a8e9397dbb3b6931", size = 419658, upload-time = "2025-10-08T09:15:28.4Z" },
{ url = "https://files.pythonhosted.org/packages/3b/ef/2b92e286366500a09a67e03496ee8b8ba00562797a52f3c117aa2b29514b/msgpack-1.1.2-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:04fb995247a6e83830b62f0b07bf36540c213f6eac8e851166d8d86d83cbd014", size = 403290, upload-time = "2025-10-08T09:15:29.764Z" },
{ url = "https://files.pythonhosted.org/packages/78/90/e0ea7990abea5764e4655b8177aa7c63cdfa89945b6e7641055800f6c16b/msgpack-1.1.2-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:8e22ab046fa7ede9e36eeb4cfad44d46450f37bb05d5ec482b02868f451c95e2", size = 415234, upload-time = "2025-10-08T09:15:31.022Z" },
{ url = "https://files.pythonhosted.org/packages/72/4e/9390aed5db983a2310818cd7d3ec0aecad45e1f7007e0cda79c79507bb0d/msgpack-1.1.2-cp314-cp314-win32.whl", hash = "sha256:80a0ff7d4abf5fecb995fcf235d4064b9a9a8a40a3ab80999e6ac1e30b702717", size = 66391, upload-time = "2025-10-08T09:15:32.265Z" },
{ url = "https://files.pythonhosted.org/packages/6e/f1/abd09c2ae91228c5f3998dbd7f41353def9eac64253de3c8105efa2082f7/msgpack-1.1.2-cp314-cp314-win_amd64.whl", hash = "sha256:9ade919fac6a3e7260b7f64cea89df6bec59104987cbea34d34a2fa15d74310b", size = 73787, upload-time = "2025-10-08T09:15:33.219Z" },
{ url = "https://files.pythonhosted.org/packages/6a/b0/9d9f667ab48b16ad4115c1935d94023b82b3198064cb84a123e97f7466c1/msgpack-1.1.2-cp314-cp314-win_arm64.whl", hash = "sha256:59415c6076b1e30e563eb732e23b994a61c159cec44deaf584e5cc1dd662f2af", size = 66453, upload-time = "2025-10-08T09:15:34.225Z" },
{ url = "https://files.pythonhosted.org/packages/16/67/93f80545eb1792b61a217fa7f06d5e5cb9e0055bed867f43e2b8e012e137/msgpack-1.1.2-cp314-cp314t-macosx_10_13_x86_64.whl", hash = "sha256:897c478140877e5307760b0ea66e0932738879e7aa68144d9b78ea4c8302a84a", size = 85264, upload-time = "2025-10-08T09:15:35.61Z" },
{ url = "https://files.pythonhosted.org/packages/87/1c/33c8a24959cf193966ef11a6f6a2995a65eb066bd681fd085afd519a57ce/msgpack-1.1.2-cp314-cp314t-macosx_11_0_arm64.whl", hash = "sha256:a668204fa43e6d02f89dbe79a30b0d67238d9ec4c5bd8a940fc3a004a47b721b", size = 89076, upload-time = "2025-10-08T09:15:36.619Z" },
{ url = "https://files.pythonhosted.org/packages/fc/6b/62e85ff7193663fbea5c0254ef32f0c77134b4059f8da89b958beb7696f3/msgpack-1.1.2-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:5559d03930d3aa0f3aacb4c42c776af1a2ace2611871c84a75afe436695e6245", size = 435242, upload-time = "2025-10-08T09:15:37.647Z" },
{ url = "https://files.pythonhosted.org/packages/c1/47/5c74ecb4cc277cf09f64e913947871682ffa82b3b93c8dad68083112f412/msgpack-1.1.2-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:70c5a7a9fea7f036b716191c29047374c10721c389c21e9ffafad04df8c52c90", size = 432509, upload-time = "2025-10-08T09:15:38.794Z" },
{ url = "https://files.pythonhosted.org/packages/24/a4/e98ccdb56dc4e98c929a3f150de1799831c0a800583cde9fa022fa90602d/msgpack-1.1.2-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:f2cb069d8b981abc72b41aea1c580ce92d57c673ec61af4c500153a626cb9e20", size = 415957, upload-time = "2025-10-08T09:15:40.238Z" },
{ url = "https://files.pythonhosted.org/packages/da/28/6951f7fb67bc0a4e184a6b38ab71a92d9ba58080b27a77d3e2fb0be5998f/msgpack-1.1.2-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:d62ce1f483f355f61adb5433ebfd8868c5f078d1a52d042b0a998682b4fa8c27", size = 422910, upload-time = "2025-10-08T09:15:41.505Z" },
{ url = "https://files.pythonhosted.org/packages/f0/03/42106dcded51f0a0b5284d3ce30a671e7bd3f7318d122b2ead66ad289fed/msgpack-1.1.2-cp314-cp314t-win32.whl", hash = "sha256:1d1418482b1ee984625d88aa9585db570180c286d942da463533b238b98b812b", size = 75197, upload-time = "2025-10-08T09:15:42.954Z" },
{ url = "https://files.pythonhosted.org/packages/15/86/d0071e94987f8db59d4eeb386ddc64d0bb9b10820a8d82bcd3e53eeb2da6/msgpack-1.1.2-cp314-cp314t-win_amd64.whl", hash = "sha256:5a46bf7e831d09470ad92dff02b8b1ac92175ca36b087f904a0519857c6be3ff", size = 85772, upload-time = "2025-10-08T09:15:43.954Z" },
{ url = "https://files.pythonhosted.org/packages/81/f2/08ace4142eb281c12701fc3b93a10795e4d4dc7f753911d836675050f886/msgpack-1.1.2-cp314-cp314t-win_arm64.whl", hash = "sha256:d99ef64f349d5ec3293688e91486c5fdb925ed03807f64d98d205d2713c60b46", size = 70868, upload-time = "2025-10-08T09:15:44.959Z" },
]
[[package]]
name = "packaging"
version = "25.0"
@ -554,11 +643,11 @@ wheels = [
[[package]]
name = "tzdata"
version = "2025.2"
version = "2024.2"
source = { registry = "https://pypi.org/simple" }
sdist = { url = "https://files.pythonhosted.org/packages/95/32/1a225d6164441be760d75c2c42e2780dc0873fe382da3e98a2e1e48361e5/tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9", size = 196380, upload-time = "2025-03-23T13:54:43.652Z" }
sdist = { url = "https://files.pythonhosted.org/packages/e1/34/943888654477a574a86a98e9896bae89c7aa15078ec29f490fef2f1e5384/tzdata-2024.2.tar.gz", hash = "sha256:7d85cc416e9382e69095b7bdf4afd9e3880418a2413feec7069d533d6b4e31cc", size = 193282, upload-time = "2024-09-23T18:56:46.89Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/5c/23/c7abc0ca0a1526a0774eca151daeb8de62ec457e77262b66b359c3c7679e/tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8", size = 347839, upload-time = "2025-03-23T13:54:41.845Z" },
{ url = "https://files.pythonhosted.org/packages/a6/ab/7e5f53c3b9d14972843a647d8d7a853969a58aecc7559cb3267302c94774/tzdata-2024.2-py2.py3-none-any.whl", hash = "sha256:a48093786cdcde33cad18c2555e8532f34422074448fbc874186f0abd79565cd", size = 346586, upload-time = "2024-09-23T18:56:45.478Z" },
]
[[package]]