@napi-rs/cli 3.0.0-alpha.1 → 3.0.0-alpha.100

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.
Files changed (176) hide show
  1. package/cli.mjs +1 -1
  2. package/dist/api/__tests__/create-npm-dirs.spec.d.ts +1 -0
  3. package/dist/api/__tests__/new.spec.d.ts +1 -0
  4. package/dist/api/build.d.ts +2 -2
  5. package/dist/api/create-npm-dirs.d.ts +5 -0
  6. package/dist/api/templates/index.d.ts +0 -7
  7. package/dist/api/templates/js-binding.d.ts +2 -1
  8. package/dist/api/templates/load-wasi-template.d.ts +2 -0
  9. package/dist/api/templates/wasi-worker-template.d.ts +2 -0
  10. package/dist/cli.js +3961 -14
  11. package/dist/def/artifacts.d.ts +21 -1
  12. package/dist/def/build.d.ts +167 -4
  13. package/dist/def/create-npm-dirs.d.ts +10 -0
  14. package/dist/def/new.d.ts +25 -7
  15. package/dist/def/pre-publish.d.ts +21 -2
  16. package/dist/def/rename.d.ts +16 -6
  17. package/dist/def/universalize.d.ts +10 -0
  18. package/dist/def/version.d.ts +10 -0
  19. package/dist/index.cjs +10142 -20524
  20. package/dist/index.d.ts +1 -0
  21. package/dist/index.js +3711 -29
  22. package/dist/utils/__tests__/config.spec.d.ts +1 -0
  23. package/dist/utils/config.d.ts +70 -6
  24. package/dist/utils/index.d.ts +1 -1
  25. package/dist/utils/metadata.d.ts +13 -1
  26. package/dist/utils/misc.d.ts +3 -3
  27. package/dist/utils/read-config.d.ts +7 -0
  28. package/dist/utils/target.d.ts +9 -6
  29. package/dist/utils/typegen.d.ts +4 -1
  30. package/dist/utils/version.d.ts +2 -1
  31. package/package.json +60 -24
  32. package/src/api/__tests__/create-npm-dirs.spec.ts +210 -0
  33. package/src/api/__tests__/new.spec.ts +429 -0
  34. package/src/api/artifacts.ts +83 -8
  35. package/src/api/build.ts +682 -134
  36. package/src/api/create-npm-dirs.ts +64 -13
  37. package/src/api/new.ts +389 -125
  38. package/src/api/pre-publish.ts +27 -16
  39. package/src/api/rename.ts +103 -17
  40. package/src/api/templates/index.ts +0 -7
  41. package/src/api/templates/js-binding.ts +212 -107
  42. package/src/api/templates/load-wasi-template.ts +216 -0
  43. package/src/api/templates/wasi-worker-template.ts +122 -0
  44. package/src/api/universalize.ts +13 -8
  45. package/src/api/version.ts +5 -2
  46. package/src/commands/artifacts.ts +2 -2
  47. package/src/commands/build.ts +1 -1
  48. package/src/commands/new.ts +46 -49
  49. package/src/def/artifacts.ts +22 -3
  50. package/src/def/build.ts +83 -8
  51. package/src/def/create-npm-dirs.ts +9 -0
  52. package/src/def/new.ts +28 -3
  53. package/src/def/pre-publish.ts +24 -3
  54. package/src/def/rename.ts +11 -2
  55. package/src/def/universalize.ts +9 -0
  56. package/src/def/version.ts +9 -0
  57. package/src/index.ts +2 -0
  58. package/src/utils/__tests__/__fixtures__/napi_type_def +130 -130
  59. package/src/utils/__tests__/__snapshots__/config.spec.ts.md +97 -0
  60. package/src/utils/__tests__/__snapshots__/config.spec.ts.snap +0 -0
  61. package/src/utils/__tests__/__snapshots__/target.spec.ts.md +56 -0
  62. package/src/utils/__tests__/__snapshots__/target.spec.ts.snap +0 -0
  63. package/src/utils/__tests__/__snapshots__/typegen.spec.ts.md +703 -164
  64. package/src/utils/__tests__/__snapshots__/typegen.spec.ts.snap +0 -0
  65. package/src/utils/__tests__/__snapshots__/version.spec.ts.md +9 -8
  66. package/src/utils/__tests__/__snapshots__/version.spec.ts.snap +0 -0
  67. package/src/utils/__tests__/config.spec.ts +81 -0
  68. package/src/utils/__tests__/typegen.spec.ts +19 -4
  69. package/src/utils/cargo.ts +2 -2
  70. package/src/utils/config.ts +147 -13
  71. package/src/utils/index.ts +1 -1
  72. package/src/utils/log.ts +1 -1
  73. package/src/utils/metadata.ts +52 -14
  74. package/src/utils/misc.ts +21 -7
  75. package/src/utils/read-config.ts +20 -0
  76. package/src/utils/target.ts +53 -9
  77. package/src/utils/typegen.ts +100 -40
  78. package/src/utils/version.ts +11 -9
  79. package/dist/api/artifacts.js +0 -50
  80. package/dist/api/build.js +0 -404
  81. package/dist/api/create-npm-dirs.js +0 -63
  82. package/dist/api/new.js +0 -154
  83. package/dist/api/pre-publish.js +0 -157
  84. package/dist/api/rename.js +0 -28
  85. package/dist/api/templates/.gitignore.d.ts +0 -1
  86. package/dist/api/templates/.gitignore.js +0 -198
  87. package/dist/api/templates/.npmignore.d.ts +0 -1
  88. package/dist/api/templates/.npmignore.js +0 -14
  89. package/dist/api/templates/build.rs.d.ts +0 -1
  90. package/dist/api/templates/build.rs.js +0 -4
  91. package/dist/api/templates/cargo.toml.d.ts +0 -6
  92. package/dist/api/templates/cargo.toml.js +0 -25
  93. package/dist/api/templates/ci-template.d.ts +0 -1
  94. package/dist/api/templates/ci-template.js +0 -566
  95. package/dist/api/templates/ci.yml.d.ts +0 -1
  96. package/dist/api/templates/ci.yml.js +0 -92
  97. package/dist/api/templates/index.js +0 -8
  98. package/dist/api/templates/js-binding.js +0 -124
  99. package/dist/api/templates/lib.rs.d.ts +0 -1
  100. package/dist/api/templates/lib.rs.js +0 -10
  101. package/dist/api/templates/package.json.d.ts +0 -8
  102. package/dist/api/templates/package.json.js +0 -30
  103. package/dist/api/universalize.js +0 -38
  104. package/dist/api/version.js +0 -16
  105. package/dist/commands/artifacts.js +0 -19
  106. package/dist/commands/build.js +0 -34
  107. package/dist/commands/create-npm-dirs.js +0 -7
  108. package/dist/commands/help.js +0 -12
  109. package/dist/commands/new.js +0 -112
  110. package/dist/commands/pre-publish.js +0 -8
  111. package/dist/commands/rename.js +0 -7
  112. package/dist/commands/universalize.js +0 -7
  113. package/dist/commands/version.js +0 -7
  114. package/dist/def/artifacts.js +0 -38
  115. package/dist/def/build.js +0 -105
  116. package/dist/def/commands/artifacts.d.ts +0 -15
  117. package/dist/def/commands/artifacts.js +0 -29
  118. package/dist/def/commands/build.d.ts +0 -53
  119. package/dist/def/commands/build.js +0 -105
  120. package/dist/def/commands/create-npm-dirs.d.ts +0 -15
  121. package/dist/def/commands/create-npm-dirs.js +0 -29
  122. package/dist/def/commands/new.d.ts +0 -27
  123. package/dist/def/commands/new.js +0 -53
  124. package/dist/def/commands/pre-publish.d.ts +0 -23
  125. package/dist/def/commands/pre-publish.js +0 -45
  126. package/dist/def/commands/rename.d.ts +0 -25
  127. package/dist/def/commands/rename.js +0 -49
  128. package/dist/def/commands/universalize.d.ts +0 -13
  129. package/dist/def/commands/universalize.js +0 -25
  130. package/dist/def/commands/version.d.ts +0 -13
  131. package/dist/def/commands/version.js +0 -25
  132. package/dist/def/create-npm-dirs.js +0 -38
  133. package/dist/def/new.js +0 -66
  134. package/dist/def/options/artifacts.d.ts +0 -35
  135. package/dist/def/options/artifacts.js +0 -11
  136. package/dist/def/options/build.d.ts +0 -97
  137. package/dist/def/options/build.js +0 -3
  138. package/dist/def/options/create-npm-dirs.d.ts +0 -35
  139. package/dist/def/options/create-npm-dirs.js +0 -11
  140. package/dist/def/options/new.d.ts +0 -79
  141. package/dist/def/options/new.js +0 -15
  142. package/dist/def/options/pre-publish.d.ts +0 -65
  143. package/dist/def/options/pre-publish.js +0 -13
  144. package/dist/def/options/rename.d.ts +0 -75
  145. package/dist/def/options/rename.js +0 -11
  146. package/dist/def/options/universalize.d.ts +0 -28
  147. package/dist/def/options/universalize.js +0 -10
  148. package/dist/def/options/version.d.ts +0 -28
  149. package/dist/def/options/version.js +0 -10
  150. package/dist/def/pre-publish.js +0 -56
  151. package/dist/def/rename.js +0 -58
  152. package/dist/def/universalize.js +0 -33
  153. package/dist/def/version.js +0 -33
  154. package/dist/utils/__tests__/target.spec.js +0 -10
  155. package/dist/utils/__tests__/typegen.spec.js +0 -37
  156. package/dist/utils/__tests__/version.spec.js +0 -5
  157. package/dist/utils/cargo.js +0 -33
  158. package/dist/utils/ci.d.ts +0 -11
  159. package/dist/utils/ci.js +0 -86
  160. package/dist/utils/config.js +0 -42
  161. package/dist/utils/index.js +0 -9
  162. package/dist/utils/log.js +0 -14
  163. package/dist/utils/metadata.js +0 -19
  164. package/dist/utils/misc.js +0 -35
  165. package/dist/utils/target.js +0 -109
  166. package/dist/utils/typegen.js +0 -158
  167. package/dist/utils/version.js +0 -59
  168. package/src/api/templates/.gitignore.ts +0 -198
  169. package/src/api/templates/.npmignore.ts +0 -14
  170. package/src/api/templates/build.rs.ts +0 -4
  171. package/src/api/templates/cargo.toml.ts +0 -35
  172. package/src/api/templates/ci-template.ts +0 -566
  173. package/src/api/templates/ci.yml.ts +0 -116
  174. package/src/api/templates/lib.rs.ts +0 -10
  175. package/src/api/templates/package.json.ts +0 -44
  176. package/src/utils/ci.ts +0 -102
@@ -1,198 +0,0 @@
1
- export const gitIgnore = `# Created by https://www.toptal.com/developers/gitignore/api/node
2
- # Edit at https://www.toptal.com/developers/gitignore?templates=node
3
-
4
- ### Node ###
5
- # Logs
6
- logs
7
- *.log
8
- npm-debug.log*
9
- yarn-debug.log*
10
- yarn-error.log*
11
- lerna-debug.log*
12
-
13
- # Diagnostic reports (https://nodejs.org/api/report.html)
14
- report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json
15
-
16
- # Runtime data
17
- pids
18
- *.pid
19
- *.seed
20
- *.pid.lock
21
-
22
- # Directory for instrumented libs generated by jscoverage/JSCover
23
- lib-cov
24
-
25
- # Coverage directory used by tools like istanbul
26
- coverage
27
- *.lcov
28
-
29
- # nyc test coverage
30
- .nyc_output
31
-
32
- # Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
33
- .grunt
34
-
35
- # Bower dependency directory (https://bower.io/)
36
- bower_components
37
-
38
- # node-waf configuration
39
- .lock-wscript
40
-
41
- # Compiled binary addons (https://nodejs.org/api/addons.html)
42
- build/Release
43
-
44
- # Dependency directories
45
- node_modules/
46
- jspm_packages/
47
-
48
- # TypeScript v1 declaration files
49
- typings/
50
-
51
- # TypeScript cache
52
- *.tsbuildinfo
53
-
54
- # Optional npm cache directory
55
- .npm
56
-
57
- # Optional eslint cache
58
- .eslintcache
59
-
60
- # Microbundle cache
61
- .rpt2_cache/
62
- .rts2_cache_cjs/
63
- .rts2_cache_es/
64
- .rts2_cache_umd/
65
-
66
- # Optional REPL history
67
- .node_repl_history
68
-
69
- # Output of 'npm pack'
70
- *.tgz
71
-
72
- # Yarn Integrity file
73
- .yarn-integrity
74
-
75
- # dotenv environment variables file
76
- .env
77
- .env.test
78
-
79
- # parcel-bundler cache (https://parceljs.org/)
80
- .cache
81
-
82
- # Next.js build output
83
- .next
84
-
85
- # Nuxt.js build / generate output
86
- .nuxt
87
- dist
88
-
89
- # Gatsby files
90
- .cache/
91
- # Comment in the public line in if your project uses Gatsby and not Next.js
92
- # https://nextjs.org/blog/next-9-1#public-directory-support
93
- # public
94
-
95
- # vuepress build output
96
- .vuepress/dist
97
-
98
- # Serverless directories
99
- .serverless/
100
-
101
- # FuseBox cache
102
- .fusebox/
103
-
104
- # DynamoDB Local files
105
- .dynamodb/
106
-
107
- # TernJS port file
108
- .tern-port
109
-
110
- # Stores VSCode versions used for testing VSCode extensions
111
- .vscode-test
112
-
113
- # End of https://www.toptal.com/developers/gitignore/api/node
114
-
115
- # Created by https://www.toptal.com/developers/gitignore/api/macos
116
- # Edit at https://www.toptal.com/developers/gitignore?templates=macos
117
-
118
- ### macOS ###
119
- # General
120
- .DS_Store
121
- .AppleDouble
122
- .LSOverride
123
-
124
- # Icon must end with two \r
125
- Icon
126
-
127
-
128
- # Thumbnails
129
- ._*
130
-
131
- # Files that might appear in the root of a volume
132
- .DocumentRevisions-V100
133
- .fseventsd
134
- .Spotlight-V100
135
- .TemporaryItems
136
- .Trashes
137
- .VolumeIcon.icns
138
- .com.apple.timemachine.donotpresent
139
-
140
- # Directories potentially created on remote AFP share
141
- .AppleDB
142
- .AppleDesktop
143
- Network Trash Folder
144
- Temporary Items
145
- .apdisk
146
-
147
- ### macOS Patch ###
148
- # iCloud generated files
149
- *.icloud
150
-
151
- # End of https://www.toptal.com/developers/gitignore/api/macos
152
-
153
- # Created by https://www.toptal.com/developers/gitignore/api/windows
154
- # Edit at https://www.toptal.com/developers/gitignore?templates=windows
155
-
156
- ### Windows ###
157
- # Windows thumbnail cache files
158
- Thumbs.db
159
- Thumbs.db:encryptable
160
- ehthumbs.db
161
- ehthumbs_vista.db
162
-
163
- # Dump file
164
- *.stackdump
165
-
166
- # Folder config file
167
- [Dd]esktop.ini
168
-
169
- # Recycle Bin used on file shares
170
- $RECYCLE.BIN/
171
-
172
- # Windows Installer files
173
- *.cab
174
- *.msi
175
- *.msix
176
- *.msm
177
- *.msp
178
-
179
- # Windows shortcuts
180
- *.lnk
181
-
182
- # End of https://www.toptal.com/developers/gitignore/api/windows
183
-
184
- #Added by cargo
185
-
186
- /target
187
- Cargo.lock
188
-
189
- .pnp.*
190
- .yarn/*
191
- !.yarn/patches
192
- !.yarn/plugins
193
- !.yarn/releases
194
- !.yarn/sdks
195
- !.yarn/versions
196
-
197
- *.node
198
- `
@@ -1,14 +0,0 @@
1
- export const npmIgnore = `target
2
- Cargo.lock
3
- .cargo
4
- .github
5
- npm
6
- .eslintrc
7
- .prettierignore
8
- rustfmt.toml
9
- yarn.lock
10
- *.node
11
- .yarn
12
- __test__
13
- renovate.json
14
- `
@@ -1,4 +0,0 @@
1
- export const createBuildRs = () => `fn main() {
2
- napi_build::setup();
3
- }
4
- `
@@ -1,35 +0,0 @@
1
- export const createCargoToml = ({
2
- name,
3
- license,
4
- features,
5
- deriveFeatures,
6
- }: {
7
- name: string
8
- license: string
9
- features: string[]
10
- deriveFeatures: string[]
11
- }) => `[package]
12
- name = "${name.replace('@', '').replace('/', '_').toLowerCase()}"
13
- version = "1.0.0"
14
- edition = "2021"
15
- license = "${license}"
16
-
17
- [lib]
18
- crate-type = ["cdylib"]
19
-
20
- [dependencies.napi]
21
- version = "2"
22
- default-features = false
23
- # see https://nodejs.org/api/n-api.html#node-api-version-matrix
24
- features = ${JSON.stringify(features)}
25
-
26
- [dependencies.napi-derive]
27
- version = "2"
28
- features = ${JSON.stringify(deriveFeatures)}
29
-
30
- [build-dependencies]
31
- napi-build = "2"
32
-
33
- [profile.release]
34
- lto = true
35
- `