@lark-apaas/fullstack-cli 1.1.71-alpha.20261102142155 → 1.1.71-alpha.20261103032130
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -8
- package/dist/index.js +742 -357
- package/package.json +2 -1
- package/templates/helper/gen-openapi.ts +34 -0
- package/templates/scripts/build.sh +37 -2
package/README.md
CHANGED
|
@@ -1,18 +1,15 @@
|
|
|
1
1
|
# @lark-apaas/fullstack-cli
|
|
2
2
|
|
|
3
|
-
> Fullstack 开发工具集 - 文件派生、数据库 Schema 生成、能力管理、构建工具
|
|
4
|
-
|
|
5
|
-
OpenAPI/客户端 SDK 自动生成已停用:`sync` 不再派生 `scripts/gen-openapi.ts`,构建模板不再执行 `npm run gen:openapi`。已有应用的自定义生成脚本不会被删除;旧 `--disable-gen-openapi` 参数继续接受,但不再控制任何生成行为。下文涉及该生成链路的旧示例仅作历史说明,不适用于当前版本。构建模板同时跳过 API/页面路由定义生成,省去缺少本地命令时 npx 联网查包失败的等待。数据库 Schema 和 Action 插件仍按原流程处理。
|
|
6
|
-
|
|
7
|
-
对于已存在且匹配平台旧模板(自动生成标记及 `DevToolsV2Module` 导入)的 `scripts/gen-openapi.ts`,同步会将其迁移为空操作兼容入口,避免残留 import 仍被 TypeScript 编译而报错。不存在该文件时不会创建;用户自定义文件保持原样。
|
|
3
|
+
> Fullstack 开发工具集 - 文件派生、数据库 Schema 生成、OpenAPI 生成、能力管理、构建工具
|
|
8
4
|
|
|
9
5
|
## 功能
|
|
10
6
|
|
|
11
7
|
1. **自动派生** - 自动管理项目脚本和配置文件
|
|
12
8
|
2. **数据库 Schema 生成** - 从现有数据库生成 Drizzle ORM schema
|
|
13
|
-
3. **
|
|
14
|
-
4.
|
|
15
|
-
5.
|
|
9
|
+
3. **OpenAPI 生成** - 自动生成 API 文档和客户端 SDK
|
|
10
|
+
4. **Action 插件管理** - 安装、更新、删除 action 插件
|
|
11
|
+
5. **能力配置管理** - 查看、充血、迁移能力配置
|
|
12
|
+
6. **构建工具** - 获取 STI 制品上传凭证等构建相关操作
|
|
16
13
|
|
|
17
14
|
## 安装
|
|
18
15
|
|
|
@@ -22,6 +19,16 @@ npm install --save-dev @lark-apaas/fullstack-cli
|
|
|
22
19
|
|
|
23
20
|
## 使用
|
|
24
21
|
|
|
22
|
+
### DataPaaS SDK 与 Drizzle 同步升级
|
|
23
|
+
|
|
24
|
+
`fullstack-cli upgrade deps` 升级 NestJS/Express DataPaaS SDK 时,会先读取目标 SDK 已发布的 `peerDependencies.drizzle-orm`,同步迁移应用的精确 Drizzle 依赖。默认升级、`--version` 和灰度目标均使用各自 SDK 的契约;升级到旧 SDK 时不会强制安装 `0.45.2`。
|
|
25
|
+
|
|
26
|
+
迁移先备份应用的 `package.json`、`package-lock.json` 和 `node_modules`,仅重解受影响 SDK/Drizzle 的锁记录,再执行原生 `npm ci`。所有 npm 命令保留应用原目录及 `.npmrc`;不使用 `--force` 或 `--legacy-peer-deps`。原来放在 `devDependencies` 中的 Drizzle 保留原位置,缺少声明时添加到 `dependencies`。安装失败会恢复这三个备份;生命周期脚本对项目外部的副作用不在恢复范围内。
|
|
27
|
+
|
|
28
|
+
`--dry-run` 只读取元数据和展示计划。灰度目标 SDK 已安装但 Drizzle 声明或锁记录仍旧时也会修复;两者一致时不重复安装。`--packages` 排除的根 SDK 如果与新 peer 冲突,会在修改文件前报错,提示一起升级相关 SDK。无法解析契约、非精确 peer、npm shrinkwrap 或不支持的锁文件格式也会在迁移前停止。
|
|
29
|
+
|
|
30
|
+
在仓库中运行真实 npm 安装回归:`yarn workspace @lark-apaas/fullstack-cli test:peer-migration`。该测试启动临时本地 registry,覆盖旧应用升级、回滚到旧 SDK、灰度 peer 修复、锁文件重装及失败恢复,不访问生产 registry。
|
|
31
|
+
|
|
25
32
|
### 1. 自动派生
|
|
26
33
|
|
|
27
34
|
每次运行 `npm install` 时,会自动派生文件到项目:
|