projen 0.101.28 → 0.101.29

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 (155) hide show
  1. package/.jsii +114 -9
  2. package/README.md +1 -1
  3. package/lib/ai-instructions.js +2 -2
  4. package/lib/awscdk/auto-discover.js +6 -6
  5. package/lib/awscdk/awscdk-app-java.js +1 -1
  6. package/lib/awscdk/awscdk-app-py.js +1 -1
  7. package/lib/awscdk/awscdk-app-ts.js +1 -1
  8. package/lib/awscdk/awscdk-construct.js +1 -1
  9. package/lib/awscdk/awscdk-deps-java.js +1 -1
  10. package/lib/awscdk/awscdk-deps-js.js +1 -1
  11. package/lib/awscdk/awscdk-deps-py.js +1 -1
  12. package/lib/awscdk/awscdk-deps.js +1 -1
  13. package/lib/awscdk/cdk-config.js +3 -3
  14. package/lib/awscdk/cdk-tasks.js +1 -1
  15. package/lib/awscdk/integration-test.js +1 -1
  16. package/lib/awscdk/lambda-extension.js +1 -1
  17. package/lib/awscdk/lambda-function.js +2 -2
  18. package/lib/build/build-workflow.js +1 -1
  19. package/lib/cdk/auto-discover-base.js +2 -2
  20. package/lib/cdk/construct-lib.js +1 -1
  21. package/lib/cdk/integration-test-base.js +1 -1
  22. package/lib/cdk/jsii-build.js +1 -1
  23. package/lib/cdk/jsii-docgen.js +1 -1
  24. package/lib/cdk/jsii-project.js +1 -1
  25. package/lib/cdk8s/auto-discover.js +2 -2
  26. package/lib/cdk8s/cdk8s-app-py.js +1 -1
  27. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  28. package/lib/cdk8s/cdk8s-construct.js +1 -1
  29. package/lib/cdk8s/cdk8s-deps-py.js +1 -1
  30. package/lib/cdk8s/cdk8s-deps.js +1 -1
  31. package/lib/cdk8s/integration-test.js +1 -1
  32. package/lib/cdktf/cdktf-construct.d.ts +2 -0
  33. package/lib/cdktf/cdktf-construct.js +4 -2
  34. package/lib/cdktn/cdktn-construct.d.ts +29 -0
  35. package/lib/cdktn/cdktn-construct.js +72 -0
  36. package/lib/cdktn/index.d.ts +1 -0
  37. package/lib/cdktn/index.js +18 -0
  38. package/lib/circleci/circleci.js +1 -1
  39. package/lib/component.js +2 -2
  40. package/lib/dependencies.js +1 -1
  41. package/lib/dev-env.js +1 -1
  42. package/lib/docker-compose/docker-compose-service.js +1 -1
  43. package/lib/docker-compose/docker-compose.js +1 -1
  44. package/lib/file.js +1 -1
  45. package/lib/gitattributes.js +1 -1
  46. package/lib/github/actions-provider.js +1 -1
  47. package/lib/github/auto-approve.js +1 -1
  48. package/lib/github/auto-merge.js +1 -1
  49. package/lib/github/auto-queue.js +1 -1
  50. package/lib/github/dependabot.js +1 -1
  51. package/lib/github/dependency-review.js +1 -1
  52. package/lib/github/github-credentials.js +1 -1
  53. package/lib/github/github-project.js +1 -1
  54. package/lib/github/github.js +1 -1
  55. package/lib/github/merge-queue.js +1 -1
  56. package/lib/github/mergify.js +1 -1
  57. package/lib/github/pr-template.js +1 -1
  58. package/lib/github/pull-request-backport.js +1 -1
  59. package/lib/github/pull-request-lint.js +1 -1
  60. package/lib/github/stale.js +1 -1
  61. package/lib/github/task-workflow-job.js +1 -1
  62. package/lib/github/task-workflow.js +1 -1
  63. package/lib/github/workflow-actions.js +1 -1
  64. package/lib/github/workflow-jobs.js +1 -1
  65. package/lib/github/workflow-steps.js +1 -1
  66. package/lib/github/workflows.js +1 -1
  67. package/lib/gitlab/configuration.js +1 -1
  68. package/lib/gitlab/gitlab-configuration.js +1 -1
  69. package/lib/gitlab/nested-configuration.js +1 -1
  70. package/lib/gitpod.js +1 -1
  71. package/lib/ignore-file.js +1 -1
  72. package/lib/index.d.ts +1 -0
  73. package/lib/index.js +3 -2
  74. package/lib/ini.js +1 -1
  75. package/lib/java/java-project.js +1 -1
  76. package/lib/java/junit.js +1 -1
  77. package/lib/java/maven-compile.js +1 -1
  78. package/lib/java/maven-packaging.js +1 -1
  79. package/lib/java/maven-sample.js +1 -1
  80. package/lib/java/pom.js +2 -2
  81. package/lib/java/projenrc.js +1 -1
  82. package/lib/javascript/biome/biome.js +1 -1
  83. package/lib/javascript/bundler.js +1 -1
  84. package/lib/javascript/eslint.js +1 -1
  85. package/lib/javascript/jest.js +4 -4
  86. package/lib/javascript/license-checker.js +1 -1
  87. package/lib/javascript/node-package.js +1 -1
  88. package/lib/javascript/node-project.js +1 -1
  89. package/lib/javascript/npm-config.js +1 -1
  90. package/lib/javascript/pnpm-workspace-config.js +2 -2
  91. package/lib/javascript/pnpm-workspace.js +1 -1
  92. package/lib/javascript/prettier.js +1 -1
  93. package/lib/javascript/projenrc.js +1 -1
  94. package/lib/javascript/typescript-config.js +2 -2
  95. package/lib/javascript/upgrade-dependencies.js +2 -2
  96. package/lib/javascript/yarnrc.js +1 -1
  97. package/lib/json-patch.js +1 -1
  98. package/lib/json.js +1 -1
  99. package/lib/license.js +1 -1
  100. package/lib/logger.js +1 -1
  101. package/lib/makefile.js +1 -1
  102. package/lib/object-file.js +1 -1
  103. package/lib/project-build.js +1 -1
  104. package/lib/project-tree.js +1 -1
  105. package/lib/project.js +1 -1
  106. package/lib/projects.js +1 -1
  107. package/lib/projenrc-json.js +1 -1
  108. package/lib/projenrc.js +1 -1
  109. package/lib/python/pip.js +1 -1
  110. package/lib/python/poetry.js +2 -2
  111. package/lib/python/projenrc.js +1 -1
  112. package/lib/python/pyproject-toml-file.js +1 -1
  113. package/lib/python/pytest-sample.js +1 -1
  114. package/lib/python/pytest.js +1 -1
  115. package/lib/python/python-project.js +1 -1
  116. package/lib/python/python-sample.js +1 -1
  117. package/lib/python/requirements-file.js +1 -1
  118. package/lib/python/setuppy.js +1 -1
  119. package/lib/python/setuptools.js +1 -1
  120. package/lib/python/uv-config.js +1 -1
  121. package/lib/python/uv.js +1 -1
  122. package/lib/python/venv.js +1 -1
  123. package/lib/readme.js +1 -1
  124. package/lib/release/publisher.js +1 -1
  125. package/lib/release/release-trigger.js +1 -1
  126. package/lib/release/release.js +1 -1
  127. package/lib/renovatebot.js +1 -1
  128. package/lib/run-task.cjs +1 -1
  129. package/lib/sample-file.js +2 -2
  130. package/lib/script-runner.js +1 -1
  131. package/lib/source-code.js +1 -1
  132. package/lib/task-shell.js +1 -1
  133. package/lib/task.js +1 -1
  134. package/lib/tasks.js +1 -1
  135. package/lib/testing.js +1 -1
  136. package/lib/textfile.js +1 -1
  137. package/lib/toml.js +1 -1
  138. package/lib/typescript/projenrc-ts.js +1 -1
  139. package/lib/typescript/projenrc.js +1 -1
  140. package/lib/typescript/typescript-runner.js +1 -1
  141. package/lib/typescript/typescript-typedoc.js +1 -1
  142. package/lib/typescript/typescript.js +5 -5
  143. package/lib/version.js +2 -2
  144. package/lib/vscode/devcontainer.js +1 -1
  145. package/lib/vscode/extensions.js +1 -1
  146. package/lib/vscode/launch-config.js +1 -1
  147. package/lib/vscode/settings.js +1 -1
  148. package/lib/vscode/vscode.js +1 -1
  149. package/lib/web/next.js +3 -3
  150. package/lib/web/postcss.js +1 -1
  151. package/lib/web/react.js +3 -3
  152. package/lib/web/tailwind.js +1 -1
  153. package/lib/xmlfile.js +1 -1
  154. package/lib/yaml.js +1 -1
  155. package/package.json +1 -1
package/.jsii CHANGED
@@ -82,7 +82,7 @@
82
82
  },
83
83
  "name": "projen",
84
84
  "readme": {
85
- "markdown": "<p align=\"center\">\n <a href=\"https://projen.io\">\n <img src=\"https://raw.githubusercontent.com/projen/projen/main/logo/projen.svg\">\n <h3 align=\"center\">projen</h3>\n </a>\n</p>\n\n<p align=\"center\">\n Define and maintain complex project configuration through code.\n</p>\n\n<p align=\"center\">\n <a href=\"https://projen.io/\"><strong>Documentation</strong></a> ·\n <a href=\"https://github.com/projen/projen/releases\"><strong>Changelog</strong></a> ·\n <a href=\"#project-types\"><strong>Project types</strong></a> ·\n <a href=\"#community\"><strong>Join the community</strong></a>\n</p>\n\n<p align=\"center\">\n <a href=\"https://opensource.org/licenses/Apache-2.0\"><img src=\"https://img.shields.io/badge/License-Apache%202.0-yellowgreen.svg\" alt=\"Apache 2.0 License\"></a>\n <a href=\"https://gitpod.io/#https://github.com/projen/projen\"><img src=\"https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod\" alt=\"Gitpod ready-to-code\"></a>\n <a href=\"https://github.com/projen/projen/actions/workflows/release.yml\"><img src=\"https://github.com/projen/projen/actions/workflows/release.yml/badge.svg\" alt=\"Release badge\"></a>\n <a href=\"https://github.com/projen/projen/commits/main\"><img src=\"https://img.shields.io/github/commit-activity/w/projen/projen\" alt=\"Commit activity\"></a>\n</p>\n\n<br/>\n\n*projen* synthesizes project configuration files such as `package.json`,\n`tsconfig.json`, `.gitignore`, GitHub Workflows, eslint, jest, etc. from a\nwell-typed definition written in JavaScript.\n\nAs opposed to existing templating/scaffolding tools, *projen* is not a one-off\ngenerator. Synthesized files should never be manually edited (in fact, projen\nenforces that). To modify your project setup, users interact with rich\nstrongly-typed class and execute `projen` to update their project configuration\nfiles.\n\nBy defining a custom project type and using projen in multiple repositories, it's\npossible to update configuration files and CI/CD workflows across dozens (or\nhundreds!?) of projects.\n\nCheck out [this talk](https://youtu.be/SOWMPzXtTCw) about projen from its creator.\n\n## Getting Started\n\n*projen* doesn't need to be installed. You will be using [pnpm dlx](https://pnpm.io/cli/dlx) to run *projen* which takes care of all required setup steps. (`npx` works too, but `pnpm dlx` avoids the supply-chain risk of phantom dependency resolution in npm.)\n\nTo create a new project, run the following command and follow the instructions:\n\n```console\n$ mkdir my-project\n$ cd my-project\n$ pnpm dlx projen new PROJECT-TYPE\n🤖 Synthesizing project...\n...\n```\n\n### Project types\n\nCurrently supported project types (use `pnpm dlx projen new` without a type for a\nfull list):\n\n**Built-in:** (run `pnpm dlx projen new <type>`)\n\n<!-- <macro exec=\"node ./scripts/readme-projects.js\"> -->\n* [awscdk-app-java](https://projen.io/docs/api/awscdk#awscdkjavaapp-) - AWS CDK app in Java.\n* [awscdk-app-py](https://projen.io/docs/api/awscdk#awscdkpythonapp-) - AWS CDK app in Python.\n* [awscdk-app-ts](https://projen.io/docs/api/awscdk#awscdktypescriptapp-) - AWS CDK app in TypeScript.\n* [awscdk-construct](https://projen.io/docs/api/awscdk#awscdkconstructlibrary-) - AWS CDK construct library project.\n* [cdk8s-app-py](https://projen.io/docs/api/cdk8s#cdk8spythonapp-) - CDK8s app in Python.\n* [cdk8s-app-ts](https://projen.io/docs/api/cdk8s#cdk8stypescriptapp-) - CDK8s app in TypeScript.\n* [cdk8s-construct](https://projen.io/docs/api/cdk8s#constructlibrarycdk8s-) - CDK8s construct library project.\n* [cdktf-construct](https://projen.io/docs/api/cdktf#constructlibrarycdktf-) - CDKTF construct library project.\n* [java](https://projen.io/docs/api/java#javaproject-) - Java project.\n* [jsii](https://projen.io/docs/api/cdk#jsiiproject-) - Multi-language jsii library project.\n* [nextjs](https://projen.io/docs/api/web#nextjsproject-) - Next.js project using JavaScript.\n* [nextjs-ts](https://projen.io/docs/api/web#nextjstypescriptproject-) - Next.js project using TypeScript.\n* [node](https://projen.io/docs/api/javascript#nodeproject-) - Node.js project.\n* [project](https://projen.io/docs/api/projen#project-) - Base project.\n* [python](https://projen.io/docs/api/python#pythonproject-) - Python project.\n* [react](https://projen.io/docs/api/web#reactproject-) - React project using JavaScript.\n* [react-ts](https://projen.io/docs/api/web#reacttypescriptproject-) - React project using TypeScript.\n* [typescript](https://projen.io/docs/api/typescript#typescriptproject-) - TypeScript project.\n* [typescript-app](https://projen.io/docs/api/typescript#typescriptappproject-) - TypeScript app.\n<!-- </macro> -->\n\n**External:** (run `pnpm dlx projen new --from <type>`)\n\n* [projen-github-action-typescript](https://github.com/projen/projen-github-action-typescript/blob/main/API.md) - GitHub Action in TypeScript project.\n\n> Use `pnpm dlx projen new PROJECT-TYPE --help` to view a list of command line\n> switches that allows you to specify most project options during bootstrapping.\n> For example: `pnpm dlx projen new jsii --author-name \"Jerry Berry\"`.\n\nThe `new` command will create a `.projenrc.js` file which looks like this for\n`jsii` projects:\n\n```js\nconst { JsiiProject } = require('projen');\n\nconst project = new JsiiProject({\n authorAddress: \"elad.benisrael@gmail.com\",\n authorName: \"Elad Ben-Israel\",\n name: \"foobar\",\n repository: \"https://github.com/eladn/foobar.git\",\n});\n\nproject.synth();\n```\n\nThis program instantiates the project type with minimal setup, and then calls\n`synth()` to synthesize the project files. By default, the `new` command will\nalso execute this program, which will result in a fully working project.\n\nOnce your project is created, you can configure your project by editing\n`.projenrc.js` and re-running `pnpm dlx projen` to synthesize again.\n\n> The files generated by *projen* are considered an \"implementation detail\" and\n> *projen* protects them from being manually edited (most files are marked\n> read-only, and an \"anti tamper\" check is configured in the CI build workflow\n> to ensure that files are not updated during build).\n\nFor example, to setup PyPI publishing in `jsii` projects, you can use\n[`publishToPypi option`](https://projen.io/publisher.html):\n\n```js\nconst project = new JsiiProject({\n // ...\n publishToPypi: {\n distName: \"mydist\",\n module: \"my_module\",\n }\n});\n```\n\nRun:\n\n```shell\npnpm dlx projen\n```\n\nAnd you'll notice that your `package.json` file now contains a `python` section in\nits `jsii` config and the GitHub `release.yml` workflow includes a PyPI\npublishing step.\n\nWe recommend to put this in your shell profile, so you can simply run `pj` every\ntime you update `.projenrc.js`:\n\n```bash\nalias pj='pnpm dlx projen'\n```\n\nMost projects come with an assortment of **tasks** that handle various\ndevelopment activities, from compiling to publishing. Tasks can be and composed\ntogether, and can be run as local commands or turned into GitHub workflows. You\ncan list all tasks with `pnpm dlx projen --help`:\n\n```shell\n$ pnpm dlx projen --help\nprojen [command]\n\nCommands:\n projen new [PROJECT-TYPE-NAME] [OPTIONS] Creates a new projen project\n projen clobber hard resets to HEAD of origin and cleans the local repo\n projen compile Only compile\n projen test Run tests\n projen build Full release build (test+compile)\n projen upgrade upgrade dependencies (including projen)\n...\n```\n\nThe `build` task is the same task that's executed in your CI builds. It\ntypically compiles, lints, tests and packages your module for distribution.\n\n### Shell Completions\n\nIf installed as a global package, `projen` includes rich shell tab-completion support. To enable this in your shell, run:\n\n```shell\n# Bash\nprojen completion >> ~/.bashrc\n\n# ZSH\nprojen completion >> ~/.zshrc\n```\n\n## Features\n\nSome examples of features built-in to project types:\n\n* Fully synthesize `package.json`\n* Standard npm scripts like `compile`, `build`, `test`, `package`\n* eslint\n* Jest\n* jsii: compile, package, api compatibility checks, API.md\n* Bump & release scripts with CHANGELOG generation based on conventional commits\n* Automated PR builds\n* Automated releases to npm, maven, NuGet and PyPI\n* Automated dependency upgrades\n* Mergify configuration\n* LICENSE file generation\n* gitignore + npmignore management\n* Node \"engines\" support with coupling to CI build environment and @types/node\n* Anti-tamper: CI builds will fail if a synthesized file is modified manually\n\n## Documentation\n\nFor documentation including examples and a full API reference, visit <https://projen.io/>.\n\n## Ecosystem\n\n*projen* takes a \"batteries included\" approach and aims to offer dozens of different project types out of\nthe box (we are just getting started). Think `projen new react`, `projen new angular`, `projen new java-maven`,\n`projen new awscdk-typescript`, `projen new cdk8s-python` (nothing in projen is tied to javascript or npm!)...\n\nAdding new project types is as simple as submitting a pull request to this repo and exporting a class that\nextends `projen.Project` (or one of its derivatives). Projen automatically discovers project types so your\ntype will immediately be available in `projen new`.\n\n### Projects in external modules\n\n*projen* is bundled with many project types out of the box, but it can also work\nwith project types and components defined in external jsii modules (the reason\nwe need jsii is because projen uses the jsii metadata to discover project types\n& options in projen new).\n\nSay we have a module in npm called `projen-vuejs` which includes a single project\ntype for vue.js:\n\n```bash\n$ pnpm dlx projen new --from projen-vuejs\n```\n\nIf the referenced module includes multiple project types, the type is required.\nSwitches can also be used to specify initial values based on the project type\nAPIs. You can also use any package syntax supported by [pnpm\nadd](https://pnpm.io/cli/add) like\n`projen-vuejs@1.2.3`, `file:/path/to/local/folder`,\n`git@github.com/awesome/projen-vuejs#1.2.3`, etc.\n\n```bash\n$ pnpm dlx projen new --from projen-vuejs@^2 vuejs-ts --description \"my awesome vue project\"\n```\n\nUnder the hood, `projen new` will install the `projen-vuejs` module from npm\n(version 2.0.0 and above), discover the project types in it and bootstrap the\n`vuejs-ts` project type. It will assign the value `\"my awesome vue project\"` to\nthe `description` field. If you examine your `.projenrc.js` file, you'll see\nthat `projen-vuejs` is defined as a dev dependency:\n\n```javascript\nconst { VueJsProject } = require('projen-vuejs');\n\nconst project = new VueJsProject({\n name: 'my-vuejs-sample',\n description: \"my awesome vue project\",\n // ...\n devDeps: [\n 'projen-vuejs'\n ]\n});\n\nproject.synth();\n```\n\n## Roadmap\n\nSee [Vision](./VISION.md).\n\n## FAQ\n\n### Do I have to write my configuration in JavaScript?\n\nNot at all! JavaScript is the default, but it's also possible to write it in\nJava, Python, TypeScript, or even JSON. This is made\npossible by the [jsii](https://github.com/aws/jsii) library which allows us\nto write APIs once and generate libraries in several languages. You can choose\na different language by passing the `--projenrc-ts`, `--projenrc-py`, `--projenrc-java`, or\n`--projenrc-json` flags when running `projen new`.\n\nNote: using a `.projenrc.json` file to specify configuration only allows\naccessing a subset of the entire API - the options which are passed to the\nconstructor of each project type.\n\n### How does projen work with my IDE?\n\nprojen has an unofficial [VS Code extension]. Check it out!\n\n[VS Code extension]: https://marketplace.visualstudio.com/items?itemName=MarkMcCulloh.vscode-projen\n\n## Community\n\nThe projen community can be found within the #projen channel in the [cdk.dev]\ncommunity Slack workspace.\n\n[cdk.dev]: https://cdk.dev/\n\n## Contributions\n\nContributions of all kinds are welcome! Check out our [contributor's\nguide](./CONTRIBUTING.md) and our [code of conduct](./CODE_OF_CONDUCT.md).\n\nFor a quick start, check out a development environment:\n\n```bash\n$ git clone git@github.com:projen/projen\n$ cd projen\n$ npm ci\n$ npm run watch # compile in the background\n```\n\n### Contributors\n\nThanks goes to [our wonderful contributors](https://github.com/projen/projen/graphs/contributors)!\n\n## License\n\nDistributed under the [Apache-2.0](./LICENSE) license.\n"
85
+ "markdown": "<p align=\"center\">\n <a href=\"https://projen.io\">\n <img src=\"https://raw.githubusercontent.com/projen/projen/main/logo/projen.svg\">\n <h3 align=\"center\">projen</h3>\n </a>\n</p>\n\n<p align=\"center\">\n Define and maintain complex project configuration through code.\n</p>\n\n<p align=\"center\">\n <a href=\"https://projen.io/\"><strong>Documentation</strong></a> ·\n <a href=\"https://github.com/projen/projen/releases\"><strong>Changelog</strong></a> ·\n <a href=\"#project-types\"><strong>Project types</strong></a> ·\n <a href=\"#community\"><strong>Join the community</strong></a>\n</p>\n\n<p align=\"center\">\n <a href=\"https://opensource.org/licenses/Apache-2.0\"><img src=\"https://img.shields.io/badge/License-Apache%202.0-yellowgreen.svg\" alt=\"Apache 2.0 License\"></a>\n <a href=\"https://gitpod.io/#https://github.com/projen/projen\"><img src=\"https://img.shields.io/badge/Gitpod-ready--to--code-blue?logo=gitpod\" alt=\"Gitpod ready-to-code\"></a>\n <a href=\"https://github.com/projen/projen/actions/workflows/release.yml\"><img src=\"https://github.com/projen/projen/actions/workflows/release.yml/badge.svg\" alt=\"Release badge\"></a>\n <a href=\"https://github.com/projen/projen/commits/main\"><img src=\"https://img.shields.io/github/commit-activity/w/projen/projen\" alt=\"Commit activity\"></a>\n</p>\n\n<br/>\n\n*projen* synthesizes project configuration files such as `package.json`,\n`tsconfig.json`, `.gitignore`, GitHub Workflows, eslint, jest, etc. from a\nwell-typed definition written in JavaScript.\n\nAs opposed to existing templating/scaffolding tools, *projen* is not a one-off\ngenerator. Synthesized files should never be manually edited (in fact, projen\nenforces that). To modify your project setup, users interact with rich\nstrongly-typed class and execute `projen` to update their project configuration\nfiles.\n\nBy defining a custom project type and using projen in multiple repositories, it's\npossible to update configuration files and CI/CD workflows across dozens (or\nhundreds!?) of projects.\n\nCheck out [this talk](https://youtu.be/SOWMPzXtTCw) about projen from its creator.\n\n## Getting Started\n\n*projen* doesn't need to be installed. You will be using [pnpm dlx](https://pnpm.io/cli/dlx) to run *projen* which takes care of all required setup steps. (`npx` works too, but `pnpm dlx` avoids the supply-chain risk of phantom dependency resolution in npm.)\n\nTo create a new project, run the following command and follow the instructions:\n\n```console\n$ mkdir my-project\n$ cd my-project\n$ pnpm dlx projen new PROJECT-TYPE\n🤖 Synthesizing project...\n...\n```\n\n### Project types\n\nCurrently supported project types (use `pnpm dlx projen new` without a type for a\nfull list):\n\n**Built-in:** (run `pnpm dlx projen new <type>`)\n\n<!-- <macro exec=\"node ./scripts/readme-projects.js\"> -->\n* [awscdk-app-java](https://projen.io/docs/api/awscdk#awscdkjavaapp-) - AWS CDK app in Java.\n* [awscdk-app-py](https://projen.io/docs/api/awscdk#awscdkpythonapp-) - AWS CDK app in Python.\n* [awscdk-app-ts](https://projen.io/docs/api/awscdk#awscdktypescriptapp-) - AWS CDK app in TypeScript.\n* [awscdk-construct](https://projen.io/docs/api/awscdk#awscdkconstructlibrary-) - AWS CDK construct library project.\n* [cdk8s-app-py](https://projen.io/docs/api/cdk8s#cdk8spythonapp-) - CDK8s app in Python.\n* [cdk8s-app-ts](https://projen.io/docs/api/cdk8s#cdk8stypescriptapp-) - CDK8s app in TypeScript.\n* [cdk8s-construct](https://projen.io/docs/api/cdk8s#constructlibrarycdk8s-) - CDK8s construct library project.\n* [cdktn-construct](https://projen.io/docs/api/cdktn#constructlibrarycdktn-) - CDKTN construct library project.\n* [java](https://projen.io/docs/api/java#javaproject-) - Java project.\n* [jsii](https://projen.io/docs/api/cdk#jsiiproject-) - Multi-language jsii library project.\n* [nextjs](https://projen.io/docs/api/web#nextjsproject-) - Next.js project using JavaScript.\n* [nextjs-ts](https://projen.io/docs/api/web#nextjstypescriptproject-) - Next.js project using TypeScript.\n* [node](https://projen.io/docs/api/javascript#nodeproject-) - Node.js project.\n* [project](https://projen.io/docs/api/projen#project-) - Base project.\n* [python](https://projen.io/docs/api/python#pythonproject-) - Python project.\n* [react](https://projen.io/docs/api/web#reactproject-) - React project using JavaScript.\n* [react-ts](https://projen.io/docs/api/web#reacttypescriptproject-) - React project using TypeScript.\n* [typescript](https://projen.io/docs/api/typescript#typescriptproject-) - TypeScript project.\n* [typescript-app](https://projen.io/docs/api/typescript#typescriptappproject-) - TypeScript app.\n<!-- </macro> -->\n\n**External:** (run `pnpm dlx projen new --from <type>`)\n\n* [projen-github-action-typescript](https://github.com/projen/projen-github-action-typescript/blob/main/API.md) - GitHub Action in TypeScript project.\n\n> Use `pnpm dlx projen new PROJECT-TYPE --help` to view a list of command line\n> switches that allows you to specify most project options during bootstrapping.\n> For example: `pnpm dlx projen new jsii --author-name \"Jerry Berry\"`.\n\nThe `new` command will create a `.projenrc.js` file which looks like this for\n`jsii` projects:\n\n```js\nconst { JsiiProject } = require('projen');\n\nconst project = new JsiiProject({\n authorAddress: \"elad.benisrael@gmail.com\",\n authorName: \"Elad Ben-Israel\",\n name: \"foobar\",\n repository: \"https://github.com/eladn/foobar.git\",\n});\n\nproject.synth();\n```\n\nThis program instantiates the project type with minimal setup, and then calls\n`synth()` to synthesize the project files. By default, the `new` command will\nalso execute this program, which will result in a fully working project.\n\nOnce your project is created, you can configure your project by editing\n`.projenrc.js` and re-running `pnpm dlx projen` to synthesize again.\n\n> The files generated by *projen* are considered an \"implementation detail\" and\n> *projen* protects them from being manually edited (most files are marked\n> read-only, and an \"anti tamper\" check is configured in the CI build workflow\n> to ensure that files are not updated during build).\n\nFor example, to setup PyPI publishing in `jsii` projects, you can use\n[`publishToPypi option`](https://projen.io/publisher.html):\n\n```js\nconst project = new JsiiProject({\n // ...\n publishToPypi: {\n distName: \"mydist\",\n module: \"my_module\",\n }\n});\n```\n\nRun:\n\n```shell\npnpm dlx projen\n```\n\nAnd you'll notice that your `package.json` file now contains a `python` section in\nits `jsii` config and the GitHub `release.yml` workflow includes a PyPI\npublishing step.\n\nWe recommend to put this in your shell profile, so you can simply run `pj` every\ntime you update `.projenrc.js`:\n\n```bash\nalias pj='pnpm dlx projen'\n```\n\nMost projects come with an assortment of **tasks** that handle various\ndevelopment activities, from compiling to publishing. Tasks can be and composed\ntogether, and can be run as local commands or turned into GitHub workflows. You\ncan list all tasks with `pnpm dlx projen --help`:\n\n```shell\n$ pnpm dlx projen --help\nprojen [command]\n\nCommands:\n projen new [PROJECT-TYPE-NAME] [OPTIONS] Creates a new projen project\n projen clobber hard resets to HEAD of origin and cleans the local repo\n projen compile Only compile\n projen test Run tests\n projen build Full release build (test+compile)\n projen upgrade upgrade dependencies (including projen)\n...\n```\n\nThe `build` task is the same task that's executed in your CI builds. It\ntypically compiles, lints, tests and packages your module for distribution.\n\n### Shell Completions\n\nIf installed as a global package, `projen` includes rich shell tab-completion support. To enable this in your shell, run:\n\n```shell\n# Bash\nprojen completion >> ~/.bashrc\n\n# ZSH\nprojen completion >> ~/.zshrc\n```\n\n## Features\n\nSome examples of features built-in to project types:\n\n* Fully synthesize `package.json`\n* Standard npm scripts like `compile`, `build`, `test`, `package`\n* eslint\n* Jest\n* jsii: compile, package, api compatibility checks, API.md\n* Bump & release scripts with CHANGELOG generation based on conventional commits\n* Automated PR builds\n* Automated releases to npm, maven, NuGet and PyPI\n* Automated dependency upgrades\n* Mergify configuration\n* LICENSE file generation\n* gitignore + npmignore management\n* Node \"engines\" support with coupling to CI build environment and @types/node\n* Anti-tamper: CI builds will fail if a synthesized file is modified manually\n\n## Documentation\n\nFor documentation including examples and a full API reference, visit <https://projen.io/>.\n\n## Ecosystem\n\n*projen* takes a \"batteries included\" approach and aims to offer dozens of different project types out of\nthe box (we are just getting started). Think `projen new react`, `projen new angular`, `projen new java-maven`,\n`projen new awscdk-typescript`, `projen new cdk8s-python` (nothing in projen is tied to javascript or npm!)...\n\nAdding new project types is as simple as submitting a pull request to this repo and exporting a class that\nextends `projen.Project` (or one of its derivatives). Projen automatically discovers project types so your\ntype will immediately be available in `projen new`.\n\n### Projects in external modules\n\n*projen* is bundled with many project types out of the box, but it can also work\nwith project types and components defined in external jsii modules (the reason\nwe need jsii is because projen uses the jsii metadata to discover project types\n& options in projen new).\n\nSay we have a module in npm called `projen-vuejs` which includes a single project\ntype for vue.js:\n\n```bash\n$ pnpm dlx projen new --from projen-vuejs\n```\n\nIf the referenced module includes multiple project types, the type is required.\nSwitches can also be used to specify initial values based on the project type\nAPIs. You can also use any package syntax supported by [pnpm\nadd](https://pnpm.io/cli/add) like\n`projen-vuejs@1.2.3`, `file:/path/to/local/folder`,\n`git@github.com/awesome/projen-vuejs#1.2.3`, etc.\n\n```bash\n$ pnpm dlx projen new --from projen-vuejs@^2 vuejs-ts --description \"my awesome vue project\"\n```\n\nUnder the hood, `projen new` will install the `projen-vuejs` module from npm\n(version 2.0.0 and above), discover the project types in it and bootstrap the\n`vuejs-ts` project type. It will assign the value `\"my awesome vue project\"` to\nthe `description` field. If you examine your `.projenrc.js` file, you'll see\nthat `projen-vuejs` is defined as a dev dependency:\n\n```javascript\nconst { VueJsProject } = require('projen-vuejs');\n\nconst project = new VueJsProject({\n name: 'my-vuejs-sample',\n description: \"my awesome vue project\",\n // ...\n devDeps: [\n 'projen-vuejs'\n ]\n});\n\nproject.synth();\n```\n\n## Roadmap\n\nSee [Vision](./VISION.md).\n\n## FAQ\n\n### Do I have to write my configuration in JavaScript?\n\nNot at all! JavaScript is the default, but it's also possible to write it in\nJava, Python, TypeScript, or even JSON. This is made\npossible by the [jsii](https://github.com/aws/jsii) library which allows us\nto write APIs once and generate libraries in several languages. You can choose\na different language by passing the `--projenrc-ts`, `--projenrc-py`, `--projenrc-java`, or\n`--projenrc-json` flags when running `projen new`.\n\nNote: using a `.projenrc.json` file to specify configuration only allows\naccessing a subset of the entire API - the options which are passed to the\nconstructor of each project type.\n\n### How does projen work with my IDE?\n\nprojen has an unofficial [VS Code extension]. Check it out!\n\n[VS Code extension]: https://marketplace.visualstudio.com/items?itemName=MarkMcCulloh.vscode-projen\n\n## Community\n\nThe projen community can be found within the #projen channel in the [cdk.dev]\ncommunity Slack workspace.\n\n[cdk.dev]: https://cdk.dev/\n\n## Contributions\n\nContributions of all kinds are welcome! Check out our [contributor's\nguide](./CONTRIBUTING.md) and our [code of conduct](./CODE_OF_CONDUCT.md).\n\nFor a quick start, check out a development environment:\n\n```bash\n$ git clone git@github.com:projen/projen\n$ cd projen\n$ npm ci\n$ npm run watch # compile in the background\n```\n\n### Contributors\n\nThanks goes to [our wonderful contributors](https://github.com/projen/projen/graphs/contributors)!\n\n## License\n\nDistributed under the [Apache-2.0](./LICENSE) license.\n"
86
86
  },
87
87
  "repository": {
88
88
  "type": "git",
@@ -100,14 +100,14 @@
100
100
  "projen.build": {
101
101
  "locationInModule": {
102
102
  "filename": "src/index.ts",
103
- "line": 60
103
+ "line": 61
104
104
  },
105
105
  "symbolId": "src/build/index:"
106
106
  },
107
107
  "projen.cdk": {
108
108
  "locationInModule": {
109
109
  "filename": "src/index.ts",
110
- "line": 59
110
+ "line": 60
111
111
  },
112
112
  "symbolId": "src/cdk/index:"
113
113
  },
@@ -125,6 +125,13 @@
125
125
  },
126
126
  "symbolId": "src/cdktf/index:"
127
127
  },
128
+ "projen.cdktn": {
129
+ "locationInModule": {
130
+ "filename": "src/index.ts",
131
+ "line": 59
132
+ },
133
+ "symbolId": "src/cdktn/index:"
134
+ },
128
135
  "projen.circleci": {
129
136
  "locationInModule": {
130
137
  "filename": "src/index.ts",
@@ -21546,18 +21553,19 @@
21546
21553
  "custom": {
21547
21554
  "pjid": "cdktf-construct"
21548
21555
  },
21556
+ "deprecated": "CDKTF has been archived by HashiCorp. Use ConstructLibraryCdktn from the cdktn module instead.\nCDKTN is a community-driven fork that continues active development. Learn more at https://cdktn.io/",
21549
21557
  "remarks": "A multi-language (jsii) construct library which vends constructs designed to\nuse within the CDK for Terraform (CDKTF), with a friendly workflow and\nautomatic publishing to the construct catalog.",
21550
- "stability": "experimental",
21558
+ "stability": "deprecated",
21551
21559
  "summary": "CDKTF construct library project."
21552
21560
  },
21553
21561
  "fqn": "projen.cdktf.ConstructLibraryCdktf",
21554
21562
  "initializer": {
21555
21563
  "docs": {
21556
- "stability": "experimental"
21564
+ "stability": "deprecated"
21557
21565
  },
21558
21566
  "locationInModule": {
21559
21567
  "filename": "src/cdktf/cdktf-construct.ts",
21560
- "line": 30
21568
+ "line": 32
21561
21569
  },
21562
21570
  "parameters": [
21563
21571
  {
@@ -21571,7 +21579,7 @@
21571
21579
  "kind": "class",
21572
21580
  "locationInModule": {
21573
21581
  "filename": "src/cdktf/cdktf-construct.ts",
21574
- "line": 29
21582
+ "line": 31
21575
21583
  },
21576
21584
  "name": "ConstructLibraryCdktf",
21577
21585
  "namespace": "cdktf",
@@ -21636,6 +21644,103 @@
21636
21644
  ],
21637
21645
  "symbolId": "src/cdktf/cdktf-construct:ConstructLibraryCdktfOptions"
21638
21646
  },
21647
+ "projen.cdktn.ConstructLibraryCdktn": {
21648
+ "assembly": "projen",
21649
+ "base": "projen.cdk.ConstructLibrary",
21650
+ "docs": {
21651
+ "custom": {
21652
+ "pjid": "cdktn-construct"
21653
+ },
21654
+ "remarks": "A multi-language (jsii) construct library which vends constructs designed to\nuse within CDK Terrain (CDKTN), a community-driven fork of CDKTF.\nProvides a friendly workflow and automatic publishing to the construct catalog.\n\nLearn more at https://cdktn.io/",
21655
+ "stability": "experimental",
21656
+ "summary": "CDKTN construct library project."
21657
+ },
21658
+ "fqn": "projen.cdktn.ConstructLibraryCdktn",
21659
+ "initializer": {
21660
+ "docs": {
21661
+ "stability": "experimental"
21662
+ },
21663
+ "locationInModule": {
21664
+ "filename": "src/cdktn/cdktn-construct.ts",
21665
+ "line": 32
21666
+ },
21667
+ "parameters": [
21668
+ {
21669
+ "name": "options",
21670
+ "type": {
21671
+ "fqn": "projen.cdktn.ConstructLibraryCdktnOptions"
21672
+ }
21673
+ }
21674
+ ]
21675
+ },
21676
+ "kind": "class",
21677
+ "locationInModule": {
21678
+ "filename": "src/cdktn/cdktn-construct.ts",
21679
+ "line": 31
21680
+ },
21681
+ "name": "ConstructLibraryCdktn",
21682
+ "namespace": "cdktn",
21683
+ "symbolId": "src/cdktn/cdktn-construct:ConstructLibraryCdktn"
21684
+ },
21685
+ "projen.cdktn.ConstructLibraryCdktnOptions": {
21686
+ "assembly": "projen",
21687
+ "datatype": true,
21688
+ "docs": {
21689
+ "stability": "experimental"
21690
+ },
21691
+ "fqn": "projen.cdktn.ConstructLibraryCdktnOptions",
21692
+ "interfaces": [
21693
+ "projen.cdk.ConstructLibraryOptions"
21694
+ ],
21695
+ "kind": "interface",
21696
+ "locationInModule": {
21697
+ "filename": "src/cdktn/cdktn-construct.ts",
21698
+ "line": 5
21699
+ },
21700
+ "name": "ConstructLibraryCdktnOptions",
21701
+ "namespace": "cdktn",
21702
+ "properties": [
21703
+ {
21704
+ "abstract": true,
21705
+ "docs": {
21706
+ "custom": {
21707
+ "featured": "true"
21708
+ },
21709
+ "default": "\"^0.24.0\"",
21710
+ "stability": "experimental",
21711
+ "summary": "Minimum target version this library is tested against."
21712
+ },
21713
+ "immutable": true,
21714
+ "locationInModule": {
21715
+ "filename": "src/cdktn/cdktn-construct.ts",
21716
+ "line": 11
21717
+ },
21718
+ "name": "cdktnVersion",
21719
+ "type": {
21720
+ "primitive": "string"
21721
+ }
21722
+ },
21723
+ {
21724
+ "abstract": true,
21725
+ "docs": {
21726
+ "default": "\"^10.7.0\"",
21727
+ "stability": "experimental",
21728
+ "summary": "Construct version to use."
21729
+ },
21730
+ "immutable": true,
21731
+ "locationInModule": {
21732
+ "filename": "src/cdktn/cdktn-construct.ts",
21733
+ "line": 17
21734
+ },
21735
+ "name": "constructsVersion",
21736
+ "optional": true,
21737
+ "type": {
21738
+ "primitive": "string"
21739
+ }
21740
+ }
21741
+ ],
21742
+ "symbolId": "src/cdktn/cdktn-construct:ConstructLibraryCdktnOptions"
21743
+ },
21639
21744
  "projen.circleci.CircleCiProps": {
21640
21745
  "assembly": "projen",
21641
21746
  "datatype": true,
@@ -90750,6 +90855,6 @@
90750
90855
  "usedFeatures": [
90751
90856
  "class-covariant-overrides"
90752
90857
  ],
90753
- "version": "0.101.28",
90754
- "fingerprint": "IcQ6bvHUd/oVr1QWCY+mcxB/T58haj3kSelGsqA9aug="
90858
+ "version": "0.101.29",
90859
+ "fingerprint": "SRJobV1ybtsIS9Wq+MabSurhG4n/IMHiEs4EvI/pXLQ="
90755
90860
  }
package/README.md CHANGED
@@ -70,7 +70,7 @@ full list):
70
70
  * [cdk8s-app-py](https://projen.io/docs/api/cdk8s#cdk8spythonapp-) - CDK8s app in Python.
71
71
  * [cdk8s-app-ts](https://projen.io/docs/api/cdk8s#cdk8stypescriptapp-) - CDK8s app in TypeScript.
72
72
  * [cdk8s-construct](https://projen.io/docs/api/cdk8s#constructlibrarycdk8s-) - CDK8s construct library project.
73
- * [cdktf-construct](https://projen.io/docs/api/cdktf#constructlibrarycdktf-) - CDKTF construct library project.
73
+ * [cdktn-construct](https://projen.io/docs/api/cdktn#constructlibrarycdktn-) - CDKTN construct library project.
74
74
  * [java](https://projen.io/docs/api/java#javaproject-) - Java project.
75
75
  * [jsii](https://projen.io/docs/api/cdk#jsiiproject-) - Multi-language jsii library project.
76
76
  * [nextjs](https://projen.io/docs/api/web#nextjsproject-) - Next.js project using JavaScript.
@@ -63,7 +63,7 @@ var AiAgent;
63
63
  * ai.addInstructions("Always write comprehensive tests.");
64
64
  */
65
65
  class AiInstructions extends component_1.Component {
66
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.AiInstructions", version: "0.101.28" };
66
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.AiInstructions", version: "0.101.29" };
67
67
  /**
68
68
  * Returns projen-specific instructions for AI agents.
69
69
  */
@@ -167,7 +167,7 @@ class AiInstructions extends component_1.Component {
167
167
  }
168
168
  exports.AiInstructions = AiInstructions;
169
169
  class AiInstructionsFile extends file_1.FileBase {
170
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.AiInstructionsFile", version: "0.101.28" };
170
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.AiInstructionsFile", version: "0.101.29" };
171
171
  instructions = [];
172
172
  /**
173
173
  * Adds instructions to the instruction file.
@@ -12,7 +12,7 @@ const component_1 = require("../component");
12
12
  * Creates integration tests from entry points discovered in the test tree.
13
13
  */
14
14
  class IntegrationTestAutoDiscover extends cdk_1.IntegrationTestAutoDiscoverBase {
15
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.IntegrationTestAutoDiscover", version: "0.101.28" };
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.IntegrationTestAutoDiscover", version: "0.101.29" };
16
16
  constructor(project, options) {
17
17
  super(project, options);
18
18
  for (const entrypoint of this.entrypoints) {
@@ -30,7 +30,7 @@ exports.IntegrationTestAutoDiscover = IntegrationTestAutoDiscover;
30
30
  * Creates lambdas from entry points discovered in the project's source tree.
31
31
  */
32
32
  class LambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
33
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaAutoDiscover", version: "0.101.28" };
33
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaAutoDiscover", version: "0.101.29" };
34
34
  constructor(project, options) {
35
35
  super(project, {
36
36
  projectdir: options.srcdir,
@@ -50,7 +50,7 @@ exports.LambdaAutoDiscover = LambdaAutoDiscover;
50
50
  * Creates singleton lambdas from entry points discovered in the project's source tree.
51
51
  */
52
52
  class SingletonLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
53
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.SingletonLambdaAutoDiscover", version: "0.101.28" };
53
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.SingletonLambdaAutoDiscover", version: "0.101.29" };
54
54
  constructor(project, options) {
55
55
  super(project, {
56
56
  projectdir: options.srcdir,
@@ -72,7 +72,7 @@ exports.SingletonLambdaAutoDiscover = SingletonLambdaAutoDiscover;
72
72
  * Creates edge lambdas from entry points discovered in the project's source tree.
73
73
  */
74
74
  class EdgeLambdaAutoDiscover extends cdk_1.AutoDiscoverBase {
75
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.EdgeLambdaAutoDiscover", version: "0.101.28" };
75
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.EdgeLambdaAutoDiscover", version: "0.101.29" };
76
76
  constructor(project, options) {
77
77
  super(project, {
78
78
  projectdir: options.srcdir,
@@ -94,7 +94,7 @@ exports.EdgeLambdaAutoDiscover = EdgeLambdaAutoDiscover;
94
94
  * source tree.
95
95
  */
96
96
  class LambdaExtensionAutoDiscover extends cdk_1.AutoDiscoverBase {
97
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaExtensionAutoDiscover", version: "0.101.28" };
97
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaExtensionAutoDiscover", version: "0.101.29" };
98
98
  constructor(project, options) {
99
99
  super(project, {
100
100
  projectdir: options.srcdir,
@@ -115,7 +115,7 @@ exports.LambdaExtensionAutoDiscover = LambdaExtensionAutoDiscover;
115
115
  * project's source and test trees.
116
116
  */
117
117
  class AutoDiscover extends component_1.Component {
118
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AutoDiscover", version: "0.101.28" };
118
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AutoDiscover", version: "0.101.29" };
119
119
  constructor(project, options) {
120
120
  super(project);
121
121
  if (options.lambdaAutoDiscover ?? true) {
@@ -14,7 +14,7 @@ const java_1 = require("../java");
14
14
  * @pjid awscdk-app-java
15
15
  */
16
16
  class AwsCdkJavaApp extends java_1.JavaProject {
17
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkJavaApp", version: "0.101.28" };
17
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkJavaApp", version: "0.101.29" };
18
18
  /**
19
19
  * The `cdk.json` file.
20
20
  */
@@ -14,7 +14,7 @@ const python_project_1 = require("../python/python-project");
14
14
  * @pjid awscdk-app-py
15
15
  */
16
16
  class AwsCdkPythonApp extends python_project_1.PythonProject {
17
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkPythonApp", version: "0.101.28" };
17
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkPythonApp", version: "0.101.29" };
18
18
  /**
19
19
  * Common CDK tasks.
20
20
  */
@@ -54,7 +54,7 @@ const fs_1 = require("../util/fs");
54
54
  * @pjid awscdk-app-ts
55
55
  */
56
56
  class AwsCdkTypeScriptApp extends typescript_1.TypeScriptAppProject {
57
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkTypeScriptApp", version: "0.101.28" };
57
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkTypeScriptApp", version: "0.101.29" };
58
58
  /**
59
59
  * The CDK version this app is using.
60
60
  */
@@ -17,7 +17,7 @@ const dependencies_1 = require("../dependencies");
17
17
  * @pjid awscdk-construct
18
18
  */
19
19
  class AwsCdkConstructLibrary extends cdk_1.ConstructLibrary {
20
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkConstructLibrary", version: "0.101.28" };
20
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkConstructLibrary", version: "0.101.29" };
21
21
  cdkDeps;
22
22
  constructor(options) {
23
23
  super({
@@ -7,7 +7,7 @@ const awscdk_deps_1 = require("./awscdk-deps");
7
7
  * Manages dependencies on the AWS CDK for Java projects.
8
8
  */
9
9
  class AwsCdkDepsJava extends awscdk_deps_1.AwsCdkDeps {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDepsJava", version: "0.101.28" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDepsJava", version: "0.101.29" };
11
11
  packageNames() {
12
12
  return {
13
13
  coreV2: "software.amazon.awscdk/aws-cdk-lib",
@@ -7,7 +7,7 @@ const awscdk_deps_1 = require("./awscdk-deps");
7
7
  * Manages dependencies on the AWS CDK for Node.js projects.
8
8
  */
9
9
  class AwsCdkDepsJs extends awscdk_deps_1.AwsCdkDeps {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDepsJs", version: "0.101.28" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDepsJs", version: "0.101.29" };
11
11
  packageNames() {
12
12
  return {
13
13
  coreV2: "aws-cdk-lib",
@@ -7,7 +7,7 @@ const awscdk_deps_1 = require("./awscdk-deps");
7
7
  * Manages dependencies on the AWS CDK for Python projects.
8
8
  */
9
9
  class AwsCdkDepsPy extends awscdk_deps_1.AwsCdkDeps {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDepsPy", version: "0.101.28" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDepsPy", version: "0.101.29" };
11
11
  packageNames() {
12
12
  return {
13
13
  coreV2: "aws-cdk-lib",
@@ -42,7 +42,7 @@ const dependencies_1 = require("../dependencies");
42
42
  * Manages dependencies on the AWS CDK.
43
43
  */
44
44
  class AwsCdkDeps extends component_1.Component {
45
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDeps", version: "0.101.28" };
45
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.AwsCdkDeps", version: "0.101.29" };
46
46
  /**
47
47
  * The dependency requirement for AWS CDK (e.g. `^2.0.0`).
48
48
  */
@@ -11,7 +11,7 @@ const internal_1 = require("./internal");
11
11
  * CDK V2 feature flags configuration.
12
12
  */
13
13
  class CdkFeatureFlagsV2 {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkFeatureFlagsV2", version: "0.101.28" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkFeatureFlagsV2", version: "0.101.29" };
15
15
  /**
16
16
  * Disable all feature flags.
17
17
  */
@@ -52,7 +52,7 @@ exports.CdkFeatureFlagsV2 = CdkFeatureFlagsV2;
52
52
  * CDK feature flags configuration.
53
53
  */
54
54
  class CdkFeatureFlags {
55
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkFeatureFlags", version: "0.101.28" };
55
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkFeatureFlags", version: "0.101.29" };
56
56
  /**
57
57
  * CDK V2 feature flags configuration.
58
58
  */
@@ -67,7 +67,7 @@ exports.CdkFeatureFlags = CdkFeatureFlags;
67
67
  * Represents cdk.json file.
68
68
  */
69
69
  class CdkConfig extends component_1.Component {
70
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkConfig", version: "0.101.28" };
70
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkConfig", version: "0.101.29" };
71
71
  /**
72
72
  * Represents the JSON file.
73
73
  */
@@ -7,7 +7,7 @@ const component_1 = require("../component");
7
7
  * Adds standard AWS CDK tasks to your project.
8
8
  */
9
9
  class CdkTasks extends component_1.Component {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkTasks", version: "0.101.28" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.CdkTasks", version: "0.101.29" };
11
11
  /**
12
12
  * Synthesizes your app.
13
13
  */
@@ -9,7 +9,7 @@ const dependencies_1 = require("../dependencies");
9
9
  * Cloud integration tests.
10
10
  */
11
11
  class IntegrationTest extends cdk_1.IntegrationTestBase {
12
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.IntegrationTest", version: "0.101.28" };
12
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.IntegrationTest", version: "0.101.29" };
13
13
  /**
14
14
  * Destroy the integration test resources
15
15
  */
@@ -13,7 +13,7 @@ const source_code_1 = require("../source-code");
13
13
  * Create a Lambda Extension
14
14
  */
15
15
  class LambdaExtension extends component_1.Component {
16
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaExtension", version: "0.101.28" };
16
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaExtension", version: "0.101.29" };
17
17
  constructor(project, options) {
18
18
  super(project);
19
19
  const basePath = (0, path_1.join)((0, path_1.dirname)(options.entrypoint), (0, path_1.basename)(options.entrypoint, internal_1.TYPESCRIPT_LAMBDA_EXTENSION_EXT));
@@ -63,7 +63,7 @@ const util_1 = require("../util");
63
63
  * });
64
64
  */
65
65
  class LambdaFunction extends component_1.Component {
66
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaFunction", version: "0.101.28" };
66
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaFunction", version: "0.101.29" };
67
67
  /**
68
68
  * Defines a pre-bundled AWS Lambda function construct from handler code.
69
69
  *
@@ -218,7 +218,7 @@ exports.LambdaFunction = LambdaFunction;
218
218
  class LambdaRuntime {
219
219
  functionRuntime;
220
220
  esbuildTarget;
221
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaRuntime", version: "0.101.28" };
221
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.awscdk.LambdaRuntime", version: "0.101.29" };
222
222
  /**
223
223
  * Node.js 14.x
224
224
  * @deprecated Node.js 14 runtime has been deprecated on Dec 4, 2023
@@ -47,7 +47,7 @@ const runner_options_1 = require("../runner-options");
47
47
  const consts_1 = require("./private/consts");
48
48
  const name_1 = require("../util/name");
49
49
  class BuildWorkflow extends component_1.Component {
50
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.build.BuildWorkflow", version: "0.101.28" };
50
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.build.BuildWorkflow", version: "0.101.29" };
51
51
  /**
52
52
  * Name of generated github workflow
53
53
  */
@@ -43,7 +43,7 @@ const component_1 = require("../component");
43
43
  * Base class for auto-discovering and creating project subcomponents.
44
44
  */
45
45
  class AutoDiscoverBase extends component_1.Component {
46
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.AutoDiscoverBase", version: "0.101.28" };
46
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.AutoDiscoverBase", version: "0.101.29" };
47
47
  /**
48
48
  * Auto-discovered entry points with paths relative to the project
49
49
  * directory.
@@ -62,7 +62,7 @@ exports.AutoDiscoverBase = AutoDiscoverBase;
62
62
  * Base class for locating integration tests in the project's test tree.
63
63
  */
64
64
  class IntegrationTestAutoDiscoverBase extends AutoDiscoverBase {
65
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.IntegrationTestAutoDiscoverBase", version: "0.101.28" };
65
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.IntegrationTestAutoDiscoverBase", version: "0.101.29" };
66
66
  constructor(project, options) {
67
67
  super(project, {
68
68
  extension: internal_1.TYPESCRIPT_INTEG_EXT,
@@ -7,7 +7,7 @@ const jsii_project_1 = require("./jsii-project");
7
7
  * A multi-language library for CDK constructs.
8
8
  */
9
9
  class ConstructLibrary extends jsii_project_1.JsiiProject {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.ConstructLibrary", version: "0.101.28" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.ConstructLibrary", version: "0.101.29" };
11
11
  constructor(options) {
12
12
  super(options);
13
13
  this.addKeywords("cdk"); // publish to the catalog
@@ -7,7 +7,7 @@ const posix_1 = require("path/posix");
7
7
  const internal_1 = require("./internal");
8
8
  const component_1 = require("../component");
9
9
  class IntegrationTestBase extends component_1.Component {
10
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.IntegrationTestBase", version: "0.101.28" };
10
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.IntegrationTestBase", version: "0.101.29" };
11
11
  /**
12
12
  * Deploy the integration test and update the snapshot upon success.
13
13
  */
@@ -50,7 +50,7 @@ var ValidateTsconfig;
50
50
  * }));
51
51
  */
52
52
  class JsiiBuild {
53
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.JsiiBuild", version: "0.101.28" };
53
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.JsiiBuild", version: "0.101.29" };
54
54
  options;
55
55
  extraJobOptions;
56
56
  constructor(options = {}, extraJobOptions) {
@@ -11,7 +11,7 @@ const dependencies_1 = require("../dependencies");
11
11
  * - Enforces that markdown file is checked in
12
12
  */
13
13
  class JsiiDocgen extends component_1.Component {
14
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.JsiiDocgen", version: "0.101.28" };
14
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.JsiiDocgen", version: "0.101.29" };
15
15
  constructor(scope, options = {}) {
16
16
  super(scope);
17
17
  const version = options.version ?? "*";
@@ -19,7 +19,7 @@ var Stability;
19
19
  * @pjid jsii
20
20
  */
21
21
  class JsiiProject extends typescript_1.TypeScriptProject {
22
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.JsiiProject", version: "0.101.28" };
22
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk.JsiiProject", version: "0.101.29" };
23
23
  constructor(options) {
24
24
  const { authorEmail, authorUrl } = parseAuthorAddress(options);
25
25
  const defaultOptions = {
@@ -10,7 +10,7 @@ const component_1 = require("../component");
10
10
  * found in the test tree.
11
11
  */
12
12
  class AutoDiscover extends component_1.Component {
13
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.AutoDiscover", version: "0.101.28" };
13
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.AutoDiscover", version: "0.101.29" };
14
14
  constructor(project, options) {
15
15
  super(project);
16
16
  if (options.integrationTestAutoDiscover ?? true) {
@@ -23,7 +23,7 @@ exports.AutoDiscover = AutoDiscover;
23
23
  * Discovers and creates integration tests from files in the test root.
24
24
  */
25
25
  class IntegrationTestAutoDiscover extends cdk_1.IntegrationTestAutoDiscoverBase {
26
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.IntegrationTestAutoDiscover", version: "0.101.28" };
26
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.IntegrationTestAutoDiscover", version: "0.101.29" };
27
27
  constructor(project, options) {
28
28
  super(project, options);
29
29
  for (const entrypoint of this.entrypoints) {
@@ -12,7 +12,7 @@ const python_project_1 = require("../python/python-project");
12
12
  * @pjid cdk8s-app-py
13
13
  */
14
14
  class Cdk8sPythonApp extends python_project_1.PythonProject {
15
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.Cdk8sPythonApp", version: "0.101.28" };
15
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.Cdk8sPythonApp", version: "0.101.29" };
16
16
  /**
17
17
  * The CDK8s app entrypoint
18
18
  */
@@ -50,7 +50,7 @@ const yaml_1 = require("../yaml");
50
50
  * @pjid cdk8s-app-ts
51
51
  */
52
52
  class Cdk8sTypeScriptApp extends typescript_1.TypeScriptAppProject {
53
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.Cdk8sTypeScriptApp", version: "0.101.28" };
53
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.Cdk8sTypeScriptApp", version: "0.101.29" };
54
54
  /**
55
55
  * The CDK8s app entrypoint
56
56
  */
@@ -48,7 +48,7 @@ const cdk_1 = require("../cdk");
48
48
  * @pjid cdk8s-construct
49
49
  */
50
50
  class ConstructLibraryCdk8s extends cdk_1.ConstructLibrary {
51
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.ConstructLibraryCdk8s", version: "0.101.28" };
51
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.ConstructLibraryCdk8s", version: "0.101.29" };
52
52
  /**
53
53
  * The CDK8s version this app is using.
54
54
  */
@@ -4,7 +4,7 @@ exports.Cdk8sDepsPy = void 0;
4
4
  const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
5
5
  const cdk8s_deps_1 = require("./cdk8s-deps");
6
6
  class Cdk8sDepsPy extends cdk8s_deps_1.Cdk8sDeps {
7
- static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.Cdk8sDepsPy", version: "0.101.28" };
7
+ static [JSII_RTTI_SYMBOL_1] = { fqn: "projen.cdk8s.Cdk8sDepsPy", version: "0.101.29" };
8
8
  packageNames() {
9
9
  return {
10
10
  cdk8s: "cdk8s",