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,338 @@
1
+ import { Publisher } from "./publisher";
2
+ import { ReleaseTrigger } from "./release-trigger";
3
+ import { Component } from "../component";
4
+ import { GitHubProject } from "../github";
5
+ import { Job, JobPermissions, JobStep } from "../github/workflows-model";
6
+ import { Task } from "../task";
7
+ type BranchHook = (branch: string) => void;
8
+ /**
9
+ * Project options for release.
10
+ */
11
+ export interface ReleaseProjectOptions {
12
+ /**
13
+ * Automatically release new versions every commit to one of branches in `releaseBranches`.
14
+ *
15
+ * @default true
16
+ *
17
+ * @deprecated Use `releaseTrigger: ReleaseTrigger.continuous()` instead
18
+ */
19
+ readonly releaseEveryCommit?: boolean;
20
+ /**
21
+ * CRON schedule to trigger new releases.
22
+ *
23
+ * @default - no scheduled releases
24
+ *
25
+ * @deprecated Use `releaseTrigger: ReleaseTrigger.scheduled()` instead
26
+ */
27
+ readonly releaseSchedule?: string;
28
+ /**
29
+ * The release trigger to use.
30
+ *
31
+ * @default - Continuous releases (`ReleaseTrigger.continuous()`)
32
+ */
33
+ readonly releaseTrigger?: ReleaseTrigger;
34
+ /**
35
+ * A set of workflow steps to execute in order to setup the workflow
36
+ * container.
37
+ */
38
+ readonly releaseWorkflowSetupSteps?: JobStep[];
39
+ /**
40
+ * Container image to use for GitHub workflows.
41
+ *
42
+ * @default - default image
43
+ */
44
+ readonly workflowContainerImage?: string;
45
+ /**
46
+ * Version requirement of `publib` which is used to publish modules to npm.
47
+ * @default "latest"
48
+ */
49
+ readonly jsiiReleaseVersion?: string;
50
+ /**
51
+ * Steps to execute after build as part of the release workflow.
52
+ * @default []
53
+ */
54
+ readonly postBuildSteps?: JobStep[];
55
+ /**
56
+ * Major version to release from the default branch.
57
+ *
58
+ * If this is specified, we bump the latest version of this major version line.
59
+ * If not specified, we bump the global latest version.
60
+ *
61
+ * @default - Major version is not enforced.
62
+ */
63
+ readonly majorVersion?: number;
64
+ /**
65
+ * Minimal Major version to release
66
+ *
67
+ *
68
+ * This can be useful to set to 1, as breaking changes before the 1.x major
69
+ * release are not incrementing the major version number.
70
+ *
71
+ * Can not be set together with `majorVersion`.
72
+ *
73
+ * @default - No minimum version is being enforced
74
+ */
75
+ readonly minMajorVersion?: number;
76
+ /**
77
+ * Bump versions from the default branch as pre-releases (e.g. "beta",
78
+ * "alpha", "pre").
79
+ *
80
+ * @default - normal semantic versions
81
+ */
82
+ readonly prerelease?: string;
83
+ /**
84
+ * The npmDistTag to use when publishing from the default branch.
85
+ *
86
+ * To set the npm dist-tag for release branches, set the `npmDistTag` property
87
+ * for each branch.
88
+ *
89
+ * @default "latest"
90
+ */
91
+ readonly npmDistTag?: string;
92
+ /**
93
+ * The name of the default release workflow.
94
+ *
95
+ * @default "Release"
96
+ */
97
+ readonly releaseWorkflowName?: string;
98
+ /**
99
+ * Defines additional release branches. A workflow will be created for each
100
+ * release branch which will publish releases from commits in this branch.
101
+ * Each release branch _must_ be assigned a major version number which is used
102
+ * to enforce that versions published from that branch always use that major
103
+ * version. If multiple branches are used, the `majorVersion` field must also
104
+ * be provided for the default branch.
105
+ *
106
+ * @default - no additional branches are used for release. you can use
107
+ * `addBranch()` to add additional branches.
108
+ */
109
+ readonly releaseBranches?: {
110
+ [name: string]: BranchOptions;
111
+ };
112
+ /**
113
+ * Create a github issue on every failed publishing task.
114
+ *
115
+ * @default false
116
+ */
117
+ readonly releaseFailureIssue?: boolean;
118
+ /**
119
+ * The label to apply to issues indicating publish failures.
120
+ * Only applies if `releaseFailureIssue` is true.
121
+ *
122
+ * @default "failed-release"
123
+ */
124
+ readonly releaseFailureIssueLabel?: string;
125
+ /**
126
+ * Automatically add the given prefix to release tags.
127
+ * Useful if you are releasing on multiple branches with overlapping
128
+ * version numbers.
129
+ *
130
+ * Note: this prefix is used to detect the latest tagged version
131
+ * when bumping, so if you change this on a project with an existing version
132
+ * history, you may need to manually tag your latest release
133
+ * with the new prefix.
134
+ *
135
+ * @default "v"
136
+ */
137
+ readonly releaseTagPrefix?: string;
138
+ /**
139
+ * Custom configuration used when creating changelog with standard-version package.
140
+ * Given values either append to default configuration or overwrite values in it.
141
+ *
142
+ * @default - standard configuration applicable for GitHub repositories
143
+ */
144
+ readonly versionrcOptions?: Record<string, any>;
145
+ /**
146
+ * Github Runner selection labels
147
+ * @default ["ubuntu-latest"]
148
+ */
149
+ readonly workflowRunsOn?: string[];
150
+ /**
151
+ * Define publishing tasks that can be executed manually as well as workflows.
152
+ *
153
+ * Normally, publishing only happens within automated workflows. Enable this
154
+ * in order to create a publishing task for each publishing activity.
155
+ *
156
+ * @default false
157
+ */
158
+ readonly publishTasks?: boolean;
159
+ /**
160
+ * Instead of actually publishing to package managers, just print the publishing command.
161
+ *
162
+ * @default false
163
+ */
164
+ readonly publishDryRun?: boolean;
165
+ }
166
+ /**
167
+ * Options for `Release`.
168
+ */
169
+ export interface ReleaseOptions extends ReleaseProjectOptions {
170
+ /**
171
+ * The task to execute in order to create the release artifacts. Artifacts are
172
+ * expected to reside under `artifactsDirectory` (defaults to `dist/`) once
173
+ * build is complete.
174
+ */
175
+ readonly task: Task;
176
+ /**
177
+ * A name of a .json file to set the `version` field in after a bump.
178
+ *
179
+ * @example "package.json"
180
+ */
181
+ readonly versionFile: string;
182
+ /**
183
+ * The default branch name to release from.
184
+ *
185
+ * Use `majorVersion` to restrict this branch to only publish releases with a
186
+ * specific major version.
187
+ *
188
+ * You can add additional branches using `addBranch()`.
189
+ */
190
+ readonly branch: string;
191
+ /**
192
+ * Create a GitHub release for each release.
193
+ *
194
+ * @default true
195
+ */
196
+ readonly githubRelease?: boolean;
197
+ /**
198
+ * A directory which will contain build artifacts.
199
+ *
200
+ * @default "dist"
201
+ */
202
+ readonly artifactsDirectory: string;
203
+ /**
204
+ * Node version to setup in GitHub workflows if any node-based CLI utilities
205
+ * are needed. For example `publib`, the CLI projen uses to publish releases,
206
+ * is an npm library.
207
+ *
208
+ * @default 16.x
209
+ */
210
+ readonly workflowNodeVersion?: string;
211
+ /**
212
+ * Permissions granted to the release workflow job
213
+ * @default `{ contents: JobPermission.WRITE }`
214
+ */
215
+ readonly workflowPermissions?: JobPermissions;
216
+ }
217
+ /**
218
+ * Manages releases (currently through GitHub workflows).
219
+ *
220
+ * By default, no branches are released. To add branches, call `addBranch()`.
221
+ */
222
+ export declare class Release extends Component {
223
+ static readonly ANTI_TAMPER_CMD = "git diff --ignore-space-at-eol --exit-code";
224
+ /**
225
+ * Returns the `Release` component of a project or `undefined` if the project
226
+ * does not have a Release component.
227
+ */
228
+ static of(project: GitHubProject): Release | undefined;
229
+ /**
230
+ * Package publisher.
231
+ */
232
+ readonly publisher: Publisher;
233
+ private readonly buildTask;
234
+ private readonly version;
235
+ private readonly postBuildSteps;
236
+ private readonly versionFile;
237
+ private readonly releaseTrigger;
238
+ private readonly preBuildSteps;
239
+ private readonly containerImage?;
240
+ private readonly _branches;
241
+ private readonly jobs;
242
+ private readonly defaultBranch;
243
+ private readonly github?;
244
+ private readonly workflowRunsOn?;
245
+ private readonly workflowPermissions;
246
+ private readonly _branchHooks;
247
+ /**
248
+ * Location of build artifacts.
249
+ */
250
+ readonly artifactsDirectory: string;
251
+ constructor(project: GitHubProject, options: ReleaseOptions);
252
+ /**
253
+ * Add a hook that should be run for every branch (including those that will
254
+ * be added by future `addBranch` calls).
255
+ * @internal
256
+ */
257
+ _forEachBranch(hook: BranchHook): void;
258
+ /**
259
+ * Adds a release branch.
260
+ *
261
+ * It is a git branch from which releases are published. If a project has more than one release
262
+ * branch, we require that `majorVersion` is also specified for the primary branch in order to
263
+ * ensure branches always release the correct version.
264
+ *
265
+ * @param branch The branch to monitor (e.g. `main`, `v2.x`)
266
+ * @param options Branch definition
267
+ */
268
+ addBranch(branch: string, options: BranchOptions): void;
269
+ /**
270
+ * Adds a release branch.
271
+ *
272
+ * It is a git branch from which releases are published. If a project has more than one release
273
+ * branch, we require that `majorVersion` is also specified for the primary branch in order to
274
+ * ensure branches always release the correct version.
275
+ *
276
+ * @param branch The branch to monitor (e.g. `main`, `v2.x`)
277
+ * @param options Branch definition
278
+ */
279
+ private _addBranch;
280
+ preSynthesize(): void;
281
+ /**
282
+ * Adds jobs to all release workflows.
283
+ * @param jobs The jobs to add (name => job)
284
+ */
285
+ addJobs(jobs: Record<string, Job>): void;
286
+ /**
287
+ * Retrieve all release branch names
288
+ */
289
+ get branches(): string[];
290
+ /**
291
+ * @returns a workflow or `undefined` if github integration is disabled.
292
+ */
293
+ private createWorkflow;
294
+ }
295
+ /**
296
+ * Options for a release branch.
297
+ */
298
+ export interface BranchOptions {
299
+ /**
300
+ * The name of the release workflow.
301
+ * @default "release-BRANCH"
302
+ */
303
+ readonly workflowName?: string;
304
+ /**
305
+ * The major versions released from this branch.
306
+ */
307
+ readonly majorVersion: number;
308
+ /**
309
+ * The minimum major version to release.
310
+ */
311
+ readonly minMajorVersion?: number;
312
+ /**
313
+ * Bump the version as a pre-release tag.
314
+ *
315
+ * @default - normal releases
316
+ */
317
+ readonly prerelease?: string;
318
+ /**
319
+ * Automatically add the given prefix to release tags.
320
+ * Useful if you are releasing on multiple branches with overlapping
321
+ * version numbers.
322
+ *
323
+ * Note: this prefix is used to detect the latest tagged version
324
+ * when bumping, so if you change this on a project with an existing version
325
+ * history, you may need to manually tag your latest release
326
+ * with the new prefix.
327
+ *
328
+ * @default - no prefix
329
+ */
330
+ readonly tagPrefix?: string;
331
+ /**
332
+ * The npm distribution tag to use for this branch.
333
+ *
334
+ * @default "latest"
335
+ */
336
+ readonly npmDistTag?: string;
337
+ }
338
+ export {};
@@ -0,0 +1,31 @@
1
+ export interface TagOptions {
2
+ /**
3
+ * Path to release tag file housing the release version.
4
+ *
5
+ * Relative to cwd.
6
+ *
7
+ * @example `dist/releaseTag.txt`
8
+ */
9
+ readonly releaseTagFile: string;
10
+ /**
11
+ * Path to release-specific changelog file.
12
+ *
13
+ * Relative to cwd.
14
+ *
15
+ * @example `dist/changelog.md`
16
+ */
17
+ readonly changelog: string;
18
+ }
19
+ /**
20
+ * Generate an annotated release tag using version and changelog files.
21
+ *
22
+ * The tag will be normalized to the format "v<version>" where version comes
23
+ * from the provided version file.
24
+ *
25
+ * The tag annotation message will be set to the content of the provided release
26
+ * changelog file.
27
+ *
28
+ * @param cwd working directory (git repository)
29
+ * @param options options
30
+ */
31
+ export declare function tag(cwd: string, options: TagOptions): Promise<void>;
@@ -0,0 +1,36 @@
1
+ export interface UpdateChangelogOptions {
2
+ /**
3
+ * Path to input changelog entry file.
4
+ *
5
+ * Relative to cwd.
6
+ *
7
+ * @example dist/changelog.md
8
+ */
9
+ inputChangelog: string;
10
+ /**
11
+ * Path to project-level changelog.
12
+ *
13
+ * The contents of inputChangelog will be prepended onto
14
+ * this changelog.
15
+ *
16
+ * Relative to cwd
17
+ *
18
+ * @example changelog.md
19
+ */
20
+ outputChangelog: string;
21
+ /**
22
+ * Release version.
23
+ */
24
+ versionFile: string;
25
+ }
26
+ /**
27
+ * Prepends input changelog entry onto project-level changelog.
28
+ *
29
+ * Currently assumes a headerless changelog formatted according to
30
+ * [conventional-changelog](https://github.com/conventional-changelog/conventional-changelog)
31
+ * rules.
32
+ *
33
+ * @param cwd working directory (git repository)
34
+ * @param options options
35
+ */
36
+ export declare function updateChangelog(cwd: string, options: UpdateChangelogOptions): Promise<void>;
@@ -0,0 +1,99 @@
1
+ import { Component } from "./component";
2
+ import { Project } from "./project";
3
+ /**
4
+ * Options for Renovatebot
5
+ */
6
+ export interface RenovatebotOptions {
7
+ /**
8
+ * How often to check for new versions and raise pull requests.
9
+ *
10
+ * Can be given in CRON or LATER format, and use multiple schedules
11
+ * (e.g. different for weekdays and weekends). Multiple rules are
12
+ * handles as OR.
13
+ *
14
+ * Some normal scheduling values defined in enum `RenovatebotScheduleInterval`.
15
+ *
16
+ * @see https://docs.renovatebot.com/configuration-options/#schedule
17
+ * @default ["at any time"]
18
+ */
19
+ readonly scheduleInterval?: string[];
20
+ /**
21
+ * You can use the `ignore` option to customize which dependencies are updated.
22
+ * The ignore option supports just package name.
23
+ * @default []
24
+ */
25
+ readonly ignore?: string[];
26
+ /**
27
+ * Ignores updates to `projen`.
28
+ *
29
+ * This is required since projen updates may cause changes in committed files
30
+ * and anti-tamper checks will fail.
31
+ *
32
+ * Projen upgrades are covered through the `ProjenUpgrade` class.
33
+ *
34
+ * @default true
35
+ */
36
+ readonly ignoreProjen?: boolean;
37
+ /**
38
+ * List of labels to apply to the created PR's.
39
+ */
40
+ readonly labels?: string[];
41
+ readonly overrideConfig?: any;
42
+ readonly marker?: boolean;
43
+ }
44
+ /**
45
+ * How often to check for new versions and raise pull requests for version
46
+ * updates.
47
+ *
48
+ * @see https://docs.renovatebot.com/presets-schedule/
49
+ */
50
+ export declare enum RenovatebotScheduleInterval {
51
+ /**
52
+ * Run at any time
53
+ */
54
+ ANY_TIME = "at any time",
55
+ /**
56
+ * Weekly schedule on early monday mornings
57
+ */
58
+ EARLY_MONDAYS = "before 3am on Monday",
59
+ /**
60
+ * Schedule daily
61
+ */
62
+ DAILY = "before 2am",
63
+ /**
64
+ * Schedule weekly
65
+ */
66
+ WEEKLY = "before 3am on Monday",
67
+ /**
68
+ * Schedule monthly
69
+ */
70
+ MONTHLY = "before 3am on the first day of the month",
71
+ /**
72
+ * Schedule quarterly
73
+ */
74
+ QUARTERLY = "every 3 months on the first day of the month",
75
+ /**
76
+ * Schedule for weekends
77
+ */
78
+ WEEKENDS = "every weekend",
79
+ /**
80
+ * Schedule for weekdays
81
+ */
82
+ WEEKDAYS = "every weekday"
83
+ }
84
+ /**
85
+ * Defines renovatebot configuration for projen project.
86
+ *
87
+ * Ignores the versions controlled by Projen.
88
+ */
89
+ export declare class Renovatebot extends Component {
90
+ private readonly _project;
91
+ private readonly explicitIgnores;
92
+ private readonly scheduleInterval;
93
+ private readonly labels?;
94
+ private readonly marker?;
95
+ private readonly overrideConfig?;
96
+ constructor(project: Project, options?: RenovatebotOptions);
97
+ preSynthesize(): void;
98
+ private createRenovateConfiguration;
99
+ }
@@ -0,0 +1,88 @@
1
+ import { Component } from "./component";
2
+ import { Project } from "./project";
3
+ /**
4
+ * Options for the SampleFile object.
5
+ */
6
+ export interface SampleFileOptions {
7
+ /**
8
+ * The contents of the file to write.
9
+ */
10
+ readonly contents?: string;
11
+ /**
12
+ * Absolute path to a file to copy the contents from (does not need to be
13
+ * a text file).
14
+ *
15
+ * If your project is Typescript-based and has configured `testdir` to be a
16
+ * subdirectory of `src`, sample files should outside of the `src` directory,
17
+ * otherwise they may not be copied. For example:
18
+ * ```
19
+ * new SampleFile(this, 'assets/icon.png', { source: path.join(__dirname, '..', 'sample-assets', 'icon.png') });
20
+ * ```
21
+ */
22
+ readonly sourcePath?: string;
23
+ }
24
+ /**
25
+ * Produces a file with the given contents but only once, if the file doesn't already exist.
26
+ * Use this for creating example code files or other resources.
27
+ */
28
+ export declare class SampleFile extends Component {
29
+ private readonly filePath;
30
+ private readonly options;
31
+ /**
32
+ * Creates a new SampleFile object
33
+ * @param project - the project to tie this file to.
34
+ * @param filePath - the relative path in the project to put the file
35
+ * @param options - the options for the file.
36
+ */
37
+ constructor(project: Project, filePath: string, options: SampleFileOptions);
38
+ synthesize(): void;
39
+ /**
40
+ * A helper function that will write the file once and return if it was written or not.
41
+ * @param dir - the directory for the new file
42
+ * @param filename - the filename for the new file
43
+ * @param contents - the contents of the file to write
44
+ * @return boolean - whether a new file was written or not.
45
+ * @private
46
+ */
47
+ private writeOnceFileContents;
48
+ }
49
+ /**
50
+ * SampleDir options
51
+ */
52
+ export interface SampleDirOptions {
53
+ /**
54
+ * The files to render into the directory. These files get added after
55
+ * any files from `source` if that option is specified (replacing if names
56
+ * overlap).
57
+ */
58
+ readonly files?: {
59
+ [fileName: string]: string;
60
+ };
61
+ /**
62
+ * Absolute path to a directory to copy files from (does not need to be text
63
+ * files).
64
+ *
65
+ * If your project is typescript-based and has configured `testdir` to be a
66
+ * subdirectory of `src`, sample files should outside of the `src` directory
67
+ * otherwise they may not be copied. For example:
68
+ * ```
69
+ * new SampleDir(this, 'public', { source: path.join(__dirname, '..', 'sample-assets') });
70
+ * ```
71
+ */
72
+ readonly sourceDir?: string;
73
+ }
74
+ /**
75
+ * Renders the given files into the directory if the directory does not exist. Use this to create sample code files
76
+ */
77
+ export declare class SampleDir extends Component {
78
+ private readonly dir;
79
+ private readonly options;
80
+ /**
81
+ * Create sample files in the given directory if the given directory does not exist
82
+ * @param project Parent project to add files to.
83
+ * @param dir directory to add files to. If directory already exists, nothing is added.
84
+ * @param options options for which files to create.
85
+ */
86
+ constructor(project: Project, dir: string, options: SampleDirOptions);
87
+ synthesize(): void;
88
+ }
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @deprecated This class will be removed in upcoming releases. if you wish to
3
+ * specify semver requirements in `deps`, `devDeps`, etc, specify them like so
4
+ * `express@^2.1`.
5
+ */
6
+ export declare class Semver {
7
+ readonly spec: string;
8
+ static of(spec: string): Semver;
9
+ /**
10
+ * Latest version.
11
+ */
12
+ static latest(): Semver;
13
+ /**
14
+ * Accept only an exact version
15
+ */
16
+ static pinned(version: string): Semver;
17
+ /**
18
+ * Accept any minor version.
19
+ *
20
+ * >= version
21
+ * < next major version
22
+ */
23
+ static caret(version: string): Semver;
24
+ /**
25
+ * Accept patches.
26
+ *
27
+ * >= version
28
+ * < next minor version
29
+ */
30
+ static tilde(version: string): Semver;
31
+ readonly mode?: string;
32
+ private constructor();
33
+ get version(): string | undefined;
34
+ }