@taimos/projen 0.0.187 → 0.0.189

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.
package/API.md CHANGED
@@ -4,9 +4,7 @@
4
4
 
5
5
  Name|Description
6
6
  ----|-----------
7
- [CdkPipelineAspect](#taimos-projen-cdkpipelineaspect)|*No description*
8
7
  [PrivateTaimosCdkApp](#taimos-projen-privatetaimoscdkapp)|Private AWS CDK app in TypeScript.
9
- [SopsAspect](#taimos-projen-sopsaspect)|*No description*
10
8
  [TaimosCdkApp](#taimos-projen-taimoscdkapp)|AWS CDK app in TypeScript.
11
9
  [TaimosCdkConstructLibrary](#taimos-projen-taimoscdkconstructlibrary)|TypeScript library.
12
10
  [TaimosPrivateTypescriptLibrary](#taimos-projen-taimosprivatetypescriptlibrary)|Private TypeScript library.
@@ -18,7 +16,6 @@ Name|Description
18
16
  Name|Description
19
17
  ----|-----------
20
18
  [PrivateTaimosCdkAppOptions](#taimos-projen-privatetaimoscdkappoptions)|*No description*
21
- [SopsAspectOptions](#taimos-projen-sopsaspectoptions)|*No description*
22
19
  [TaimosCdkAppOptions](#taimos-projen-taimoscdkappoptions)|*No description*
23
20
  [TaimosCdkConstructLibraryOptions](#taimos-projen-taimoscdkconstructlibraryoptions)|*No description*
24
21
  [TaimosPrivateTypescriptLibraryOptions](#taimos-projen-taimosprivatetypescriptlibraryoptions)|*No description*
@@ -26,30 +23,11 @@ Name|Description
26
23
 
27
24
 
28
25
 
29
- ## class CdkPipelineAspect <a id="taimos-projen-cdkpipelineaspect"></a>
30
-
31
-
32
-
33
- __Extends__: [Component](#projen-component)
34
-
35
- ### Initializer
36
-
37
-
38
-
39
-
40
- ```ts
41
- new CdkPipelineAspect(app: TaimosCdkApp)
42
- ```
43
-
44
- * **app** (<code>[TaimosCdkApp](#taimos-projen-taimoscdkapp)</code>) *No description*
45
-
46
-
47
-
48
-
49
26
  ## class PrivateTaimosCdkApp <a id="taimos-projen-privatetaimoscdkapp"></a>
50
27
 
51
28
  Private AWS CDK app in TypeScript.
52
29
 
30
+ __Implements__: [IConstruct](#constructs-iconstruct), [IDependable](#constructs-idependable)
53
31
  __Extends__: [TaimosCdkApp](#taimos-projen-taimoscdkapp)
54
32
 
55
33
  ### Initializer
@@ -64,18 +42,20 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
64
42
  * **options** (<code>[PrivateTaimosCdkAppOptions](#taimos-projen-privatetaimoscdkappoptions)</code>) *No description*
65
43
  * **name** (<code>string</code>) This is the name of your project.
66
44
  * **commitGenerated** (<code>boolean</code>) Whether to commit the managed files by default. __*Default*__: true
45
+ * **gitIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .gitignore file. __*Optional*__
46
+ * **gitOptions** (<code>[GitOptions](#projen-gitoptions)</code>) Configuration options for git. __*Optional*__
67
47
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
68
48
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
69
49
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
70
50
  * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
71
51
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
72
- * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
52
+ * **projenrcJsonOptions** (<code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code>) Options for .projenrc.json. __*Default*__: default options
73
53
  * **renovatebot** (<code>boolean</code>) Use renovatebot to handle dependency upgrades. __*Default*__: false
74
54
  * **renovatebotOptions** (<code>[RenovatebotOptions](#projen-renovatebotoptions)</code>) Options for renovatebot. __*Default*__: default options
75
55
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
76
56
  * **autoMerge** (<code>boolean</code>) Enable automatic merging on GitHub. __*Default*__: true
77
57
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
78
- * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
58
+ * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true, but false for subprojects
79
59
  * **devContainer** (<code>boolean</code>) Add a VSCode development environment (used for GitHub Codespaces). __*Default*__: false
80
60
  * **github** (<code>boolean</code>) Enable GitHub integration. __*Default*__: true
81
61
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
@@ -111,18 +91,21 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
111
91
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
112
92
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
113
93
  * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
94
+ * **npmProvenance** (<code>boolean</code>) Should provenance statements be generated when the package is published. __*Default*__: true for public packages, false otherwise
114
95
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
115
96
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
116
97
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
117
- * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
98
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN_CLASSIC
118
99
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
119
100
  * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
120
101
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
102
+ * **pnpmVersion** (<code>string</code>) The version of PNPM to use if using PNPM as a package manager. __*Default*__: "7"
121
103
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
122
104
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
123
105
  * **scopedPackagesOptions** (<code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code>) Options for privately hosted scoped packages. __*Default*__: fetch all scoped packages from the public npm registry
124
106
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
125
107
  * **stability** (<code>string</code>) Package's Stability. __*Optional*__
108
+ * **yarnBerryOptions** (<code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code>) Options for Yarn Berry. __*Default*__: Yarn Berry v4 with all default options
126
109
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `publib` which is used to publish modules to npm. __*Default*__: "latest"
127
110
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
128
111
  * **minMajorVersion** (<code>number</code>) Minimal Major version to release. __*Default*__: No minimum version is being enforced
@@ -131,6 +114,7 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
131
114
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
132
115
  * **publishDryRun** (<code>boolean</code>) Instead of actually publishing to package managers, just print the publishing command. __*Default*__: false
133
116
  * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
117
+ * **releasableCommits** (<code>[ReleasableCommits](#projen-releasablecommits)</code>) Find commits that should be considered releasable Used to decide if a release is required. __*Default*__: ReleasableCommits.everyCommit()
134
118
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
135
119
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
136
120
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -138,24 +122,26 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
138
122
  * **releaseSchedule** (<code>string</code>) CRON schedule to trigger new releases. __*Default*__: no scheduled releases
139
123
  * **releaseTagPrefix** (<code>string</code>) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. __*Default*__: "v"
140
124
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
141
- * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
125
+ * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "release"
142
126
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
143
127
  * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
144
128
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
145
129
  * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
130
+ * **workflowRunsOnGroup** (<code>[GroupRunnerOptions](#projen-grouprunneroptions)</code>) Github Runner Group selection options. __*Optional*__
146
131
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
147
132
  * **artifactsDirectory** (<code>string</code>) A directory which will contain build artifacts. __*Default*__: "dist"
148
133
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
149
134
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
150
135
  * **buildWorkflowTriggers** (<code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code>) Build workflow triggers. __*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
151
136
  * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
152
- * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
137
+ * **checkLicenses** (<code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code>) Configure which licenses should be deemed acceptable for use by dependencies. __*Default*__: no license checks are run during the build and all licenses will be accepted
138
+ * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. __*Default*__: false
153
139
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
154
140
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
155
141
  * **copyrightPeriod** (<code>string</code>) The copyright years to put in the LICENSE file. __*Default*__: current year
156
142
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
157
143
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
158
- * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
144
+ * **depsUpgrade** (<code>boolean</code>) Use tasks and github workflows to handle dependency upgrades. __*Default*__: true
159
145
  * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for `UpgradeDependencies`. __*Default*__: default options
160
146
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
161
147
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
@@ -163,6 +149,7 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
163
149
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
164
150
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
165
151
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
152
+ * **npmIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .npmignore file. __*Optional*__
166
153
  * **package** (<code>boolean</code>) Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). __*Default*__: true
167
154
  * **prettier** (<code>boolean</code>) Setup prettier. __*Default*__: false
168
155
  * **prettierOptions** (<code>[javascript.PrettierOptions](#projen-javascript-prettieroptions)</code>) Prettier options. __*Default*__: default options
@@ -178,7 +165,9 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
178
165
  * **workflowBootstrapSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
179
166
  * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
180
167
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
168
+ * **workflowPackageCache** (<code>boolean</code>) Enable Node.js package cache in GitHub workflows. __*Default*__: false
181
169
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
170
+ * **disableTsconfigDev** (<code>boolean</code>) Do not generate a `tsconfig.dev.json` file. __*Default*__: false
182
171
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
183
172
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
184
173
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
@@ -193,6 +182,7 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
193
182
  * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
194
183
  * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
195
184
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
185
+ * **tsJestOptions** (<code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code>) Options for ts-jest. __*Optional*__
196
186
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
197
187
  * **buildCommand** (<code>string</code>) A command to execute before synthesis. __*Default*__: no build command
198
188
  * **cdkout** (<code>string</code>) cdk.out directory. __*Default*__: "cdk.out"
@@ -211,58 +201,21 @@ new PrivateTaimosCdkApp(options: PrivateTaimosCdkAppOptions)
211
201
  * **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
212
202
  * **appEntrypoint** (<code>string</code>) The CDK app's entrypoint (relative to the source directory, which is "src" by default). __*Default*__: "main.ts"
213
203
  * **edgeLambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
204
+ * **experimentalIntegRunner** (<code>boolean</code>) Enable experimental support for the AWS CDK integ-runner. __*Default*__: false
214
205
  * **integrationTestAutoDiscover** (<code>boolean</code>) Automatically discovers and creates integration tests for each `.integ.ts` file in under your test directory. __*Default*__: true
215
206
  * **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
216
207
  * **lambdaExtensionAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaExtension` for each `.lambda-extension.ts` entrypoint in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
217
208
  * **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
218
- * **cdkPipelines** (<code>boolean</code>) Enable CDK pipelines. __*Default*__: false
219
- * **sops** (<code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code>) Enable storing secrets using Mozilla SOPS. __*Default*__: no SOPS config
220
-
221
-
222
-
223
- ### Properties
224
-
225
-
226
- Name | Type | Description
227
- -----|------|-------------
228
- **npmConfig** | <code>[javascript.NpmConfig](#projen-javascript-npmconfig)</code> | <span></span>
229
-
230
-
231
-
232
- ## class SopsAspect <a id="taimos-projen-sopsaspect"></a>
233
-
234
-
235
-
236
- __Extends__: [Component](#projen-component)
237
-
238
- ### Initializer
209
+ * **codeArtifact** (<code>boolean</code>) Whether to enable integration with AWS CodeArtifact for package management. __*Default*__: false
239
210
 
240
211
 
241
212
 
242
213
 
243
- ```ts
244
- new SopsAspect(app: TypeScriptProject, options: SopsAspectOptions)
245
- ```
246
-
247
- * **app** (<code>[typescript.TypeScriptProject](#projen-typescript-typescriptproject)</code>) *No description*
248
- * **options** (<code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code>) *No description*
249
- * **secrets** (<code>Map<string, string></code>) Define a mapping of SOPS files to SecretsManager secrets.
250
-
251
-
252
-
253
- ### Properties
254
-
255
-
256
- Name | Type | Description
257
- -----|------|-------------
258
- **generatedCodeFile** | <code>[SourceCode](#projen-sourcecode)</code> | <span></span>
259
-
260
-
261
-
262
214
  ## class TaimosCdkApp <a id="taimos-projen-taimoscdkapp"></a>
263
215
 
264
216
  AWS CDK app in TypeScript.
265
217
 
218
+ __Implements__: [IConstruct](#constructs-iconstruct), [IDependable](#constructs-idependable)
266
219
  __Extends__: [awscdk.AwsCdkTypeScriptApp](#projen-awscdk-awscdktypescriptapp)
267
220
 
268
221
  ### Initializer
@@ -277,18 +230,20 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
277
230
  * **options** (<code>[TaimosCdkAppOptions](#taimos-projen-taimoscdkappoptions)</code>) *No description*
278
231
  * **name** (<code>string</code>) This is the name of your project.
279
232
  * **commitGenerated** (<code>boolean</code>) Whether to commit the managed files by default. __*Default*__: true
233
+ * **gitIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .gitignore file. __*Optional*__
234
+ * **gitOptions** (<code>[GitOptions](#projen-gitoptions)</code>) Configuration options for git. __*Optional*__
280
235
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
281
236
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
282
237
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
283
238
  * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
284
239
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
285
- * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
240
+ * **projenrcJsonOptions** (<code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code>) Options for .projenrc.json. __*Default*__: default options
286
241
  * **renovatebot** (<code>boolean</code>) Use renovatebot to handle dependency upgrades. __*Default*__: false
287
242
  * **renovatebotOptions** (<code>[RenovatebotOptions](#projen-renovatebotoptions)</code>) Options for renovatebot. __*Default*__: default options
288
243
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
289
244
  * **autoMerge** (<code>boolean</code>) Enable automatic merging on GitHub. __*Default*__: true
290
245
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
291
- * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
246
+ * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true, but false for subprojects
292
247
  * **devContainer** (<code>boolean</code>) Add a VSCode development environment (used for GitHub Codespaces). __*Default*__: false
293
248
  * **github** (<code>boolean</code>) Enable GitHub integration. __*Default*__: true
294
249
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
@@ -324,18 +279,21 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
324
279
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
325
280
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
326
281
  * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
282
+ * **npmProvenance** (<code>boolean</code>) Should provenance statements be generated when the package is published. __*Default*__: true for public packages, false otherwise
327
283
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
328
284
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
329
285
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
330
- * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
286
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN_CLASSIC
331
287
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
332
288
  * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
333
289
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
290
+ * **pnpmVersion** (<code>string</code>) The version of PNPM to use if using PNPM as a package manager. __*Default*__: "7"
334
291
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
335
292
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
336
293
  * **scopedPackagesOptions** (<code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code>) Options for privately hosted scoped packages. __*Default*__: fetch all scoped packages from the public npm registry
337
294
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
338
295
  * **stability** (<code>string</code>) Package's Stability. __*Optional*__
296
+ * **yarnBerryOptions** (<code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code>) Options for Yarn Berry. __*Default*__: Yarn Berry v4 with all default options
339
297
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `publib` which is used to publish modules to npm. __*Default*__: "latest"
340
298
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
341
299
  * **minMajorVersion** (<code>number</code>) Minimal Major version to release. __*Default*__: No minimum version is being enforced
@@ -344,6 +302,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
344
302
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
345
303
  * **publishDryRun** (<code>boolean</code>) Instead of actually publishing to package managers, just print the publishing command. __*Default*__: false
346
304
  * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
305
+ * **releasableCommits** (<code>[ReleasableCommits](#projen-releasablecommits)</code>) Find commits that should be considered releasable Used to decide if a release is required. __*Default*__: ReleasableCommits.everyCommit()
347
306
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
348
307
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
349
308
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -351,24 +310,26 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
351
310
  * **releaseSchedule** (<code>string</code>) CRON schedule to trigger new releases. __*Default*__: no scheduled releases
352
311
  * **releaseTagPrefix** (<code>string</code>) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. __*Default*__: "v"
353
312
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
354
- * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
313
+ * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "release"
355
314
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
356
315
  * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
357
316
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
358
317
  * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
318
+ * **workflowRunsOnGroup** (<code>[GroupRunnerOptions](#projen-grouprunneroptions)</code>) Github Runner Group selection options. __*Optional*__
359
319
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
360
320
  * **artifactsDirectory** (<code>string</code>) A directory which will contain build artifacts. __*Default*__: "dist"
361
321
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
362
322
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
363
323
  * **buildWorkflowTriggers** (<code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code>) Build workflow triggers. __*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
364
324
  * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
365
- * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
325
+ * **checkLicenses** (<code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code>) Configure which licenses should be deemed acceptable for use by dependencies. __*Default*__: no license checks are run during the build and all licenses will be accepted
326
+ * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. __*Default*__: false
366
327
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
367
328
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
368
329
  * **copyrightPeriod** (<code>string</code>) The copyright years to put in the LICENSE file. __*Default*__: current year
369
330
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
370
331
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
371
- * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
332
+ * **depsUpgrade** (<code>boolean</code>) Use tasks and github workflows to handle dependency upgrades. __*Default*__: true
372
333
  * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for `UpgradeDependencies`. __*Default*__: default options
373
334
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
374
335
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
@@ -376,6 +337,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
376
337
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
377
338
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
378
339
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
340
+ * **npmIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .npmignore file. __*Optional*__
379
341
  * **package** (<code>boolean</code>) Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). __*Default*__: true
380
342
  * **prettier** (<code>boolean</code>) Setup prettier. __*Default*__: false
381
343
  * **prettierOptions** (<code>[javascript.PrettierOptions](#projen-javascript-prettieroptions)</code>) Prettier options. __*Default*__: default options
@@ -391,7 +353,9 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
391
353
  * **workflowBootstrapSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
392
354
  * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
393
355
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
356
+ * **workflowPackageCache** (<code>boolean</code>) Enable Node.js package cache in GitHub workflows. __*Default*__: false
394
357
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
358
+ * **disableTsconfigDev** (<code>boolean</code>) Do not generate a `tsconfig.dev.json` file. __*Default*__: false
395
359
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
396
360
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
397
361
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
@@ -406,6 +370,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
406
370
  * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
407
371
  * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
408
372
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
373
+ * **tsJestOptions** (<code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code>) Options for ts-jest. __*Optional*__
409
374
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
410
375
  * **buildCommand** (<code>string</code>) A command to execute before synthesis. __*Default*__: no build command
411
376
  * **cdkout** (<code>string</code>) cdk.out directory. __*Default*__: "cdk.out"
@@ -424,12 +389,12 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
424
389
  * **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
425
390
  * **appEntrypoint** (<code>string</code>) The CDK app's entrypoint (relative to the source directory, which is "src" by default). __*Default*__: "main.ts"
426
391
  * **edgeLambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
392
+ * **experimentalIntegRunner** (<code>boolean</code>) Enable experimental support for the AWS CDK integ-runner. __*Default*__: false
427
393
  * **integrationTestAutoDiscover** (<code>boolean</code>) Automatically discovers and creates integration tests for each `.integ.ts` file in under your test directory. __*Default*__: true
428
394
  * **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaFunction` for each `.lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
429
395
  * **lambdaExtensionAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaExtension` for each `.lambda-extension.ts` entrypoint in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
430
396
  * **lambdaOptions** (<code>[awscdk.LambdaFunctionCommonOptions](#projen-awscdk-lambdafunctioncommonoptions)</code>) Common options for all AWS Lambda functions. __*Default*__: default options
431
- * **cdkPipelines** (<code>boolean</code>) Enable CDK pipelines. __*Default*__: false
432
- * **sops** (<code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code>) Enable storing secrets using Mozilla SOPS. __*Default*__: no SOPS config
397
+ * **codeArtifact** (<code>boolean</code>) Whether to enable integration with AWS CodeArtifact for package management. __*Default*__: false
433
398
 
434
399
 
435
400
 
@@ -438,6 +403,7 @@ new TaimosCdkApp(options: TaimosCdkAppOptions)
438
403
 
439
404
  TypeScript library.
440
405
 
406
+ __Implements__: [IConstruct](#constructs-iconstruct), [IDependable](#constructs-idependable)
441
407
  __Extends__: [awscdk.AwsCdkConstructLibrary](#projen-awscdk-awscdkconstructlibrary)
442
408
 
443
409
  ### Initializer
@@ -452,18 +418,20 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
452
418
  * **options** (<code>[TaimosCdkConstructLibraryOptions](#taimos-projen-taimoscdkconstructlibraryoptions)</code>) *No description*
453
419
  * **name** (<code>string</code>) This is the name of your project.
454
420
  * **commitGenerated** (<code>boolean</code>) Whether to commit the managed files by default. __*Default*__: true
421
+ * **gitIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .gitignore file. __*Optional*__
422
+ * **gitOptions** (<code>[GitOptions](#projen-gitoptions)</code>) Configuration options for git. __*Optional*__
455
423
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
456
424
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
457
425
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
458
426
  * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
459
427
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
460
- * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
428
+ * **projenrcJsonOptions** (<code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code>) Options for .projenrc.json. __*Default*__: default options
461
429
  * **renovatebot** (<code>boolean</code>) Use renovatebot to handle dependency upgrades. __*Default*__: false
462
430
  * **renovatebotOptions** (<code>[RenovatebotOptions](#projen-renovatebotoptions)</code>) Options for renovatebot. __*Default*__: default options
463
431
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
464
432
  * **autoMerge** (<code>boolean</code>) Enable automatic merging on GitHub. __*Default*__: true
465
433
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
466
- * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
434
+ * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true, but false for subprojects
467
435
  * **devContainer** (<code>boolean</code>) Add a VSCode development environment (used for GitHub Codespaces). __*Default*__: false
468
436
  * **github** (<code>boolean</code>) Enable GitHub integration. __*Default*__: true
469
437
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
@@ -499,18 +467,21 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
499
467
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
500
468
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
501
469
  * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
470
+ * **npmProvenance** (<code>boolean</code>) Should provenance statements be generated when the package is published. __*Default*__: true for public packages, false otherwise
502
471
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
503
472
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
504
473
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
505
- * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
474
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN_CLASSIC
506
475
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
507
476
  * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
508
477
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
478
+ * **pnpmVersion** (<code>string</code>) The version of PNPM to use if using PNPM as a package manager. __*Default*__: "7"
509
479
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
510
480
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
511
481
  * **scopedPackagesOptions** (<code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code>) Options for privately hosted scoped packages. __*Default*__: fetch all scoped packages from the public npm registry
512
482
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
513
483
  * **stability** (<code>string</code>) Package's Stability. __*Optional*__
484
+ * **yarnBerryOptions** (<code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code>) Options for Yarn Berry. __*Default*__: Yarn Berry v4 with all default options
514
485
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `publib` which is used to publish modules to npm. __*Default*__: "latest"
515
486
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
516
487
  * **minMajorVersion** (<code>number</code>) Minimal Major version to release. __*Default*__: No minimum version is being enforced
@@ -519,6 +490,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
519
490
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
520
491
  * **publishDryRun** (<code>boolean</code>) Instead of actually publishing to package managers, just print the publishing command. __*Default*__: false
521
492
  * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
493
+ * **releasableCommits** (<code>[ReleasableCommits](#projen-releasablecommits)</code>) Find commits that should be considered releasable Used to decide if a release is required. __*Default*__: ReleasableCommits.everyCommit()
522
494
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
523
495
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
524
496
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -526,24 +498,26 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
526
498
  * **releaseSchedule** (<code>string</code>) CRON schedule to trigger new releases. __*Default*__: no scheduled releases
527
499
  * **releaseTagPrefix** (<code>string</code>) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. __*Default*__: "v"
528
500
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
529
- * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
501
+ * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "release"
530
502
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
531
503
  * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
532
504
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
533
505
  * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
506
+ * **workflowRunsOnGroup** (<code>[GroupRunnerOptions](#projen-grouprunneroptions)</code>) Github Runner Group selection options. __*Optional*__
534
507
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
535
508
  * **artifactsDirectory** (<code>string</code>) A directory which will contain build artifacts. __*Default*__: "dist"
536
509
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
537
510
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
538
511
  * **buildWorkflowTriggers** (<code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code>) Build workflow triggers. __*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
539
512
  * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
540
- * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
513
+ * **checkLicenses** (<code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code>) Configure which licenses should be deemed acceptable for use by dependencies. __*Default*__: no license checks are run during the build and all licenses will be accepted
514
+ * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. __*Default*__: false
541
515
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
542
516
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
543
517
  * **copyrightPeriod** (<code>string</code>) The copyright years to put in the LICENSE file. __*Default*__: current year
544
518
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
545
519
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
546
- * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
520
+ * **depsUpgrade** (<code>boolean</code>) Use tasks and github workflows to handle dependency upgrades. __*Default*__: true
547
521
  * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for `UpgradeDependencies`. __*Default*__: default options
548
522
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
549
523
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
@@ -551,6 +525,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
551
525
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
552
526
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
553
527
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
528
+ * **npmIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .npmignore file. __*Optional*__
554
529
  * **package** (<code>boolean</code>) Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). __*Default*__: true
555
530
  * **prettier** (<code>boolean</code>) Setup prettier. __*Default*__: false
556
531
  * **prettierOptions** (<code>[javascript.PrettierOptions](#projen-javascript-prettieroptions)</code>) Prettier options. __*Default*__: default options
@@ -566,7 +541,9 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
566
541
  * **workflowBootstrapSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
567
542
  * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
568
543
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
544
+ * **workflowPackageCache** (<code>boolean</code>) Enable Node.js package cache in GitHub workflows. __*Default*__: false
569
545
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
546
+ * **disableTsconfigDev** (<code>boolean</code>) Do not generate a `tsconfig.dev.json` file. __*Default*__: false
570
547
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
571
548
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
572
549
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
@@ -581,6 +558,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
581
558
  * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
582
559
  * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
583
560
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
561
+ * **tsJestOptions** (<code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code>) Options for ts-jest. __*Optional*__
584
562
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
585
563
  * **author** (<code>string</code>) The name of the library author.
586
564
  * **authorAddress** (<code>string</code>) Email or URL of the library author.
@@ -591,6 +569,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
591
569
  * **docgenFilePath** (<code>string</code>) File path for generated docs. __*Default*__: "API.md"
592
570
  * **dotnet** (<code>[cdk.JsiiDotNetTarget](#projen-cdk-jsiidotnettarget)</code>) *No description* __*Optional*__
593
571
  * **excludeTypescript** (<code>Array<string></code>) Accepts a list of glob patterns. __*Optional*__
572
+ * **jsiiVersion** (<code>string</code>) Version of the jsii compiler to use. __*Default*__: "1.x"
594
573
  * **publishToGo** (<code>[cdk.JsiiGoTarget](#projen-cdk-jsiigotarget)</code>) Publish Go bindings to a git repository. __*Default*__: no publishing
595
574
  * **publishToMaven** (<code>[cdk.JsiiJavaTarget](#projen-cdk-jsiijavatarget)</code>) Publish to maven. __*Default*__: no publishing
596
575
  * **publishToNuget** (<code>[cdk.JsiiDotNetTarget](#projen-cdk-jsiidotnettarget)</code>) Publish to NuGet. __*Default*__: no publishing
@@ -607,6 +586,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
607
586
  * **cdkVersionPinning** (<code>boolean</code>) Use pinned version instead of caret version for CDK. __*Optional*__
608
587
  * **constructsVersion** (<code>string</code>) Minimum version of the `constructs` library to depend on. __*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
609
588
  * **edgeLambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
589
+ * **experimentalIntegRunner** (<code>boolean</code>) Enable experimental support for the AWS CDK integ-runner. __*Default*__: false
610
590
  * **integrationTestAutoDiscover** (<code>boolean</code>) Automatically discovers and creates integration tests for each `.integ.ts` file in under your test directory. __*Default*__: true
611
591
  * **lambdaAutoDiscover** (<code>boolean</code>) Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler. __*Default*__: true
612
592
  * **lambdaExtensionAutoDiscover** (<code>boolean</code>) Automatically adds an `awscdk.LambdaExtension` for each `.lambda-extension.ts` entrypoint in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project. __*Default*__: true
@@ -619,6 +599,7 @@ new TaimosCdkConstructLibrary(options: TaimosCdkConstructLibraryOptions)
619
599
 
620
600
  Private TypeScript library.
621
601
 
602
+ __Implements__: [IConstruct](#constructs-iconstruct), [IDependable](#constructs-idependable)
622
603
  __Extends__: [TaimosTypescriptLibrary](#taimos-projen-taimostypescriptlibrary)
623
604
 
624
605
  ### Initializer
@@ -633,18 +614,20 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
633
614
  * **options** (<code>[TaimosPrivateTypescriptLibraryOptions](#taimos-projen-taimosprivatetypescriptlibraryoptions)</code>) *No description*
634
615
  * **name** (<code>string</code>) This is the name of your project.
635
616
  * **commitGenerated** (<code>boolean</code>) Whether to commit the managed files by default. __*Default*__: true
617
+ * **gitIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .gitignore file. __*Optional*__
618
+ * **gitOptions** (<code>[GitOptions](#projen-gitoptions)</code>) Configuration options for git. __*Optional*__
636
619
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
637
620
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
638
621
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
639
622
  * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
640
623
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
641
- * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
624
+ * **projenrcJsonOptions** (<code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code>) Options for .projenrc.json. __*Default*__: default options
642
625
  * **renovatebot** (<code>boolean</code>) Use renovatebot to handle dependency upgrades. __*Default*__: false
643
626
  * **renovatebotOptions** (<code>[RenovatebotOptions](#projen-renovatebotoptions)</code>) Options for renovatebot. __*Default*__: default options
644
627
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
645
628
  * **autoMerge** (<code>boolean</code>) Enable automatic merging on GitHub. __*Default*__: true
646
629
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
647
- * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
630
+ * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true, but false for subprojects
648
631
  * **devContainer** (<code>boolean</code>) Add a VSCode development environment (used for GitHub Codespaces). __*Default*__: false
649
632
  * **github** (<code>boolean</code>) Enable GitHub integration. __*Default*__: true
650
633
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
@@ -680,18 +663,21 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
680
663
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
681
664
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
682
665
  * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
666
+ * **npmProvenance** (<code>boolean</code>) Should provenance statements be generated when the package is published. __*Default*__: true for public packages, false otherwise
683
667
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
684
668
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
685
669
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
686
- * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
670
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN_CLASSIC
687
671
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
688
672
  * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
689
673
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
674
+ * **pnpmVersion** (<code>string</code>) The version of PNPM to use if using PNPM as a package manager. __*Default*__: "7"
690
675
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
691
676
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
692
677
  * **scopedPackagesOptions** (<code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code>) Options for privately hosted scoped packages. __*Default*__: fetch all scoped packages from the public npm registry
693
678
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
694
679
  * **stability** (<code>string</code>) Package's Stability. __*Optional*__
680
+ * **yarnBerryOptions** (<code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code>) Options for Yarn Berry. __*Default*__: Yarn Berry v4 with all default options
695
681
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `publib` which is used to publish modules to npm. __*Default*__: "latest"
696
682
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
697
683
  * **minMajorVersion** (<code>number</code>) Minimal Major version to release. __*Default*__: No minimum version is being enforced
@@ -700,6 +686,7 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
700
686
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
701
687
  * **publishDryRun** (<code>boolean</code>) Instead of actually publishing to package managers, just print the publishing command. __*Default*__: false
702
688
  * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
689
+ * **releasableCommits** (<code>[ReleasableCommits](#projen-releasablecommits)</code>) Find commits that should be considered releasable Used to decide if a release is required. __*Default*__: ReleasableCommits.everyCommit()
703
690
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
704
691
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
705
692
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -707,24 +694,26 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
707
694
  * **releaseSchedule** (<code>string</code>) CRON schedule to trigger new releases. __*Default*__: no scheduled releases
708
695
  * **releaseTagPrefix** (<code>string</code>) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. __*Default*__: "v"
709
696
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
710
- * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
697
+ * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "release"
711
698
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
712
699
  * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
713
700
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
714
701
  * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
702
+ * **workflowRunsOnGroup** (<code>[GroupRunnerOptions](#projen-grouprunneroptions)</code>) Github Runner Group selection options. __*Optional*__
715
703
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
716
704
  * **artifactsDirectory** (<code>string</code>) A directory which will contain build artifacts. __*Default*__: "dist"
717
705
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
718
706
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
719
707
  * **buildWorkflowTriggers** (<code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code>) Build workflow triggers. __*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
720
708
  * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
721
- * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
709
+ * **checkLicenses** (<code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code>) Configure which licenses should be deemed acceptable for use by dependencies. __*Default*__: no license checks are run during the build and all licenses will be accepted
710
+ * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. __*Default*__: false
722
711
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
723
712
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
724
713
  * **copyrightPeriod** (<code>string</code>) The copyright years to put in the LICENSE file. __*Default*__: current year
725
714
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
726
715
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
727
- * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
716
+ * **depsUpgrade** (<code>boolean</code>) Use tasks and github workflows to handle dependency upgrades. __*Default*__: true
728
717
  * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for `UpgradeDependencies`. __*Default*__: default options
729
718
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
730
719
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
@@ -732,6 +721,7 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
732
721
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
733
722
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
734
723
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
724
+ * **npmIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .npmignore file. __*Optional*__
735
725
  * **package** (<code>boolean</code>) Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). __*Default*__: true
736
726
  * **prettier** (<code>boolean</code>) Setup prettier. __*Default*__: false
737
727
  * **prettierOptions** (<code>[javascript.PrettierOptions](#projen-javascript-prettieroptions)</code>) Prettier options. __*Default*__: default options
@@ -747,7 +737,9 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
747
737
  * **workflowBootstrapSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
748
738
  * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
749
739
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
740
+ * **workflowPackageCache** (<code>boolean</code>) Enable Node.js package cache in GitHub workflows. __*Default*__: false
750
741
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
742
+ * **disableTsconfigDev** (<code>boolean</code>) Do not generate a `tsconfig.dev.json` file. __*Default*__: false
751
743
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
752
744
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
753
745
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
@@ -762,23 +754,17 @@ new TaimosPrivateTypescriptLibrary(options: TaimosPrivateTypescriptLibraryOption
762
754
  * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
763
755
  * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
764
756
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
757
+ * **tsJestOptions** (<code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code>) Options for ts-jest. __*Optional*__
765
758
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
766
759
 
767
760
 
768
761
 
769
- ### Properties
770
-
771
-
772
- Name | Type | Description
773
- -----|------|-------------
774
- **npmConfig** | <code>[javascript.NpmConfig](#projen-javascript-npmconfig)</code> | <span></span>
775
-
776
-
777
762
 
778
763
  ## class TaimosTypescriptLibrary <a id="taimos-projen-taimostypescriptlibrary"></a>
779
764
 
780
765
  TypeScript library.
781
766
 
767
+ __Implements__: [IConstruct](#constructs-iconstruct), [IDependable](#constructs-idependable)
782
768
  __Extends__: [typescript.TypeScriptProject](#projen-typescript-typescriptproject)
783
769
 
784
770
  ### Initializer
@@ -793,18 +779,20 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
793
779
  * **options** (<code>[TaimosTypescriptLibraryOptions](#taimos-projen-taimostypescriptlibraryoptions)</code>) *No description*
794
780
  * **name** (<code>string</code>) This is the name of your project.
795
781
  * **commitGenerated** (<code>boolean</code>) Whether to commit the managed files by default. __*Default*__: true
782
+ * **gitIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .gitignore file. __*Optional*__
783
+ * **gitOptions** (<code>[GitOptions](#projen-gitoptions)</code>) Configuration options for git. __*Optional*__
796
784
  * **logging** (<code>[LoggerOptions](#projen-loggeroptions)</code>) Configure logging options such as verbosity. __*Default*__: {}
797
785
  * **outdir** (<code>string</code>) The root directory of the project. __*Default*__: "."
798
786
  * **parent** (<code>[Project](#projen-project)</code>) The parent project, if this project is part of a bigger project. __*Optional*__
799
787
  * **projenCommand** (<code>string</code>) The shell command to use in order to run the projen CLI. __*Default*__: "npx projen"
800
788
  * **projenrcJson** (<code>boolean</code>) Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation. __*Default*__: false
801
- * **projenrcJsonOptions** (<code>[ProjenrcOptions](#projen-projenrcoptions)</code>) Options for .projenrc.json. __*Default*__: default options
789
+ * **projenrcJsonOptions** (<code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code>) Options for .projenrc.json. __*Default*__: default options
802
790
  * **renovatebot** (<code>boolean</code>) Use renovatebot to handle dependency upgrades. __*Default*__: false
803
791
  * **renovatebotOptions** (<code>[RenovatebotOptions](#projen-renovatebotoptions)</code>) Options for renovatebot. __*Default*__: default options
804
792
  * **autoApproveOptions** (<code>[github.AutoApproveOptions](#projen-github-autoapproveoptions)</code>) Enable and configure the 'auto approve' workflow. __*Default*__: auto approve is disabled
805
793
  * **autoMerge** (<code>boolean</code>) Enable automatic merging on GitHub. __*Default*__: true
806
794
  * **autoMergeOptions** (<code>[github.AutoMergeOptions](#projen-github-automergeoptions)</code>) Configure options for automatic merging on GitHub. __*Default*__: see defaults in `AutoMergeOptions`
807
- * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true
795
+ * **clobber** (<code>boolean</code>) Add a `clobber` task which resets the repo to origin. __*Default*__: true, but false for subprojects
808
796
  * **devContainer** (<code>boolean</code>) Add a VSCode development environment (used for GitHub Codespaces). __*Default*__: false
809
797
  * **github** (<code>boolean</code>) Enable GitHub integration. __*Default*__: true
810
798
  * **githubOptions** (<code>[github.GitHubOptions](#projen-github-githuboptions)</code>) Options for GitHub integration. __*Default*__: see GitHubOptions
@@ -840,18 +828,21 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
840
828
  * **maxNodeVersion** (<code>string</code>) Minimum node.js version to require via `engines` (inclusive). __*Default*__: no max
841
829
  * **minNodeVersion** (<code>string</code>) Minimum Node.js version to require via package.json `engines` (inclusive). __*Default*__: no "engines" specified
842
830
  * **npmAccess** (<code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code>) Access level of the npm package. __*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
831
+ * **npmProvenance** (<code>boolean</code>) Should provenance statements be generated when the package is published. __*Default*__: true for public packages, false otherwise
843
832
  * **npmRegistry** (<code>string</code>) The host name of the npm registry to publish to. __*Optional*__
844
833
  * **npmRegistryUrl** (<code>string</code>) The base URL of the npm package registry. __*Default*__: "https://registry.npmjs.org"
845
834
  * **npmTokenSecret** (<code>string</code>) GitHub secret which contains the NPM token to use when publishing packages. __*Default*__: "NPM_TOKEN"
846
- * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN
835
+ * **packageManager** (<code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code>) The Node Package Manager used to execute scripts. __*Default*__: NodePackageManager.YARN_CLASSIC
847
836
  * **packageName** (<code>string</code>) The "name" in package.json. __*Default*__: defaults to project name
848
837
  * **peerDependencyOptions** (<code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code>) Options for `peerDeps`. __*Optional*__
849
838
  * **peerDeps** (<code>Array<string></code>) Peer dependencies for this module. __*Default*__: []
839
+ * **pnpmVersion** (<code>string</code>) The version of PNPM to use if using PNPM as a package manager. __*Default*__: "7"
850
840
  * **repository** (<code>string</code>) The repository is the location where the actual code for your package lives. __*Optional*__
851
841
  * **repositoryDirectory** (<code>string</code>) If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives. __*Optional*__
852
842
  * **scopedPackagesOptions** (<code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code>) Options for privately hosted scoped packages. __*Default*__: fetch all scoped packages from the public npm registry
853
843
  * **scripts** (<code>Map<string, string></code>) npm scripts to include. __*Default*__: {}
854
844
  * **stability** (<code>string</code>) Package's Stability. __*Optional*__
845
+ * **yarnBerryOptions** (<code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code>) Options for Yarn Berry. __*Default*__: Yarn Berry v4 with all default options
855
846
  * **jsiiReleaseVersion** (<code>string</code>) Version requirement of `publib` which is used to publish modules to npm. __*Default*__: "latest"
856
847
  * **majorVersion** (<code>number</code>) Major version to release from the default branch. __*Default*__: Major version is not enforced.
857
848
  * **minMajorVersion** (<code>number</code>) Minimal Major version to release. __*Default*__: No minimum version is being enforced
@@ -860,6 +851,7 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
860
851
  * **prerelease** (<code>string</code>) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). __*Default*__: normal semantic versions
861
852
  * **publishDryRun** (<code>boolean</code>) Instead of actually publishing to package managers, just print the publishing command. __*Default*__: false
862
853
  * **publishTasks** (<code>boolean</code>) Define publishing tasks that can be executed manually as well as workflows. __*Default*__: false
854
+ * **releasableCommits** (<code>[ReleasableCommits](#projen-releasablecommits)</code>) Find commits that should be considered releasable Used to decide if a release is required. __*Default*__: ReleasableCommits.everyCommit()
863
855
  * **releaseBranches** (<code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code>) Defines additional release branches. __*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
864
856
  * **releaseEveryCommit** (<code>boolean</code>) Automatically release new versions every commit to one of branches in `releaseBranches`. __*Default*__: true
865
857
  * **releaseFailureIssue** (<code>boolean</code>) Create a github issue on every failed publishing task. __*Default*__: false
@@ -867,24 +859,26 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
867
859
  * **releaseSchedule** (<code>string</code>) CRON schedule to trigger new releases. __*Default*__: no scheduled releases
868
860
  * **releaseTagPrefix** (<code>string</code>) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. __*Default*__: "v"
869
861
  * **releaseTrigger** (<code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code>) The release trigger to use. __*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
870
- * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "Release"
862
+ * **releaseWorkflowName** (<code>string</code>) The name of the default release workflow. __*Default*__: "release"
871
863
  * **releaseWorkflowSetupSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) A set of workflow steps to execute in order to setup the workflow container. __*Optional*__
872
864
  * **versionrcOptions** (<code>Map<string, any></code>) Custom configuration used when creating changelog with standard-version package. __*Default*__: standard configuration applicable for GitHub repositories
873
865
  * **workflowContainerImage** (<code>string</code>) Container image to use for GitHub workflows. __*Default*__: default image
874
866
  * **workflowRunsOn** (<code>Array<string></code>) Github Runner selection labels. __*Default*__: ["ubuntu-latest"]
867
+ * **workflowRunsOnGroup** (<code>[GroupRunnerOptions](#projen-grouprunneroptions)</code>) Github Runner Group selection options. __*Optional*__
875
868
  * **defaultReleaseBranch** (<code>string</code>) The name of the main release branch.
876
869
  * **artifactsDirectory** (<code>string</code>) A directory which will contain build artifacts. __*Default*__: "dist"
877
870
  * **autoApproveUpgrades** (<code>boolean</code>) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). __*Default*__: true
878
871
  * **buildWorkflow** (<code>boolean</code>) Define a GitHub workflow for building PRs. __*Default*__: true if not a subproject
879
872
  * **buildWorkflowTriggers** (<code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code>) Build workflow triggers. __*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
880
873
  * **bundlerOptions** (<code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code>) Options for `Bundler`. __*Optional*__
881
- * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret. __*Default*__: false
874
+ * **checkLicenses** (<code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code>) Configure which licenses should be deemed acceptable for use by dependencies. __*Default*__: no license checks are run during the build and all licenses will be accepted
875
+ * **codeCov** (<code>boolean</code>) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`. __*Default*__: false
882
876
  * **codeCovTokenSecret** (<code>string</code>) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories. __*Default*__: if this option is not specified, only public repositories are supported
883
877
  * **copyrightOwner** (<code>string</code>) License copyright owner. __*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
884
878
  * **copyrightPeriod** (<code>string</code>) The copyright years to put in the LICENSE file. __*Default*__: current year
885
879
  * **dependabot** (<code>boolean</code>) Use dependabot to handle dependency upgrades. __*Default*__: false
886
880
  * **dependabotOptions** (<code>[github.DependabotOptions](#projen-github-dependabotoptions)</code>) Options for dependabot. __*Default*__: default options
887
- * **depsUpgrade** (<code>boolean</code>) Use github workflows to handle dependency upgrades. __*Default*__: true
881
+ * **depsUpgrade** (<code>boolean</code>) Use tasks and github workflows to handle dependency upgrades. __*Default*__: true
888
882
  * **depsUpgradeOptions** (<code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code>) Options for `UpgradeDependencies`. __*Default*__: default options
889
883
  * **gitignore** (<code>Array<string></code>) Additional entries to .gitignore. __*Optional*__
890
884
  * **jest** (<code>boolean</code>) Setup jest unit tests. __*Default*__: true
@@ -892,6 +886,7 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
892
886
  * **mutableBuild** (<code>boolean</code>) Automatically update files modified during builds to pull-request branches. __*Default*__: true
893
887
  * **npmignore** (<code>Array<string></code>) Additional entries to .npmignore. __*Optional*__
894
888
  * **npmignoreEnabled** (<code>boolean</code>) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. __*Default*__: true
889
+ * **npmIgnoreOptions** (<code>[IgnoreFileOptions](#projen-ignorefileoptions)</code>) Configuration options for .npmignore file. __*Optional*__
895
890
  * **package** (<code>boolean</code>) Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`). __*Default*__: true
896
891
  * **prettier** (<code>boolean</code>) Setup prettier. __*Default*__: false
897
892
  * **prettierOptions** (<code>[javascript.PrettierOptions](#projen-javascript-prettieroptions)</code>) Prettier options. __*Default*__: default options
@@ -907,7 +902,9 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
907
902
  * **workflowBootstrapSteps** (<code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code>) Workflow steps to use in order to bootstrap this repo. __*Default*__: "yarn install --frozen-lockfile && yarn projen"
908
903
  * **workflowGitIdentity** (<code>[github.GitIdentity](#projen-github-gitidentity)</code>) The git identity to use in workflows. __*Default*__: GitHub Actions
909
904
  * **workflowNodeVersion** (<code>string</code>) The node version to use in GitHub workflows. __*Default*__: same as `minNodeVersion`
905
+ * **workflowPackageCache** (<code>boolean</code>) Enable Node.js package cache in GitHub workflows. __*Default*__: false
910
906
  * **disableTsconfig** (<code>boolean</code>) Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). __*Default*__: false
907
+ * **disableTsconfigDev** (<code>boolean</code>) Do not generate a `tsconfig.dev.json` file. __*Default*__: false
911
908
  * **docgen** (<code>boolean</code>) Docgen by Typedoc. __*Default*__: false
912
909
  * **docsDirectory** (<code>string</code>) Docs directory. __*Default*__: "docs"
913
910
  * **entrypointTypes** (<code>string</code>) The .d.ts file that includes the type declarations for this module. __*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
@@ -922,6 +919,7 @@ new TaimosTypescriptLibrary(options: TaimosTypescriptLibraryOptions)
922
919
  * **tsconfig** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom TSConfig. __*Default*__: default options
923
920
  * **tsconfigDev** (<code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code>) Custom tsconfig options for the development tsconfig.json file (used for testing). __*Default*__: use the production tsconfig options
924
921
  * **tsconfigDevFile** (<code>string</code>) The name of the development tsconfig.json file. __*Default*__: "tsconfig.dev.json"
922
+ * **tsJestOptions** (<code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code>) Options for ts-jest. __*Optional*__
925
923
  * **typescriptVersion** (<code>string</code>) TypeScript version to use. __*Default*__: "latest"
926
924
 
927
925
 
@@ -963,13 +961,14 @@ Name | Type | Description
963
961
  **cdkAssertions**?🔹 | <code>boolean</code> | Install the assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
964
962
  **cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDKv1 modules this project requires.<br/>__*Optional*__
965
963
  **cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
966
- **cdkPipelines**? | <code>boolean</code> | Enable CDK pipelines.<br/>__*Default*__: false
967
964
  **cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
968
965
  **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
969
966
  **cdkout**?🔹 | <code>string</code> | cdk.out directory.<br/>__*Default*__: "cdk.out"
970
- **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
967
+ **checkLicenses**?🔹 | <code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code> | Configure which licenses should be deemed acceptable for use by dependencies.<br/>__*Default*__: no license checks are run during the build and all licenses will be accepted
968
+ **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true, but false for subprojects
969
+ **codeArtifact**? | <code>boolean</code> | Whether to enable integration with AWS CodeArtifact for package management.<br/>__*Default*__: false
971
970
  **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for npm packages using AWS CodeArtifact.<br/>__*Default*__: undefined
972
- **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
971
+ **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.<br/>__*Default*__: false
973
972
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
974
973
  **commitGenerated**?🔹 | <code>boolean</code> | Whether to commit the managed files by default.<br/>__*Default*__: true
975
974
  **constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
@@ -979,12 +978,13 @@ Name | Type | Description
979
978
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
980
979
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
981
980
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
982
- **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
981
+ **depsUpgrade**?🔹 | <code>boolean</code> | Use tasks and github workflows to handle dependency upgrades.<br/>__*Default*__: true
983
982
  **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for `UpgradeDependencies`.<br/>__*Default*__: default options
984
983
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
985
984
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
986
985
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
987
986
  **disableTsconfig**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).<br/>__*Default*__: false
987
+ **disableTsconfigDev**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file.<br/>__*Default*__: false
988
988
  **docgen**?🔹 | <code>boolean</code> | Docgen by Typedoc.<br/>__*Default*__: false
989
989
  **docsDirectory**?🔹 | <code>string</code> | Docs directory.<br/>__*Default*__: "docs"
990
990
  **edgeLambdaAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.<br/>__*Default*__: true
@@ -992,7 +992,10 @@ Name | Type | Description
992
992
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
993
993
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
994
994
  **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
995
+ **experimentalIntegRunner**?🔹 | <code>boolean</code> | Enable experimental support for the AWS CDK integ-runner.<br/>__*Default*__: false
995
996
  **featureFlags**?🔹 | <code>boolean</code> | Include all feature flags in cdk.json.<br/>__*Default*__: true
997
+ **gitIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .gitignore file.<br/>__*Optional*__
998
+ **gitOptions**?🔹 | <code>[GitOptions](#projen-gitoptions)</code> | Configuration options for git.<br/>__*Optional*__
996
999
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
997
1000
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
998
1001
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
@@ -1019,6 +1022,8 @@ Name | Type | Description
1019
1022
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1020
1023
  **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1021
1024
  **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1025
+ **npmIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .npmignore file.<br/>__*Optional*__
1026
+ **npmProvenance**?🔹 | <code>boolean</code> | Should provenance statements be generated when the package is published.<br/>__*Default*__: true for public packages, false otherwise
1022
1027
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1023
1028
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1024
1029
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1026,11 +1031,12 @@ Name | Type | Description
1026
1031
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1027
1032
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1028
1033
  **package**?🔹 | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).<br/>__*Default*__: true
1029
- **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1034
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN_CLASSIC
1030
1035
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1031
1036
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1032
1037
  **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1033
1038
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1039
+ **pnpmVersion**?🔹 | <code>string</code> | The version of PNPM to use if using PNPM as a package manager.<br/>__*Default*__: "7"
1034
1040
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1035
1041
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1036
1042
  **prettier**?🔹 | <code>boolean</code> | Setup prettier.<br/>__*Default*__: false
@@ -1044,7 +1050,7 @@ Name | Type | Description
1044
1050
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1045
1051
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1046
1052
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1047
- **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1053
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1048
1054
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1049
1055
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1050
1056
  **publishDryRun**?🔹 | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command.<br/>__*Default*__: false
@@ -1052,6 +1058,7 @@ Name | Type | Description
1052
1058
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1053
1059
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1054
1060
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
1061
+ **releasableCommits**?🔹 | <code>[ReleasableCommits](#projen-releasablecommits)</code> | Find commits that should be considered releasable Used to decide if a release is required.<br/>__*Default*__: ReleasableCommits.everyCommit()
1055
1062
  **release**?🔹 | <code>boolean</code> | Add release management to this project.<br/>__*Default*__: true (false for subprojects)
1056
1063
  **releaseBranches**?🔹 | <code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code> | Defines additional release branches.<br/>__*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
1057
1064
  **releaseEveryCommit**?⚠️ | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`.<br/>__*Default*__: true
@@ -1062,7 +1069,7 @@ Name | Type | Description
1062
1069
  **releaseToNpm**?🔹 | <code>boolean</code> | Automatically release to npm when new versions are introduced.<br/>__*Default*__: false
1063
1070
  **releaseTrigger**?🔹 | <code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code> | The release trigger to use.<br/>__*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
1064
1071
  **releaseWorkflow**?⚠️ | <code>boolean</code> | DEPRECATED: renamed to `release`.<br/>__*Default*__: true if not a subproject
1065
- **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "Release"
1072
+ **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "release"
1066
1073
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
1067
1074
  **renovatebot**?🔹 | <code>boolean</code> | Use renovatebot to handle dependency upgrades.<br/>__*Default*__: false
1068
1075
  **renovatebotOptions**?🔹 | <code>[RenovatebotOptions](#projen-renovatebotoptions)</code> | Options for renovatebot.<br/>__*Default*__: default options
@@ -1071,13 +1078,13 @@ Name | Type | Description
1071
1078
  **requireApproval**?🔹 | <code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code> | To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.<br/>__*Default*__: ApprovalLevel.BROADENING
1072
1079
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
1073
1080
  **scopedPackagesOptions**?🔹 | <code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code> | Options for privately hosted scoped packages.<br/>__*Default*__: fetch all scoped packages from the public npm registry
1074
- **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1075
- **sops**? | <code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code> | Enable storing secrets using Mozilla SOPS.<br/>__*Default*__: no SOPS config
1081
+ **scripts**?⚠️ | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1076
1082
  **srcdir**?🔹 | <code>string</code> | Typescript sources directory.<br/>__*Default*__: "src"
1077
1083
  **stability**?🔹 | <code>string</code> | Package's Stability.<br/>__*Optional*__
1078
1084
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: false
1079
1085
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1080
1086
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1087
+ **tsJestOptions**?🔹 | <code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code> | Options for ts-jest.<br/>__*Optional*__
1081
1088
  **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1082
1089
  **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1083
1090
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
@@ -1090,20 +1097,10 @@ Name | Type | Description
1090
1097
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1091
1098
  **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1092
1099
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1100
+ **workflowPackageCache**?🔹 | <code>boolean</code> | Enable Node.js package cache in GitHub workflows.<br/>__*Default*__: false
1093
1101
  **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1094
-
1095
-
1096
-
1097
- ## struct SopsAspectOptions <a id="taimos-projen-sopsaspectoptions"></a>
1098
-
1099
-
1100
-
1101
-
1102
-
1103
-
1104
- Name | Type | Description
1105
- -----|------|-------------
1106
- **secrets** | <code>Map<string, string></code> | Define a mapping of SOPS files to SecretsManager secrets.
1102
+ **workflowRunsOnGroup**?🔹 | <code>[GroupRunnerOptions](#projen-grouprunneroptions)</code> | Github Runner Group selection options.<br/>__*Optional*__
1103
+ **yarnBerryOptions**?🔹 | <code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code> | Options for Yarn Berry.<br/>__*Default*__: Yarn Berry v4 with all default options
1107
1104
 
1108
1105
 
1109
1106
 
@@ -1143,13 +1140,14 @@ Name | Type | Description
1143
1140
  **cdkAssertions**?🔹 | <code>boolean</code> | Install the assertions library?<br/>__*Default*__: will be included by default for AWS CDK >= 1.111.0 < 2.0.0
1144
1141
  **cdkDependencies**?⚠️ | <code>Array<string></code> | Which AWS CDKv1 modules this project requires.<br/>__*Optional*__
1145
1142
  **cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
1146
- **cdkPipelines**? | <code>boolean</code> | Enable CDK pipelines.<br/>__*Default*__: false
1147
1143
  **cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
1148
1144
  **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
1149
1145
  **cdkout**?🔹 | <code>string</code> | cdk.out directory.<br/>__*Default*__: "cdk.out"
1150
- **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1146
+ **checkLicenses**?🔹 | <code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code> | Configure which licenses should be deemed acceptable for use by dependencies.<br/>__*Default*__: no license checks are run during the build and all licenses will be accepted
1147
+ **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true, but false for subprojects
1148
+ **codeArtifact**? | <code>boolean</code> | Whether to enable integration with AWS CodeArtifact for package management.<br/>__*Default*__: false
1151
1149
  **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for npm packages using AWS CodeArtifact.<br/>__*Default*__: undefined
1152
- **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1150
+ **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.<br/>__*Default*__: false
1153
1151
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1154
1152
  **commitGenerated**?🔹 | <code>boolean</code> | Whether to commit the managed files by default.<br/>__*Default*__: true
1155
1153
  **constructsVersion**?🔹 | <code>string</code> | Minimum version of the `constructs` library to depend on.<br/>__*Default*__: for CDK 1.x the default is "3.2.27", for CDK 2.x the default is "10.0.5".
@@ -1159,12 +1157,13 @@ Name | Type | Description
1159
1157
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1160
1158
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1161
1159
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1162
- **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1160
+ **depsUpgrade**?🔹 | <code>boolean</code> | Use tasks and github workflows to handle dependency upgrades.<br/>__*Default*__: true
1163
1161
  **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for `UpgradeDependencies`.<br/>__*Default*__: default options
1164
1162
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1165
1163
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1166
1164
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
1167
1165
  **disableTsconfig**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).<br/>__*Default*__: false
1166
+ **disableTsconfigDev**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file.<br/>__*Default*__: false
1168
1167
  **docgen**?🔹 | <code>boolean</code> | Docgen by Typedoc.<br/>__*Default*__: false
1169
1168
  **docsDirectory**?🔹 | <code>string</code> | Docs directory.<br/>__*Default*__: "docs"
1170
1169
  **edgeLambdaAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `cloudfront.experimental.EdgeFunction` for each `.edge-lambda.ts` handler in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.<br/>__*Default*__: true
@@ -1172,7 +1171,10 @@ Name | Type | Description
1172
1171
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1173
1172
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1174
1173
  **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1174
+ **experimentalIntegRunner**?🔹 | <code>boolean</code> | Enable experimental support for the AWS CDK integ-runner.<br/>__*Default*__: false
1175
1175
  **featureFlags**?🔹 | <code>boolean</code> | Include all feature flags in cdk.json.<br/>__*Default*__: true
1176
+ **gitIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .gitignore file.<br/>__*Optional*__
1177
+ **gitOptions**?🔹 | <code>[GitOptions](#projen-gitoptions)</code> | Configuration options for git.<br/>__*Optional*__
1176
1178
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1177
1179
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1178
1180
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
@@ -1199,6 +1201,8 @@ Name | Type | Description
1199
1201
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1200
1202
  **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1201
1203
  **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1204
+ **npmIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .npmignore file.<br/>__*Optional*__
1205
+ **npmProvenance**?🔹 | <code>boolean</code> | Should provenance statements be generated when the package is published.<br/>__*Default*__: true for public packages, false otherwise
1202
1206
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1203
1207
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1204
1208
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1206,11 +1210,12 @@ Name | Type | Description
1206
1210
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1207
1211
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1208
1212
  **package**?🔹 | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).<br/>__*Default*__: true
1209
- **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1213
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN_CLASSIC
1210
1214
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1211
1215
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1212
1216
  **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1213
1217
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1218
+ **pnpmVersion**?🔹 | <code>string</code> | The version of PNPM to use if using PNPM as a package manager.<br/>__*Default*__: "7"
1214
1219
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1215
1220
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1216
1221
  **prettier**?🔹 | <code>boolean</code> | Setup prettier.<br/>__*Default*__: false
@@ -1224,7 +1229,7 @@ Name | Type | Description
1224
1229
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1225
1230
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1226
1231
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1227
- **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1232
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1228
1233
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1229
1234
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1230
1235
  **publishDryRun**?🔹 | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command.<br/>__*Default*__: false
@@ -1232,6 +1237,7 @@ Name | Type | Description
1232
1237
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1233
1238
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1234
1239
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
1240
+ **releasableCommits**?🔹 | <code>[ReleasableCommits](#projen-releasablecommits)</code> | Find commits that should be considered releasable Used to decide if a release is required.<br/>__*Default*__: ReleasableCommits.everyCommit()
1235
1241
  **release**?🔹 | <code>boolean</code> | Add release management to this project.<br/>__*Default*__: true (false for subprojects)
1236
1242
  **releaseBranches**?🔹 | <code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code> | Defines additional release branches.<br/>__*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
1237
1243
  **releaseEveryCommit**?⚠️ | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`.<br/>__*Default*__: true
@@ -1242,7 +1248,7 @@ Name | Type | Description
1242
1248
  **releaseToNpm**?🔹 | <code>boolean</code> | Automatically release to npm when new versions are introduced.<br/>__*Default*__: false
1243
1249
  **releaseTrigger**?🔹 | <code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code> | The release trigger to use.<br/>__*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
1244
1250
  **releaseWorkflow**?⚠️ | <code>boolean</code> | DEPRECATED: renamed to `release`.<br/>__*Default*__: true if not a subproject
1245
- **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "Release"
1251
+ **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "release"
1246
1252
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
1247
1253
  **renovatebot**?🔹 | <code>boolean</code> | Use renovatebot to handle dependency upgrades.<br/>__*Default*__: false
1248
1254
  **renovatebotOptions**?🔹 | <code>[RenovatebotOptions](#projen-renovatebotoptions)</code> | Options for renovatebot.<br/>__*Default*__: default options
@@ -1251,13 +1257,13 @@ Name | Type | Description
1251
1257
  **requireApproval**?🔹 | <code>[awscdk.ApprovalLevel](#projen-awscdk-approvallevel)</code> | To protect you against unintended changes that affect your security posture, the AWS CDK Toolkit prompts you to approve security-related changes before deploying them.<br/>__*Default*__: ApprovalLevel.BROADENING
1252
1258
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
1253
1259
  **scopedPackagesOptions**?🔹 | <code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code> | Options for privately hosted scoped packages.<br/>__*Default*__: fetch all scoped packages from the public npm registry
1254
- **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1255
- **sops**? | <code>[SopsAspectOptions](#taimos-projen-sopsaspectoptions)</code> | Enable storing secrets using Mozilla SOPS.<br/>__*Default*__: no SOPS config
1260
+ **scripts**?⚠️ | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1256
1261
  **srcdir**?🔹 | <code>string</code> | Typescript sources directory.<br/>__*Default*__: "src"
1257
1262
  **stability**?🔹 | <code>string</code> | Package's Stability.<br/>__*Optional*__
1258
1263
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: false
1259
1264
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1260
1265
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1266
+ **tsJestOptions**?🔹 | <code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code> | Options for ts-jest.<br/>__*Optional*__
1261
1267
  **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1262
1268
  **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1263
1269
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
@@ -1270,7 +1276,10 @@ Name | Type | Description
1270
1276
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1271
1277
  **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1272
1278
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1279
+ **workflowPackageCache**?🔹 | <code>boolean</code> | Enable Node.js package cache in GitHub workflows.<br/>__*Default*__: false
1273
1280
  **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1281
+ **workflowRunsOnGroup**?🔹 | <code>[GroupRunnerOptions](#projen-grouprunneroptions)</code> | Github Runner Group selection options.<br/>__*Optional*__
1282
+ **yarnBerryOptions**?🔹 | <code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code> | Options for Yarn Berry.<br/>__*Default*__: Yarn Berry v4 with all default options
1274
1283
 
1275
1284
 
1276
1285
 
@@ -1314,9 +1323,10 @@ Name | Type | Description
1314
1323
  **cdkDependenciesAsDeps**?⚠️ | <code>boolean</code> | If this is enabled (default), all modules declared in `cdkDependencies` will be also added as normal `dependencies` (as well as `peerDependencies`).<br/>__*Default*__: true
1315
1324
  **cdkTestDependencies**?⚠️ | <code>Array<string></code> | AWS CDK modules required for testing.<br/>__*Optional*__
1316
1325
  **cdkVersionPinning**?🔹 | <code>boolean</code> | Use pinned version instead of caret version for CDK.<br/>__*Optional*__
1317
- **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1326
+ **checkLicenses**?🔹 | <code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code> | Configure which licenses should be deemed acceptable for use by dependencies.<br/>__*Default*__: no license checks are run during the build and all licenses will be accepted
1327
+ **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true, but false for subprojects
1318
1328
  **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for npm packages using AWS CodeArtifact.<br/>__*Default*__: undefined
1319
- **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1329
+ **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.<br/>__*Default*__: false
1320
1330
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1321
1331
  **commitGenerated**?🔹 | <code>boolean</code> | Whether to commit the managed files by default.<br/>__*Default*__: true
1322
1332
  **compat**?🔹 | <code>boolean</code> | Automatically run API compatibility test against the latest version published to npm after compilation.<br/>__*Default*__: false
@@ -1328,12 +1338,13 @@ Name | Type | Description
1328
1338
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1329
1339
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1330
1340
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1331
- **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1341
+ **depsUpgrade**?🔹 | <code>boolean</code> | Use tasks and github workflows to handle dependency upgrades.<br/>__*Default*__: true
1332
1342
  **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for `UpgradeDependencies`.<br/>__*Default*__: default options
1333
1343
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1334
1344
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1335
1345
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
1336
1346
  **disableTsconfig**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).<br/>__*Default*__: false
1347
+ **disableTsconfigDev**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file.<br/>__*Default*__: false
1337
1348
  **docgen**?🔹 | <code>boolean</code> | Docgen by Typedoc.<br/>__*Default*__: false
1338
1349
  **docgenFilePath**?🔹 | <code>string</code> | File path for generated docs.<br/>__*Default*__: "API.md"
1339
1350
  **docsDirectory**?🔹 | <code>string</code> | Docs directory.<br/>__*Default*__: "docs"
@@ -1344,6 +1355,9 @@ Name | Type | Description
1344
1355
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1345
1356
  **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1346
1357
  **excludeTypescript**?🔹 | <code>Array<string></code> | Accepts a list of glob patterns.<br/>__*Optional*__
1358
+ **experimentalIntegRunner**?🔹 | <code>boolean</code> | Enable experimental support for the AWS CDK integ-runner.<br/>__*Default*__: false
1359
+ **gitIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .gitignore file.<br/>__*Optional*__
1360
+ **gitOptions**?🔹 | <code>[GitOptions](#projen-gitoptions)</code> | Configuration options for git.<br/>__*Optional*__
1347
1361
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1348
1362
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1349
1363
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
@@ -1353,6 +1367,7 @@ Name | Type | Description
1353
1367
  **jest**?🔹 | <code>boolean</code> | Setup jest unit tests.<br/>__*Default*__: true
1354
1368
  **jestOptions**?🔹 | <code>[javascript.JestOptions](#projen-javascript-jestoptions)</code> | Jest options.<br/>__*Default*__: default options
1355
1369
  **jsiiReleaseVersion**?🔹 | <code>string</code> | Version requirement of `publib` which is used to publish modules to npm.<br/>__*Default*__: "latest"
1370
+ **jsiiVersion**?🔹 | <code>string</code> | Version of the jsii compiler to use.<br/>__*Default*__: "1.x"
1356
1371
  **keywords**?🔹 | <code>Array<string></code> | Keywords to include in `package.json`.<br/>__*Optional*__
1357
1372
  **lambdaAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `aws_lambda.Function` for each `.lambda.ts` handler in your source tree. If this is disabled, you either need to explicitly call `aws_lambda.Function.autoDiscover()` or define a `new aws_lambda.Function()` for each handler.<br/>__*Default*__: true
1358
1373
  **lambdaExtensionAutoDiscover**?🔹 | <code>boolean</code> | Automatically adds an `awscdk.LambdaExtension` for each `.lambda-extension.ts` entrypoint in your source tree. If this is disabled, you can manually add an `awscdk.AutoDiscover` component to your project.<br/>__*Default*__: true
@@ -1370,6 +1385,8 @@ Name | Type | Description
1370
1385
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1371
1386
  **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1372
1387
  **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1388
+ **npmIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .npmignore file.<br/>__*Optional*__
1389
+ **npmProvenance**?🔹 | <code>boolean</code> | Should provenance statements be generated when the package is published.<br/>__*Default*__: true for public packages, false otherwise
1373
1390
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1374
1391
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1375
1392
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1377,11 +1394,12 @@ Name | Type | Description
1377
1394
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1378
1395
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1379
1396
  **package**?🔹 | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).<br/>__*Default*__: true
1380
- **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1397
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN_CLASSIC
1381
1398
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1382
1399
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1383
1400
  **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1384
1401
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1402
+ **pnpmVersion**?🔹 | <code>string</code> | The version of PNPM to use if using PNPM as a package manager.<br/>__*Default*__: "7"
1385
1403
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1386
1404
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1387
1405
  **prettier**?🔹 | <code>boolean</code> | Setup prettier.<br/>__*Default*__: false
@@ -1395,7 +1413,7 @@ Name | Type | Description
1395
1413
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1396
1414
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1397
1415
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1398
- **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1416
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1399
1417
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1400
1418
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1401
1419
  **publishDryRun**?🔹 | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command.<br/>__*Default*__: false
@@ -1408,6 +1426,7 @@ Name | Type | Description
1408
1426
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1409
1427
  **python**?⚠️ | <code>[cdk.JsiiPythonTarget](#projen-cdk-jsiipythontarget)</code> | __*Optional*__
1410
1428
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
1429
+ **releasableCommits**?🔹 | <code>[ReleasableCommits](#projen-releasablecommits)</code> | Find commits that should be considered releasable Used to decide if a release is required.<br/>__*Default*__: ReleasableCommits.everyCommit()
1411
1430
  **release**?🔹 | <code>boolean</code> | Add release management to this project.<br/>__*Default*__: true (false for subprojects)
1412
1431
  **releaseBranches**?🔹 | <code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code> | Defines additional release branches.<br/>__*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
1413
1432
  **releaseEveryCommit**?⚠️ | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`.<br/>__*Default*__: true
@@ -1418,7 +1437,7 @@ Name | Type | Description
1418
1437
  **releaseToNpm**?🔹 | <code>boolean</code> | Automatically release to npm when new versions are introduced.<br/>__*Default*__: false
1419
1438
  **releaseTrigger**?🔹 | <code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code> | The release trigger to use.<br/>__*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
1420
1439
  **releaseWorkflow**?⚠️ | <code>boolean</code> | DEPRECATED: renamed to `release`.<br/>__*Default*__: true if not a subproject
1421
- **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "Release"
1440
+ **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "release"
1422
1441
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
1423
1442
  **renovatebot**?🔹 | <code>boolean</code> | Use renovatebot to handle dependency upgrades.<br/>__*Default*__: false
1424
1443
  **renovatebotOptions**?🔹 | <code>[RenovatebotOptions](#projen-renovatebotoptions)</code> | Options for renovatebot.<br/>__*Default*__: default options
@@ -1427,12 +1446,13 @@ Name | Type | Description
1427
1446
  **rootdir**?🔹 | <code>string</code> | __*Default*__: "."
1428
1447
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
1429
1448
  **scopedPackagesOptions**?🔹 | <code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code> | Options for privately hosted scoped packages.<br/>__*Default*__: fetch all scoped packages from the public npm registry
1430
- **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1449
+ **scripts**?⚠️ | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1431
1450
  **srcdir**?🔹 | <code>string</code> | Typescript sources directory.<br/>__*Default*__: "src"
1432
1451
  **stability**?🔹 | <code>string</code> | Package's Stability.<br/>__*Optional*__
1433
1452
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: false
1434
1453
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1435
1454
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1455
+ **tsJestOptions**?🔹 | <code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code> | Options for ts-jest.<br/>__*Optional*__
1436
1456
  **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1437
1457
  **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1438
1458
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
@@ -1443,7 +1463,10 @@ Name | Type | Description
1443
1463
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1444
1464
  **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1445
1465
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1466
+ **workflowPackageCache**?🔹 | <code>boolean</code> | Enable Node.js package cache in GitHub workflows.<br/>__*Default*__: false
1446
1467
  **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1468
+ **workflowRunsOnGroup**?🔹 | <code>[GroupRunnerOptions](#projen-grouprunneroptions)</code> | Github Runner Group selection options.<br/>__*Optional*__
1469
+ **yarnBerryOptions**?🔹 | <code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code> | Options for Yarn Berry.<br/>__*Default*__: Yarn Berry v4 with all default options
1447
1470
 
1448
1471
 
1449
1472
 
@@ -1476,9 +1499,10 @@ Name | Type | Description
1476
1499
  **buildWorkflowTriggers**?🔹 | <code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code> | Build workflow triggers.<br/>__*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
1477
1500
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
1478
1501
  **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
1479
- **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1502
+ **checkLicenses**?🔹 | <code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code> | Configure which licenses should be deemed acceptable for use by dependencies.<br/>__*Default*__: no license checks are run during the build and all licenses will be accepted
1503
+ **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true, but false for subprojects
1480
1504
  **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for npm packages using AWS CodeArtifact.<br/>__*Default*__: undefined
1481
- **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1505
+ **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.<br/>__*Default*__: false
1482
1506
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1483
1507
  **commitGenerated**?🔹 | <code>boolean</code> | Whether to commit the managed files by default.<br/>__*Default*__: true
1484
1508
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -1486,18 +1510,21 @@ Name | Type | Description
1486
1510
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1487
1511
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1488
1512
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1489
- **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1513
+ **depsUpgrade**?🔹 | <code>boolean</code> | Use tasks and github workflows to handle dependency upgrades.<br/>__*Default*__: true
1490
1514
  **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for `UpgradeDependencies`.<br/>__*Default*__: default options
1491
1515
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1492
1516
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1493
1517
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
1494
1518
  **disableTsconfig**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).<br/>__*Default*__: false
1519
+ **disableTsconfigDev**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file.<br/>__*Default*__: false
1495
1520
  **docgen**?🔹 | <code>boolean</code> | Docgen by Typedoc.<br/>__*Default*__: false
1496
1521
  **docsDirectory**?🔹 | <code>string</code> | Docs directory.<br/>__*Default*__: "docs"
1497
1522
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
1498
1523
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1499
1524
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1500
1525
  **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1526
+ **gitIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .gitignore file.<br/>__*Optional*__
1527
+ **gitOptions**?🔹 | <code>[GitOptions](#projen-gitoptions)</code> | Configuration options for git.<br/>__*Optional*__
1501
1528
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1502
1529
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1503
1530
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
@@ -1520,6 +1547,8 @@ Name | Type | Description
1520
1547
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1521
1548
  **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1522
1549
  **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1550
+ **npmIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .npmignore file.<br/>__*Optional*__
1551
+ **npmProvenance**?🔹 | <code>boolean</code> | Should provenance statements be generated when the package is published.<br/>__*Default*__: true for public packages, false otherwise
1523
1552
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1524
1553
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1525
1554
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1527,11 +1556,12 @@ Name | Type | Description
1527
1556
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1528
1557
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1529
1558
  **package**?🔹 | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).<br/>__*Default*__: true
1530
- **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1559
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN_CLASSIC
1531
1560
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1532
1561
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1533
1562
  **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1534
1563
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1564
+ **pnpmVersion**?🔹 | <code>string</code> | The version of PNPM to use if using PNPM as a package manager.<br/>__*Default*__: "7"
1535
1565
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1536
1566
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1537
1567
  **prettier**?🔹 | <code>boolean</code> | Setup prettier.<br/>__*Default*__: false
@@ -1545,7 +1575,7 @@ Name | Type | Description
1545
1575
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1546
1576
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1547
1577
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1548
- **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1578
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1549
1579
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1550
1580
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1551
1581
  **publishDryRun**?🔹 | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command.<br/>__*Default*__: false
@@ -1553,6 +1583,7 @@ Name | Type | Description
1553
1583
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1554
1584
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1555
1585
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
1586
+ **releasableCommits**?🔹 | <code>[ReleasableCommits](#projen-releasablecommits)</code> | Find commits that should be considered releasable Used to decide if a release is required.<br/>__*Default*__: ReleasableCommits.everyCommit()
1556
1587
  **release**?🔹 | <code>boolean</code> | Add release management to this project.<br/>__*Default*__: true (false for subprojects)
1557
1588
  **releaseBranches**?🔹 | <code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code> | Defines additional release branches.<br/>__*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
1558
1589
  **releaseEveryCommit**?⚠️ | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`.<br/>__*Default*__: true
@@ -1563,7 +1594,7 @@ Name | Type | Description
1563
1594
  **releaseToNpm**?🔹 | <code>boolean</code> | Automatically release to npm when new versions are introduced.<br/>__*Default*__: false
1564
1595
  **releaseTrigger**?🔹 | <code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code> | The release trigger to use.<br/>__*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
1565
1596
  **releaseWorkflow**?⚠️ | <code>boolean</code> | DEPRECATED: renamed to `release`.<br/>__*Default*__: true if not a subproject
1566
- **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "Release"
1597
+ **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "release"
1567
1598
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
1568
1599
  **renovatebot**?🔹 | <code>boolean</code> | Use renovatebot to handle dependency upgrades.<br/>__*Default*__: false
1569
1600
  **renovatebotOptions**?🔹 | <code>[RenovatebotOptions](#projen-renovatebotoptions)</code> | Options for renovatebot.<br/>__*Default*__: default options
@@ -1571,12 +1602,13 @@ Name | Type | Description
1571
1602
  **repositoryDirectory**?🔹 | <code>string</code> | If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives.<br/>__*Optional*__
1572
1603
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
1573
1604
  **scopedPackagesOptions**?🔹 | <code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code> | Options for privately hosted scoped packages.<br/>__*Default*__: fetch all scoped packages from the public npm registry
1574
- **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1605
+ **scripts**?⚠️ | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1575
1606
  **srcdir**?🔹 | <code>string</code> | Typescript sources directory.<br/>__*Default*__: "src"
1576
1607
  **stability**?🔹 | <code>string</code> | Package's Stability.<br/>__*Optional*__
1577
1608
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: false
1578
1609
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1579
1610
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1611
+ **tsJestOptions**?🔹 | <code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code> | Options for ts-jest.<br/>__*Optional*__
1580
1612
  **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1581
1613
  **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1582
1614
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
@@ -1587,7 +1619,10 @@ Name | Type | Description
1587
1619
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1588
1620
  **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1589
1621
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1622
+ **workflowPackageCache**?🔹 | <code>boolean</code> | Enable Node.js package cache in GitHub workflows.<br/>__*Default*__: false
1590
1623
  **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1624
+ **workflowRunsOnGroup**?🔹 | <code>[GroupRunnerOptions](#projen-grouprunneroptions)</code> | Github Runner Group selection options.<br/>__*Optional*__
1625
+ **yarnBerryOptions**?🔹 | <code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code> | Options for Yarn Berry.<br/>__*Default*__: Yarn Berry v4 with all default options
1591
1626
 
1592
1627
 
1593
1628
 
@@ -1620,9 +1655,10 @@ Name | Type | Description
1620
1655
  **buildWorkflowTriggers**?🔹 | <code>[github.workflows.Triggers](#projen-github-workflows-triggers)</code> | Build workflow triggers.<br/>__*Default*__: "{ pullRequest: {}, workflowDispatch: {} }"
1621
1656
  **bundledDeps**?🔹 | <code>Array<string></code> | List of dependencies to bundle into this module.<br/>__*Optional*__
1622
1657
  **bundlerOptions**?🔹 | <code>[javascript.BundlerOptions](#projen-javascript-bundleroptions)</code> | Options for `Bundler`.<br/>__*Optional*__
1623
- **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true
1658
+ **checkLicenses**?🔹 | <code>[javascript.LicenseCheckerOptions](#projen-javascript-licensecheckeroptions)</code> | Configure which licenses should be deemed acceptable for use by dependencies.<br/>__*Default*__: no license checks are run during the build and all licenses will be accepted
1659
+ **clobber**?🔹 | <code>boolean</code> | Add a `clobber` task which resets the repo to origin.<br/>__*Default*__: true, but false for subprojects
1624
1660
  **codeArtifactOptions**?🔹 | <code>[javascript.CodeArtifactOptions](#projen-javascript-codeartifactoptions)</code> | Options for npm packages using AWS CodeArtifact.<br/>__*Default*__: undefined
1625
- **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v1 A secret is required for private repos. Configured with @codeCovTokenSecret.<br/>__*Default*__: false
1661
+ **codeCov**?🔹 | <code>boolean</code> | Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with `@codeCovTokenSecret`.<br/>__*Default*__: false
1626
1662
  **codeCovTokenSecret**?🔹 | <code>string</code> | Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.<br/>__*Default*__: if this option is not specified, only public repositories are supported
1627
1663
  **commitGenerated**?🔹 | <code>boolean</code> | Whether to commit the managed files by default.<br/>__*Default*__: true
1628
1664
  **copyrightOwner**?🔹 | <code>string</code> | License copyright owner.<br/>__*Default*__: defaults to the value of authorName or "" if `authorName` is undefined.
@@ -1630,18 +1666,21 @@ Name | Type | Description
1630
1666
  **dependabot**?🔹 | <code>boolean</code> | Use dependabot to handle dependency upgrades.<br/>__*Default*__: false
1631
1667
  **dependabotOptions**?🔹 | <code>[github.DependabotOptions](#projen-github-dependabotoptions)</code> | Options for dependabot.<br/>__*Default*__: default options
1632
1668
  **deps**?🔹 | <code>Array<string></code> | Runtime dependencies of this module.<br/>__*Default*__: []
1633
- **depsUpgrade**?🔹 | <code>boolean</code> | Use github workflows to handle dependency upgrades.<br/>__*Default*__: true
1669
+ **depsUpgrade**?🔹 | <code>boolean</code> | Use tasks and github workflows to handle dependency upgrades.<br/>__*Default*__: true
1634
1670
  **depsUpgradeOptions**?🔹 | <code>[javascript.UpgradeDependenciesOptions](#projen-javascript-upgradedependenciesoptions)</code> | Options for `UpgradeDependencies`.<br/>__*Default*__: default options
1635
1671
  **description**?🔹 | <code>string</code> | The description is just a string that helps people understand the purpose of the package.<br/>__*Optional*__
1636
1672
  **devContainer**?🔹 | <code>boolean</code> | Add a VSCode development environment (used for GitHub Codespaces).<br/>__*Default*__: false
1637
1673
  **devDeps**?🔹 | <code>Array<string></code> | Build dependencies for this module.<br/>__*Default*__: []
1638
1674
  **disableTsconfig**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.json` file (used by jsii projects since tsconfig.json is generated by the jsii compiler).<br/>__*Default*__: false
1675
+ **disableTsconfigDev**?🔹 | <code>boolean</code> | Do not generate a `tsconfig.dev.json` file.<br/>__*Default*__: false
1639
1676
  **docgen**?🔹 | <code>boolean</code> | Docgen by Typedoc.<br/>__*Default*__: false
1640
1677
  **docsDirectory**?🔹 | <code>string</code> | Docs directory.<br/>__*Default*__: "docs"
1641
1678
  **entrypoint**?🔹 | <code>string</code> | Module entrypoint (`main` in `package.json`).<br/>__*Default*__: "lib/index.js"
1642
1679
  **entrypointTypes**?🔹 | <code>string</code> | The .d.ts file that includes the type declarations for this module.<br/>__*Default*__: .d.ts file derived from the project's entrypoint (usually lib/index.d.ts)
1643
1680
  **eslint**?🔹 | <code>boolean</code> | Setup eslint.<br/>__*Default*__: true
1644
1681
  **eslintOptions**?🔹 | <code>[javascript.EslintOptions](#projen-javascript-eslintoptions)</code> | Eslint options.<br/>__*Default*__: opinionated default options
1682
+ **gitIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .gitignore file.<br/>__*Optional*__
1683
+ **gitOptions**?🔹 | <code>[GitOptions](#projen-gitoptions)</code> | Configuration options for git.<br/>__*Optional*__
1645
1684
  **github**?🔹 | <code>boolean</code> | Enable GitHub integration.<br/>__*Default*__: true
1646
1685
  **githubOptions**?🔹 | <code>[github.GitHubOptions](#projen-github-githuboptions)</code> | Options for GitHub integration.<br/>__*Default*__: see GitHubOptions
1647
1686
  **gitignore**?🔹 | <code>Array<string></code> | Additional entries to .gitignore.<br/>__*Optional*__
@@ -1664,6 +1703,8 @@ Name | Type | Description
1664
1703
  **mutableBuild**?🔹 | <code>boolean</code> | Automatically update files modified during builds to pull-request branches.<br/>__*Default*__: true
1665
1704
  **npmAccess**?🔹 | <code>[javascript.NpmAccess](#projen-javascript-npmaccess)</code> | Access level of the npm package.<br/>__*Default*__: for scoped packages (e.g. `foo@bar`), the default is `NpmAccess.RESTRICTED`, for non-scoped packages, the default is `NpmAccess.PUBLIC`.
1666
1705
  **npmDistTag**?🔹 | <code>string</code> | The npmDistTag to use when publishing from the default branch.<br/>__*Default*__: "latest"
1706
+ **npmIgnoreOptions**?🔹 | <code>[IgnoreFileOptions](#projen-ignorefileoptions)</code> | Configuration options for .npmignore file.<br/>__*Optional*__
1707
+ **npmProvenance**?🔹 | <code>boolean</code> | Should provenance statements be generated when the package is published.<br/>__*Default*__: true for public packages, false otherwise
1667
1708
  **npmRegistry**?⚠️ | <code>string</code> | The host name of the npm registry to publish to.<br/>__*Optional*__
1668
1709
  **npmRegistryUrl**?🔹 | <code>string</code> | The base URL of the npm package registry.<br/>__*Default*__: "https://registry.npmjs.org"
1669
1710
  **npmTokenSecret**?🔹 | <code>string</code> | GitHub secret which contains the NPM token to use when publishing packages.<br/>__*Default*__: "NPM_TOKEN"
@@ -1671,11 +1712,12 @@ Name | Type | Description
1671
1712
  **npmignoreEnabled**?🔹 | <code>boolean</code> | Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs.<br/>__*Default*__: true
1672
1713
  **outdir**?🔹 | <code>string</code> | The root directory of the project.<br/>__*Default*__: "."
1673
1714
  **package**?🔹 | <code>boolean</code> | Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`).<br/>__*Default*__: true
1674
- **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN
1715
+ **packageManager**?🔹 | <code>[javascript.NodePackageManager](#projen-javascript-nodepackagemanager)</code> | The Node Package Manager used to execute scripts.<br/>__*Default*__: NodePackageManager.YARN_CLASSIC
1675
1716
  **packageName**?🔹 | <code>string</code> | The "name" in package.json.<br/>__*Default*__: defaults to project name
1676
1717
  **parent**?🔹 | <code>[Project](#projen-project)</code> | The parent project, if this project is part of a bigger project.<br/>__*Optional*__
1677
1718
  **peerDependencyOptions**?🔹 | <code>[javascript.PeerDependencyOptions](#projen-javascript-peerdependencyoptions)</code> | Options for `peerDeps`.<br/>__*Optional*__
1678
1719
  **peerDeps**?🔹 | <code>Array<string></code> | Peer dependencies for this module.<br/>__*Default*__: []
1720
+ **pnpmVersion**?🔹 | <code>string</code> | The version of PNPM to use if using PNPM as a package manager.<br/>__*Default*__: "7"
1679
1721
  **postBuildSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | Steps to execute after build as part of the release workflow.<br/>__*Default*__: []
1680
1722
  **prerelease**?🔹 | <code>string</code> | Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre").<br/>__*Default*__: normal semantic versions
1681
1723
  **prettier**?🔹 | <code>boolean</code> | Setup prettier.<br/>__*Default*__: false
@@ -1689,7 +1731,7 @@ Name | Type | Description
1689
1731
  **projenrcJs**?🔹 | <code>boolean</code> | Generate (once) .projenrc.js (in JavaScript). Set to `false` in order to disable .projenrc.js generation.<br/>__*Default*__: true if projenrcJson is false
1690
1732
  **projenrcJsOptions**?🔹 | <code>[javascript.ProjenrcOptions](#projen-javascript-projenrcoptions)</code> | Options for .projenrc.js.<br/>__*Default*__: default options
1691
1733
  **projenrcJson**?🔹 | <code>boolean</code> | Generate (once) .projenrc.json (in JSON). Set to `false` in order to disable .projenrc.json generation.<br/>__*Default*__: false
1692
- **projenrcJsonOptions**?🔹 | <code>[ProjenrcOptions](#projen-projenrcoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1734
+ **projenrcJsonOptions**?🔹 | <code>[ProjenrcJsonOptions](#projen-projenrcjsonoptions)</code> | Options for .projenrc.json.<br/>__*Default*__: default options
1693
1735
  **projenrcTs**?🔹 | <code>boolean</code> | Use TypeScript for your projenrc file (`.projenrc.ts`).<br/>__*Default*__: false
1694
1736
  **projenrcTsOptions**?🔹 | <code>[typescript.ProjenrcOptions](#projen-typescript-projenrcoptions)</code> | Options for .projenrc.ts.<br/>__*Optional*__
1695
1737
  **publishDryRun**?🔹 | <code>boolean</code> | Instead of actually publishing to package managers, just print the publishing command.<br/>__*Default*__: false
@@ -1697,6 +1739,7 @@ Name | Type | Description
1697
1739
  **pullRequestTemplate**?🔹 | <code>boolean</code> | Include a GitHub pull request template.<br/>__*Default*__: true
1698
1740
  **pullRequestTemplateContents**?🔹 | <code>Array<string></code> | The contents of the pull request template.<br/>__*Default*__: default content
1699
1741
  **readme**?🔹 | <code>[SampleReadmeProps](#projen-samplereadmeprops)</code> | The README setup.<br/>__*Default*__: { filename: 'README.md', contents: '# replace this' }
1742
+ **releasableCommits**?🔹 | <code>[ReleasableCommits](#projen-releasablecommits)</code> | Find commits that should be considered releasable Used to decide if a release is required.<br/>__*Default*__: ReleasableCommits.everyCommit()
1700
1743
  **release**?🔹 | <code>boolean</code> | Add release management to this project.<br/>__*Default*__: true (false for subprojects)
1701
1744
  **releaseBranches**?🔹 | <code>Map<string, [release.BranchOptions](#projen-release-branchoptions)></code> | Defines additional release branches.<br/>__*Default*__: no additional branches are used for release. you can use `addBranch()` to add additional branches.
1702
1745
  **releaseEveryCommit**?⚠️ | <code>boolean</code> | Automatically release new versions every commit to one of branches in `releaseBranches`.<br/>__*Default*__: true
@@ -1707,7 +1750,7 @@ Name | Type | Description
1707
1750
  **releaseToNpm**?🔹 | <code>boolean</code> | Automatically release to npm when new versions are introduced.<br/>__*Default*__: false
1708
1751
  **releaseTrigger**?🔹 | <code>[release.ReleaseTrigger](#projen-release-releasetrigger)</code> | The release trigger to use.<br/>__*Default*__: Continuous releases (`ReleaseTrigger.continuous()`)
1709
1752
  **releaseWorkflow**?⚠️ | <code>boolean</code> | DEPRECATED: renamed to `release`.<br/>__*Default*__: true if not a subproject
1710
- **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "Release"
1753
+ **releaseWorkflowName**?🔹 | <code>string</code> | The name of the default release workflow.<br/>__*Default*__: "release"
1711
1754
  **releaseWorkflowSetupSteps**?🔹 | <code>Array<[github.workflows.JobStep](#projen-github-workflows-jobstep)></code> | A set of workflow steps to execute in order to setup the workflow container.<br/>__*Optional*__
1712
1755
  **renovatebot**?🔹 | <code>boolean</code> | Use renovatebot to handle dependency upgrades.<br/>__*Default*__: false
1713
1756
  **renovatebotOptions**?🔹 | <code>[RenovatebotOptions](#projen-renovatebotoptions)</code> | Options for renovatebot.<br/>__*Default*__: default options
@@ -1715,12 +1758,13 @@ Name | Type | Description
1715
1758
  **repositoryDirectory**?🔹 | <code>string</code> | If the package.json for your package is not in the root directory (for example if it is part of a monorepo), you can specify the directory in which it lives.<br/>__*Optional*__
1716
1759
  **sampleCode**?🔹 | <code>boolean</code> | Generate one-time sample in `src/` and `test/` if there are no files there.<br/>__*Default*__: true
1717
1760
  **scopedPackagesOptions**?🔹 | <code>Array<[javascript.ScopedPackagesOptions](#projen-javascript-scopedpackagesoptions)></code> | Options for privately hosted scoped packages.<br/>__*Default*__: fetch all scoped packages from the public npm registry
1718
- **scripts**?🔹 | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1761
+ **scripts**?⚠️ | <code>Map<string, string></code> | npm scripts to include.<br/>__*Default*__: {}
1719
1762
  **srcdir**?🔹 | <code>string</code> | Typescript sources directory.<br/>__*Default*__: "src"
1720
1763
  **stability**?🔹 | <code>string</code> | Package's Stability.<br/>__*Optional*__
1721
1764
  **stale**?🔹 | <code>boolean</code> | Auto-close of stale issues and pull request.<br/>__*Default*__: false
1722
1765
  **staleOptions**?🔹 | <code>[github.StaleOptions](#projen-github-staleoptions)</code> | Auto-close stale issues and pull requests.<br/>__*Default*__: see defaults in `StaleOptions`
1723
1766
  **testdir**?🔹 | <code>string</code> | Jest tests directory. Tests files should be named `xxx.test.ts`.<br/>__*Default*__: "test"
1767
+ **tsJestOptions**?🔹 | <code>[typescript.TsJestOptions](#projen-typescript-tsjestoptions)</code> | Options for ts-jest.<br/>__*Optional*__
1724
1768
  **tsconfig**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom TSConfig.<br/>__*Default*__: default options
1725
1769
  **tsconfigDev**?🔹 | <code>[javascript.TypescriptConfigOptions](#projen-javascript-typescriptconfigoptions)</code> | Custom tsconfig options for the development tsconfig.json file (used for testing).<br/>__*Default*__: use the production tsconfig options
1726
1770
  **tsconfigDevFile**?🔹 | <code>string</code> | The name of the development tsconfig.json file.<br/>__*Default*__: "tsconfig.dev.json"
@@ -1731,7 +1775,10 @@ Name | Type | Description
1731
1775
  **workflowContainerImage**?🔹 | <code>string</code> | Container image to use for GitHub workflows.<br/>__*Default*__: default image
1732
1776
  **workflowGitIdentity**?🔹 | <code>[github.GitIdentity](#projen-github-gitidentity)</code> | The git identity to use in workflows.<br/>__*Default*__: GitHub Actions
1733
1777
  **workflowNodeVersion**?🔹 | <code>string</code> | The node version to use in GitHub workflows.<br/>__*Default*__: same as `minNodeVersion`
1778
+ **workflowPackageCache**?🔹 | <code>boolean</code> | Enable Node.js package cache in GitHub workflows.<br/>__*Default*__: false
1734
1779
  **workflowRunsOn**?🔹 | <code>Array<string></code> | Github Runner selection labels.<br/>__*Default*__: ["ubuntu-latest"]
1780
+ **workflowRunsOnGroup**?🔹 | <code>[GroupRunnerOptions](#projen-grouprunneroptions)</code> | Github Runner Group selection options.<br/>__*Optional*__
1781
+ **yarnBerryOptions**?🔹 | <code>[javascript.YarnBerryOptions](#projen-javascript-yarnberryoptions)</code> | Options for Yarn Berry.<br/>__*Default*__: Yarn Berry v4 with all default options
1735
1782
 
1736
1783
 
1737
1784