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,32 @@
1
+ import { Project } from "../project";
2
+ import { ProjenrcFile } from "../projenrc";
3
+ /**
4
+ * Options for `Projenrc`.
5
+ */
6
+ export interface ProjenrcOptions {
7
+ /**
8
+ * The name of the projenrc file.
9
+ * @default ".projenrc.py"
10
+ */
11
+ readonly filename?: string;
12
+ /**
13
+ * The projen version to use
14
+ * @default - current version
15
+ */
16
+ readonly projenVersion?: string;
17
+ }
18
+ /**
19
+ * Allows writing projenrc files in python.
20
+ *
21
+ * This will install `projen` as a Python dependency and will add a
22
+ * `synth` task which will run `.projenrc.py`.
23
+ */
24
+ export declare class Projenrc extends ProjenrcFile {
25
+ /**
26
+ * The name of the projenrc file.
27
+ */
28
+ readonly filePath: string;
29
+ constructor(project: Project, options?: ProjenrcOptions);
30
+ private generateProjenrc;
31
+ }
32
+ export declare function resolvePythonImportName(jsiiFqn: string, jsiiManifest: any): string;
@@ -0,0 +1,21 @@
1
+ import { Component } from "..";
2
+ import { Project } from "../project";
3
+ /**
4
+ * Options for python test code sample.
5
+ */
6
+ export interface PytestSampleOptions {
7
+ /**
8
+ * Name of the python package as used in imports and filenames.
9
+ */
10
+ readonly moduleName: string;
11
+ /**
12
+ * Test directory
13
+ */
14
+ readonly testdir: string;
15
+ }
16
+ /**
17
+ * Python test code sample.
18
+ */
19
+ export declare class PytestSample extends Component {
20
+ constructor(project: Project, options: PytestSampleOptions);
21
+ }
@@ -0,0 +1,24 @@
1
+ import { Component } from "../component";
2
+ import { Project } from "../project";
3
+ export interface PytestOptions {
4
+ /**
5
+ * Pytest version
6
+ *
7
+ * @default "6.2.1"
8
+ */
9
+ readonly version?: string;
10
+ /**
11
+ * Directory with tests
12
+ *
13
+ * @default 'tests'
14
+ */
15
+ readonly testdir?: string;
16
+ /**
17
+ * Stop the testing process after the first N failures
18
+ */
19
+ readonly maxFailures?: number;
20
+ }
21
+ export declare class Pytest extends Component {
22
+ readonly testdir: string;
23
+ constructor(project: Project, options?: PytestOptions);
24
+ }
@@ -0,0 +1,30 @@
1
+ import { Dependency } from "../dependencies";
2
+ import { Task } from "../task";
3
+ export interface IPythonDeps {
4
+ /**
5
+ * A task that installs and updates dependencies.
6
+ */
7
+ readonly installTask: Task;
8
+ /**
9
+ * Adds a runtime dependency.
10
+ *
11
+ * @param spec Format `<module>@<semver>`
12
+ */
13
+ addDependency(spec: string): void;
14
+ /**
15
+ * Adds a dev dependency.
16
+ *
17
+ * @param spec Format `<module>@<semver>`
18
+ */
19
+ addDevDependency(spec: string): void;
20
+ /**
21
+ * Installs dependencies (called during post-synthesis).
22
+ */
23
+ installDependencies(): void;
24
+ }
25
+ export interface IPackageProvider {
26
+ /**
27
+ * An array of packages (may be dynamically generated).
28
+ */
29
+ readonly packages: Dependency[];
30
+ }
@@ -0,0 +1,6 @@
1
+ export interface IPythonEnv {
2
+ /**
3
+ * Initializes the virtual environment if it doesn't exist (called during post-synthesis).
4
+ */
5
+ setupEnvironment(): void;
6
+ }
@@ -0,0 +1,62 @@
1
+ import { PoetryPyprojectOptionsWithoutDeps } from "./poetry";
2
+ import { Task } from "../task";
3
+ export interface IPythonPackaging {
4
+ /**
5
+ * A task that uploads the package to a package repository.
6
+ */
7
+ readonly publishTask: Task;
8
+ }
9
+ export interface PythonPackagingOptions {
10
+ /**
11
+ * Author's name
12
+ *
13
+ * @default $GIT_USER_NAME
14
+ */
15
+ readonly authorName: string;
16
+ /**
17
+ * Package name.
18
+ */
19
+ readonly packageName?: string;
20
+ /**
21
+ * Author's e-mail
22
+ *
23
+ * @default $GIT_USER_EMAIL
24
+ */
25
+ readonly authorEmail: string;
26
+ /**
27
+ * Version of the package.
28
+ *
29
+ * @default "0.1.0"
30
+ * @featured
31
+ */
32
+ readonly version: string;
33
+ /**
34
+ * A short description of the package.
35
+ * @featured
36
+ */
37
+ readonly description?: string;
38
+ /**
39
+ * License of this package as an SPDX identifier.
40
+ */
41
+ readonly license?: string;
42
+ /**
43
+ * A URL to the website of the project.
44
+ */
45
+ readonly homepage?: string;
46
+ /**
47
+ * A list of PyPI trove classifiers that describe the project.
48
+ *
49
+ * @see https://pypi.org/classifiers/
50
+ */
51
+ readonly classifiers?: string[];
52
+ /**
53
+ * Additional fields to pass in the setup() function if using setuptools
54
+ */
55
+ readonly setupConfig?: {
56
+ [key: string]: any;
57
+ };
58
+ /**
59
+ * Additional options to set for poetry if using poetry
60
+ */
61
+ readonly poetryOptions?: PoetryPyprojectOptionsWithoutDeps;
62
+ }
@@ -0,0 +1,190 @@
1
+ import { ProjenrcOptions as ProjenrcPythonOptions } from "./projenrc";
2
+ import { Pytest, PytestOptions } from "./pytest";
3
+ import { IPythonDeps } from "./python-deps";
4
+ import { IPythonEnv } from "./python-env";
5
+ import { IPythonPackaging, PythonPackagingOptions } from "./python-packaging";
6
+ import { VenvOptions } from "./venv";
7
+ import { GitHubProject, GitHubProjectOptions } from "../github";
8
+ import { ProjenrcOptions as ProjenrcJsOptions } from "../javascript/projenrc";
9
+ import { ProjenrcTsOptions } from "../typescript";
10
+ /**
11
+ * Options for `PythonProject`.
12
+ */
13
+ export interface PythonProjectOptions extends GitHubProjectOptions, PythonPackagingOptions {
14
+ /**
15
+ * Name of the python package as used in imports and filenames.
16
+ *
17
+ * Must only consist of alphanumeric characters and underscores.
18
+ *
19
+ * @default $PYTHON_MODULE_NAME
20
+ */
21
+ readonly moduleName: string;
22
+ /**
23
+ * List of runtime dependencies for this project.
24
+ *
25
+ * Dependencies use the format: `<module>@<semver>`
26
+ *
27
+ * Additional dependencies can be added via `project.addDependency()`.
28
+ *
29
+ * @default []
30
+ * @featured
31
+ */
32
+ readonly deps?: string[];
33
+ /**
34
+ * List of dev dependencies for this project.
35
+ *
36
+ * Dependencies use the format: `<module>@<semver>`
37
+ *
38
+ * Additional dependencies can be added via `project.addDevDependency()`.
39
+ *
40
+ * @default []
41
+ * @featured
42
+ */
43
+ readonly devDeps?: string[];
44
+ /**
45
+ * Use pip with a requirements.txt file to track project dependencies.
46
+ *
47
+ * @default - true, unless poetry is true, then false
48
+ * @featured
49
+ */
50
+ readonly pip?: boolean;
51
+ /**
52
+ * Use venv to manage a virtual environment for installing dependencies inside.
53
+ *
54
+ * @default - true, unless poetry is true, then false
55
+ * @featured
56
+ */
57
+ readonly venv?: boolean;
58
+ /**
59
+ * Venv options
60
+ * @default - defaults
61
+ */
62
+ readonly venvOptions?: VenvOptions;
63
+ /**
64
+ * Use setuptools with a setup.py script for packaging and publishing.
65
+ *
66
+ * @default - true, unless poetry is true, then false
67
+ * @featured
68
+ */
69
+ readonly setuptools?: boolean;
70
+ /**
71
+ * Use poetry to manage your project dependencies, virtual environment, and
72
+ * (optional) packaging/publishing.
73
+ *
74
+ * This feature is incompatible with pip, setuptools, or venv.
75
+ * If you set this option to `true`, then pip, setuptools, and venv must be set to `false`.
76
+ *
77
+ * @default false
78
+ * @featured
79
+ */
80
+ readonly poetry?: boolean;
81
+ /**
82
+ * Include pytest tests.
83
+ * @default true
84
+ * @featured
85
+ */
86
+ readonly pytest?: boolean;
87
+ /**
88
+ * pytest options
89
+ * @default - defaults
90
+ */
91
+ readonly pytestOptions?: PytestOptions;
92
+ /**
93
+ * Include sample code and test if the relevant directories don't exist.
94
+ * @default true
95
+ */
96
+ readonly sample?: boolean;
97
+ /**
98
+ * Use projenrc in Python.
99
+ *
100
+ * This will install `projen` as a Python dependency and add a `synth`
101
+ * task which will run `.projenrc.py`.
102
+ *
103
+ * @default true
104
+ */
105
+ readonly projenrcPython?: boolean;
106
+ /**
107
+ * Options related to projenrc in python.
108
+ * @default - default options
109
+ */
110
+ readonly projenrcPythonOptions?: ProjenrcPythonOptions;
111
+ /**
112
+ * Use projenrc in javascript.
113
+ *
114
+ * This will install `projen` as a JavaScript dependency and add a `synth`
115
+ * task which will run `.projenrc.js`.
116
+ *
117
+ * @default false
118
+ */
119
+ readonly projenrcJs?: boolean;
120
+ /**
121
+ * Options related to projenrc in JavaScript.
122
+ * @default - default options
123
+ */
124
+ readonly projenrcJsOptions?: ProjenrcJsOptions;
125
+ /**
126
+ * Use projenrc in TypeScript.
127
+ *
128
+ * This will create a tsconfig file (default: `tsconfig.projen.json`)
129
+ * and use `ts-node` in the default task to parse the project source files.
130
+ *
131
+ * @default false
132
+ */
133
+ readonly projenrcTs?: boolean;
134
+ /**
135
+ * Options related to projenrc in TypeScript.
136
+ * @default - default options
137
+ */
138
+ readonly projenrcTsOptions?: ProjenrcTsOptions;
139
+ }
140
+ /**
141
+ * Python project.
142
+ *
143
+ * @pjid python
144
+ */
145
+ export declare class PythonProject extends GitHubProject {
146
+ /**
147
+ * Python module name (the project name, with any hyphens or periods replaced
148
+ * with underscores).
149
+ */
150
+ readonly moduleName: string;
151
+ /**
152
+ * Version of the package for distribution (should follow semver).
153
+ */
154
+ readonly version: string;
155
+ /**
156
+ * API for managing dependencies.
157
+ */
158
+ readonly depsManager: IPythonDeps;
159
+ /**
160
+ * API for mangaging the Python runtime environment.
161
+ */
162
+ readonly envManager: IPythonEnv;
163
+ /**
164
+ * API for managing packaging the project as a library. Only applies when the `projectType` is LIB.
165
+ */
166
+ readonly packagingManager?: IPythonPackaging;
167
+ /**
168
+ * Pytest component.
169
+ */
170
+ pytest?: Pytest;
171
+ constructor(options: PythonProjectOptions);
172
+ /**
173
+ * Adds default gitignore options for a Python project based on
174
+ * https://github.com/github/gitignore/blob/master/Python.gitignore
175
+ */
176
+ private addDefaultGitIgnore;
177
+ /**
178
+ * Adds a runtime dependency.
179
+ *
180
+ * @param spec Format `<module>@<semver>`
181
+ */
182
+ addDependency(spec: string): void;
183
+ /**
184
+ * Adds a dev dependency.
185
+ *
186
+ * @param spec Format `<module>@<semver>`
187
+ */
188
+ addDevDependency(spec: string): void;
189
+ postSynthesize(): void;
190
+ }
@@ -0,0 +1,17 @@
1
+ import { Component } from "../component";
2
+ import { Project } from "../project";
3
+ /**
4
+ * Options for python sample code.
5
+ */
6
+ export interface PythonSampleOptions {
7
+ /**
8
+ * Sample code directory
9
+ */
10
+ readonly dir: string;
11
+ }
12
+ /**
13
+ * Python code sample.
14
+ */
15
+ export declare class PythonSample extends Component {
16
+ constructor(project: Project, options: PythonSampleOptions);
17
+ }
@@ -0,0 +1,29 @@
1
+ import { IPackageProvider } from "./python-deps";
2
+ import { FileBase, IResolver } from "../file";
3
+ import { Project } from "../project";
4
+ export interface RequirementsFileOptions {
5
+ /**
6
+ * Provide a list of packages that can be dynamically updated.
7
+ */
8
+ readonly packageProvider?: IPackageProvider;
9
+ }
10
+ /**
11
+ * Specifies a list of packages to be installed using pip.
12
+ *
13
+ * @see https://pip.pypa.io/en/stable/reference/pip_install/#requirements-file-format
14
+ */
15
+ export declare class RequirementsFile extends FileBase {
16
+ private readonly packages;
17
+ private readonly packageProvider?;
18
+ constructor(project: Project, filePath: string, options: RequirementsFileOptions);
19
+ /**
20
+ * Adds the specified packages provided in semver format.
21
+ *
22
+ * Comment lines (start with `#`) are ignored.
23
+ *
24
+ * @param packages Package version in format `<module>@<semver>`
25
+ */
26
+ addPackages(...packages: string[]): void;
27
+ private formatDependency;
28
+ protected synthesizeContent(resolver: IResolver): string | undefined;
29
+ }
@@ -0,0 +1,70 @@
1
+ import { FileBase, IResolver } from "../file";
2
+ import { Project } from "../project";
3
+ /**
4
+ * Fields to pass in the setup() function of setup.py
5
+ *
6
+ * @see https://docs.python.org/3/distutils/setupscript.html
7
+ */
8
+ export interface SetupPyOptions {
9
+ /**
10
+ * Name of the package
11
+ */
12
+ readonly name?: string;
13
+ /**
14
+ * List of submodules to be packaged
15
+ */
16
+ readonly packages?: string[];
17
+ /**
18
+ * Author's name
19
+ */
20
+ readonly authorName?: string;
21
+ /**
22
+ * Author's e-mail
23
+ */
24
+ readonly authorEmail?: string;
25
+ /**
26
+ * Manually specify package version
27
+ */
28
+ readonly version?: string;
29
+ /**
30
+ * A short project description
31
+ */
32
+ readonly description?: string;
33
+ /**
34
+ * The project license
35
+ */
36
+ readonly license?: string;
37
+ /**
38
+ * Package's Homepage / Website
39
+ */
40
+ readonly homepage?: string;
41
+ /**
42
+ * A list of PyPI trove classifiers that describe the project.
43
+ *
44
+ * @see https://pypi.org/classifiers/
45
+ */
46
+ readonly classifiers?: string[];
47
+ /**
48
+ * Escape hatch to allow any value
49
+ */
50
+ readonly additionalOptions?: {
51
+ [name: string]: any;
52
+ };
53
+ /**
54
+ * Escape hatch to allow any value (JS/TS only)
55
+ *
56
+ * @deprecated Prefer using `additionalOptions` instead.
57
+ *
58
+ * @jsii ignore
59
+ */
60
+ readonly [name: string]: any;
61
+ }
62
+ /**
63
+ * Python packaging script where package metadata can be placed.
64
+ */
65
+ export declare class SetupPy extends FileBase {
66
+ private readonly setupConfig;
67
+ constructor(project: Project, options: SetupPyOptions);
68
+ protected synthesizeContent(resolver: IResolver): string | undefined;
69
+ private renameFields;
70
+ }
@@ -0,0 +1,15 @@
1
+ import { IPythonPackaging, PythonPackagingOptions } from "./python-packaging";
2
+ import { Component } from "../component";
3
+ import { Project } from "../project";
4
+ import { Task } from "../task";
5
+ /**
6
+ * Manages packaging through setuptools with a setup.py script.
7
+ */
8
+ export declare class Setuptools extends Component implements IPythonPackaging {
9
+ readonly publishTask: Task;
10
+ /**
11
+ * A task that uploads the package to the Test PyPI repository.
12
+ */
13
+ readonly publishTestTask: Task;
14
+ constructor(project: Project, options: PythonPackagingOptions);
15
+ }
@@ -0,0 +1,28 @@
1
+ import { IPythonEnv } from "./python-env";
2
+ import { Component } from "../component";
3
+ import { Project } from "../project";
4
+ /**
5
+ * Options for venv.
6
+ */
7
+ export interface VenvOptions {
8
+ /**
9
+ * Name of directory to store the environment in
10
+ *
11
+ * @default ".env"
12
+ */
13
+ readonly envdir?: string;
14
+ }
15
+ /**
16
+ * Manages a virtual environment through the Python venv module.
17
+ */
18
+ export declare class Venv extends Component implements IPythonEnv {
19
+ /**
20
+ * Name of directory to store the environment in
21
+ */
22
+ private readonly envdir;
23
+ constructor(project: Project, options?: VenvOptions);
24
+ /**
25
+ * Initializes the virtual environment if it doesn't exist (called during post-synthesis).
26
+ */
27
+ setupEnvironment(): void;
28
+ }
@@ -0,0 +1,28 @@
1
+ import { Project } from "./project";
2
+ import { SampleFile } from "./sample-file";
3
+ /**
4
+ * SampleReadme Properties
5
+ */
6
+ export interface SampleReadmeProps {
7
+ /**
8
+ * The name of the README.md file
9
+ *
10
+ * @default "README.md"
11
+ * @example "readme.md"
12
+ */
13
+ readonly filename?: string;
14
+ /**
15
+ * The contents
16
+ * @default "# replace this"
17
+ */
18
+ readonly contents?: string;
19
+ }
20
+ /**
21
+ * Represents a README.md sample file.
22
+ * You are expected to manage this file after creation.
23
+ *
24
+ * @param text - The initial contents of the README.md file. Defaults to '# replace this'
25
+ */
26
+ export declare class SampleReadme extends SampleFile {
27
+ constructor(project: Project, props?: SampleReadmeProps);
28
+ }
@@ -0,0 +1,72 @@
1
+ import { Config } from "conventional-changelog-config-spec";
2
+ export interface BumpOptions {
3
+ /**
4
+ * The name of a .json file to set `version`.
5
+ */
6
+ readonly versionFile: string;
7
+ /**
8
+ * The name of the changelog file to generate.
9
+ */
10
+ readonly changelog: string;
11
+ /**
12
+ * Use a pre-release suffix.
13
+ * @default - normal versioning
14
+ */
15
+ readonly prerelease?: string;
16
+ /**
17
+ * Defines the major version line. This is used to select the latest version
18
+ * and also enforce that new major versions are not released accidentally.
19
+ *
20
+ * Can not be set together with `minMajorVersion`.
21
+ *
22
+ * @default - any version is supported
23
+ */
24
+ readonly majorVersion?: number;
25
+ /**
26
+ * Defines the minimal major version. This is used if you want to start with
27
+ * a specific major version, and increment from there on.
28
+ * This can be useful to set to 1, as breaking changes before the 1.x major
29
+ * release are not incrementing the major version number.
30
+ *
31
+ * Can not be set together with `majorVersion`.
32
+ *
33
+ * @default - No minimum version is being enforced
34
+ */
35
+ readonly minMajorVersion?: number;
36
+ /**
37
+ * The name of a file which will include the output version number (a text file).
38
+ *
39
+ * Relative to cwd.
40
+ *
41
+ * @example ".version.txt"
42
+ */
43
+ readonly bumpFile: string;
44
+ /**
45
+ * The name of the file which will include the release tag (a text file).
46
+ *
47
+ * Relative to cwd.
48
+ *
49
+ * @example ".releasetag.txt"
50
+ */
51
+ readonly releaseTagFile: string;
52
+ /**
53
+ * The prefix applied to release tags. Bumps will be made based on the latest
54
+ * version found with this prefix.
55
+ */
56
+ readonly tagPrefix?: string;
57
+ /**
58
+ * Conguration values that would append to versionrc file or overwrite values
59
+ * coming to that from default one.
60
+ */
61
+ readonly versionrcOptions?: Config;
62
+ }
63
+ /**
64
+ * Resolves the latest version from git tags and uses `standard-version` to bump
65
+ * to the next version based on commits.
66
+ *
67
+ * This expects `standard-version` to be installed in the path.
68
+ *
69
+ * @param cwd working directory (git repository)
70
+ * @param options options
71
+ */
72
+ export declare function bump(cwd: string, options: BumpOptions): Promise<void>;
@@ -0,0 +1,3 @@
1
+ export * from "./release";
2
+ export * from "./publisher";
3
+ export * from "./release-trigger";