You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让已过时的软件包重新纳入未来的Stack LTS快照?

将过时软件包重新纳入Stack LTS快照的标准流程

当然有标准流程啦,下面一步步给你理清楚:

  • 先确认软件包的适配性与可维护性
    LTS快照核心是稳定,所以首先得确保你的包不是真的“被淘汰”,只是版本没跟上。先把包更新到能兼容目标LTS对应的GHC版本,调整cabal文件里的依赖约束,保证它能和当前LTS里的其他包和平共处。另外,得确认包本身没有未修复的严重bug,维护状态也还ok——毕竟没人愿意把一个没人管的包放进稳定快照里。

  • 提交PR到Stackage的curator仓库
    Stackage的包收录规则都在stackage-curator仓库里。找到你想加入的目标LTS系列对应的配置文件(比如lts-21.x相关的),把你的包添加到允许列表,或者更新它的版本限制。提交PR的时候一定要写清楚理由:比如这个包是某个生态里的刚需,你已经验证过它能在目标LTS环境下正常构建,或者它的更新解决了之前的兼容性问题。

  • 过审自动化测试与人工审核
    PR提交后,Stackage的CI会自动跑一遍构建测试,检查你的包能不能在目标LTS的环境里顺利编译、通过测试用例。要是测试失败,你得根据日志排查问题——可能是依赖没调好,也可能是包本身的代码需要适配新的GHC版本。等测试通过后,Stackage的维护团队会人工审核你的PR,评估这个包的价值、稳定性,以及会不会给整个LTS快照带来依赖冲突之类的问题。

  • 等待下一次LTS快照更新
    如果PR被合并,你的包就会被纳入下一轮的LTS快照更新。LTS一般几周更一次,所以等着新版本发布就行啦。

另外提个小提醒:如果你的包之前是因为依赖冲突被排除的,可能得先和冲突的依赖包维护者沟通,调整版本兼容,或者在PR里给出充分的理由,说服维护者添加例外规则——这种情况得把兼容性问题讲得明明白白才行。

内容的提问来源于stack exchange,提问作者Damian Nadales

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 07:00:15