





















技术圈又出大瓜!MkDocs这个被9万多个项目使用的文档工具,最近上演了一场现实版"宫斗剧"。前维护者单方面夺取PyPI控制权,原作者愤怒回应,最终项目分裂成四个分支。这背后暴露了开源项目治理的哪些问题?
MkDocs是一个用Python编写的静态站点生成器,专门用于创建项目文档。自2014年发布以来,已成为Python生态系统中文档生成的重要工具,被超过90,000个GitHub项目使用。
你可能不知道的是,Material for MkDocs这个主题的GitHub星标数(超过85,000)甚至超过了MkDocs本身(约17,000),成为MkDocs生态中最受欢迎的部分。

2021年5月16日:@oprypin在GitHub发布长文《Concerns about maintainership of MkDocs》,指责当时的主要维护者"守门"行为,阻碍项目发展。
2021年6月-2022年6月:@oprypin获得项目维护权限,开始积极推动MkDocs开发。期间请求并获得PyPI项目的维护者权限。
2024年2月-3月:@oprypin与@squidfunk在GitHub公开争吵历史恩怨。@oprypin单方面将@squidfunk从MkDocs组织移除。
2024年4月6日:@oprypin宣布退出MkDocs维护,称维护工作"非常孤独"。
2024年4月-2025年7月:MkDocs开发基本停滞,PR和Issue积压。
2025年7月17日:插件作者公开询问项目是否已被放弃,指出bug修复PR数月无人审查。
2026年1月-2月:@lovelydinosaur公布MkDocs 2.0计划,但设计方向(移除插件系统)与社区期望严重不符。
2026年3月9日:@oprypin使用其仍保留的PyPI权限,移除包括@lovelydinosaur在内的所有其他维护者,单方面控制MkDocs的PyPI发布。
他在ProperDocs组织的讨论中宣布此举,称是为了防止MkDocs 2.0静默升级破坏用户项目。
@lovelydinosaur的愤怒回应:
"What the actual fuck? I'm the author and license holder. Now please revert the PyPI changes and fuck off."
2026年3月10日:@oprypin公开道歉并退让:
"I am backing off completely here. I'm sorry. 项目的延续需要基于同意而非分歧。"
当前分裂状态:
@oprypin的立场:
"这是防止不想要的MkDocs 2.0升级破坏用户项目的最后手段。静默的v2发布会影响运行
pip install mkdocs的用户,并意外破坏他们的项目。"
@lovelydinosaur的立场:
"搞什么鬼?我是作者和许可证持有者。现在请撤销PyPI更改并滚开。"
社区观点分歧:
@lovelydinosaur计划移除插件系统,这与现有生态完全断裂。
Material for MkDocs团队指出:
"在Material for MkDocs之前,MkDocs只是个玩具。v2的公告和代码表明MkDocs正在回到原点——再次成为一个玩具。"
技术分析显示v2将:
暴露的核心问题:
事件在Hacker News上获得超过800个赞和200+评论,成为当日热门话题。
代表性评论:
| 项目 | 当前状态 | 用户基础 |
|---|---|---|
| MkDocs | 声誉受损,v2方向争议 | 考虑替代方案 |
| ProperDocs | 获得对v2不满的用户 | 稳定增长 |
| Zensical | 受益于Material用户基础 | 快速增长 |
| MaterialX | 填补维护模式留下的空间 | 观望中 |
事件引发了技术社区对开源项目治理的广泛讨论:
MkDocs宫斗事件再次证明:开源项目不仅仅是代码,更是人、社区和治理的结合体。
当技术决策与社区治理发生冲突时,缺乏明确的规则和流程会导致灾难性后果。这次事件给所有开源项目维护者敲响了警钟:
对于普通开发者来说,这次事件也提醒我们:在选择技术栈时,不仅要看代码质量,还要看项目治理的健康度。
参考资料:
本文基于公开资料整理,力求客观呈现事件全貌。技术圈"吃瓜"也要吃得明白!
关注我,了解更多技术圈内幕和深度分析!
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。