@liuli-util/cli 3.14.0 → 3.17.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (64) hide show
  1. package/CHANGELOG.md +100 -80
  2. package/LICENSE +21 -0
  3. package/dist/bin.js +96 -77
  4. package/dist/bin.js.map +3 -3
  5. package/dist/commands/deploy/DeployService.d.ts +52 -0
  6. package/dist/commands/deploy/DeployService.d.ts.map +1 -0
  7. package/dist/commands/deploy/deploy.d.ts +3 -0
  8. package/dist/commands/deploy/deploy.d.ts.map +1 -0
  9. package/dist/commands/deploy/index.d.ts +3 -0
  10. package/dist/commands/deploy/index.d.ts.map +1 -0
  11. package/dist/commands/deploy/util/FileLock.d.ts +14 -0
  12. package/dist/commands/deploy/util/FileLock.d.ts.map +1 -0
  13. package/dist/commands/deploy/util/PromiseUtil.d.ts +14 -0
  14. package/dist/commands/deploy/util/PromiseUtil.d.ts.map +1 -0
  15. package/dist/commands/deploy/util/createArchive.d.ts +10 -0
  16. package/dist/commands/deploy/util/createArchive.d.ts.map +1 -0
  17. package/dist/commands/deploy/util/execPromise.d.ts +4 -0
  18. package/dist/commands/deploy/util/execPromise.d.ts.map +1 -0
  19. package/dist/commands/deploy/util/wait.d.ts +9 -0
  20. package/dist/commands/deploy/util/wait.d.ts.map +1 -0
  21. package/dist/commands/esbuild/ESBuildProgram.d.ts.map +1 -1
  22. package/dist/commands/generate/GenerateProgram.d.ts.map +1 -1
  23. package/dist/commands/sync/SyncProgram.d.ts.map +1 -1
  24. package/dist/index.esm.js +1 -1
  25. package/dist/index.esm.js.map +2 -2
  26. package/dist/index.js +2 -2
  27. package/dist/index.js.map +2 -2
  28. package/dist/utils/nodeCacheDir.d.ts +2 -0
  29. package/dist/utils/nodeCacheDir.d.ts.map +1 -0
  30. package/package.json +73 -66
  31. package/src/bin.ts +3 -2
  32. package/src/commands/deploy/DeployService.ts +174 -0
  33. package/src/commands/deploy/__tests__/DeployService.test.ts +75 -0
  34. package/src/commands/deploy/__tests__/FileLock.test.ts +27 -0
  35. package/src/commands/deploy/__tests__/conf.test.ts +29 -0
  36. package/src/commands/deploy/__tests__/simpleGit.test.ts +34 -0
  37. package/src/commands/deploy/__tests__/util/deployGhPageWorker.ts +16 -0
  38. package/src/commands/deploy/deploy.ts +48 -0
  39. package/src/commands/deploy/index.ts +8 -0
  40. package/src/commands/deploy/util/FileLock.ts +31 -0
  41. package/src/commands/deploy/util/PromiseUtil.ts +34 -0
  42. package/src/commands/deploy/util/createArchive.ts +30 -0
  43. package/src/commands/deploy/util/execPromise.ts +13 -0
  44. package/src/commands/deploy/util/wait.ts +23 -0
  45. package/src/commands/esbuild/ESBuildProgram.ts +1 -1
  46. package/src/commands/esbuild/__tests__/.temp/getDeps/package.json +1 -0
  47. package/src/commands/generate/__tests__/.temp/test-cli/CHANGELOG.md +1 -0
  48. package/src/commands/generate/__tests__/.temp/test-cli/README.md +1 -0
  49. package/src/commands/generate/__tests__/.temp/test-cli/bin.js +3 -0
  50. package/src/commands/generate/__tests__/.temp/test-cli/package.json +44 -0
  51. package/src/commands/generate/__tests__/.temp/test-cli/src/bin.ts +13 -0
  52. package/src/commands/generate/__tests__/.temp/test-cli/src/index.ts +1 -0
  53. package/src/commands/generate/__tests__/.temp/test-cli/tsconfig.json +28 -0
  54. package/src/commands/sync/SyncProgram.ts +15 -41
  55. package/src/commands/sync/__tests__/SyncProgram.test.ts +13 -1
  56. package/src/utils/__tests__/nodeCacheDir.test.ts +6 -0
  57. package/src/utils/nodeCacheDir.ts +54 -0
  58. package/templates/cli/package.json +4 -10
  59. package/templates/cli/tsconfig.json +28 -28
  60. package/templates/lib/package.json +2 -8
  61. package/templates/lib/tsconfig.json +28 -28
  62. package/tsconfig.json +34 -34
  63. package/src/commands/sync/__tests__/.temp/lerna.json +0 -6
  64. package/src/commands/sync/__tests__/.temp/package.json +0 -58
package/CHANGELOG.md CHANGED
@@ -1,47 +1,67 @@
1
- # CHANGELOG
2
-
3
- ## 3.14.0
4
-
5
- <!--hash:640b9c257c2276edfe262e2cbfd1c11bab6fb27b-->
6
-
7
- - feat: 构建 iife 时强制包含所有依赖
8
-
9
- ## 3.13.1
10
-
11
- <!--hash:0f666fdbeee514f614a61b5257c4aa9a6cfd3143-->
12
-
13
- - fix: 修复 generate 不能选择模板的问题
14
-
1
+ # CHANGELOG
2
+
3
+ ## 3.17.0
4
+
5
+ - feat: 不再处理并发发布的问题
6
+
7
+ ## 3.16.0
8
+
9
+ - feat: 不再处理并发部署 gh-pages 的问题
10
+ - feat: 实现一个根据配置文件决定是否需要等待的 gh-pages 部署(实测会有并发问题)
11
+ - feat: 实现部署项目到 gh-pages 远端
12
+ - feat: 实现发布到 sftp 远端
13
+
14
+ ## 3.15.0
15
+
16
+ <!--hash:5402013d664173283c30e818a63d427fa55edf73-->
17
+
18
+ - feat: 同步命令支持同步 jest 依赖
19
+ - chore: 更新模板,删除不需要的文档相关的命令
20
+ - chore: 将所有的 liuli-cli 的依赖强制指向本地
21
+ - fix: 修复 monorepo 中使用 cli 会复制 node_modules 的错误
22
+
23
+ ## 3.14.0
24
+
25
+ <!--hash:640b9c257c2276edfe262e2cbfd1c11bab6fb27b-->
26
+
27
+ - feat: 构建 iife 时强制包含所有依赖
28
+
29
+ ## 3.13.1
30
+
31
+ <!--hash:0f666fdbeee514f614a61b5257c4aa9a6cfd3143-->
32
+
33
+ - fix: 修复 generate 不能选择模板的问题
34
+
15
35
  ## 3.13.0
16
-
17
- <!--hash:615c6f1f69083a4cf7b0760ee6a81c68c2cf6e85-->
18
-
36
+
37
+ <!--hash:615c6f1f69083a4cf7b0760ee6a81c68c2cf6e85-->
38
+
19
39
  - test: 修复一些单元测试的错误
20
40
  - feat: 构建 cli 时无论如何都会打包依赖
21
41
  - feat: 使用 pnpm + nx 替代 yarn
22
42
  - fix: 修复 nodejs cli 中 bin.js 没有添加顶部声明的错误
23
43
  - fix: 修复 cli 模板项目 bin 字段指向文件不存在的问题
24
-
44
+
25
45
  ## 3.12.0
26
-
27
- <!--hash:18b4c02da2ba2d55b6c26cd2b45dbf370855f721-->
28
-
46
+
47
+ <!--hash:18b4c02da2ba2d55b6c26cd2b45dbf370855f721-->
48
+
29
49
  - feat: 支持单独构建某种文件的功能
30
50
  - feat: 支持构建 iife 格式的 bundle 时自动设置 global
31
51
  - feat: 支持构建 iife 格式的 bundle
32
-
52
+
33
53
  ## 3.11.1
34
-
35
- <!--hash:ba04dd24f8ee1e4a83c06dbd289195587a221079-->
36
-
54
+
55
+ <!--hash:ba04dd24f8ee1e4a83c06dbd289195587a221079-->
56
+
37
57
  - fix: 修复 tsconfig.json 不是标准 json 无法直接解析的错误,修复路径不是绝对值的错误
38
58
  - docs: 修复交互式创建的 gif 演示地址 404 的错误
39
59
  - docs: 更新 build 命令监视模式的 gif 演示
40
-
60
+
41
61
  ## 3.11.0
42
-
43
- <!--hash:5036beb706902f3ec7e8122696f99cefa7c51f57-->
44
-
62
+
63
+ <!--hash:5036beb706902f3ec7e8122696f99cefa7c51f57-->
64
+
45
65
  - fix: 修复构建的包过大的问题(非压缩 10+M)
46
66
  - fix: 修复构建时任务数量不确定导致失败的错误
47
67
  - fix: 修复打包时提示 pnpapi 依赖缺失问题
@@ -51,17 +71,17 @@
51
71
  - feat: 将 node 内置包通过插件替换和排除
52
72
  - feat: 默认忽略 node 原生模块
53
73
  - perf: 使用 lodash-es 替换 lodash 减小最终打包 bin.js 的大小
54
-
74
+
55
75
  ## 3.10.1
56
-
57
- <!--hash:c0223e217f45ec5d1c39e14035a494ca49b8e868-->
58
-
76
+
77
+ <!--hash:c0223e217f45ec5d1c39e14035a494ca49b8e868-->
78
+
59
79
  - fix: 修复没有添加 esbulild 作为运行时依赖的错误
60
-
80
+
61
81
  ## 3.10.0
62
-
63
- <!--hash:13921896bfb584abdefb3b055f7c914e88cebe4d-->
64
-
82
+
83
+ <!--hash:13921896bfb584abdefb3b055f7c914e88cebe4d-->
84
+
65
85
  - chore: 重新 yarn 安装依赖引起的变更
66
86
  - chore: 删除 liuli-shell、liuli-build 的 setup 脚本,因为没有模块依赖于它们了
67
87
  - chore: 升级所有的依赖
@@ -72,40 +92,40 @@
72
92
  - feat: 将 liuli-cli 的插件作为子模块一起发布
73
93
  - docs: 更新网站标题
74
94
  - fix: 修复 @liuli-util/liuli-cli-plugin-sync 影响的模块
75
-
95
+
76
96
  ## 3.9.1
77
-
78
- <!--hash:8516e723871614844f91a47928510c88f152fae8-->
79
-
97
+
98
+ <!--hash:8516e723871614844f91a47928510c88f152fae8-->
99
+
80
100
  - fix: 修复 @liuli-util/liuli-cli-plugin-sync 影响的模块
81
-
101
+
82
102
  ## 3.9.0
83
-
84
- <!--hash:40983b8dc09a06111d642c8c99b16d2ff8319195-->
85
-
103
+
104
+ <!--hash:40983b8dc09a06111d642c8c99b16d2ff8319195-->
105
+
86
106
  - chore: 添加 publishConfig 配置,删除不需要的 \_gitignore 文件
87
107
  - feat: 为 liuli-cli 实现插件系统
88
-
108
+
89
109
  ## 3.8.4
90
-
91
- <!--hash:d805931cc642fd8002f7ca93a551510b986f5523-->
92
-
110
+
111
+ <!--hash:d805931cc642fd8002f7ca93a551510b986f5523-->
112
+
93
113
  - 修复发布后的内容不包含 .gitignore 的问题
94
-
114
+
95
115
  ## 3.8.3
96
-
116
+
97
117
  - 修复模板中的一些依赖缺失和脚本错误的问题
98
-
118
+
99
119
  ## 3.8.2
100
-
120
+
101
121
  - 修复发布后的内容不包含 .gitignore 的问题
102
-
122
+
103
123
  ## 3.8.1
104
-
124
+
105
125
  - 修复缺失 .gitignore 文件的问题
106
-
126
+
107
127
  ## 3.8.0
108
-
128
+
109
129
  - chore: 在项目本身使用 eslint 通用配置并同步
110
130
  - feat: 实现同步 eslint 配置,支持交互式创建模板项目
111
131
  - feat: 删除不需要的工具函数,删除 build config 命令
@@ -118,27 +138,27 @@
118
138
  - fix: 修复最终发布没有包含 .gitignore 的问题
119
139
  - feat: 生成的项目默认使用通用 .gitignore 配置
120
140
  - feat: 同步 yarn workspaces 和 lerna packages(以后升级 yarn2 有望干掉这个同步), 删除 monorepo-cli 模块
121
-
141
+
122
142
  ## 3.7.1
123
-
143
+
124
144
  - fix(@liuli-util/cli): 修复模板中的依赖没有更新的问题(后面应该使用自动化的方案)
125
-
145
+
126
146
  ## 3.7.0
127
-
147
+
128
148
  - feat(@liuli-util/prettier-standard-config): 更新 husky 的配置,使用 simple-git-hooks 替代 husky
129
149
  - feat(@liuli-util/prettier-standard-config): 统一 prettier 配置
130
-
150
+
131
151
  ## 3.6.0
132
-
152
+
133
153
  - chore(@liuli-util/cli): 更新 @types/rollup-plugin-auto-external,修复类型定义的错误
134
154
  - refactor(@liuli-util/cli): 标记 build config 和 defineConfig 将被废弃,使用 rm 替代 rimraf
135
155
  - chore(@liuli-util/cli): 为模板添加 CHANGELOG
136
156
  - feat(@liuli-util/cli): 更新模板项目,使用 @liuli-util/shell 替换 liuli-cli clean 命令
137
157
  - chore(@liuli-util/cli): 删除 tsconfig.json 中冗余的各种配置
138
158
  - fix(@liuli-util/cli): 删除不小心提交的 test 目录
139
-
159
+
140
160
  ## 3.5.0
141
-
161
+
142
162
  - feat(@types/rollup-plugin-auto-external): 在给 DefinitelyTyped 提的 PR 没有通过前的一个临时模块
143
163
  - chore(@liuli-util/cli): 使用 liuli-cli build config 提到 rollup,以使用 ts 配置文件
144
164
  - refactor(@liuli-util/cli): 将默认导出 utils/ 下的工具类
@@ -148,19 +168,19 @@
148
168
  - fix(@liuli-util/cli): 修复使用 ts-node 运行代码时仍然注册 ts-node 的错误
149
169
  - docs(root): 使用 ts-node 替代 rollup 编译配置文件的做法
150
170
  - docs(root): 更新 repository.url 为 github 上子模块的 url
151
-
171
+
152
172
  ## 3.4.3
153
-
173
+
154
174
  - feat(@liuli-util/cli): 修改名字 define => defineConfig,与 vite 保持一致
155
175
  - feat(@liuli-util/cli): define 辅助函数支持 RollupOptions | RollupOptions[]
156
-
176
+
157
177
  ## 3.4.2
158
-
178
+
159
179
  - feat(@liuli-util/cli): 添加 define 定义 rollup 配置的辅助函数
160
180
  - feat(@liuli-util/cli): 使用 shell rm 代替 liuli-cli clean
161
-
181
+
162
182
  ## 3.4.1
163
-
183
+
164
184
  - fix(@liuli-util/cli): 修复在监视模式下仍然使用 terser 插件的错误
165
185
  - feat(@liuli-util/cli): 实现基本的模板项目生成命令(支持 cli/lib)
166
186
  - refactor(root): 将 templates/ 目录移至 apps/liuli-cli 下便于直接复制模板项目
@@ -169,22 +189,22 @@
169
189
  - docs(@liuli-util/cli): 更新 README **打包库 => 打包**
170
190
  - feat(@liuli-util/cli): 删除根据配置打包的功能
171
191
  - feat(@liuli-util/cli): 生成 cli 的时候默认不生成类型定义
172
-
192
+
173
193
  ## 3.4.0
174
-
194
+
175
195
  - feat(@liuli-util/cli): 默认包含 rollup 插件 @rollup/plugin-json 和 rollup-plugin-node-externals
176
-
196
+
177
197
  ## 3.3.2
178
-
198
+
179
199
  - 删除 @liuli-util/async 依赖,避免麻烦的循环依赖问题
180
-
200
+
181
201
  ## 3.3.1
182
-
202
+
183
203
  - 修复依赖 rollup-plugin-add-shebang 放在 dev 的错误
184
-
204
+
185
205
  ## 3.3.0
186
-
206
+
187
207
  - 将代码移至新的仓库:https://github.com/rxliuli/liuli-tools
188
208
  - 实现 `liuli-cli build pkg/liuli-cli build cli` 两个子命令
189
209
  - 支持使用 rollup 的监视模式
190
- - 支持 `rollup.config.ts` 配置文件(但未在文档上公开)
210
+ - 支持 `rollup.config.ts` 配置文件(但未在文档上公开)
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2021 rxliuli
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.