projen 0.70.2 → 0.70.4

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 (321) hide show
  1. package/.jsii +108 -90
  2. package/docs/api/API.md +2 -0
  3. package/lib/.types-compat/ts3.9/lib/_resolve.d.ts +2 -0
  4. package/lib/.types-compat/ts3.9/lib/awscdk/auto-discover.d.ts +129 -0
  5. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-app-java.d.ts +53 -0
  6. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-app-py.d.ts +49 -0
  7. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-app-ts.d.ts +81 -0
  8. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-construct.d.ts +89 -0
  9. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps-java.d.ts +7 -0
  10. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps-js.d.ts +7 -0
  11. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps-py.d.ts +7 -0
  12. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-deps.d.ts +168 -0
  13. package/lib/.types-compat/ts3.9/lib/awscdk/awscdk-pytest-sample.d.ts +5 -0
  14. package/lib/.types-compat/ts3.9/lib/awscdk/cdk-config.d.ts +122 -0
  15. package/lib/.types-compat/ts3.9/lib/awscdk/cdk-tasks.d.ts +33 -0
  16. package/lib/.types-compat/ts3.9/lib/awscdk/index.d.ts +14 -0
  17. package/lib/.types-compat/ts3.9/lib/awscdk/integration-test.d.ts +46 -0
  18. package/lib/.types-compat/ts3.9/lib/awscdk/internal.d.ts +20 -0
  19. package/lib/.types-compat/ts3.9/lib/awscdk/lambda-extension.d.ts +68 -0
  20. package/lib/.types-compat/ts3.9/lib/awscdk/lambda-function.d.ts +171 -0
  21. package/lib/.types-compat/ts3.9/lib/build/build-workflow.d.ts +180 -0
  22. package/lib/.types-compat/ts3.9/lib/build/index.d.ts +1 -0
  23. package/lib/.types-compat/ts3.9/lib/builtin-example.task.d.ts +0 -0
  24. package/lib/.types-compat/ts3.9/lib/cdk/auto-discover-base.d.ts +45 -0
  25. package/lib/.types-compat/ts3.9/lib/cdk/construct-lib.d.ts +38 -0
  26. package/lib/.types-compat/ts3.9/lib/cdk/consts.d.ts +6 -0
  27. package/lib/.types-compat/ts3.9/lib/cdk/index.d.ts +5 -0
  28. package/lib/.types-compat/ts3.9/lib/cdk/integration-test-base.d.ts +53 -0
  29. package/lib/.types-compat/ts3.9/lib/cdk/internal.d.ts +4 -0
  30. package/lib/.types-compat/ts3.9/lib/cdk/jsii-docgen.d.ts +20 -0
  31. package/lib/.types-compat/ts3.9/lib/cdk/jsii-project.d.ts +153 -0
  32. package/lib/.types-compat/ts3.9/lib/cdk8s/auto-discover.d.ts +33 -0
  33. package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-app-py.d.ts +39 -0
  34. package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-app-ts.d.ts +45 -0
  35. package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-construct.d.ts +71 -0
  36. package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-deps-js.d.ts +4 -0
  37. package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-deps-py.d.ts +4 -0
  38. package/lib/.types-compat/ts3.9/lib/cdk8s/cdk8s-deps.d.ts +144 -0
  39. package/lib/.types-compat/ts3.9/lib/cdk8s/index.d.ts +7 -0
  40. package/lib/.types-compat/ts3.9/lib/cdk8s/integration-test.d.ts +13 -0
  41. package/lib/.types-compat/ts3.9/lib/cdktf/cdktf-construct.d.ts +26 -0
  42. package/lib/.types-compat/ts3.9/lib/cdktf/index.d.ts +1 -0
  43. package/lib/.types-compat/ts3.9/lib/circleci/circleci.d.ts +132 -0
  44. package/lib/.types-compat/ts3.9/lib/circleci/constant.d.ts +5 -0
  45. package/lib/.types-compat/ts3.9/lib/circleci/index.d.ts +3 -0
  46. package/lib/.types-compat/ts3.9/lib/circleci/model.d.ts +260 -0
  47. package/lib/.types-compat/ts3.9/lib/cleanup.d.ts +2 -0
  48. package/lib/.types-compat/ts3.9/lib/cli/cmds/new.d.ts +9 -0
  49. package/lib/.types-compat/ts3.9/lib/cli/index.d.ts +1 -0
  50. package/lib/.types-compat/ts3.9/lib/cli/macros.d.ts +1 -0
  51. package/lib/.types-compat/ts3.9/lib/cli/synth.d.ts +19 -0
  52. package/lib/.types-compat/ts3.9/lib/cli/tasks.d.ts +7 -0
  53. package/lib/.types-compat/ts3.9/lib/cli/util.d.ts +19 -0
  54. package/lib/.types-compat/ts3.9/lib/clobber.d.ts +5 -0
  55. package/lib/.types-compat/ts3.9/lib/common.d.ts +5 -0
  56. package/lib/.types-compat/ts3.9/lib/component.d.ts +20 -0
  57. package/lib/.types-compat/ts3.9/lib/dependencies.d.ts +160 -0
  58. package/lib/.types-compat/ts3.9/lib/dev-env.d.ts +80 -0
  59. package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-network.d.ts +103 -0
  60. package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-port.d.ts +44 -0
  61. package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-render.d.ts +2 -0
  62. package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-service.d.ts +155 -0
  63. package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose-volume.d.ts +64 -0
  64. package/lib/.types-compat/ts3.9/lib/docker-compose/docker-compose.d.ts +99 -0
  65. package/lib/.types-compat/ts3.9/lib/docker-compose/index.d.ts +5 -0
  66. package/lib/.types-compat/ts3.9/lib/file.d.ts +119 -0
  67. package/lib/.types-compat/ts3.9/lib/gitattributes.d.ts +26 -0
  68. package/lib/.types-compat/ts3.9/lib/github/actions-provider.d.ts +28 -0
  69. package/lib/.types-compat/ts3.9/lib/github/auto-approve.d.ts +44 -0
  70. package/lib/.types-compat/ts3.9/lib/github/auto-merge.d.ts +41 -0
  71. package/lib/.types-compat/ts3.9/lib/github/constants.d.ts +20 -0
  72. package/lib/.types-compat/ts3.9/lib/github/dependabot.d.ts +247 -0
  73. package/lib/.types-compat/ts3.9/lib/github/github-credentials.d.ts +58 -0
  74. package/lib/.types-compat/ts3.9/lib/github/github-project.d.ts +177 -0
  75. package/lib/.types-compat/ts3.9/lib/github/github.d.ts +110 -0
  76. package/lib/.types-compat/ts3.9/lib/github/index.d.ts +15 -0
  77. package/lib/.types-compat/ts3.9/lib/github/mergify.d.ts +81 -0
  78. package/lib/.types-compat/ts3.9/lib/github/pr-template.d.ts +19 -0
  79. package/lib/.types-compat/ts3.9/lib/github/pull-request-lint.d.ts +48 -0
  80. package/lib/.types-compat/ts3.9/lib/github/stale-util.d.ts +8 -0
  81. package/lib/.types-compat/ts3.9/lib/github/stale.d.ts +85 -0
  82. package/lib/.types-compat/ts3.9/lib/github/task-workflow.d.ts +119 -0
  83. package/lib/.types-compat/ts3.9/lib/github/util.d.ts +1 -0
  84. package/lib/.types-compat/ts3.9/lib/github/workflow-actions.d.ts +78 -0
  85. package/lib/.types-compat/ts3.9/lib/github/workflows-model.d.ts +1031 -0
  86. package/lib/.types-compat/ts3.9/lib/github/workflows.d.ts +108 -0
  87. package/lib/.types-compat/ts3.9/lib/gitlab/configuration-model.d.ts +536 -0
  88. package/lib/.types-compat/ts3.9/lib/gitlab/configuration.d.ts +170 -0
  89. package/lib/.types-compat/ts3.9/lib/gitlab/gitlab-configuration.d.ts +19 -0
  90. package/lib/.types-compat/ts3.9/lib/gitlab/index.d.ts +4 -0
  91. package/lib/.types-compat/ts3.9/lib/gitlab/nested-configuration.d.ts +11 -0
  92. package/lib/.types-compat/ts3.9/lib/gitpod.d.ts +301 -0
  93. package/lib/.types-compat/ts3.9/lib/ignore-file.d.ts +59 -0
  94. package/lib/.types-compat/ts3.9/lib/index.d.ts +51 -0
  95. package/lib/.types-compat/ts3.9/lib/ini.d.ts +15 -0
  96. package/lib/.types-compat/ts3.9/lib/inventory.d.ts +46 -0
  97. package/lib/.types-compat/ts3.9/lib/java/index.d.ts +7 -0
  98. package/lib/.types-compat/ts3.9/lib/java/java-project.d.ts +141 -0
  99. package/lib/.types-compat/ts3.9/lib/java/junit.d.ts +29 -0
  100. package/lib/.types-compat/ts3.9/lib/java/maven-compile.d.ts +26 -0
  101. package/lib/.types-compat/ts3.9/lib/java/maven-packaging.d.ts +34 -0
  102. package/lib/.types-compat/ts3.9/lib/java/maven-sample.d.ts +14 -0
  103. package/lib/.types-compat/ts3.9/lib/java/pom.d.ts +214 -0
  104. package/lib/.types-compat/ts3.9/lib/java/projenrc.d.ts +59 -0
  105. package/lib/.types-compat/ts3.9/lib/javascript/bundler.d.ts +174 -0
  106. package/lib/.types-compat/ts3.9/lib/javascript/eslint.d.ts +175 -0
  107. package/lib/.types-compat/ts3.9/lib/javascript/index.d.ts +10 -0
  108. package/lib/.types-compat/ts3.9/lib/javascript/jest.d.ts +599 -0
  109. package/lib/.types-compat/ts3.9/lib/javascript/node-package.d.ts +605 -0
  110. package/lib/.types-compat/ts3.9/lib/javascript/node-project.d.ts +464 -0
  111. package/lib/.types-compat/ts3.9/lib/javascript/npm-config.d.ts +40 -0
  112. package/lib/.types-compat/ts3.9/lib/javascript/prettier.d.ts +358 -0
  113. package/lib/.types-compat/ts3.9/lib/javascript/projenrc.d.ts +18 -0
  114. package/lib/.types-compat/ts3.9/lib/javascript/render-options.d.ts +88 -0
  115. package/lib/.types-compat/ts3.9/lib/javascript/typescript-config.d.ts +403 -0
  116. package/lib/.types-compat/ts3.9/lib/javascript/upgrade-dependencies.d.ts +188 -0
  117. package/lib/.types-compat/ts3.9/lib/javascript/util.d.ts +21 -0
  118. package/lib/.types-compat/ts3.9/lib/json-patch.d.ts +75 -0
  119. package/lib/.types-compat/ts3.9/lib/json.d.ts +27 -0
  120. package/lib/.types-compat/ts3.9/lib/license.d.ts +31 -0
  121. package/lib/.types-compat/ts3.9/lib/logger.d.ts +73 -0
  122. package/lib/.types-compat/ts3.9/lib/logging.d.ts +8 -0
  123. package/lib/.types-compat/ts3.9/lib/makefile.d.ts +77 -0
  124. package/lib/.types-compat/ts3.9/lib/object-file.d.ts +155 -0
  125. package/lib/.types-compat/ts3.9/lib/option-hints.d.ts +18 -0
  126. package/lib/.types-compat/ts3.9/lib/project-build.d.ts +41 -0
  127. package/lib/.types-compat/ts3.9/lib/project.d.ts +374 -0
  128. package/lib/.types-compat/ts3.9/lib/projects.d.ts +63 -0
  129. package/lib/.types-compat/ts3.9/lib/projenrc-json.d.ts +27 -0
  130. package/lib/.types-compat/ts3.9/lib/projenrc.d.ts +18 -0
  131. package/lib/.types-compat/ts3.9/lib/python/index.d.ts +14 -0
  132. package/lib/.types-compat/ts3.9/lib/python/pip.d.ts +32 -0
  133. package/lib/.types-compat/ts3.9/lib/python/poetry.d.ts +177 -0
  134. package/lib/.types-compat/ts3.9/lib/python/projenrc.d.ts +32 -0
  135. package/lib/.types-compat/ts3.9/lib/python/pytest-sample.d.ts +21 -0
  136. package/lib/.types-compat/ts3.9/lib/python/pytest.d.ts +24 -0
  137. package/lib/.types-compat/ts3.9/lib/python/python-deps.d.ts +30 -0
  138. package/lib/.types-compat/ts3.9/lib/python/python-env.d.ts +6 -0
  139. package/lib/.types-compat/ts3.9/lib/python/python-packaging.d.ts +62 -0
  140. package/lib/.types-compat/ts3.9/lib/python/python-project.d.ts +190 -0
  141. package/lib/.types-compat/ts3.9/lib/python/python-sample.d.ts +17 -0
  142. package/lib/.types-compat/ts3.9/lib/python/requirements-file.d.ts +29 -0
  143. package/lib/.types-compat/ts3.9/lib/python/setuppy.d.ts +70 -0
  144. package/lib/.types-compat/ts3.9/lib/python/setuptools.d.ts +15 -0
  145. package/lib/.types-compat/ts3.9/lib/python/venv.d.ts +28 -0
  146. package/lib/.types-compat/ts3.9/lib/readme.d.ts +28 -0
  147. package/lib/.types-compat/ts3.9/lib/release/bump-version.d.ts +72 -0
  148. package/lib/.types-compat/ts3.9/lib/release/bump-version.task.d.ts +1 -0
  149. package/lib/.types-compat/ts3.9/lib/release/index.d.ts +3 -0
  150. package/lib/.types-compat/ts3.9/lib/release/publisher.d.ts +533 -0
  151. package/lib/.types-compat/ts3.9/lib/release/release-trigger.d.ts +97 -0
  152. package/lib/.types-compat/ts3.9/lib/release/release.d.ts +338 -0
  153. package/lib/.types-compat/ts3.9/lib/release/reset-version.task.d.ts +1 -0
  154. package/lib/.types-compat/ts3.9/lib/release/tag-version.d.ts +31 -0
  155. package/lib/.types-compat/ts3.9/lib/release/tag-version.task.d.ts +1 -0
  156. package/lib/.types-compat/ts3.9/lib/release/update-changelog.d.ts +36 -0
  157. package/lib/.types-compat/ts3.9/lib/release/update-changelog.task.d.ts +1 -0
  158. package/lib/.types-compat/ts3.9/lib/renovatebot.d.ts +99 -0
  159. package/lib/.types-compat/ts3.9/lib/run-projenrc-json.task.d.ts +1 -0
  160. package/lib/.types-compat/ts3.9/lib/sample-file.d.ts +88 -0
  161. package/lib/.types-compat/ts3.9/lib/semver.d.ts +34 -0
  162. package/lib/.types-compat/ts3.9/lib/smithy/smithy-build.d.ts +156 -0
  163. package/lib/.types-compat/ts3.9/lib/source-code.d.ts +46 -0
  164. package/lib/.types-compat/ts3.9/lib/task-model.d.ts +130 -0
  165. package/lib/.types-compat/ts3.9/lib/task-runtime.d.ts +32 -0
  166. package/lib/.types-compat/ts3.9/lib/task.d.ts +129 -0
  167. package/lib/.types-compat/ts3.9/lib/tasks.d.ts +51 -0
  168. package/lib/.types-compat/ts3.9/lib/testing.d.ts +18 -0
  169. package/lib/.types-compat/ts3.9/lib/textfile.d.ts +33 -0
  170. package/lib/.types-compat/ts3.9/lib/toml.d.ts +15 -0
  171. package/lib/.types-compat/ts3.9/lib/typescript/index.d.ts +4 -0
  172. package/lib/.types-compat/ts3.9/lib/typescript/projenrc-ts.d.ts +43 -0
  173. package/lib/.types-compat/ts3.9/lib/typescript/projenrc.d.ts +27 -0
  174. package/lib/.types-compat/ts3.9/lib/typescript/typescript-typedoc.d.ts +7 -0
  175. package/lib/.types-compat/ts3.9/lib/typescript/typescript.d.ts +163 -0
  176. package/lib/.types-compat/ts3.9/lib/util/semver.d.ts +43 -0
  177. package/lib/.types-compat/ts3.9/lib/util/synth.d.ts +42 -0
  178. package/lib/.types-compat/ts3.9/lib/util.d.ts +131 -0
  179. package/lib/.types-compat/ts3.9/lib/version.d.ts +45 -0
  180. package/lib/.types-compat/ts3.9/lib/vscode/devcontainer.d.ts +86 -0
  181. package/lib/.types-compat/ts3.9/lib/vscode/extensions.d.ts +36 -0
  182. package/lib/.types-compat/ts3.9/lib/vscode/index.d.ts +5 -0
  183. package/lib/.types-compat/ts3.9/lib/vscode/launch-config.d.ts +90 -0
  184. package/lib/.types-compat/ts3.9/lib/vscode/settings.d.ts +24 -0
  185. package/lib/.types-compat/ts3.9/lib/vscode/vscode.d.ts +14 -0
  186. package/lib/.types-compat/ts3.9/lib/web/index.d.ts +4 -0
  187. package/lib/.types-compat/ts3.9/lib/web/next.d.ts +100 -0
  188. package/lib/.types-compat/ts3.9/lib/web/postcss.d.ts +28 -0
  189. package/lib/.types-compat/ts3.9/lib/web/react.d.ts +105 -0
  190. package/lib/.types-compat/ts3.9/lib/web/tailwind.d.ts +21 -0
  191. package/lib/.types-compat/ts3.9/lib/xmlfile.d.ts +18 -0
  192. package/lib/.types-compat/ts3.9/lib/yaml.d.ts +25 -0
  193. package/lib/awscdk/auto-discover.js +5 -5
  194. package/lib/awscdk/awscdk-app-java.js +1 -1
  195. package/lib/awscdk/awscdk-app-py.js +1 -1
  196. package/lib/awscdk/awscdk-app-ts.js +1 -1
  197. package/lib/awscdk/awscdk-construct.js +2 -2
  198. package/lib/awscdk/awscdk-deps-java.js +1 -1
  199. package/lib/awscdk/awscdk-deps-js.js +1 -1
  200. package/lib/awscdk/awscdk-deps-py.js +1 -1
  201. package/lib/awscdk/awscdk-deps.js +1 -1
  202. package/lib/awscdk/cdk-config.js +1 -1
  203. package/lib/awscdk/cdk-tasks.js +1 -1
  204. package/lib/awscdk/integration-test.js +1 -1
  205. package/lib/awscdk/lambda-extension.js +1 -1
  206. package/lib/awscdk/lambda-function.js +2 -2
  207. package/lib/build/build-workflow.js +1 -1
  208. package/lib/cdk/auto-discover-base.js +2 -2
  209. package/lib/cdk/construct-lib.js +1 -1
  210. package/lib/cdk/integration-test-base.js +1 -1
  211. package/lib/cdk/jsii-docgen.js +1 -1
  212. package/lib/cdk/jsii-project.js +8 -5
  213. package/lib/cdk8s/auto-discover.js +2 -2
  214. package/lib/cdk8s/cdk8s-app-py.js +1 -1
  215. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  216. package/lib/cdk8s/cdk8s-construct.js +1 -1
  217. package/lib/cdk8s/cdk8s-deps-py.js +1 -1
  218. package/lib/cdk8s/cdk8s-deps.js +1 -1
  219. package/lib/cdk8s/integration-test.js +1 -1
  220. package/lib/cdktf/cdktf-construct.js +1 -1
  221. package/lib/circleci/circleci.js +1 -1
  222. package/lib/cli/index.js +2 -18
  223. package/lib/component.js +1 -1
  224. package/lib/dependencies.js +1 -1
  225. package/lib/dev-env.js +1 -1
  226. package/lib/docker-compose/docker-compose-service.js +1 -1
  227. package/lib/docker-compose/docker-compose.js +1 -1
  228. package/lib/file.js +1 -1
  229. package/lib/gitattributes.js +1 -1
  230. package/lib/github/actions-provider.js +1 -1
  231. package/lib/github/auto-approve.js +1 -1
  232. package/lib/github/auto-merge.js +1 -1
  233. package/lib/github/dependabot.js +1 -1
  234. package/lib/github/github-credentials.js +1 -1
  235. package/lib/github/github-project.js +1 -1
  236. package/lib/github/github.js +1 -1
  237. package/lib/github/mergify.js +1 -1
  238. package/lib/github/pr-template.js +1 -1
  239. package/lib/github/pull-request-lint.js +1 -1
  240. package/lib/github/stale.js +1 -1
  241. package/lib/github/task-workflow.js +1 -1
  242. package/lib/github/workflows.js +1 -1
  243. package/lib/gitlab/configuration.js +1 -1
  244. package/lib/gitlab/gitlab-configuration.js +1 -1
  245. package/lib/gitlab/nested-configuration.js +1 -1
  246. package/lib/gitpod.js +1 -1
  247. package/lib/ignore-file.js +1 -1
  248. package/lib/ini.js +1 -1
  249. package/lib/java/java-project.js +1 -1
  250. package/lib/java/junit.js +1 -1
  251. package/lib/java/maven-compile.js +1 -1
  252. package/lib/java/maven-packaging.js +1 -1
  253. package/lib/java/maven-sample.js +1 -1
  254. package/lib/java/pom.js +1 -1
  255. package/lib/java/projenrc.js +1 -1
  256. package/lib/javascript/bundler.js +1 -1
  257. package/lib/javascript/eslint.js +1 -1
  258. package/lib/javascript/jest.js +4 -4
  259. package/lib/javascript/node-package.js +1 -1
  260. package/lib/javascript/node-project.js +1 -1
  261. package/lib/javascript/npm-config.js +1 -1
  262. package/lib/javascript/prettier.js +1 -1
  263. package/lib/javascript/projenrc.js +1 -1
  264. package/lib/javascript/typescript-config.js +1 -1
  265. package/lib/javascript/upgrade-dependencies.js +2 -2
  266. package/lib/json-patch.js +1 -1
  267. package/lib/json.js +1 -1
  268. package/lib/license.js +1 -1
  269. package/lib/logger.js +1 -1
  270. package/lib/makefile.js +1 -1
  271. package/lib/object-file.js +1 -1
  272. package/lib/project-build.js +1 -1
  273. package/lib/project.js +1 -1
  274. package/lib/projects.js +1 -1
  275. package/lib/projenrc-json.js +2 -2
  276. package/lib/projenrc.js +1 -1
  277. package/lib/python/pip.js +1 -1
  278. package/lib/python/poetry.js +2 -2
  279. package/lib/python/projenrc.js +1 -1
  280. package/lib/python/pytest-sample.js +1 -1
  281. package/lib/python/pytest.js +1 -1
  282. package/lib/python/python-project.js +1 -1
  283. package/lib/python/python-sample.js +1 -1
  284. package/lib/python/requirements-file.js +1 -1
  285. package/lib/python/setuppy.js +1 -1
  286. package/lib/python/setuptools.js +1 -1
  287. package/lib/python/venv.js +1 -1
  288. package/lib/readme.js +1 -1
  289. package/lib/release/publisher.d.ts +7 -0
  290. package/lib/release/publisher.js +9 -2
  291. package/lib/release/release-trigger.js +1 -1
  292. package/lib/release/release.js +3 -2
  293. package/lib/renovatebot.js +1 -1
  294. package/lib/sample-file.js +2 -2
  295. package/lib/semver.js +1 -1
  296. package/lib/source-code.js +1 -1
  297. package/lib/task-runtime.js +1 -1
  298. package/lib/task.js +1 -1
  299. package/lib/tasks.js +1 -1
  300. package/lib/testing.js +1 -1
  301. package/lib/textfile.js +1 -1
  302. package/lib/toml.js +1 -1
  303. package/lib/typescript/projenrc-ts.js +1 -1
  304. package/lib/typescript/projenrc.js +1 -1
  305. package/lib/typescript/typescript-typedoc.js +1 -1
  306. package/lib/typescript/typescript.js +3 -3
  307. package/lib/util.d.ts +19 -0
  308. package/lib/util.js +33 -2
  309. package/lib/version.js +1 -1
  310. package/lib/vscode/devcontainer.js +1 -1
  311. package/lib/vscode/extensions.js +1 -1
  312. package/lib/vscode/launch-config.js +1 -1
  313. package/lib/vscode/settings.js +1 -1
  314. package/lib/vscode/vscode.js +1 -1
  315. package/lib/web/next.js +3 -3
  316. package/lib/web/postcss.js +1 -1
  317. package/lib/web/react.js +4 -4
  318. package/lib/web/tailwind.js +1 -1
  319. package/lib/xmlfile.js +1 -1
  320. package/lib/yaml.js +1 -1
  321. package/package.json +1 -1
@@ -0,0 +1,13 @@
1
+ import { IntegrationTestBaseOptions, IntegrationTestBase } from "../cdk";
2
+ import { Project } from "../project";
3
+ /**
4
+ * Options for IntegrationTest
5
+ */
6
+ export interface IntegrationTestOptions extends IntegrationTestBaseOptions {
7
+ }
8
+ /**
9
+ * CDK8S integration test.
10
+ */
11
+ export declare class IntegrationTest extends IntegrationTestBase {
12
+ constructor(project: Project, options: IntegrationTestOptions);
13
+ }
@@ -0,0 +1,26 @@
1
+ import { ConstructLibrary, ConstructLibraryOptions } from "../cdk";
2
+ export interface ConstructLibraryCdktfOptions extends ConstructLibraryOptions {
3
+ /**
4
+ * Minimum target version this library is tested against.
5
+ * @default "^0.13.0"
6
+ * @featured
7
+ */
8
+ readonly cdktfVersion: string;
9
+ /**
10
+ * Construct version to use
11
+ * @default "^10.0.12"
12
+ */
13
+ readonly constructsVersion?: string;
14
+ }
15
+ /**
16
+ * CDKTF construct library project
17
+ *
18
+ * A multi-language (jsii) construct library which vends constructs designed to
19
+ * use within the CDK for Terraform (CDKTF), with a friendly workflow and
20
+ * automatic publishing to the construct catalog.
21
+ *
22
+ * @pjid cdktf-construct
23
+ */
24
+ export declare class ConstructLibraryCdktf extends ConstructLibrary {
25
+ constructor(options: ConstructLibraryCdktfOptions);
26
+ }
@@ -0,0 +1 @@
1
+ export * from "./cdktf-construct";
@@ -0,0 +1,132 @@
1
+ import { Workflow, Job } from "./model";
2
+ import { Component } from "../component";
3
+ import { Project } from "../project";
4
+ import { YamlFile } from "../yaml";
5
+ /**
6
+ * Options for class {@link Circleci}
7
+ *
8
+ * @see https://circleci.com/docs/2.0/configuration-reference/
9
+ */
10
+ export interface CircleCiProps {
11
+ /**
12
+ * Contains a map of CirclCi Orbs
13
+ * ```json
14
+ * orbs: {
15
+ * node: "circleci/node@5.0.1"
16
+ * slack: "circleci/slack@4.8.3"
17
+ * }
18
+ * ```
19
+ */
20
+ readonly orbs?: Record<string, string>;
21
+ /**
22
+ * pipeline version
23
+ *
24
+ * @default 2.1
25
+ * @see https://circleci.com/docs/2.0/configuration-reference/#version
26
+ */
27
+ readonly version?: number;
28
+ /**
29
+ * List of Workflows of pipeline, e.g.
30
+ * ```json
31
+ * workflows: {
32
+ * {
33
+ * identifier: "build",
34
+ * jobs: [{
35
+ * identifier: "node/install",
36
+ * context: ["npm"],
37
+ * }]
38
+ * }
39
+ * }
40
+ * ```
41
+ *
42
+ * @see https://circleci.com/docs/2.0/configuration-reference/#workflows
43
+ */
44
+ readonly workflows?: Workflow[];
45
+ /**
46
+ * List of Jobs to create unique steps per pipeline, e.g.
47
+ * ```json
48
+ * jobs: [{
49
+ * identifier: "compile",
50
+ * docker: { image: "golang:alpine" }
51
+ * steps: ["checkout", run: {command: "go build ."}]
52
+ * }]
53
+ * ```
54
+ *
55
+ * @see https://circleci.com/docs/2.0/configuration-reference/#jobs
56
+ */
57
+ readonly jobs?: Job[];
58
+ /**
59
+ * The setup field enables you to conditionally trigger configurations from outside
60
+ * the primary .circleci parent directory, update pipeline parameters, or generate customized configurations.
61
+ *
62
+ * @see https://circleci.com/docs/2.0/configuration-reference/#setup
63
+ */
64
+ readonly setup?: boolean;
65
+ }
66
+ /**
67
+ * Circleci Class to manage `.circleci/config.yml`.
68
+ * Check projen's docs for more information.
69
+ *
70
+ * @see https://circleci.com/docs/2.0/configuration-reference/
71
+ */
72
+ export declare class Circleci extends Component {
73
+ /**
74
+ * The yaml file for the Circleci pipeline
75
+ * */
76
+ readonly file: YamlFile;
77
+ /**
78
+ * internal copy of options to share options between functions
79
+ * @private
80
+ */
81
+ private options;
82
+ /**
83
+ * internal map of orbs
84
+ * @private
85
+ */
86
+ private readonly orbs;
87
+ /**
88
+ * internal list of workflows
89
+ * @private
90
+ */
91
+ private workflows;
92
+ /**
93
+ * internal list of jobs
94
+ * @private
95
+ */
96
+ private readonly jobs;
97
+ constructor(project: Project, options?: CircleCiProps);
98
+ /**
99
+ * function to prepare the rendering of the yaml file.
100
+ * Objects with dynamic keys like workflows and jobs required the field `identifier` to be set.
101
+ * Those object will be reduced by `identifier` field before rendering
102
+ * @private
103
+ */
104
+ private renderCircleCi;
105
+ /**
106
+ * add new workflow to existing pipeline
107
+ * @param workflow
108
+ */
109
+ addWorkflow(workflow: Workflow): void;
110
+ /**
111
+ * reduce objects with `identifier` field for WorkflowJobs.
112
+ * A workflow job can contain `orbParameter` which are passed to orbs.
113
+ * This map is directly added as `Record<string,any>` to job.
114
+ * So we gonna add those after the default field of WorkflowJob.
115
+ * @see https://circleci.com/developer/orbs/orb/circleci/node#usage-install_nodejs
116
+ * @param jobs
117
+ */
118
+ private renderJobs;
119
+ /**
120
+ * Add a Circleci Orb to pipeline. Will throw error if the orb already exists
121
+ * @param name
122
+ * @param orb
123
+ */
124
+ addOrb(name: string, orb: string): void;
125
+ /**
126
+ * Snake case for listed keys. There are too many exceptions needed to do it recursive without a whitelist.
127
+ * This list needs to be updated once we add field with snake case like `aws_auth`.
128
+ * @param input
129
+ */
130
+ private snakeCase;
131
+ }
132
+ export declare const isObjectContainingFieldExactly: (obj: any, field: string) => boolean;
@@ -0,0 +1,5 @@
1
+ import { Filter } from "./model";
2
+ /**
3
+ * constant to create a filter to make a job or workflow only run on master
4
+ */
5
+ export declare const FilterMainBranchOnly: Filter;
@@ -0,0 +1,3 @@
1
+ export * from "./circleci";
2
+ export * from "./constant";
3
+ export * from "./model";
@@ -0,0 +1,260 @@
1
+ /**
2
+ * Used to represent objects with a dynamic key.
3
+ * Dynamic are marked with `<>` in configuration reference like '<workflow_name>' and '<job_name>'
4
+ * This field is required for objects with dynamic keys.
5
+ */
6
+ interface INamed {
7
+ /** name of dynamic key **/
8
+ readonly identifier: string;
9
+ }
10
+ /**
11
+ * Used for orchestrating all jobs. Each workflow consists of the workflow name as a key and a map as a value.
12
+ * A name should be unique within the current config.yml.
13
+ * The top-level keys for the Workflows configuration are version and jobs.
14
+ * @see https://circleci.com/docs/2.0/configuration-reference/#workflows
15
+ */
16
+ export interface Workflow extends INamed {
17
+ readonly jobs?: WorkflowJob[];
18
+ readonly triggers?: Triggers[];
19
+ /** when is too dynamic to be casted to interfaces. Check Docu as reference
20
+ * @see https://circleci.com/docs/2.0/configuration-reference/#logic-statement-examples
21
+ */
22
+ readonly when?: any;
23
+ }
24
+ /**
25
+ * A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed
26
+ * @see https://circleci.com/docs/2.0/configuration-reference/#type
27
+ */
28
+ export declare enum JobType {
29
+ APPROVAL = "approval"
30
+ }
31
+ /**
32
+ * The resource_class feature allows configuring CPU and RAM resources for each job.
33
+ * Different resource classes are available for different executors, as described in the tables below.
34
+ * @see https://circleci.com/docs/2.0/configuration-reference/#resourceclass
35
+ */
36
+ export declare enum ResourceClass {
37
+ SMALL = "small",
38
+ MEDIUM = "medium",
39
+ MEDIUM_PLUS = "medium+",
40
+ LARGE_X = "xlarge",
41
+ LARGE_2X = "2xlarge",
42
+ LARGE_2X_PLUS = "2xlarge+"
43
+ }
44
+ /**
45
+ * Specify when to enable or disable the step.
46
+ * @see https://circleci.com/docs/2.0/configuration-reference/#steps
47
+ */
48
+ export declare enum JobWhen {
49
+ ALWAYS = "always",
50
+ ON_SUCCESS = "on_success",
51
+ ON_FAIL = "on_fail"
52
+ }
53
+ /**
54
+ * Pipeline parameter types
55
+ * @see https://circleci.com/docs/2.0/reusing-config#parameter-syntax
56
+ */
57
+ export declare enum PipelineParameterType {
58
+ STRING = "string",
59
+ BOOLEAN = "boolean",
60
+ INTEGER = "integer",
61
+ ENUM = "enum"
62
+ }
63
+ /**
64
+ * A Workflow is comprised of one or more uniquely named jobs. Jobs are specified in the jobs map,
65
+ * see Sample 2.0 config.yml for two examples of a job map.
66
+ * The name of the job is the key in the map, and the value is a map describing the job.
67
+ * @see https://circleci.com/docs/2.0/configuration-reference/#jobs
68
+ */
69
+ export interface Job extends INamed {
70
+ }
71
+ /**
72
+ * A Job is part of Workflow. A Job can be created with {@link Job} or it can be provided by the orb
73
+ * @see https://circleci.com/docs/2.0/configuration-reference/#jobs-in-workflow
74
+ */
75
+ export interface WorkflowJob extends INamed {
76
+ /** A list of jobs that must succeed for the job to start. */
77
+ readonly requires?: string[];
78
+ /** A replacement for the job name. Useful when calling a job multiple times */
79
+ readonly name?: string;
80
+ /** The name of the context(s). The initial default name is org-global. Each context name must be unique. */
81
+ readonly context?: string[];
82
+ /** A job may have a type of approval indicating it must be manually approved before downstream jobs may proceed. */
83
+ readonly type?: JobType;
84
+ /** Job Filters can have the key branches or tags */
85
+ readonly filters?: Filter;
86
+ readonly matrix?: Matrix;
87
+ /** Parameters passed to job when referencing a job from orb */
88
+ readonly orbParameters?: Record<string, string | number | boolean>;
89
+ }
90
+ /**
91
+ * Parameters are declared by name under a job, command, or executor.
92
+ * @see https://circleci.com/docs/2.0/reusing-config#using-the-parameters-declaration
93
+ */
94
+ export interface PipelineParameter {
95
+ /** Used to generate documentation for your orb. */
96
+ readonly description?: string;
97
+ /** The parameter type, required. */
98
+ readonly type: PipelineParameterType;
99
+ /** The default value for the parameter. If not present, the parameter is implied to be required. */
100
+ readonly default?: string | number | boolean;
101
+ }
102
+ /**
103
+ * The matrix stanza allows you to run a parameterized job multiple times with different arguments.
104
+ * @see https://circleci.com/docs/2.0/configuration-reference/#matrix-requires-version-21
105
+ */
106
+ export interface Matrix {
107
+ /** A map of parameter names to every value the job should be called with */
108
+ readonly parameters?: Record<string, string[] | number[]>;
109
+ /** An alias for the matrix, usable from another job’s requires stanza. Defaults to the name of the job being executed */
110
+ readonly alias?: string;
111
+ }
112
+ /**
113
+ * Specifies which triggers will cause this workflow to be executed.
114
+ * Default behavior is to trigger the workflow when pushing to a branch.
115
+ * @see https://circleci.com/docs/2.0/configuration-reference/#triggers
116
+ */
117
+ export interface Triggers {
118
+ readonly schedule?: Schedule;
119
+ }
120
+ /**
121
+ * A workflow may have a schedule indicating it runs at a certain time.
122
+ * @see https://circleci.com/docs/2.0/configuration-reference/#schedule
123
+ */
124
+ export interface Schedule {
125
+ /** The cron key is defined using POSIX crontab syntax. */
126
+ readonly cron?: string;
127
+ readonly filters: Filter;
128
+ }
129
+ /**
130
+ * The branches key controls whether the current branch should have a schedule trigger created for it,
131
+ * where current branch is the branch containing the config.yml file with the trigger stanza.
132
+ * That is, a push on the main branch will only schedule a workflow for the main branch.
133
+ *
134
+ * Branches can have the keys only and ignore which either map to a single string naming a branch.
135
+ * You may also use regular expressions to match against branches by enclosing them with /’s, or map to a list of such strings.
136
+ * Regular expressions must match the entire string.
137
+ *
138
+ * Any branches that match only will run the job.
139
+ * Any branches that match ignore will not run the job.
140
+ * If neither only nor ignore are specified then all branches will run the job.
141
+ * If both only and ignore are specified the only is considered before ignore.
142
+ * @see https://circleci.com/docs/2.0/configuration-reference/#filters
143
+ */
144
+ export interface Filter {
145
+ readonly branches?: FilterConfig;
146
+ readonly tags?: FilterConfig;
147
+ }
148
+ /**
149
+ * set an inclusive or exclusive filter
150
+ * @see https://circleci.com/docs/2.0/configuration-reference/#filters
151
+ */
152
+ export interface FilterConfig {
153
+ /** Either a single branch specifier, or a list of branch specifiers */
154
+ readonly only?: string[];
155
+ /** Either a single branch specifier, or a list of branch specifiers */
156
+ readonly ignore?: string[];
157
+ }
158
+ /**
159
+ * Each job consists of the job’s name as a key and a map as a value. A name should be case insensitive unique within a current jobs list.
160
+ * @see https://circleci.com/docs/2.0/configuration-reference/#job_name
161
+ */
162
+ export interface Job {
163
+ readonly docker?: Docker[];
164
+ readonly machine?: Machine;
165
+ readonly macos?: Macos;
166
+ /** Shell to use for execution command in all steps. Can be overridden by shell in each step */
167
+ readonly shell?: string;
168
+ /** Parameters for making a job explicitly configurable in a workflow. */
169
+ readonly parameters?: Record<string, PipelineParameter>;
170
+ /** no type support here, for syntax {@see https://circleci.com/docs/2.0/configuration-reference/#steps} */
171
+ readonly steps?: any[];
172
+ /** In which directory to run the steps. Will be interpreted as an absolute path. Default: `~/project` */
173
+ readonly workingDirectory?: string;
174
+ /** Number of parallel instances of this job to run (default: 1) */
175
+ readonly parallelism?: number;
176
+ /** A map of environment variable names and values. */
177
+ readonly environment?: Record<string, string | number | boolean>;
178
+ /** {@link ResourceClass} */
179
+ readonly resourceClass?: ResourceClass | string;
180
+ }
181
+ /**
182
+ * Options for docker executor
183
+ * @see https://circleci.com/docs/2.0/configuration-reference/#docker
184
+ */
185
+ export interface Docker {
186
+ /** The name of a custom docker image to use */
187
+ readonly image: string;
188
+ /** The name the container is reachable by. By default, container services are accessible through localhost */
189
+ readonly name?: string;
190
+ /** The command used as executable when launching the container */
191
+ readonly entrypoint?: string[];
192
+ /** The command used as pid 1 (or args for entrypoint) when launching the container */
193
+ readonly command?: string[];
194
+ /** Which user to run commands as within the Docker container */
195
+ readonly user?: string;
196
+ /** A map of environment variable names and values */
197
+ readonly environment?: Record<string, string | number | boolean>;
198
+ /** Authentication for registries using standard docker login credentials */
199
+ readonly auth?: Record<string, string>;
200
+ /** Authentication for AWS Elastic Container Registry (ECR) */
201
+ readonly awsAuth?: Record<string, string>;
202
+ }
203
+ export interface Machine {
204
+ /**
205
+ * The VM image to use.
206
+ * @see https://circleci.com/docs/2.0/configuration-reference/#available-machine-images
207
+ */
208
+ readonly image: string;
209
+ /** enable docker layer caching
210
+ * @see https://circleci.com/docs/2.0/configuration-reference/#available-machine-images
211
+ */
212
+ readonly dockerLayerCaching?: string;
213
+ }
214
+ /**
215
+ * CircleCI supports running jobs on macOS, to allow you to build, test,
216
+ * and deploy apps for macOS, iOS, tvOS and watchOS. To run a job in a macOS virtual machine,
217
+ * you must add the macos key to the top-level configuration for the job and specify
218
+ * the version of Xcode you would like to use.
219
+ * @see https://circleci.com/docs/2.0/configuration-reference/#macos
220
+ */
221
+ export interface Macos {
222
+ /** The version of Xcode that is installed on the virtual machine */
223
+ readonly xcode: string;
224
+ }
225
+ /**
226
+ * Execution steps for Job
227
+ * @see https://circleci.com/docs/2.0/configuration-reference/#steps
228
+ */
229
+ export interface StepRun {
230
+ readonly run?: Run;
231
+ }
232
+ /**
233
+ * Used for invoking all command-line programs, taking either a map of configuration values,
234
+ * or, when called in its short-form, a string that will be used as both the command and name.
235
+ * Run commands are executed using non-login shells by default,
236
+ * so you must explicitly source any dotfiles as part of the command.
237
+ *
238
+ * Not used because type incompatible types in steps array
239
+ *
240
+ * @see https://circleci.com/docs/2.0/configuration-reference/#run
241
+ */
242
+ export interface Run {
243
+ /** Command to run via the shell */
244
+ readonly command: string;
245
+ /** Title of the step to be shown in the CircleCI UI (default: full command) */
246
+ readonly name?: string;
247
+ /** Shell to use for execution command */
248
+ readonly shell?: string;
249
+ /** Additional environmental variables, locally scoped to command */
250
+ readonly environment?: string;
251
+ /** Whether this step should run in the background (default: false) */
252
+ readonly background?: string;
253
+ /** In which directory to run this step. Will be interpreted relative to the working_directory of the job). (default: .) */
254
+ readonly workingDirectory?: string;
255
+ /** Elapsed time the command can run without output such as “20m”, “1.25h”, “5s”. The default is 10 minutes */
256
+ readonly noOutputTimeout?: string;
257
+ /** Specify when to enable or disable the step. */
258
+ readonly when?: JobWhen | string;
259
+ }
260
+ export {};
@@ -0,0 +1,2 @@
1
+ export declare const FILE_MANIFEST: string;
2
+ export declare function cleanup(dir: string, newFiles: string[], exclude: string[]): void;
@@ -0,0 +1,9 @@
1
+ import * as yargs from "yargs";
2
+ declare class Command implements yargs.CommandModule {
3
+ readonly command = "new [PROJECT-TYPE-NAME] [OPTIONS]";
4
+ readonly describe = "Creates a new projen project";
5
+ builder(args: yargs.Argv): yargs.Argv<{}>;
6
+ handler(args: any): Promise<void>;
7
+ }
8
+ declare const _default: Command;
9
+ export default _default;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1 @@
1
+ export declare function tryProcessMacro(cwd: string, macro: string): string | undefined;
@@ -0,0 +1,19 @@
1
+ import { TaskRuntime } from "../task-runtime";
2
+ export interface SynthOptions {
3
+ /**
4
+ * Execute post synthesis commands.
5
+ * @default true
6
+ */
7
+ readonly post?: boolean;
8
+ /**
9
+ * Start watching .projenrc.js and re-synth when changed.
10
+ * @default false
11
+ */
12
+ readonly watch?: boolean;
13
+ /**
14
+ * The name of the .projenrc.js file to use instead of the default.
15
+ * @default ".projenrc.js"
16
+ */
17
+ readonly rcfile?: string;
18
+ }
19
+ export declare function synth(runtime: TaskRuntime, options: SynthOptions): Promise<void>;
@@ -0,0 +1,7 @@
1
+ import * as yargs from "yargs";
2
+ import { TaskRuntime } from "../task-runtime";
3
+ /**
4
+ * Reads .projen/tasks.json and adds CLI commands for all tasks.
5
+ * @param ya yargs
6
+ */
7
+ export declare function discoverTaskCommands(runtime: TaskRuntime, ya: yargs.Argv): void;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Installs the npm module (through `npm install`) to node_modules under `projectDir`.
3
+ * @param spec The npm package spec (e.g. `foo@^1.2` or `foo@/var/folders/8k/qcw0ls5pv_ph0000gn/T/projen-RYurCw/pkg.tgz`)
4
+ * @returns The installed package name (e.g. `@foo/bar`)
5
+ */
6
+ export declare function installPackage(baseDir: string, spec: string): string;
7
+ /**
8
+ * Render a command to install an npm package.
9
+ *
10
+ * Engine checks are ignorred at this point so that the module can be installed
11
+ * regardless of the environment. This was needed to unblock the upgrade of the
12
+ * minimum node version of projen, but also okay generally because engine checks
13
+ * will be performed later and for all eternety.
14
+ *
15
+ * @param dir Base directory
16
+ * @param module The module to install (e.g. foo@^1.2)
17
+ * @returns The string that includes the install command ("npm install ...")
18
+ */
19
+ export declare function renderInstallCommand(dir: string, module: string): string;
@@ -0,0 +1,5 @@
1
+ import { Component } from "./component";
2
+ import { Project } from "./project";
3
+ export declare class Clobber extends Component {
4
+ constructor(project: Project);
5
+ }
@@ -0,0 +1,5 @@
1
+ export declare const PROJEN_RC = ".projenrc.js";
2
+ export declare const PROJEN_DIR = ".projen";
3
+ export declare const PROJEN_MARKER: string;
4
+ export declare const IS_TEST_RUN: boolean;
5
+ export declare const PROJEN_VERSION: any;
@@ -0,0 +1,20 @@
1
+ import { Project } from "./project";
2
+ /**
3
+ * Represents a project component.
4
+ */
5
+ export declare class Component {
6
+ readonly project: Project;
7
+ constructor(project: Project);
8
+ /**
9
+ * Called before synthesis.
10
+ */
11
+ preSynthesize(): void;
12
+ /**
13
+ * Synthesizes files to the project output directory.
14
+ */
15
+ synthesize(): void;
16
+ /**
17
+ * Called after synthesis. Order is *not* guaranteed.
18
+ */
19
+ postSynthesize(): void;
20
+ }