本文内容已失效
本文所述的「全面转向 Go 语言重构」计划已终止。Go 版本因代码质量问题不再作为主力维护方向,主力维护已回到 Shell 版本。
请参阅 《为什么 Go 版本憋不出来?》 了解完整的技术决策说明。
致 PVE-Tools-9 用户:关于项目重构、开源边界与未来的几句心里话
大家好,我是 PVE-Tools-9 的作者。
最近在交流群里发生了一些不愉快的小插曲,加上项目本身确实遇到了严重的开发瓶颈,我想借此机会和大家聊聊这个项目的现状和未来。
一、 关于开源的边界与相互尊重
PVE-Tools-9 最初只是为了方便我个人使用而写的脚本,开源出来是希望大家能共同受益。项目完全免费,半年来我一直利用自己的业余时间"用爱发电"。
随着用户群体的快速扩大,随之而来的是问题反馈质量的断崖式下跌。在长期的维护过程中,低质量的反馈让我感到了极大的疲惫。
例如:在 GitHub 提交反馈时故意不填 Issue 模板、不按要求提供环境日志。
甚至是在明确定位为闲聊与通知的 QQ 群中,无视脚本界面极度醒目的"必须在外部 SSH 环境运行"警告,上来就贴一张无任何有效信息的截图,并用颐指气使的语气指责功能失效。
长期的垃圾 Issue 堆积,加上现实生活中的琐事,让我很难再保持最初的热情。
开源是互助,而不是免费的专属客服。
对于缺乏基本尊重、无视文档且以"甲方"姿态居高临下的用户,我保留拒绝提供任何帮助和直接拉黑的权利。
二、 技术瓶颈:为什么 Shell 版本要停更?
撇开上述情绪上的插曲不谈,项目停更最核心、最理性的原因在于:技术负债太重了。
目前的单文件 Shell 脚本已经膨胀到了 13000 多行。
在 Shell 这种缺乏严格数据结构和模块化的语言里,维护如此庞大的代码体量,已经演变成了一场灾难。
每次修补 Bug 都有可能引发不可预知的连锁反应。(包括 AI Coding 的时候会堆满上下文)
为了项目能长远、健康地发展,必须壮士断腕。
因此,我决定停止当前 Shell 版本的新功能开发,后续仅做极其重大的致命 Bug 修复。 该仓库将保持原样,不会删库,大家依然可以正常使用现有功能。
三、 未来的计划:全面拥抱 Go 语言
当前的 Shell 版本将正式进入归档维护状态。
我接下来的精力将全面投入到基于 Go 语言 的全新版本重构中。
新版本将带来更好的稳定性、更友好的交互以及更严谨的环境校验。
这也将更有利于整个社区生态的健康维护。
四、 最后的重申
- QQ 群仅供闲聊与发布通知。 请勿在群内直接甩图丢句"不能用"。
- 任何 Bug 反馈请务必提交到 GitHub Issue,且必须严格按照模板填写。只有在那里,问题才能被有效追踪和处理。
感谢那些一直以来认真提 PR、规范提交 Issue、甚至在群里默默帮新手解答的优秀用户,是你们让这个项目撑到了今天。
我们 Go 版本见!