@alessandrolattao/sst

中文文档
4.17.2-alessandrolattao.36发布于 2026/10/21MITTypeScriptES Module构建来源已验证近 30 天下载 9643

SST CLI 叉并列 去修建管道

中文使用文档
文档目录8 节
  1. 有什么不一样
  2. 付出的代价
  3. 安装
  4. 启动新项目
  5. 与上游的关系
  6. 上游文档
  7. 本地运行
  8. 许可证
  ░██████     ░██████   ░██████████
 ░██   ░██   ░██   ░██      ░██    
░██         ░██             ░██    
 ░████████   ░████████      ░██    
        ░██         ░██     ░██    
 ░██   ░██   ░██   ░██      ░██    
  ░██████     ░██████       ░██    

亚历山德罗·拉塔奥版本
非正式叉子 标准 并行建设、工作重建、部署跳过未改变之处

npm fork of sst/sst MIT


个人叉子 标准 也就是说 Go projects 更快地建立,并在 dev 模式下行为正常.

SST所做的一切,它仍然做。 变化完全存在于Go运行时和dev重建回路中,它们对于一个有众多处理器的单曲来说最为重要:这个分叉是针对一个使用 438 Go Lambda 职能。 。 。 .

有什么不一样

  • 去建设平行运行. Go跑步时间在整座建筑周围有一个独家锁,所以无论有多少核心可用,它一次编译了一个功能. 锁现在只负责自己的账务.

  • SST_BUILD_CONCURRENCY_FUNCTION 为吴工作. 所记录的旋钮只针对节点和Python被执行,而对于Go处理器则默而忽略. 它现在盖了去建, 默认4.

  • 重建遵循实际进口. 在 Dev 中, SST 决定从目录中重建什么, 更改的文件会坐落其中 。 它现在使用处理器的实际导入图,所以编辑一个共享的软件包可以重建每一个导入它的功能,而别无其他功能.

  • 无效的处理器一起重建 . 一旦重建范围跟随进口,一个保存可以使数百名处理者无效. 它们过去是逐一被重新编译的;现在它们被同时编译,在一个限度下.

  • 部署停止一次重编一个处理器 . 每次部署都会放下 Dev 构建缓存,每个工人然后重启并编译它不再在那里找到的任何东西,一个接一个地在事件循环上. 在舞台上 18个Go处理器在dev, 也就是50秒的墙钟, 对于源没有改变。 同一套程序现在通过上面同时进行的重建,当有东西引用时,其运行时间开始懒散的处理者被留作编译.

  • 编辑一个共享软件包不再重新部署每个函数 . 给每个二进制, 加上每个源文件的散列, 在数百名操作员导入的软件包中触摸一个文件,每个文物都得到新的散列,所以部署上传所有文件并更新每个函数,用于代码与已经部署的字节一致的程序. 部署现在与 -buildid=,因此两个构件在程序不同时不同,在程序不同时不同。 放弃的是 NT_GNU_BUILD_ID,哪个 -s -w 已经让这里变得毫无用处了.

  • 部署人员不再支付虔诚工作的费用. 导入图只被 dev 文件监视器读取过,但每次建设后都被捕获,大约是每次部署建设成本的一倍. 现在它只被捕获在德夫.

  • 每个 去建筑说花了多久. 一个部署在数分钟后请求构建和函数资源翻出之间没有打印出任何内容,所以单个处理器的编译时间只能通过读取调试日志来显示. 每个完成的构建现在打印 a Built 线条及其处理器和秒,形状与 Created编号 :Updated 已持续时间的行。 它骑在SST的UI打印的单项事件上,所以这保持了对Go运行时间的更改:没有新事件类型,打印机上没有增加大小写,没有上游合并到上地.

  • 一个大型的部署 停止淹没终端. 部署页脚列出飞行中的每一个资源,每100ms重新绘制位置,将光标移回第一行. 由于飞行中的资源比终端有行多,光标会停留在上行,所以每次重划都会在回滚中再次留下整个列表:相同 Creating 数以万计的行。 现在的页脚只显示适合的行,状态行仍为后一. 其所言及何时而不变.

  • 所出州为相半. SST运行Pulumi来对抗其本地的DIY后端,它将全州在每一个资源被改变后都重置为缩进的JSON,而SST在部署时将同一份文件上传到州桶. 普鲁米自3.238起就已经写出收缩的"克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克 Pulumi's Node.js SDK 现在需要Node.js 22或以后.

  • 更细修. 解决 GOMODCACHE 可以用Ctrl -C取代寿命, go list 输出通过明确的JSON标记来解码,一个无法解码的等值警告并保持默认,而不是悄悄地倒回序列构建.

付出的代价

在438手的单列车上测量的 这是用来,在无动于衷的部署:

在此之前之后
构建货币1 (峰值2) (中文(简体) )上限
每个手提箱的构建~1.4s,其中一半是纯正图捕捉~0.6s 时

在一个确实改变了某些东西的部署上:一个文件在共享处理器框架中编辑,其中434个模块导入。 此前,所有434个被再次上传,并更新了它们的函数. 之后,只有链接程序实际改变的处理器,对于那个编辑器来说是一个.

安装

npm install @alessandrolattao/sst
# bun add @alessandrolattao/sst

为Linux(x64和arm64)和macOS(Apple硅和英特尔)所建. 二进制仍然叫 sst这样 bunx sst, (中文(简体) ), npx sst 而每个现有的脚本都保持不变.

版本作为预发版出版(4.17.1-alessandrolattao.1这表示它们必须被明确钉住 永远不会被一个 ^4 范围意外。 狦 sst.config.ts 声明a version 因为SST用 Masterminds/semver 来检查平地 >= 从不匹配预释 :

version: ">= 4.13.1-0",

启动新项目

sst init 写入 sst.config.ts 无论它在水流中发现什么 目录,所以首先安装 CLI 并让它生成配置 :

mkdir my-app && cd my-app
npm init -y
npm install @alessandrolattao/[email protected]
npx sst init

然后打开生成的 sst.config.ts 并增加释放前地板 app() 返回, 否则 CLI 拒绝违背自己的配置 :

export default $config({
  app(input) {
    return {
      name: "my-app",
      version: ">= 4.13.1-0",
      home: "aws",
    };
  },
  async run() {},
});

从这里,一切都是上游SST: npx sst deploy --stage dev, (中文(简体) ), npx sst dev,则 正在获取开始的引导 适用不变.

与上游的关系

这个叉道 sst/sst 并自动与它同步:每天的工作将补丁重新放入每一个新的上游版本,核实结果的构建和通过,并发布匹配的构建. 当冲突再起时,它停止并打开一个问题,而不是发表没有人读过的东西。 分支 :

  • dev - 上游的一面明镜,从未直接承诺
  • feat/… ——每变一分行,以 dev,每个自成一体的, 足以送上游
  • alessandrolattao ——实际建设和公布的内容:上游加补丁加叉自取名

已出版的套件被更名,这样它就可以坐在真人旁边而无需声称自己的名字. 其他一切,包括 SST_BIN_PATH 逃出舱门,行为与上游完全相同.

上游文档

叉子不会改变你与人互动的行为,所以上游的道克是适用的:

本地运行

运行 bun run setup您需要吗 走开 财务报告和审定财务报表 阿宝 已安装.

cd examples/aws-api
go run ../../cmd/sst <command>

尝试用这个叉子对一个真正的项目 而不发表任何东西,指点 SST_BIN_PATH 写着:

go build -o /tmp/sst ./cmd/sst
SST_BIN_PATH=/tmp/sst bunx sst deploy --stage dev

许可证

麻省理工学院 和上游大学一样 见 自由主义,它保留了原始的SST版权.

版本与发布记录

@alessandrolattao/sst 共发布 14 个版本,首次发布于 2026/08/25;过去 12 个月发布了 14 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
4.17.2-alessandrolattao.36latest2026/10/2117 天前
4.17.2-alessandrolattao.332026/10/1128 天前
4.17.1-alessandrolattao.322026/10/021 个月前
4.17.1-alessandrolattao.302026/10/011 个月前
4.17.1-alessandrolattao.292026/09/161 个月前
4.17.1-alessandrolattao.282026/09/161 个月前

关于 @alessandrolattao/sst 的常见问题

@alessandrolattao/sst 是什么?

SST CLI 叉并列 去修建管道

如何安装 @alessandrolattao/sst?

在项目目录运行 npm install @alessandrolattao/sst,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 sst,可以用 npx sst 直接运行。

@alessandrolattao/sst 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@alessandrolattao/sst 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@alessandrolattao/sst 可以商用吗?

@alessandrolattao/sst 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@alessandrolattao/sst 的下载量有多少?

根据 npm 官方下载统计,@alessandrolattao/sst 在 2026/10/06 – 2026/11/04 这 30 天内被下载 9,643 次,日均约 321 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@alessandrolattao/sst 还在维护吗?

最新版本 4.17.2-alessandrolattao.36 发布于 2026/10/21(17 天前);至今共发布 14 个版本,其中过去 12 个月发布了 14 个;首次发布于 2026/08/25。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。