cdklabs-projen-project-types 0.6.9 → 0.6.11

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.
Binary file
package/API.md CHANGED
@@ -14328,6 +14328,7 @@ const cdkConstructLibraryOptions: CdkConstructLibraryOptions = { ... }
14328
14328
  | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.constructsVersion">constructsVersion</a></code> | <code>string</code> | Minimum version of the `constructs` library to depend on. |
14329
14329
  | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
14330
14330
  | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
14331
+ | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
14331
14332
  | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.defaultReleaseBranch">defaultReleaseBranch</a></code> | <code>string</code> | The name of the main release branch. |
14332
14333
  | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
14333
14334
  | <code><a href="#cdklabs-projen-project-types.CdkConstructLibraryOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
@@ -15147,6 +15148,34 @@ MPL-2.0 license text.
15147
15148
 
15148
15149
  ---
15149
15150
 
15151
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.CdkConstructLibraryOptions.property.dedupeDeps"></a>
15152
+
15153
+ ```typescript
15154
+ public readonly dedupeDeps: boolean;
15155
+ ```
15156
+
15157
+ - *Type:* boolean
15158
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
15159
+
15160
+ Add a `dedupe` task that deduplicates project dependencies.
15161
+
15162
+ Deduplication prevents multiple versions of the same package from being
15163
+ installed, if a single version can satisfy all requested version ranges.
15164
+ This prevents version proliferation and reduces the size of the dependency
15165
+ tree.
15166
+
15167
+ The behavior depends on the package manager:
15168
+ - npm: runs `npm dedupe` after every mutating install.
15169
+ - pnpm: runs `pnpm dedupe` after every mutating install.
15170
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
15171
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
15172
+ deduplicated.
15173
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
15174
+ prints an informational message.
15175
+ - Bun: not supported, enabling this option throws an error.
15176
+
15177
+ ---
15178
+
15150
15179
  ##### `defaultReleaseBranch`<sup>Optional</sup> <a name="defaultReleaseBranch" id="cdklabs-projen-project-types.CdkConstructLibraryOptions.property.defaultReleaseBranch"></a>
15151
15180
 
15152
15181
  ```typescript
@@ -17173,6 +17202,7 @@ const cdkJsiiProjectOptions: CdkJsiiProjectOptions = { ... }
17173
17202
  | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.compressAssembly">compressAssembly</a></code> | <code>boolean</code> | Emit a compressed version of the assembly. |
17174
17203
  | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
17175
17204
  | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
17205
+ | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
17176
17206
  | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.defaultReleaseBranch">defaultReleaseBranch</a></code> | <code>string</code> | The name of the main release branch. |
17177
17207
  | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
17178
17208
  | <code><a href="#cdklabs-projen-project-types.CdkJsiiProjectOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
@@ -17903,6 +17933,34 @@ MPL-2.0 license text.
17903
17933
 
17904
17934
  ---
17905
17935
 
17936
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.CdkJsiiProjectOptions.property.dedupeDeps"></a>
17937
+
17938
+ ```typescript
17939
+ public readonly dedupeDeps: boolean;
17940
+ ```
17941
+
17942
+ - *Type:* boolean
17943
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
17944
+
17945
+ Add a `dedupe` task that deduplicates project dependencies.
17946
+
17947
+ Deduplication prevents multiple versions of the same package from being
17948
+ installed, if a single version can satisfy all requested version ranges.
17949
+ This prevents version proliferation and reduces the size of the dependency
17950
+ tree.
17951
+
17952
+ The behavior depends on the package manager:
17953
+ - npm: runs `npm dedupe` after every mutating install.
17954
+ - pnpm: runs `pnpm dedupe` after every mutating install.
17955
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
17956
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
17957
+ deduplicated.
17958
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
17959
+ prints an informational message.
17960
+ - Bun: not supported, enabling this option throws an error.
17961
+
17962
+ ---
17963
+
17906
17964
  ##### `defaultReleaseBranch`<sup>Optional</sup> <a name="defaultReleaseBranch" id="cdklabs-projen-project-types.CdkJsiiProjectOptions.property.defaultReleaseBranch"></a>
17907
17965
 
17908
17966
  ```typescript
@@ -19839,6 +19897,7 @@ const cdklabsConstructLibraryOptions: CdklabsConstructLibraryOptions = { ... }
19839
19897
  | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.constructsVersion">constructsVersion</a></code> | <code>string</code> | Minimum version of the `constructs` library to depend on. |
19840
19898
  | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
19841
19899
  | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
19900
+ | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
19842
19901
  | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.defaultReleaseBranch">defaultReleaseBranch</a></code> | <code>string</code> | The name of the main release branch. |
19843
19902
  | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
19844
19903
  | <code><a href="#cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
@@ -20660,6 +20719,34 @@ MPL-2.0 license text.
20660
20719
 
20661
20720
  ---
20662
20721
 
20722
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.dedupeDeps"></a>
20723
+
20724
+ ```typescript
20725
+ public readonly dedupeDeps: boolean;
20726
+ ```
20727
+
20728
+ - *Type:* boolean
20729
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
20730
+
20731
+ Add a `dedupe` task that deduplicates project dependencies.
20732
+
20733
+ Deduplication prevents multiple versions of the same package from being
20734
+ installed, if a single version can satisfy all requested version ranges.
20735
+ This prevents version proliferation and reduces the size of the dependency
20736
+ tree.
20737
+
20738
+ The behavior depends on the package manager:
20739
+ - npm: runs `npm dedupe` after every mutating install.
20740
+ - pnpm: runs `pnpm dedupe` after every mutating install.
20741
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
20742
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
20743
+ deduplicated.
20744
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
20745
+ prints an informational message.
20746
+ - Bun: not supported, enabling this option throws an error.
20747
+
20748
+ ---
20749
+
20663
20750
  ##### `defaultReleaseBranch`<sup>Optional</sup> <a name="defaultReleaseBranch" id="cdklabs-projen-project-types.CdklabsConstructLibraryOptions.property.defaultReleaseBranch"></a>
20664
20751
 
20665
20752
  ```typescript
@@ -22723,6 +22810,7 @@ const cdklabsJsiiProjectOptions: CdklabsJsiiProjectOptions = { ... }
22723
22810
  | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.compressAssembly">compressAssembly</a></code> | <code>boolean</code> | Emit a compressed version of the assembly. |
22724
22811
  | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
22725
22812
  | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
22813
+ | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
22726
22814
  | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.defaultReleaseBranch">defaultReleaseBranch</a></code> | <code>string</code> | The name of the main release branch. |
22727
22815
  | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
22728
22816
  | <code><a href="#cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
@@ -23455,6 +23543,34 @@ MPL-2.0 license text.
23455
23543
 
23456
23544
  ---
23457
23545
 
23546
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.dedupeDeps"></a>
23547
+
23548
+ ```typescript
23549
+ public readonly dedupeDeps: boolean;
23550
+ ```
23551
+
23552
+ - *Type:* boolean
23553
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
23554
+
23555
+ Add a `dedupe` task that deduplicates project dependencies.
23556
+
23557
+ Deduplication prevents multiple versions of the same package from being
23558
+ installed, if a single version can satisfy all requested version ranges.
23559
+ This prevents version proliferation and reduces the size of the dependency
23560
+ tree.
23561
+
23562
+ The behavior depends on the package manager:
23563
+ - npm: runs `npm dedupe` after every mutating install.
23564
+ - pnpm: runs `pnpm dedupe` after every mutating install.
23565
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
23566
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
23567
+ deduplicated.
23568
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
23569
+ prints an informational message.
23570
+ - Bun: not supported, enabling this option throws an error.
23571
+
23572
+ ---
23573
+
23458
23574
  ##### `defaultReleaseBranch`<sup>Optional</sup> <a name="defaultReleaseBranch" id="cdklabs-projen-project-types.CdklabsJsiiProjectOptions.property.defaultReleaseBranch"></a>
23459
23575
 
23460
23576
  ```typescript
@@ -25425,6 +25541,7 @@ const cdkLabsMonorepoOptions: yarn.CdkLabsMonorepoOptions = { ... }
25425
25541
  | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.consistentVersions">consistentVersions</a></code> | <code>string[]</code> | Package names that must use a consistent version across all workspaces. |
25426
25542
  | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
25427
25543
  | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
25544
+ | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
25428
25545
  | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.defaultReleaseBranch">defaultReleaseBranch</a></code> | <code>string</code> | The name of the main release branch. |
25429
25546
  | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
25430
25547
  | <code><a href="#cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
@@ -26116,6 +26233,34 @@ MPL-2.0 license text.
26116
26233
 
26117
26234
  ---
26118
26235
 
26236
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.dedupeDeps"></a>
26237
+
26238
+ ```typescript
26239
+ public readonly dedupeDeps: boolean;
26240
+ ```
26241
+
26242
+ - *Type:* boolean
26243
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
26244
+
26245
+ Add a `dedupe` task that deduplicates project dependencies.
26246
+
26247
+ Deduplication prevents multiple versions of the same package from being
26248
+ installed, if a single version can satisfy all requested version ranges.
26249
+ This prevents version proliferation and reduces the size of the dependency
26250
+ tree.
26251
+
26252
+ The behavior depends on the package manager:
26253
+ - npm: runs `npm dedupe` after every mutating install.
26254
+ - pnpm: runs `pnpm dedupe` after every mutating install.
26255
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
26256
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
26257
+ deduplicated.
26258
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
26259
+ prints an informational message.
26260
+ - Bun: not supported, enabling this option throws an error.
26261
+
26262
+ ---
26263
+
26119
26264
  ##### `defaultReleaseBranch`<sup>Optional</sup> <a name="defaultReleaseBranch" id="cdklabs-projen-project-types.yarn.CdkLabsMonorepoOptions.property.defaultReleaseBranch"></a>
26120
26265
 
26121
26266
  ```typescript
@@ -27862,6 +28007,7 @@ const cdklabsTypeScriptProjectOptions: CdklabsTypeScriptProjectOptions = { ... }
27862
28007
  | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.bundledDeps">bundledDeps</a></code> | <code>string[]</code> | List of dependencies to bundle into this module. |
27863
28008
  | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.bunVersion">bunVersion</a></code> | <code>string</code> | The version of Bun to use if using Bun as a package manager. |
27864
28009
  | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.codeArtifactOptions">codeArtifactOptions</a></code> | <code>projen.javascript.CodeArtifactOptions</code> | Options for npm packages using AWS CodeArtifact. |
28010
+ | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
27865
28011
  | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
27866
28012
  | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.deps">deps</a></code> | <code>string[]</code> | Runtime dependencies of this module. |
27867
28013
  | <code><a href="#cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.description">description</a></code> | <code>string</code> | The description is just a string that helps people understand the purpose of the package. |
@@ -28566,6 +28712,34 @@ This is required if publishing packages to, or installing scoped packages from A
28566
28712
 
28567
28713
  ---
28568
28714
 
28715
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.dedupeDeps"></a>
28716
+
28717
+ ```typescript
28718
+ public readonly dedupeDeps: boolean;
28719
+ ```
28720
+
28721
+ - *Type:* boolean
28722
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
28723
+
28724
+ Add a `dedupe` task that deduplicates project dependencies.
28725
+
28726
+ Deduplication prevents multiple versions of the same package from being
28727
+ installed, if a single version can satisfy all requested version ranges.
28728
+ This prevents version proliferation and reduces the size of the dependency
28729
+ tree.
28730
+
28731
+ The behavior depends on the package manager:
28732
+ - npm: runs `npm dedupe` after every mutating install.
28733
+ - pnpm: runs `pnpm dedupe` after every mutating install.
28734
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
28735
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
28736
+ deduplicated.
28737
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
28738
+ prints an informational message.
28739
+ - Bun: not supported, enabling this option throws an error.
28740
+
28741
+ ---
28742
+
28569
28743
  ##### `deleteOrphanedLockFiles`<sup>Optional</sup> <a name="deleteOrphanedLockFiles" id="cdklabs-projen-project-types.CdklabsTypeScriptProjectOptions.property.deleteOrphanedLockFiles"></a>
28570
28744
 
28571
28745
  ```typescript
@@ -30331,6 +30505,7 @@ const cdkTypeScriptProjectOptions: CdkTypeScriptProjectOptions = { ... }
30331
30505
  | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.bundledDeps">bundledDeps</a></code> | <code>string[]</code> | List of dependencies to bundle into this module. |
30332
30506
  | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.bunVersion">bunVersion</a></code> | <code>string</code> | The version of Bun to use if using Bun as a package manager. |
30333
30507
  | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.codeArtifactOptions">codeArtifactOptions</a></code> | <code>projen.javascript.CodeArtifactOptions</code> | Options for npm packages using AWS CodeArtifact. |
30508
+ | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
30334
30509
  | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
30335
30510
  | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.deps">deps</a></code> | <code>string[]</code> | Runtime dependencies of this module. |
30336
30511
  | <code><a href="#cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.description">description</a></code> | <code>string</code> | The description is just a string that helps people understand the purpose of the package. |
@@ -31035,6 +31210,34 @@ This is required if publishing packages to, or installing scoped packages from A
31035
31210
 
31036
31211
  ---
31037
31212
 
31213
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.dedupeDeps"></a>
31214
+
31215
+ ```typescript
31216
+ public readonly dedupeDeps: boolean;
31217
+ ```
31218
+
31219
+ - *Type:* boolean
31220
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
31221
+
31222
+ Add a `dedupe` task that deduplicates project dependencies.
31223
+
31224
+ Deduplication prevents multiple versions of the same package from being
31225
+ installed, if a single version can satisfy all requested version ranges.
31226
+ This prevents version proliferation and reduces the size of the dependency
31227
+ tree.
31228
+
31229
+ The behavior depends on the package manager:
31230
+ - npm: runs `npm dedupe` after every mutating install.
31231
+ - pnpm: runs `pnpm dedupe` after every mutating install.
31232
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
31233
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
31234
+ deduplicated.
31235
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
31236
+ prints an informational message.
31237
+ - Bun: not supported, enabling this option throws an error.
31238
+
31239
+ ---
31240
+
31038
31241
  ##### `deleteOrphanedLockFiles`<sup>Optional</sup> <a name="deleteOrphanedLockFiles" id="cdklabs-projen-project-types.CdkTypeScriptProjectOptions.property.deleteOrphanedLockFiles"></a>
31039
31242
 
31040
31243
  ```typescript
@@ -33161,6 +33364,7 @@ const monorepoOptions: yarn.MonorepoOptions = { ... }
33161
33364
  | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.consistentVersions">consistentVersions</a></code> | <code>string[]</code> | Package names that must use a consistent version across all workspaces. |
33162
33365
  | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
33163
33366
  | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
33367
+ | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
33164
33368
  | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.defaultReleaseBranch">defaultReleaseBranch</a></code> | <code>string</code> | The name of the main release branch. |
33165
33369
  | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
33166
33370
  | <code><a href="#cdklabs-projen-project-types.yarn.MonorepoOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
@@ -33852,6 +34056,34 @@ MPL-2.0 license text.
33852
34056
 
33853
34057
  ---
33854
34058
 
34059
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.yarn.MonorepoOptions.property.dedupeDeps"></a>
34060
+
34061
+ ```typescript
34062
+ public readonly dedupeDeps: boolean;
34063
+ ```
34064
+
34065
+ - *Type:* boolean
34066
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
34067
+
34068
+ Add a `dedupe` task that deduplicates project dependencies.
34069
+
34070
+ Deduplication prevents multiple versions of the same package from being
34071
+ installed, if a single version can satisfy all requested version ranges.
34072
+ This prevents version proliferation and reduces the size of the dependency
34073
+ tree.
34074
+
34075
+ The behavior depends on the package manager:
34076
+ - npm: runs `npm dedupe` after every mutating install.
34077
+ - pnpm: runs `pnpm dedupe` after every mutating install.
34078
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
34079
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
34080
+ deduplicated.
34081
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
34082
+ prints an informational message.
34083
+ - Bun: not supported, enabling this option throws an error.
34084
+
34085
+ ---
34086
+
33855
34087
  ##### `defaultReleaseBranch`<sup>Optional</sup> <a name="defaultReleaseBranch" id="cdklabs-projen-project-types.yarn.MonorepoOptions.property.defaultReleaseBranch"></a>
33856
34088
 
33857
34089
  ```typescript
@@ -36002,6 +36234,7 @@ const typeScriptWorkspaceOptions: yarn.TypeScriptWorkspaceOptions = { ... }
36002
36234
  | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.commitGenerated">commitGenerated</a></code> | <code>boolean</code> | Whether to commit the managed files by default. |
36003
36235
  | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.copyrightOwner">copyrightOwner</a></code> | <code>string</code> | License copyright owner. |
36004
36236
  | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.copyrightPeriod">copyrightPeriod</a></code> | <code>string</code> | The copyright years to put in the LICENSE file. |
36237
+ | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.dedupeDeps">dedupeDeps</a></code> | <code>boolean</code> | Add a `dedupe` task that deduplicates project dependencies. |
36005
36238
  | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.deleteOrphanedLockFiles">deleteOrphanedLockFiles</a></code> | <code>boolean</code> | Automatically delete lockfiles from package managers that are not the active one. |
36006
36239
  | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.dependabot">dependabot</a></code> | <code>boolean</code> | Use dependabot to handle dependency upgrades. |
36007
36240
  | <code><a href="#cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.dependabotOptions">dependabotOptions</a></code> | <code>projen.github.DependabotOptions</code> | Options for dependabot. |
@@ -36647,6 +36880,34 @@ MPL-2.0 license text.
36647
36880
 
36648
36881
  ---
36649
36882
 
36883
+ ##### `dedupeDeps`<sup>Optional</sup> <a name="dedupeDeps" id="cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.dedupeDeps"></a>
36884
+
36885
+ ```typescript
36886
+ public readonly dedupeDeps: boolean;
36887
+ ```
36888
+
36889
+ - *Type:* boolean
36890
+ - *Default:* false, unless `yarnBerryOptions.dedupePackages` is set
36891
+
36892
+ Add a `dedupe` task that deduplicates project dependencies.
36893
+
36894
+ Deduplication prevents multiple versions of the same package from being
36895
+ installed, if a single version can satisfy all requested version ranges.
36896
+ This prevents version proliferation and reduces the size of the dependency
36897
+ tree.
36898
+
36899
+ The behavior depends on the package manager:
36900
+ - npm: runs `npm dedupe` after every mutating install.
36901
+ - pnpm: runs `pnpm dedupe` after every mutating install.
36902
+ - Yarn Berry: runs `yarn dedupe` after every mutating install. If
36903
+ `yarnBerryOptions.dedupePackages` is set, only the listed packages are
36904
+ deduplicated.
36905
+ - Yarn Classic: `yarn install` already deduplicates, so the task only
36906
+ prints an informational message.
36907
+ - Bun: not supported, enabling this option throws an error.
36908
+
36909
+ ---
36910
+
36650
36911
  ##### `deleteOrphanedLockFiles`<sup>Optional</sup> <a name="deleteOrphanedLockFiles" id="cdklabs-projen-project-types.yarn.TypeScriptWorkspaceOptions.property.deleteOrphanedLockFiles"></a>
36651
36912
 
36652
36913
  ```typescript
@@ -291,6 +291,25 @@ export interface CdkConstructLibraryOptions {
291
291
  * @default - current year
292
292
  */
293
293
  readonly copyrightPeriod?: string;
294
+ /**
295
+ * Add a `dedupe` task that deduplicates project dependencies.
296
+ * Deduplication prevents multiple versions of the same package from being
297
+ * installed, if a single version can satisfy all requested version ranges.
298
+ * This prevents version proliferation and reduces the size of the dependency
299
+ * tree.
300
+ *
301
+ * The behavior depends on the package manager:
302
+ * - npm: runs `npm dedupe` after every mutating install.
303
+ * - pnpm: runs `pnpm dedupe` after every mutating install.
304
+ * - Yarn Berry: runs `yarn dedupe` after every mutating install. If
305
+ * `yarnBerryOptions.dedupePackages` is set, only the listed packages are
306
+ * deduplicated.
307
+ * - Yarn Classic: `yarn install` already deduplicates, so the task only
308
+ * prints an informational message.
309
+ * - Bun: not supported, enabling this option throws an error.
310
+ * @default - false, unless `yarnBerryOptions.dedupePackages` is set
311
+ */
312
+ readonly dedupeDeps?: boolean;
294
313
  /**
295
314
  * The name of the main release branch.
296
315
  * @default "main"