projen 0.81.17__py3-none-any.whl → 0.98.25__py3-none-any.whl

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.
projen/cdk8s/__init__.py CHANGED
@@ -11,7 +11,22 @@ import jsii
11
11
  import publication
12
12
  import typing_extensions
13
13
 
14
- from typeguard import check_type
14
+ import typeguard
15
+ from importlib.metadata import version as _metadata_package_version
16
+ TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
17
+
18
+ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
19
+ if TYPEGUARD_MAJOR_VERSION <= 2:
20
+ return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
21
+ else:
22
+ if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
23
+ pass
24
+ else:
25
+ if TYPEGUARD_MAJOR_VERSION == 3:
26
+ typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
27
+ typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
28
+ else:
29
+ typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
15
30
 
16
31
  from .._jsii import *
17
32
 
@@ -56,6 +71,8 @@ from ..github.workflows import (
56
71
  JobStep as _JobStep_c3287c05, Triggers as _Triggers_e9ae7617
57
72
  )
58
73
  from ..javascript import (
74
+ AuditOptions as _AuditOptions_429c62df,
75
+ BiomeOptions as _BiomeOptions_452ab984,
59
76
  BuildWorkflowOptions as _BuildWorkflowOptions_b756f97f,
60
77
  BundlerOptions as _BundlerOptions_d60b85ed,
61
78
  CodeArtifactOptions as _CodeArtifactOptions_e4782b3e,
@@ -78,6 +95,7 @@ from ..python import (
78
95
  PytestOptions as _PytestOptions_b400bccc,
79
96
  PythonProject as _PythonProject_f6db8592,
80
97
  PythonProjectOptions as _PythonProjectOptions_588b0f81,
98
+ UvOptions as _UvOptions_49201464,
81
99
  VenvOptions as _VenvOptions_8ea2b226,
82
100
  )
83
101
  from ..release import (
@@ -905,7 +923,9 @@ class Cdk8sPythonApp(
905
923
  pytest: typing.Optional[builtins.bool] = None,
906
924
  pytest_options: typing.Optional[typing.Union[_PytestOptions_b400bccc, typing.Dict[builtins.str, typing.Any]]] = None,
907
925
  sample: typing.Optional[builtins.bool] = None,
926
+ sample_testdir: typing.Optional[builtins.str] = None,
908
927
  setuptools: typing.Optional[builtins.bool] = None,
928
+ uv: typing.Optional[builtins.bool] = None,
909
929
  venv: typing.Optional[builtins.bool] = None,
910
930
  venv_options: typing.Optional[typing.Union[_VenvOptions_8ea2b226, typing.Dict[builtins.str, typing.Any]]] = None,
911
931
  cdk8s_version: builtins.str,
@@ -945,6 +965,7 @@ class Cdk8sPythonApp(
945
965
  package_name: typing.Optional[builtins.str] = None,
946
966
  poetry_options: typing.Optional[typing.Union[_PoetryPyprojectOptionsWithoutDeps_7947f35b, typing.Dict[builtins.str, typing.Any]]] = None,
947
967
  setup_config: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
968
+ uv_options: typing.Optional[typing.Union[_UvOptions_49201464, typing.Dict[builtins.str, typing.Any]]] = None,
948
969
  python_exec: typing.Optional[builtins.str] = None,
949
970
  name: builtins.str,
950
971
  commit_generated: typing.Optional[builtins.bool] = None,
@@ -977,7 +998,9 @@ class Cdk8sPythonApp(
977
998
  :param pytest: (experimental) Include pytest tests. Default: true
978
999
  :param pytest_options: (experimental) pytest options. Default: - defaults
979
1000
  :param sample: (experimental) Include sample code and test if the relevant directories don't exist. Default: true
1001
+ :param sample_testdir: (experimental) Location of sample tests. Typically the same directory where project tests will be located. Default: "tests"
980
1002
  :param setuptools: (experimental) Use setuptools with a setup.py script for packaging and publishing. Default: - true, unless poetry is true, then false
1003
+ :param uv: (experimental) Use uv to manage your project dependencies, virtual environment, and (optional) packaging/publishing. Default: false
981
1004
  :param venv: (experimental) Use venv to manage a virtual environment for installing dependencies inside. Default: - true, unless poetry is true, then false
982
1005
  :param venv_options: (experimental) Venv options. Default: - defaults
983
1006
  :param cdk8s_version: (experimental) Minimum version of the cdk8s to depend on. Default: "2.3.33"
@@ -1017,6 +1040,7 @@ class Cdk8sPythonApp(
1017
1040
  :param package_name: (experimental) Package name.
1018
1041
  :param poetry_options: (experimental) Additional options to set for poetry if using poetry.
1019
1042
  :param setup_config: (experimental) Additional fields to pass in the setup() function if using setuptools.
1043
+ :param uv_options: (experimental) Additional options to set for uv if using uv.
1020
1044
  :param python_exec: (experimental) Path to the python executable to use. Default: "python"
1021
1045
  :param name: (experimental) This is the name of your project. Default: $BASEDIR
1022
1046
  :param commit_generated: (experimental) Whether to commit the managed files by default. Default: true
@@ -1051,7 +1075,9 @@ class Cdk8sPythonApp(
1051
1075
  pytest=pytest,
1052
1076
  pytest_options=pytest_options,
1053
1077
  sample=sample,
1078
+ sample_testdir=sample_testdir,
1054
1079
  setuptools=setuptools,
1080
+ uv=uv,
1055
1081
  venv=venv,
1056
1082
  venv_options=venv_options,
1057
1083
  cdk8s_version=cdk8s_version,
@@ -1091,6 +1117,7 @@ class Cdk8sPythonApp(
1091
1117
  package_name=package_name,
1092
1118
  poetry_options=poetry_options,
1093
1119
  setup_config=setup_config,
1120
+ uv_options=uv_options,
1094
1121
  python_exec=python_exec,
1095
1122
  name=name,
1096
1123
  commit_generated=commit_generated,
@@ -1169,6 +1196,7 @@ class Cdk8sPythonApp(
1169
1196
  "package_name": "packageName",
1170
1197
  "poetry_options": "poetryOptions",
1171
1198
  "setup_config": "setupConfig",
1199
+ "uv_options": "uvOptions",
1172
1200
  "python_exec": "pythonExec",
1173
1201
  "module_name": "moduleName",
1174
1202
  "deps": "deps",
@@ -1184,7 +1212,9 @@ class Cdk8sPythonApp(
1184
1212
  "pytest": "pytest",
1185
1213
  "pytest_options": "pytestOptions",
1186
1214
  "sample": "sample",
1215
+ "sample_testdir": "sampleTestdir",
1187
1216
  "setuptools": "setuptools",
1217
+ "uv": "uv",
1188
1218
  "venv": "venv",
1189
1219
  "venv_options": "venvOptions",
1190
1220
  "cdk8s_version": "cdk8sVersion",
@@ -1245,6 +1275,7 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1245
1275
  package_name: typing.Optional[builtins.str] = None,
1246
1276
  poetry_options: typing.Optional[typing.Union[_PoetryPyprojectOptionsWithoutDeps_7947f35b, typing.Dict[builtins.str, typing.Any]]] = None,
1247
1277
  setup_config: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
1278
+ uv_options: typing.Optional[typing.Union[_UvOptions_49201464, typing.Dict[builtins.str, typing.Any]]] = None,
1248
1279
  python_exec: typing.Optional[builtins.str] = None,
1249
1280
  module_name: builtins.str,
1250
1281
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -1260,7 +1291,9 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1260
1291
  pytest: typing.Optional[builtins.bool] = None,
1261
1292
  pytest_options: typing.Optional[typing.Union[_PytestOptions_b400bccc, typing.Dict[builtins.str, typing.Any]]] = None,
1262
1293
  sample: typing.Optional[builtins.bool] = None,
1294
+ sample_testdir: typing.Optional[builtins.str] = None,
1263
1295
  setuptools: typing.Optional[builtins.bool] = None,
1296
+ uv: typing.Optional[builtins.bool] = None,
1264
1297
  venv: typing.Optional[builtins.bool] = None,
1265
1298
  venv_options: typing.Optional[typing.Union[_VenvOptions_8ea2b226, typing.Dict[builtins.str, typing.Any]]] = None,
1266
1299
  cdk8s_version: builtins.str,
@@ -1318,6 +1351,7 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1318
1351
  :param package_name: (experimental) Package name.
1319
1352
  :param poetry_options: (experimental) Additional options to set for poetry if using poetry.
1320
1353
  :param setup_config: (experimental) Additional fields to pass in the setup() function if using setuptools.
1354
+ :param uv_options: (experimental) Additional options to set for uv if using uv.
1321
1355
  :param python_exec: (experimental) Path to the python executable to use. Default: "python"
1322
1356
  :param module_name: (experimental) Name of the python package as used in imports and filenames. Must only consist of alphanumeric characters and underscores. Default: $PYTHON_MODULE_NAME
1323
1357
  :param deps: (experimental) List of runtime dependencies for this project. Dependencies use the format: ``<module>@<semver>`` Additional dependencies can be added via ``project.addDependency()``. Default: []
@@ -1333,7 +1367,9 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1333
1367
  :param pytest: (experimental) Include pytest tests. Default: true
1334
1368
  :param pytest_options: (experimental) pytest options. Default: - defaults
1335
1369
  :param sample: (experimental) Include sample code and test if the relevant directories don't exist. Default: true
1370
+ :param sample_testdir: (experimental) Location of sample tests. Typically the same directory where project tests will be located. Default: "tests"
1336
1371
  :param setuptools: (experimental) Use setuptools with a setup.py script for packaging and publishing. Default: - true, unless poetry is true, then false
1372
+ :param uv: (experimental) Use uv to manage your project dependencies, virtual environment, and (optional) packaging/publishing. Default: false
1337
1373
  :param venv: (experimental) Use venv to manage a virtual environment for installing dependencies inside. Default: - true, unless poetry is true, then false
1338
1374
  :param venv_options: (experimental) Venv options. Default: - defaults
1339
1375
  :param cdk8s_version: (experimental) Minimum version of the cdk8s to depend on. Default: "2.3.33"
@@ -1376,6 +1412,8 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1376
1412
  stale_options = _StaleOptions_929db764(**stale_options)
1377
1413
  if isinstance(poetry_options, dict):
1378
1414
  poetry_options = _PoetryPyprojectOptionsWithoutDeps_7947f35b(**poetry_options)
1415
+ if isinstance(uv_options, dict):
1416
+ uv_options = _UvOptions_49201464(**uv_options)
1379
1417
  if isinstance(projenrc_js_options, dict):
1380
1418
  projenrc_js_options = _ProjenrcOptions_179dd39f(**projenrc_js_options)
1381
1419
  if isinstance(projenrc_python_options, dict):
@@ -1427,6 +1465,7 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1427
1465
  check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
1428
1466
  check_type(argname="argument poetry_options", value=poetry_options, expected_type=type_hints["poetry_options"])
1429
1467
  check_type(argname="argument setup_config", value=setup_config, expected_type=type_hints["setup_config"])
1468
+ check_type(argname="argument uv_options", value=uv_options, expected_type=type_hints["uv_options"])
1430
1469
  check_type(argname="argument python_exec", value=python_exec, expected_type=type_hints["python_exec"])
1431
1470
  check_type(argname="argument module_name", value=module_name, expected_type=type_hints["module_name"])
1432
1471
  check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
@@ -1442,7 +1481,9 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1442
1481
  check_type(argname="argument pytest", value=pytest, expected_type=type_hints["pytest"])
1443
1482
  check_type(argname="argument pytest_options", value=pytest_options, expected_type=type_hints["pytest_options"])
1444
1483
  check_type(argname="argument sample", value=sample, expected_type=type_hints["sample"])
1484
+ check_type(argname="argument sample_testdir", value=sample_testdir, expected_type=type_hints["sample_testdir"])
1445
1485
  check_type(argname="argument setuptools", value=setuptools, expected_type=type_hints["setuptools"])
1486
+ check_type(argname="argument uv", value=uv, expected_type=type_hints["uv"])
1446
1487
  check_type(argname="argument venv", value=venv, expected_type=type_hints["venv"])
1447
1488
  check_type(argname="argument venv_options", value=venv_options, expected_type=type_hints["venv_options"])
1448
1489
  check_type(argname="argument cdk8s_version", value=cdk8s_version, expected_type=type_hints["cdk8s_version"])
@@ -1536,6 +1577,8 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1536
1577
  self._values["poetry_options"] = poetry_options
1537
1578
  if setup_config is not None:
1538
1579
  self._values["setup_config"] = setup_config
1580
+ if uv_options is not None:
1581
+ self._values["uv_options"] = uv_options
1539
1582
  if python_exec is not None:
1540
1583
  self._values["python_exec"] = python_exec
1541
1584
  if deps is not None:
@@ -1564,8 +1607,12 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1564
1607
  self._values["pytest_options"] = pytest_options
1565
1608
  if sample is not None:
1566
1609
  self._values["sample"] = sample
1610
+ if sample_testdir is not None:
1611
+ self._values["sample_testdir"] = sample_testdir
1567
1612
  if setuptools is not None:
1568
1613
  self._values["setuptools"] = setuptools
1614
+ if uv is not None:
1615
+ self._values["uv"] = uv
1569
1616
  if venv is not None:
1570
1617
  self._values["venv"] = venv
1571
1618
  if venv_options is not None:
@@ -2051,6 +2098,15 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
2051
2098
  result = self._values.get("setup_config")
2052
2099
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
2053
2100
 
2101
+ @builtins.property
2102
+ def uv_options(self) -> typing.Optional[_UvOptions_49201464]:
2103
+ '''(experimental) Additional options to set for uv if using uv.
2104
+
2105
+ :stability: experimental
2106
+ '''
2107
+ result = self._values.get("uv_options")
2108
+ return typing.cast(typing.Optional[_UvOptions_49201464], result)
2109
+
2054
2110
  @builtins.property
2055
2111
  def python_exec(self) -> typing.Optional[builtins.str]:
2056
2112
  '''(experimental) Path to the python executable to use.
@@ -2244,6 +2300,19 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
2244
2300
  result = self._values.get("sample")
2245
2301
  return typing.cast(typing.Optional[builtins.bool], result)
2246
2302
 
2303
+ @builtins.property
2304
+ def sample_testdir(self) -> typing.Optional[builtins.str]:
2305
+ '''(experimental) Location of sample tests.
2306
+
2307
+ Typically the same directory where project tests will be located.
2308
+
2309
+ :default: "tests"
2310
+
2311
+ :stability: experimental
2312
+ '''
2313
+ result = self._values.get("sample_testdir")
2314
+ return typing.cast(typing.Optional[builtins.str], result)
2315
+
2247
2316
  @builtins.property
2248
2317
  def setuptools(self) -> typing.Optional[builtins.bool]:
2249
2318
  '''(experimental) Use setuptools with a setup.py script for packaging and publishing.
@@ -2256,6 +2325,18 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
2256
2325
  result = self._values.get("setuptools")
2257
2326
  return typing.cast(typing.Optional[builtins.bool], result)
2258
2327
 
2328
+ @builtins.property
2329
+ def uv(self) -> typing.Optional[builtins.bool]:
2330
+ '''(experimental) Use uv to manage your project dependencies, virtual environment, and (optional) packaging/publishing.
2331
+
2332
+ :default: false
2333
+
2334
+ :stability: experimental
2335
+ :featured: true
2336
+ '''
2337
+ result = self._values.get("uv")
2338
+ return typing.cast(typing.Optional[builtins.bool], result)
2339
+
2259
2340
  @builtins.property
2260
2341
  def venv(self) -> typing.Optional[builtins.bool]:
2261
2342
  '''(experimental) Use venv to manage a virtual environment for installing dependencies inside.
@@ -2495,7 +2576,11 @@ class Cdk8sTypeScriptApp(
2495
2576
  k8s_minor_version: typing.Optional[jsii.Number] = None,
2496
2577
  default_release_branch: builtins.str,
2497
2578
  artifacts_directory: typing.Optional[builtins.str] = None,
2579
+ audit_deps: typing.Optional[builtins.bool] = None,
2580
+ audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
2498
2581
  auto_approve_upgrades: typing.Optional[builtins.bool] = None,
2582
+ biome: typing.Optional[builtins.bool] = None,
2583
+ biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
2499
2584
  build_workflow: typing.Optional[builtins.bool] = None,
2500
2585
  build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
2501
2586
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -2559,6 +2644,7 @@ class Cdk8sTypeScriptApp(
2559
2644
  bugs_email: typing.Optional[builtins.str] = None,
2560
2645
  bugs_url: typing.Optional[builtins.str] = None,
2561
2646
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
2647
+ bun_version: typing.Optional[builtins.str] = None,
2562
2648
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
2563
2649
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
2564
2650
  description: typing.Optional[builtins.str] = None,
@@ -2575,6 +2661,7 @@ class Cdk8sTypeScriptApp(
2575
2661
  npm_registry: typing.Optional[builtins.str] = None,
2576
2662
  npm_registry_url: typing.Optional[builtins.str] = None,
2577
2663
  npm_token_secret: typing.Optional[builtins.str] = None,
2664
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
2578
2665
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
2579
2666
  package_name: typing.Optional[builtins.str] = None,
2580
2667
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -2586,9 +2673,11 @@ class Cdk8sTypeScriptApp(
2586
2673
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
2587
2674
  stability: typing.Optional[builtins.str] = None,
2588
2675
  yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
2676
+ bump_package: typing.Optional[builtins.str] = None,
2589
2677
  jsii_release_version: typing.Optional[builtins.str] = None,
2590
2678
  major_version: typing.Optional[jsii.Number] = None,
2591
2679
  min_major_version: typing.Optional[jsii.Number] = None,
2680
+ next_version_command: typing.Optional[builtins.str] = None,
2592
2681
  npm_dist_tag: typing.Optional[builtins.str] = None,
2593
2682
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
2594
2683
  prerelease: typing.Optional[builtins.str] = None,
@@ -2596,12 +2685,14 @@ class Cdk8sTypeScriptApp(
2596
2685
  publish_tasks: typing.Optional[builtins.bool] = None,
2597
2686
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
2598
2687
  release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
2688
+ release_environment: typing.Optional[builtins.str] = None,
2599
2689
  release_every_commit: typing.Optional[builtins.bool] = None,
2600
2690
  release_failure_issue: typing.Optional[builtins.bool] = None,
2601
2691
  release_failure_issue_label: typing.Optional[builtins.str] = None,
2602
2692
  release_schedule: typing.Optional[builtins.str] = None,
2603
2693
  release_tag_prefix: typing.Optional[builtins.str] = None,
2604
2694
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
2695
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
2605
2696
  release_workflow_name: typing.Optional[builtins.str] = None,
2606
2697
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
2607
2698
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -2631,7 +2722,7 @@ class Cdk8sTypeScriptApp(
2631
2722
  :param docgen: (experimental) Docgen by Typedoc. Default: false
2632
2723
  :param docs_directory: (experimental) Docs directory. Default: "docs"
2633
2724
  :param entrypoint_types: (experimental) 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)
2634
- :param eslint: (experimental) Setup eslint. Default: true
2725
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
2635
2726
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
2636
2727
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
2637
2728
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -2656,14 +2747,18 @@ class Cdk8sTypeScriptApp(
2656
2747
  :param k8s_minor_version: (experimental) The cdk8s-plus library depends of Kubernetes minor version For example, cdk8s-plus-22 targets kubernetes version 1.22.0 cdk8s-plus-21 targets kubernetes version 1.21.0. Default: 22
2657
2748
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
2658
2749
  :param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
2750
+ :param audit_deps: (experimental) Run security audit on dependencies. When enabled, creates an "audit" task that checks for known security vulnerabilities in dependencies. By default, runs during every build and checks for "high" severity vulnerabilities or above in all dependencies (including dev dependencies). Default: false
2751
+ :param audit_deps_options: (experimental) Security audit options. Default: - default options
2659
2752
  :param auto_approve_upgrades: (experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). Throw if set to true but ``autoApproveOptions`` are not defined. Default: - true
2753
+ :param biome: (experimental) Setup Biome. Default: false
2754
+ :param biome_options: (experimental) Biome options. Default: - default options
2660
2755
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
2661
2756
  :param build_workflow_options: (experimental) Options for PR build workflow.
2662
2757
  :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
2663
2758
  :param bundler_options: (experimental) Options for ``Bundler``.
2664
2759
  :param check_licenses: (experimental) Configure which licenses should be deemed acceptable for use by dependencies. This setting will cause the build to fail, if any prohibited or not allowed licenses ares encountered. Default: - no license checks are run during the build and all licenses will be accepted
2665
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v4 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
2666
- :param code_cov_token_secret: (experimental) 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
2760
+ :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v5 By default, OIDC auth is used. Alternatively a token can be provided via ``codeCovTokenSecret``. Default: false
2761
+ :param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
2667
2762
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
2668
2763
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
2669
2764
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -2690,8 +2785,8 @@ class Cdk8sTypeScriptApp(
2690
2785
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
2691
2786
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
2692
2787
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
2693
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
2694
- :param workflow_node_version: (experimental) The node version to use in GitHub workflows. Default: - same as ``minNodeVersion``
2788
+ :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
2789
+ :param workflow_node_version: (experimental) The node version used in GitHub Actions workflows. Always use this option if your GitHub Actions workflows require a specific to run. Default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
2695
2790
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
2696
2791
  :param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
2697
2792
  :param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
@@ -2720,6 +2815,7 @@ class Cdk8sTypeScriptApp(
2720
2815
  :param bugs_email: (experimental) The email address to which issues should be reported.
2721
2816
  :param bugs_url: (experimental) The url to your project's issue tracker.
2722
2817
  :param bundled_deps: (experimental) List of dependencies to bundle into this module. These modules will be added both to the ``dependencies`` section and ``bundledDependencies`` section of your ``package.json``. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include.
2818
+ :param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
2723
2819
  :param code_artifact_options: (experimental) Options for npm packages using AWS CodeArtifact. This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact Default: - undefined
2724
2820
  :param deps: (experimental) Runtime dependencies of this module. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include. Default: []
2725
2821
  :param description: (experimental) The description is just a string that helps people understand the purpose of the package. It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description
@@ -2729,27 +2825,30 @@ class Cdk8sTypeScriptApp(
2729
2825
  :param keywords: (experimental) Keywords to include in ``package.json``.
2730
2826
  :param license: (experimental) License's SPDX identifier. See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the ``licensed`` option if you want to no license to be specified. Default: "Apache-2.0"
2731
2827
  :param licensed: (experimental) Indicates if a license should be added. Default: true
2732
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
2733
- :param min_node_version: (experimental) Minimum Node.js version to require via package.json ``engines`` (inclusive). Default: - no "engines" specified
2828
+ :param max_node_version: (experimental) The maximum node version supported by this package. Most projects should not use this option. The value indicates that the package is incompatible with any newer versions of node. This requirement is enforced via the engines field. You will normally not need to set this option. Consider this option only if your package is known to not function with newer versions of node. Default: - no maximum version is enforced
2829
+ :param min_node_version: (experimental) The minimum node version required by this package to function. Most projects should not use this option. The value indicates that the package is incompatible with any older versions of node. This requirement is enforced via the engines field. You will normally not need to set this option, even if your package is incompatible with EOL versions of node. Consider this option only if your package depends on a specific feature, that is not available in other LTS versions. Setting this option has very high impact on the consumers of your package, as package managers will actively prevent usage with node versions you have marked as incompatible. To change the node version of your CI/CD workflows, use ``workflowNodeVersion``. Default: - no minimum version is enforced
2734
2830
  :param npm_access: (experimental) 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``.
2735
2831
  :param npm_provenance: (experimental) Should provenance statements be generated when the package is published. A supported package manager is required to publish a package with npm provenance statements and you will need to use a supported CI/CD provider. Note that the projen ``Release`` and ``Publisher`` components are using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: - true for public packages, false otherwise
2736
2832
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
2737
2833
  :param npm_registry_url: (experimental) The base URL of the npm package registry. Must be a URL (e.g. start with "https://" or "http://") Default: "https://registry.npmjs.org"
2738
2834
  :param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
2835
+ :param npm_trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Default: - false
2739
2836
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
2740
2837
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
2741
2838
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
2742
2839
  :param peer_deps: (experimental) Peer dependencies for this module. Dependencies listed here are required to be installed (and satisfied) by the *consumer* of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the ``node_modules`` tree of your consumers. Note that prior to npm@7, peer dependencies are *not* automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers. Unless ``peerDependencyOptions.pinnedDevDependency`` is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required. Default: []
2743
- :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "7"
2840
+ :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
2744
2841
  :param repository: (experimental) The repository is the location where the actual code for your package lives. See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository
2745
2842
  :param repository_directory: (experimental) 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.
2746
2843
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
2747
2844
  :param scripts: (deprecated) npm scripts to include. If a script has the same name as a standard script, the standard script will be overwritten. Also adds the script as a task. Default: {}
2748
2845
  :param stability: (experimental) Package's Stability.
2749
2846
  :param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
2847
+ :param bump_package: (experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string. This can be any compatible package version, including the deprecated ``standard-version@9``. Default: - A recent version of "commit-and-tag-version"
2750
2848
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
2751
2849
  :param major_version: (experimental) Major version to release from the default branch. If this is specified, we bump the latest version of this major version line. If not specified, we bump the global latest version. Default: - Major version is not enforced.
2752
2850
  :param min_major_version: (experimental) Minimal Major version to release. This can be useful to set to 1, as breaking changes before the 1.x major release are not incrementing the major version number. Can not be set together with ``majorVersion``. Default: - No minimum version is being enforced
2851
+ :param next_version_command: (experimental) A shell command to control the next version to release. If present, this shell command will be run before the bump is executed, and it determines what version to release. It will be executed in the following environment: - Working directory: the project directory. - ``$VERSION``: the current version. Looks like ``1.2.3``. - ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset. - ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``. The command should print one of the following to ``stdout``: - Nothing: the next version number will be determined based on commit history. - ``x.y.z``: the next version number will be ``x.y.z``. - ``major|minor|patch``: the next version number will be the current version number with the indicated component bumped. This setting cannot be specified together with ``minMajorVersion``; the invoked script can be used to achieve the effects of ``minMajorVersion``. Default: - The next version will be determined based on the commit history and project settings.
2753
2852
  :param npm_dist_tag: (experimental) The npmDistTag to use when publishing from the default branch. To set the npm dist-tag for release branches, set the ``npmDistTag`` property for each branch. Default: "latest"
2754
2853
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
2755
2854
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -2757,15 +2856,17 @@ class Cdk8sTypeScriptApp(
2757
2856
  :param publish_tasks: (experimental) Define publishing tasks that can be executed manually as well as workflows. Normally, publishing only happens within automated workflows. Enable this in order to create a publishing task for each publishing activity. Default: false
2758
2857
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
2759
2858
  :param release_branches: (experimental) Defines additional release branches. A workflow will be created for each release branch which will publish releases from commits in this branch. Each release branch *must* be assigned a major version number which is used to enforce that versions published from that branch always use that major version. If multiple branches are used, the ``majorVersion`` field must also be provided for the default branch. Default: - no additional branches are used for release. you can use ``addBranch()`` to add additional branches.
2859
+ :param release_environment: (experimental) The GitHub Actions environment used for the release. This can be used to add an explicit approval step to the release or limit who can initiate a release through environment protection rules. When multiple artifacts are released, the environment can be overwritten on a per artifact basis. Default: - no environment used, unless set at the artifact level
2760
2860
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
2761
2861
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
2762
2862
  :param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
2763
2863
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
2764
2864
  :param release_tag_prefix: (experimental) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. Note: this prefix is used to detect the latest tagged version when bumping, so if you change this on a project with an existing version history, you may need to manually tag your latest release with the new prefix. Default: "v"
2765
2865
  :param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
2866
+ :param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
2766
2867
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
2767
2868
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
2768
- :param versionrc_options: (experimental) Custom configuration used when creating changelog with standard-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
2869
+ :param versionrc_options: (experimental) Custom configuration used when creating changelog with commit-and-tag-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
2769
2870
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
2770
2871
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
2771
2872
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
@@ -2819,7 +2920,11 @@ class Cdk8sTypeScriptApp(
2819
2920
  k8s_minor_version=k8s_minor_version,
2820
2921
  default_release_branch=default_release_branch,
2821
2922
  artifacts_directory=artifacts_directory,
2923
+ audit_deps=audit_deps,
2924
+ audit_deps_options=audit_deps_options,
2822
2925
  auto_approve_upgrades=auto_approve_upgrades,
2926
+ biome=biome,
2927
+ biome_options=biome_options,
2823
2928
  build_workflow=build_workflow,
2824
2929
  build_workflow_options=build_workflow_options,
2825
2930
  build_workflow_triggers=build_workflow_triggers,
@@ -2883,6 +2988,7 @@ class Cdk8sTypeScriptApp(
2883
2988
  bugs_email=bugs_email,
2884
2989
  bugs_url=bugs_url,
2885
2990
  bundled_deps=bundled_deps,
2991
+ bun_version=bun_version,
2886
2992
  code_artifact_options=code_artifact_options,
2887
2993
  deps=deps,
2888
2994
  description=description,
@@ -2899,6 +3005,7 @@ class Cdk8sTypeScriptApp(
2899
3005
  npm_registry=npm_registry,
2900
3006
  npm_registry_url=npm_registry_url,
2901
3007
  npm_token_secret=npm_token_secret,
3008
+ npm_trusted_publishing=npm_trusted_publishing,
2902
3009
  package_manager=package_manager,
2903
3010
  package_name=package_name,
2904
3011
  peer_dependency_options=peer_dependency_options,
@@ -2910,9 +3017,11 @@ class Cdk8sTypeScriptApp(
2910
3017
  scripts=scripts,
2911
3018
  stability=stability,
2912
3019
  yarn_berry_options=yarn_berry_options,
3020
+ bump_package=bump_package,
2913
3021
  jsii_release_version=jsii_release_version,
2914
3022
  major_version=major_version,
2915
3023
  min_major_version=min_major_version,
3024
+ next_version_command=next_version_command,
2916
3025
  npm_dist_tag=npm_dist_tag,
2917
3026
  post_build_steps=post_build_steps,
2918
3027
  prerelease=prerelease,
@@ -2920,12 +3029,14 @@ class Cdk8sTypeScriptApp(
2920
3029
  publish_tasks=publish_tasks,
2921
3030
  releasable_commits=releasable_commits,
2922
3031
  release_branches=release_branches,
3032
+ release_environment=release_environment,
2923
3033
  release_every_commit=release_every_commit,
2924
3034
  release_failure_issue=release_failure_issue,
2925
3035
  release_failure_issue_label=release_failure_issue_label,
2926
3036
  release_schedule=release_schedule,
2927
3037
  release_tag_prefix=release_tag_prefix,
2928
3038
  release_trigger=release_trigger,
3039
+ release_workflow_env=release_workflow_env,
2929
3040
  release_workflow_name=release_workflow_name,
2930
3041
  release_workflow_setup_steps=release_workflow_setup_steps,
2931
3042
  versionrc_options=versionrc_options,
@@ -3009,6 +3120,7 @@ class Cdk8sTypeScriptApp(
3009
3120
  "bugs_email": "bugsEmail",
3010
3121
  "bugs_url": "bugsUrl",
3011
3122
  "bundled_deps": "bundledDeps",
3123
+ "bun_version": "bunVersion",
3012
3124
  "code_artifact_options": "codeArtifactOptions",
3013
3125
  "deps": "deps",
3014
3126
  "description": "description",
@@ -3025,6 +3137,7 @@ class Cdk8sTypeScriptApp(
3025
3137
  "npm_registry": "npmRegistry",
3026
3138
  "npm_registry_url": "npmRegistryUrl",
3027
3139
  "npm_token_secret": "npmTokenSecret",
3140
+ "npm_trusted_publishing": "npmTrustedPublishing",
3028
3141
  "package_manager": "packageManager",
3029
3142
  "package_name": "packageName",
3030
3143
  "peer_dependency_options": "peerDependencyOptions",
@@ -3036,9 +3149,11 @@ class Cdk8sTypeScriptApp(
3036
3149
  "scripts": "scripts",
3037
3150
  "stability": "stability",
3038
3151
  "yarn_berry_options": "yarnBerryOptions",
3152
+ "bump_package": "bumpPackage",
3039
3153
  "jsii_release_version": "jsiiReleaseVersion",
3040
3154
  "major_version": "majorVersion",
3041
3155
  "min_major_version": "minMajorVersion",
3156
+ "next_version_command": "nextVersionCommand",
3042
3157
  "npm_dist_tag": "npmDistTag",
3043
3158
  "post_build_steps": "postBuildSteps",
3044
3159
  "prerelease": "prerelease",
@@ -3046,12 +3161,14 @@ class Cdk8sTypeScriptApp(
3046
3161
  "publish_tasks": "publishTasks",
3047
3162
  "releasable_commits": "releasableCommits",
3048
3163
  "release_branches": "releaseBranches",
3164
+ "release_environment": "releaseEnvironment",
3049
3165
  "release_every_commit": "releaseEveryCommit",
3050
3166
  "release_failure_issue": "releaseFailureIssue",
3051
3167
  "release_failure_issue_label": "releaseFailureIssueLabel",
3052
3168
  "release_schedule": "releaseSchedule",
3053
3169
  "release_tag_prefix": "releaseTagPrefix",
3054
3170
  "release_trigger": "releaseTrigger",
3171
+ "release_workflow_env": "releaseWorkflowEnv",
3055
3172
  "release_workflow_name": "releaseWorkflowName",
3056
3173
  "release_workflow_setup_steps": "releaseWorkflowSetupSteps",
3057
3174
  "versionrc_options": "versionrcOptions",
@@ -3060,7 +3177,11 @@ class Cdk8sTypeScriptApp(
3060
3177
  "workflow_runs_on_group": "workflowRunsOnGroup",
3061
3178
  "default_release_branch": "defaultReleaseBranch",
3062
3179
  "artifacts_directory": "artifactsDirectory",
3180
+ "audit_deps": "auditDeps",
3181
+ "audit_deps_options": "auditDepsOptions",
3063
3182
  "auto_approve_upgrades": "autoApproveUpgrades",
3183
+ "biome": "biome",
3184
+ "biome_options": "biomeOptions",
3064
3185
  "build_workflow": "buildWorkflow",
3065
3186
  "build_workflow_options": "buildWorkflowOptions",
3066
3187
  "build_workflow_triggers": "buildWorkflowTriggers",
@@ -3177,6 +3298,7 @@ class Cdk8sTypeScriptAppOptions(
3177
3298
  bugs_email: typing.Optional[builtins.str] = None,
3178
3299
  bugs_url: typing.Optional[builtins.str] = None,
3179
3300
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
3301
+ bun_version: typing.Optional[builtins.str] = None,
3180
3302
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
3181
3303
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
3182
3304
  description: typing.Optional[builtins.str] = None,
@@ -3193,6 +3315,7 @@ class Cdk8sTypeScriptAppOptions(
3193
3315
  npm_registry: typing.Optional[builtins.str] = None,
3194
3316
  npm_registry_url: typing.Optional[builtins.str] = None,
3195
3317
  npm_token_secret: typing.Optional[builtins.str] = None,
3318
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
3196
3319
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
3197
3320
  package_name: typing.Optional[builtins.str] = None,
3198
3321
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3204,9 +3327,11 @@ class Cdk8sTypeScriptAppOptions(
3204
3327
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
3205
3328
  stability: typing.Optional[builtins.str] = None,
3206
3329
  yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
3330
+ bump_package: typing.Optional[builtins.str] = None,
3207
3331
  jsii_release_version: typing.Optional[builtins.str] = None,
3208
3332
  major_version: typing.Optional[jsii.Number] = None,
3209
3333
  min_major_version: typing.Optional[jsii.Number] = None,
3334
+ next_version_command: typing.Optional[builtins.str] = None,
3210
3335
  npm_dist_tag: typing.Optional[builtins.str] = None,
3211
3336
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
3212
3337
  prerelease: typing.Optional[builtins.str] = None,
@@ -3214,12 +3339,14 @@ class Cdk8sTypeScriptAppOptions(
3214
3339
  publish_tasks: typing.Optional[builtins.bool] = None,
3215
3340
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
3216
3341
  release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
3342
+ release_environment: typing.Optional[builtins.str] = None,
3217
3343
  release_every_commit: typing.Optional[builtins.bool] = None,
3218
3344
  release_failure_issue: typing.Optional[builtins.bool] = None,
3219
3345
  release_failure_issue_label: typing.Optional[builtins.str] = None,
3220
3346
  release_schedule: typing.Optional[builtins.str] = None,
3221
3347
  release_tag_prefix: typing.Optional[builtins.str] = None,
3222
3348
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
3349
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
3223
3350
  release_workflow_name: typing.Optional[builtins.str] = None,
3224
3351
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
3225
3352
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -3228,7 +3355,11 @@ class Cdk8sTypeScriptAppOptions(
3228
3355
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
3229
3356
  default_release_branch: builtins.str,
3230
3357
  artifacts_directory: typing.Optional[builtins.str] = None,
3358
+ audit_deps: typing.Optional[builtins.bool] = None,
3359
+ audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
3231
3360
  auto_approve_upgrades: typing.Optional[builtins.bool] = None,
3361
+ biome: typing.Optional[builtins.bool] = None,
3362
+ biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
3232
3363
  build_workflow: typing.Optional[builtins.bool] = None,
3233
3364
  build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
3234
3365
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3338,6 +3469,7 @@ class Cdk8sTypeScriptAppOptions(
3338
3469
  :param bugs_email: (experimental) The email address to which issues should be reported.
3339
3470
  :param bugs_url: (experimental) The url to your project's issue tracker.
3340
3471
  :param bundled_deps: (experimental) List of dependencies to bundle into this module. These modules will be added both to the ``dependencies`` section and ``bundledDependencies`` section of your ``package.json``. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include.
3472
+ :param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
3341
3473
  :param code_artifact_options: (experimental) Options for npm packages using AWS CodeArtifact. This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact Default: - undefined
3342
3474
  :param deps: (experimental) Runtime dependencies of this module. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include. Default: []
3343
3475
  :param description: (experimental) The description is just a string that helps people understand the purpose of the package. It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description
@@ -3347,27 +3479,30 @@ class Cdk8sTypeScriptAppOptions(
3347
3479
  :param keywords: (experimental) Keywords to include in ``package.json``.
3348
3480
  :param license: (experimental) License's SPDX identifier. See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the ``licensed`` option if you want to no license to be specified. Default: "Apache-2.0"
3349
3481
  :param licensed: (experimental) Indicates if a license should be added. Default: true
3350
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
3351
- :param min_node_version: (experimental) Minimum Node.js version to require via package.json ``engines`` (inclusive). Default: - no "engines" specified
3482
+ :param max_node_version: (experimental) The maximum node version supported by this package. Most projects should not use this option. The value indicates that the package is incompatible with any newer versions of node. This requirement is enforced via the engines field. You will normally not need to set this option. Consider this option only if your package is known to not function with newer versions of node. Default: - no maximum version is enforced
3483
+ :param min_node_version: (experimental) The minimum node version required by this package to function. Most projects should not use this option. The value indicates that the package is incompatible with any older versions of node. This requirement is enforced via the engines field. You will normally not need to set this option, even if your package is incompatible with EOL versions of node. Consider this option only if your package depends on a specific feature, that is not available in other LTS versions. Setting this option has very high impact on the consumers of your package, as package managers will actively prevent usage with node versions you have marked as incompatible. To change the node version of your CI/CD workflows, use ``workflowNodeVersion``. Default: - no minimum version is enforced
3352
3484
  :param npm_access: (experimental) 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``.
3353
3485
  :param npm_provenance: (experimental) Should provenance statements be generated when the package is published. A supported package manager is required to publish a package with npm provenance statements and you will need to use a supported CI/CD provider. Note that the projen ``Release`` and ``Publisher`` components are using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: - true for public packages, false otherwise
3354
3486
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
3355
3487
  :param npm_registry_url: (experimental) The base URL of the npm package registry. Must be a URL (e.g. start with "https://" or "http://") Default: "https://registry.npmjs.org"
3356
3488
  :param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
3489
+ :param npm_trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Default: - false
3357
3490
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
3358
3491
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
3359
3492
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
3360
3493
  :param peer_deps: (experimental) Peer dependencies for this module. Dependencies listed here are required to be installed (and satisfied) by the *consumer* of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the ``node_modules`` tree of your consumers. Note that prior to npm@7, peer dependencies are *not* automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers. Unless ``peerDependencyOptions.pinnedDevDependency`` is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required. Default: []
3361
- :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "7"
3494
+ :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
3362
3495
  :param repository: (experimental) The repository is the location where the actual code for your package lives. See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository
3363
3496
  :param repository_directory: (experimental) 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.
3364
3497
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
3365
3498
  :param scripts: (deprecated) npm scripts to include. If a script has the same name as a standard script, the standard script will be overwritten. Also adds the script as a task. Default: {}
3366
3499
  :param stability: (experimental) Package's Stability.
3367
3500
  :param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
3501
+ :param bump_package: (experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string. This can be any compatible package version, including the deprecated ``standard-version@9``. Default: - A recent version of "commit-and-tag-version"
3368
3502
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
3369
3503
  :param major_version: (experimental) Major version to release from the default branch. If this is specified, we bump the latest version of this major version line. If not specified, we bump the global latest version. Default: - Major version is not enforced.
3370
3504
  :param min_major_version: (experimental) Minimal Major version to release. This can be useful to set to 1, as breaking changes before the 1.x major release are not incrementing the major version number. Can not be set together with ``majorVersion``. Default: - No minimum version is being enforced
3505
+ :param next_version_command: (experimental) A shell command to control the next version to release. If present, this shell command will be run before the bump is executed, and it determines what version to release. It will be executed in the following environment: - Working directory: the project directory. - ``$VERSION``: the current version. Looks like ``1.2.3``. - ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset. - ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``. The command should print one of the following to ``stdout``: - Nothing: the next version number will be determined based on commit history. - ``x.y.z``: the next version number will be ``x.y.z``. - ``major|minor|patch``: the next version number will be the current version number with the indicated component bumped. This setting cannot be specified together with ``minMajorVersion``; the invoked script can be used to achieve the effects of ``minMajorVersion``. Default: - The next version will be determined based on the commit history and project settings.
3371
3506
  :param npm_dist_tag: (experimental) The npmDistTag to use when publishing from the default branch. To set the npm dist-tag for release branches, set the ``npmDistTag`` property for each branch. Default: "latest"
3372
3507
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
3373
3508
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -3375,28 +3510,34 @@ class Cdk8sTypeScriptAppOptions(
3375
3510
  :param publish_tasks: (experimental) Define publishing tasks that can be executed manually as well as workflows. Normally, publishing only happens within automated workflows. Enable this in order to create a publishing task for each publishing activity. Default: false
3376
3511
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
3377
3512
  :param release_branches: (experimental) Defines additional release branches. A workflow will be created for each release branch which will publish releases from commits in this branch. Each release branch *must* be assigned a major version number which is used to enforce that versions published from that branch always use that major version. If multiple branches are used, the ``majorVersion`` field must also be provided for the default branch. Default: - no additional branches are used for release. you can use ``addBranch()`` to add additional branches.
3513
+ :param release_environment: (experimental) The GitHub Actions environment used for the release. This can be used to add an explicit approval step to the release or limit who can initiate a release through environment protection rules. When multiple artifacts are released, the environment can be overwritten on a per artifact basis. Default: - no environment used, unless set at the artifact level
3378
3514
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
3379
3515
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
3380
3516
  :param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
3381
3517
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
3382
3518
  :param release_tag_prefix: (experimental) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. Note: this prefix is used to detect the latest tagged version when bumping, so if you change this on a project with an existing version history, you may need to manually tag your latest release with the new prefix. Default: "v"
3383
3519
  :param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
3520
+ :param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
3384
3521
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
3385
3522
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
3386
- :param versionrc_options: (experimental) Custom configuration used when creating changelog with standard-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
3523
+ :param versionrc_options: (experimental) Custom configuration used when creating changelog with commit-and-tag-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
3387
3524
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
3388
3525
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
3389
3526
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
3390
3527
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
3391
3528
  :param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
3529
+ :param audit_deps: (experimental) Run security audit on dependencies. When enabled, creates an "audit" task that checks for known security vulnerabilities in dependencies. By default, runs during every build and checks for "high" severity vulnerabilities or above in all dependencies (including dev dependencies). Default: false
3530
+ :param audit_deps_options: (experimental) Security audit options. Default: - default options
3392
3531
  :param auto_approve_upgrades: (experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). Throw if set to true but ``autoApproveOptions`` are not defined. Default: - true
3532
+ :param biome: (experimental) Setup Biome. Default: false
3533
+ :param biome_options: (experimental) Biome options. Default: - default options
3393
3534
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
3394
3535
  :param build_workflow_options: (experimental) Options for PR build workflow.
3395
3536
  :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
3396
3537
  :param bundler_options: (experimental) Options for ``Bundler``.
3397
3538
  :param check_licenses: (experimental) Configure which licenses should be deemed acceptable for use by dependencies. This setting will cause the build to fail, if any prohibited or not allowed licenses ares encountered. Default: - no license checks are run during the build and all licenses will be accepted
3398
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v4 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
3399
- :param code_cov_token_secret: (experimental) 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
3539
+ :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v5 By default, OIDC auth is used. Alternatively a token can be provided via ``codeCovTokenSecret``. Default: false
3540
+ :param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
3400
3541
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
3401
3542
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
3402
3543
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -3423,15 +3564,15 @@ class Cdk8sTypeScriptAppOptions(
3423
3564
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
3424
3565
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
3425
3566
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
3426
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
3427
- :param workflow_node_version: (experimental) The node version to use in GitHub workflows. Default: - same as ``minNodeVersion``
3567
+ :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
3568
+ :param workflow_node_version: (experimental) The node version used in GitHub Actions workflows. Always use this option if your GitHub Actions workflows require a specific to run. Default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
3428
3569
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
3429
3570
  :param disable_tsconfig: (experimental) Do not generate a ``tsconfig.json`` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). Default: false
3430
3571
  :param disable_tsconfig_dev: (experimental) Do not generate a ``tsconfig.dev.json`` file. Default: false
3431
3572
  :param docgen: (experimental) Docgen by Typedoc. Default: false
3432
3573
  :param docs_directory: (experimental) Docs directory. Default: "docs"
3433
3574
  :param entrypoint_types: (experimental) 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)
3434
- :param eslint: (experimental) Setup eslint. Default: true
3575
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
3435
3576
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
3436
3577
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
3437
3578
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -3491,6 +3632,10 @@ class Cdk8sTypeScriptAppOptions(
3491
3632
  yarn_berry_options = _YarnBerryOptions_b6942539(**yarn_berry_options)
3492
3633
  if isinstance(workflow_runs_on_group, dict):
3493
3634
  workflow_runs_on_group = _GroupRunnerOptions_148c59c1(**workflow_runs_on_group)
3635
+ if isinstance(audit_deps_options, dict):
3636
+ audit_deps_options = _AuditOptions_429c62df(**audit_deps_options)
3637
+ if isinstance(biome_options, dict):
3638
+ biome_options = _BiomeOptions_452ab984(**biome_options)
3494
3639
  if isinstance(build_workflow_options, dict):
3495
3640
  build_workflow_options = _BuildWorkflowOptions_b756f97f(**build_workflow_options)
3496
3641
  if isinstance(build_workflow_triggers, dict):
@@ -3564,6 +3709,7 @@ class Cdk8sTypeScriptAppOptions(
3564
3709
  check_type(argname="argument bugs_email", value=bugs_email, expected_type=type_hints["bugs_email"])
3565
3710
  check_type(argname="argument bugs_url", value=bugs_url, expected_type=type_hints["bugs_url"])
3566
3711
  check_type(argname="argument bundled_deps", value=bundled_deps, expected_type=type_hints["bundled_deps"])
3712
+ check_type(argname="argument bun_version", value=bun_version, expected_type=type_hints["bun_version"])
3567
3713
  check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
3568
3714
  check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
3569
3715
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
@@ -3580,6 +3726,7 @@ class Cdk8sTypeScriptAppOptions(
3580
3726
  check_type(argname="argument npm_registry", value=npm_registry, expected_type=type_hints["npm_registry"])
3581
3727
  check_type(argname="argument npm_registry_url", value=npm_registry_url, expected_type=type_hints["npm_registry_url"])
3582
3728
  check_type(argname="argument npm_token_secret", value=npm_token_secret, expected_type=type_hints["npm_token_secret"])
3729
+ check_type(argname="argument npm_trusted_publishing", value=npm_trusted_publishing, expected_type=type_hints["npm_trusted_publishing"])
3583
3730
  check_type(argname="argument package_manager", value=package_manager, expected_type=type_hints["package_manager"])
3584
3731
  check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
3585
3732
  check_type(argname="argument peer_dependency_options", value=peer_dependency_options, expected_type=type_hints["peer_dependency_options"])
@@ -3591,9 +3738,11 @@ class Cdk8sTypeScriptAppOptions(
3591
3738
  check_type(argname="argument scripts", value=scripts, expected_type=type_hints["scripts"])
3592
3739
  check_type(argname="argument stability", value=stability, expected_type=type_hints["stability"])
3593
3740
  check_type(argname="argument yarn_berry_options", value=yarn_berry_options, expected_type=type_hints["yarn_berry_options"])
3741
+ check_type(argname="argument bump_package", value=bump_package, expected_type=type_hints["bump_package"])
3594
3742
  check_type(argname="argument jsii_release_version", value=jsii_release_version, expected_type=type_hints["jsii_release_version"])
3595
3743
  check_type(argname="argument major_version", value=major_version, expected_type=type_hints["major_version"])
3596
3744
  check_type(argname="argument min_major_version", value=min_major_version, expected_type=type_hints["min_major_version"])
3745
+ check_type(argname="argument next_version_command", value=next_version_command, expected_type=type_hints["next_version_command"])
3597
3746
  check_type(argname="argument npm_dist_tag", value=npm_dist_tag, expected_type=type_hints["npm_dist_tag"])
3598
3747
  check_type(argname="argument post_build_steps", value=post_build_steps, expected_type=type_hints["post_build_steps"])
3599
3748
  check_type(argname="argument prerelease", value=prerelease, expected_type=type_hints["prerelease"])
@@ -3601,12 +3750,14 @@ class Cdk8sTypeScriptAppOptions(
3601
3750
  check_type(argname="argument publish_tasks", value=publish_tasks, expected_type=type_hints["publish_tasks"])
3602
3751
  check_type(argname="argument releasable_commits", value=releasable_commits, expected_type=type_hints["releasable_commits"])
3603
3752
  check_type(argname="argument release_branches", value=release_branches, expected_type=type_hints["release_branches"])
3753
+ check_type(argname="argument release_environment", value=release_environment, expected_type=type_hints["release_environment"])
3604
3754
  check_type(argname="argument release_every_commit", value=release_every_commit, expected_type=type_hints["release_every_commit"])
3605
3755
  check_type(argname="argument release_failure_issue", value=release_failure_issue, expected_type=type_hints["release_failure_issue"])
3606
3756
  check_type(argname="argument release_failure_issue_label", value=release_failure_issue_label, expected_type=type_hints["release_failure_issue_label"])
3607
3757
  check_type(argname="argument release_schedule", value=release_schedule, expected_type=type_hints["release_schedule"])
3608
3758
  check_type(argname="argument release_tag_prefix", value=release_tag_prefix, expected_type=type_hints["release_tag_prefix"])
3609
3759
  check_type(argname="argument release_trigger", value=release_trigger, expected_type=type_hints["release_trigger"])
3760
+ check_type(argname="argument release_workflow_env", value=release_workflow_env, expected_type=type_hints["release_workflow_env"])
3610
3761
  check_type(argname="argument release_workflow_name", value=release_workflow_name, expected_type=type_hints["release_workflow_name"])
3611
3762
  check_type(argname="argument release_workflow_setup_steps", value=release_workflow_setup_steps, expected_type=type_hints["release_workflow_setup_steps"])
3612
3763
  check_type(argname="argument versionrc_options", value=versionrc_options, expected_type=type_hints["versionrc_options"])
@@ -3615,7 +3766,11 @@ class Cdk8sTypeScriptAppOptions(
3615
3766
  check_type(argname="argument workflow_runs_on_group", value=workflow_runs_on_group, expected_type=type_hints["workflow_runs_on_group"])
3616
3767
  check_type(argname="argument default_release_branch", value=default_release_branch, expected_type=type_hints["default_release_branch"])
3617
3768
  check_type(argname="argument artifacts_directory", value=artifacts_directory, expected_type=type_hints["artifacts_directory"])
3769
+ check_type(argname="argument audit_deps", value=audit_deps, expected_type=type_hints["audit_deps"])
3770
+ check_type(argname="argument audit_deps_options", value=audit_deps_options, expected_type=type_hints["audit_deps_options"])
3618
3771
  check_type(argname="argument auto_approve_upgrades", value=auto_approve_upgrades, expected_type=type_hints["auto_approve_upgrades"])
3772
+ check_type(argname="argument biome", value=biome, expected_type=type_hints["biome"])
3773
+ check_type(argname="argument biome_options", value=biome_options, expected_type=type_hints["biome_options"])
3619
3774
  check_type(argname="argument build_workflow", value=build_workflow, expected_type=type_hints["build_workflow"])
3620
3775
  check_type(argname="argument build_workflow_options", value=build_workflow_options, expected_type=type_hints["build_workflow_options"])
3621
3776
  check_type(argname="argument build_workflow_triggers", value=build_workflow_triggers, expected_type=type_hints["build_workflow_triggers"])
@@ -3765,6 +3920,8 @@ class Cdk8sTypeScriptAppOptions(
3765
3920
  self._values["bugs_url"] = bugs_url
3766
3921
  if bundled_deps is not None:
3767
3922
  self._values["bundled_deps"] = bundled_deps
3923
+ if bun_version is not None:
3924
+ self._values["bun_version"] = bun_version
3768
3925
  if code_artifact_options is not None:
3769
3926
  self._values["code_artifact_options"] = code_artifact_options
3770
3927
  if deps is not None:
@@ -3797,6 +3954,8 @@ class Cdk8sTypeScriptAppOptions(
3797
3954
  self._values["npm_registry_url"] = npm_registry_url
3798
3955
  if npm_token_secret is not None:
3799
3956
  self._values["npm_token_secret"] = npm_token_secret
3957
+ if npm_trusted_publishing is not None:
3958
+ self._values["npm_trusted_publishing"] = npm_trusted_publishing
3800
3959
  if package_manager is not None:
3801
3960
  self._values["package_manager"] = package_manager
3802
3961
  if package_name is not None:
@@ -3819,12 +3978,16 @@ class Cdk8sTypeScriptAppOptions(
3819
3978
  self._values["stability"] = stability
3820
3979
  if yarn_berry_options is not None:
3821
3980
  self._values["yarn_berry_options"] = yarn_berry_options
3981
+ if bump_package is not None:
3982
+ self._values["bump_package"] = bump_package
3822
3983
  if jsii_release_version is not None:
3823
3984
  self._values["jsii_release_version"] = jsii_release_version
3824
3985
  if major_version is not None:
3825
3986
  self._values["major_version"] = major_version
3826
3987
  if min_major_version is not None:
3827
3988
  self._values["min_major_version"] = min_major_version
3989
+ if next_version_command is not None:
3990
+ self._values["next_version_command"] = next_version_command
3828
3991
  if npm_dist_tag is not None:
3829
3992
  self._values["npm_dist_tag"] = npm_dist_tag
3830
3993
  if post_build_steps is not None:
@@ -3839,6 +4002,8 @@ class Cdk8sTypeScriptAppOptions(
3839
4002
  self._values["releasable_commits"] = releasable_commits
3840
4003
  if release_branches is not None:
3841
4004
  self._values["release_branches"] = release_branches
4005
+ if release_environment is not None:
4006
+ self._values["release_environment"] = release_environment
3842
4007
  if release_every_commit is not None:
3843
4008
  self._values["release_every_commit"] = release_every_commit
3844
4009
  if release_failure_issue is not None:
@@ -3851,6 +4016,8 @@ class Cdk8sTypeScriptAppOptions(
3851
4016
  self._values["release_tag_prefix"] = release_tag_prefix
3852
4017
  if release_trigger is not None:
3853
4018
  self._values["release_trigger"] = release_trigger
4019
+ if release_workflow_env is not None:
4020
+ self._values["release_workflow_env"] = release_workflow_env
3854
4021
  if release_workflow_name is not None:
3855
4022
  self._values["release_workflow_name"] = release_workflow_name
3856
4023
  if release_workflow_setup_steps is not None:
@@ -3865,8 +4032,16 @@ class Cdk8sTypeScriptAppOptions(
3865
4032
  self._values["workflow_runs_on_group"] = workflow_runs_on_group
3866
4033
  if artifacts_directory is not None:
3867
4034
  self._values["artifacts_directory"] = artifacts_directory
4035
+ if audit_deps is not None:
4036
+ self._values["audit_deps"] = audit_deps
4037
+ if audit_deps_options is not None:
4038
+ self._values["audit_deps_options"] = audit_deps_options
3868
4039
  if auto_approve_upgrades is not None:
3869
4040
  self._values["auto_approve_upgrades"] = auto_approve_upgrades
4041
+ if biome is not None:
4042
+ self._values["biome"] = biome
4043
+ if biome_options is not None:
4044
+ self._values["biome_options"] = biome_options
3870
4045
  if build_workflow is not None:
3871
4046
  self._values["build_workflow"] = build_workflow
3872
4047
  if build_workflow_options is not None:
@@ -4466,6 +4641,17 @@ class Cdk8sTypeScriptAppOptions(
4466
4641
  result = self._values.get("bundled_deps")
4467
4642
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
4468
4643
 
4644
+ @builtins.property
4645
+ def bun_version(self) -> typing.Optional[builtins.str]:
4646
+ '''(experimental) The version of Bun to use if using Bun as a package manager.
4647
+
4648
+ :default: "latest"
4649
+
4650
+ :stability: experimental
4651
+ '''
4652
+ result = self._values.get("bun_version")
4653
+ return typing.cast(typing.Optional[builtins.str], result)
4654
+
4469
4655
  @builtins.property
4470
4656
  def code_artifact_options(self) -> typing.Optional[_CodeArtifactOptions_e4782b3e]:
4471
4657
  '''(experimental) Options for npm packages using AWS CodeArtifact.
@@ -4600,9 +4786,15 @@ class Cdk8sTypeScriptAppOptions(
4600
4786
 
4601
4787
  @builtins.property
4602
4788
  def max_node_version(self) -> typing.Optional[builtins.str]:
4603
- '''(experimental) Minimum node.js version to require via ``engines`` (inclusive).
4789
+ '''(experimental) The maximum node version supported by this package. Most projects should not use this option.
4604
4790
 
4605
- :default: - no max
4791
+ The value indicates that the package is incompatible with any newer versions of node.
4792
+ This requirement is enforced via the engines field.
4793
+
4794
+ You will normally not need to set this option.
4795
+ Consider this option only if your package is known to not function with newer versions of node.
4796
+
4797
+ :default: - no maximum version is enforced
4606
4798
 
4607
4799
  :stability: experimental
4608
4800
  '''
@@ -4611,9 +4803,19 @@ class Cdk8sTypeScriptAppOptions(
4611
4803
 
4612
4804
  @builtins.property
4613
4805
  def min_node_version(self) -> typing.Optional[builtins.str]:
4614
- '''(experimental) Minimum Node.js version to require via package.json ``engines`` (inclusive).
4806
+ '''(experimental) The minimum node version required by this package to function. Most projects should not use this option.
4807
+
4808
+ The value indicates that the package is incompatible with any older versions of node.
4809
+ This requirement is enforced via the engines field.
4615
4810
 
4616
- :default: - no "engines" specified
4811
+ You will normally not need to set this option, even if your package is incompatible with EOL versions of node.
4812
+ Consider this option only if your package depends on a specific feature, that is not available in other LTS versions.
4813
+ Setting this option has very high impact on the consumers of your package,
4814
+ as package managers will actively prevent usage with node versions you have marked as incompatible.
4815
+
4816
+ To change the node version of your CI/CD workflows, use ``workflowNodeVersion``.
4817
+
4818
+ :default: - no minimum version is enforced
4617
4819
 
4618
4820
  :stability: experimental
4619
4821
  '''
@@ -4690,6 +4892,17 @@ class Cdk8sTypeScriptAppOptions(
4690
4892
  result = self._values.get("npm_token_secret")
4691
4893
  return typing.cast(typing.Optional[builtins.str], result)
4692
4894
 
4895
+ @builtins.property
4896
+ def npm_trusted_publishing(self) -> typing.Optional[builtins.bool]:
4897
+ '''(experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work.
4898
+
4899
+ :default: - false
4900
+
4901
+ :stability: experimental
4902
+ '''
4903
+ result = self._values.get("npm_trusted_publishing")
4904
+ return typing.cast(typing.Optional[builtins.bool], result)
4905
+
4693
4906
  @builtins.property
4694
4907
  def package_manager(self) -> typing.Optional[_NodePackageManager_3eb53bf6]:
4695
4908
  '''(experimental) The Node Package Manager used to execute scripts.
@@ -4753,7 +4966,7 @@ class Cdk8sTypeScriptAppOptions(
4753
4966
  def pnpm_version(self) -> typing.Optional[builtins.str]:
4754
4967
  '''(experimental) The version of PNPM to use if using PNPM as a package manager.
4755
4968
 
4756
- :default: "7"
4969
+ :default: "9"
4757
4970
 
4758
4971
  :stability: experimental
4759
4972
  '''
@@ -4830,6 +5043,19 @@ class Cdk8sTypeScriptAppOptions(
4830
5043
  result = self._values.get("yarn_berry_options")
4831
5044
  return typing.cast(typing.Optional[_YarnBerryOptions_b6942539], result)
4832
5045
 
5046
+ @builtins.property
5047
+ def bump_package(self) -> typing.Optional[builtins.str]:
5048
+ '''(experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string.
5049
+
5050
+ This can be any compatible package version, including the deprecated ``standard-version@9``.
5051
+
5052
+ :default: - A recent version of "commit-and-tag-version"
5053
+
5054
+ :stability: experimental
5055
+ '''
5056
+ result = self._values.get("bump_package")
5057
+ return typing.cast(typing.Optional[builtins.str], result)
5058
+
4833
5059
  @builtins.property
4834
5060
  def jsii_release_version(self) -> typing.Optional[builtins.str]:
4835
5061
  '''(experimental) Version requirement of ``publib`` which is used to publish modules to npm.
@@ -4871,6 +5097,36 @@ class Cdk8sTypeScriptAppOptions(
4871
5097
  result = self._values.get("min_major_version")
4872
5098
  return typing.cast(typing.Optional[jsii.Number], result)
4873
5099
 
5100
+ @builtins.property
5101
+ def next_version_command(self) -> typing.Optional[builtins.str]:
5102
+ '''(experimental) A shell command to control the next version to release.
5103
+
5104
+ If present, this shell command will be run before the bump is executed, and
5105
+ it determines what version to release. It will be executed in the following
5106
+ environment:
5107
+
5108
+ - Working directory: the project directory.
5109
+ - ``$VERSION``: the current version. Looks like ``1.2.3``.
5110
+ - ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset.
5111
+ - ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``.
5112
+
5113
+ The command should print one of the following to ``stdout``:
5114
+
5115
+ - Nothing: the next version number will be determined based on commit history.
5116
+ - ``x.y.z``: the next version number will be ``x.y.z``.
5117
+ - ``major|minor|patch``: the next version number will be the current version number
5118
+ with the indicated component bumped.
5119
+
5120
+ This setting cannot be specified together with ``minMajorVersion``; the invoked
5121
+ script can be used to achieve the effects of ``minMajorVersion``.
5122
+
5123
+ :default: - The next version will be determined based on the commit history and project settings.
5124
+
5125
+ :stability: experimental
5126
+ '''
5127
+ result = self._values.get("next_version_command")
5128
+ return typing.cast(typing.Optional[builtins.str], result)
5129
+
4874
5130
  @builtins.property
4875
5131
  def npm_dist_tag(self) -> typing.Optional[builtins.str]:
4876
5132
  '''(experimental) The npmDistTag to use when publishing from the default branch.
@@ -4966,6 +5222,23 @@ class Cdk8sTypeScriptAppOptions(
4966
5222
  result = self._values.get("release_branches")
4967
5223
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, _BranchOptions_13663d08]], result)
4968
5224
 
5225
+ @builtins.property
5226
+ def release_environment(self) -> typing.Optional[builtins.str]:
5227
+ '''(experimental) The GitHub Actions environment used for the release.
5228
+
5229
+ This can be used to add an explicit approval step to the release
5230
+ or limit who can initiate a release through environment protection rules.
5231
+
5232
+ When multiple artifacts are released, the environment can be overwritten
5233
+ on a per artifact basis.
5234
+
5235
+ :default: - no environment used, unless set at the artifact level
5236
+
5237
+ :stability: experimental
5238
+ '''
5239
+ result = self._values.get("release_environment")
5240
+ return typing.cast(typing.Optional[builtins.str], result)
5241
+
4969
5242
  @builtins.property
4970
5243
  def release_every_commit(self) -> typing.Optional[builtins.bool]:
4971
5244
  '''(deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``.
@@ -5043,6 +5316,19 @@ class Cdk8sTypeScriptAppOptions(
5043
5316
  result = self._values.get("release_trigger")
5044
5317
  return typing.cast(typing.Optional[_ReleaseTrigger_e4dc221f], result)
5045
5318
 
5319
+ @builtins.property
5320
+ def release_workflow_env(
5321
+ self,
5322
+ ) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
5323
+ '''(experimental) Build environment variables for release workflows.
5324
+
5325
+ :default: {}
5326
+
5327
+ :stability: experimental
5328
+ '''
5329
+ result = self._values.get("release_workflow_env")
5330
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
5331
+
5046
5332
  @builtins.property
5047
5333
  def release_workflow_name(self) -> typing.Optional[builtins.str]:
5048
5334
  '''(experimental) The name of the default release workflow.
@@ -5069,7 +5355,7 @@ class Cdk8sTypeScriptAppOptions(
5069
5355
  def versionrc_options(
5070
5356
  self,
5071
5357
  ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
5072
- '''(experimental) Custom configuration used when creating changelog with standard-version package.
5358
+ '''(experimental) Custom configuration used when creating changelog with commit-and-tag-version package.
5073
5359
 
5074
5360
  Given values either append to default configuration or overwrite values in it.
5075
5361
 
@@ -5138,6 +5424,32 @@ class Cdk8sTypeScriptAppOptions(
5138
5424
  result = self._values.get("artifacts_directory")
5139
5425
  return typing.cast(typing.Optional[builtins.str], result)
5140
5426
 
5427
+ @builtins.property
5428
+ def audit_deps(self) -> typing.Optional[builtins.bool]:
5429
+ '''(experimental) Run security audit on dependencies.
5430
+
5431
+ When enabled, creates an "audit" task that checks for known security vulnerabilities
5432
+ in dependencies. By default, runs during every build and checks for "high" severity
5433
+ vulnerabilities or above in all dependencies (including dev dependencies).
5434
+
5435
+ :default: false
5436
+
5437
+ :stability: experimental
5438
+ '''
5439
+ result = self._values.get("audit_deps")
5440
+ return typing.cast(typing.Optional[builtins.bool], result)
5441
+
5442
+ @builtins.property
5443
+ def audit_deps_options(self) -> typing.Optional[_AuditOptions_429c62df]:
5444
+ '''(experimental) Security audit options.
5445
+
5446
+ :default: - default options
5447
+
5448
+ :stability: experimental
5449
+ '''
5450
+ result = self._values.get("audit_deps_options")
5451
+ return typing.cast(typing.Optional[_AuditOptions_429c62df], result)
5452
+
5141
5453
  @builtins.property
5142
5454
  def auto_approve_upgrades(self) -> typing.Optional[builtins.bool]:
5143
5455
  '''(experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
@@ -5151,6 +5463,28 @@ class Cdk8sTypeScriptAppOptions(
5151
5463
  result = self._values.get("auto_approve_upgrades")
5152
5464
  return typing.cast(typing.Optional[builtins.bool], result)
5153
5465
 
5466
+ @builtins.property
5467
+ def biome(self) -> typing.Optional[builtins.bool]:
5468
+ '''(experimental) Setup Biome.
5469
+
5470
+ :default: false
5471
+
5472
+ :stability: experimental
5473
+ '''
5474
+ result = self._values.get("biome")
5475
+ return typing.cast(typing.Optional[builtins.bool], result)
5476
+
5477
+ @builtins.property
5478
+ def biome_options(self) -> typing.Optional[_BiomeOptions_452ab984]:
5479
+ '''(experimental) Biome options.
5480
+
5481
+ :default: - default options
5482
+
5483
+ :stability: experimental
5484
+ '''
5485
+ result = self._values.get("biome_options")
5486
+ return typing.cast(typing.Optional[_BiomeOptions_452ab984], result)
5487
+
5154
5488
  @builtins.property
5155
5489
  def build_workflow(self) -> typing.Optional[builtins.bool]:
5156
5490
  '''(experimental) Define a GitHub workflow for building PRs.
@@ -5208,7 +5542,7 @@ class Cdk8sTypeScriptAppOptions(
5208
5542
 
5209
5543
  @builtins.property
5210
5544
  def code_cov(self) -> typing.Optional[builtins.bool]:
5211
- '''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v4 A secret is required for private repos. Configured with ``@codeCovTokenSecret``.
5545
+ '''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v5 By default, OIDC auth is used. Alternatively a token can be provided via ``codeCovTokenSecret``.
5212
5546
 
5213
5547
  :default: false
5214
5548
 
@@ -5219,9 +5553,9 @@ class Cdk8sTypeScriptAppOptions(
5219
5553
 
5220
5554
  @builtins.property
5221
5555
  def code_cov_token_secret(self) -> typing.Optional[builtins.str]:
5222
- '''(experimental) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.
5556
+ '''(experimental) Define the secret name for a specified https://codecov.io/ token.
5223
5557
 
5224
- :default: - if this option is not specified, only public repositories are supported
5558
+ :default: - OIDC auth is used
5225
5559
 
5226
5560
  :stability: experimental
5227
5561
  '''
@@ -5534,7 +5868,7 @@ class Cdk8sTypeScriptAppOptions(
5534
5868
  def workflow_git_identity(self) -> typing.Optional[_GitIdentity_6effc3de]:
5535
5869
  '''(experimental) The git identity to use in workflows.
5536
5870
 
5537
- :default: - GitHub Actions
5871
+ :default: - default GitHub Actions user
5538
5872
 
5539
5873
  :stability: experimental
5540
5874
  '''
@@ -5543,9 +5877,11 @@ class Cdk8sTypeScriptAppOptions(
5543
5877
 
5544
5878
  @builtins.property
5545
5879
  def workflow_node_version(self) -> typing.Optional[builtins.str]:
5546
- '''(experimental) The node version to use in GitHub workflows.
5880
+ '''(experimental) The node version used in GitHub Actions workflows.
5881
+
5882
+ Always use this option if your GitHub Actions workflows require a specific to run.
5547
5883
 
5548
- :default: - same as ``minNodeVersion``
5884
+ :default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
5549
5885
 
5550
5886
  :stability: experimental
5551
5887
  '''
@@ -5622,7 +5958,7 @@ class Cdk8sTypeScriptAppOptions(
5622
5958
  def eslint(self) -> typing.Optional[builtins.bool]:
5623
5959
  '''(experimental) Setup eslint.
5624
5960
 
5625
- :default: true
5961
+ :default: - true, unless biome is enabled
5626
5962
 
5627
5963
  :stability: experimental
5628
5964
  '''
@@ -6006,7 +6342,11 @@ class ConstructLibraryCdk8s(
6006
6342
  typescript_version: typing.Optional[builtins.str] = None,
6007
6343
  default_release_branch: builtins.str,
6008
6344
  artifacts_directory: typing.Optional[builtins.str] = None,
6345
+ audit_deps: typing.Optional[builtins.bool] = None,
6346
+ audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
6009
6347
  auto_approve_upgrades: typing.Optional[builtins.bool] = None,
6348
+ biome: typing.Optional[builtins.bool] = None,
6349
+ biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
6010
6350
  build_workflow: typing.Optional[builtins.bool] = None,
6011
6351
  build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
6012
6352
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6070,6 +6410,7 @@ class ConstructLibraryCdk8s(
6070
6410
  bugs_email: typing.Optional[builtins.str] = None,
6071
6411
  bugs_url: typing.Optional[builtins.str] = None,
6072
6412
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
6413
+ bun_version: typing.Optional[builtins.str] = None,
6073
6414
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
6074
6415
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
6075
6416
  description: typing.Optional[builtins.str] = None,
@@ -6086,6 +6427,7 @@ class ConstructLibraryCdk8s(
6086
6427
  npm_registry: typing.Optional[builtins.str] = None,
6087
6428
  npm_registry_url: typing.Optional[builtins.str] = None,
6088
6429
  npm_token_secret: typing.Optional[builtins.str] = None,
6430
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
6089
6431
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
6090
6432
  package_name: typing.Optional[builtins.str] = None,
6091
6433
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6097,9 +6439,11 @@ class ConstructLibraryCdk8s(
6097
6439
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6098
6440
  stability: typing.Optional[builtins.str] = None,
6099
6441
  yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
6442
+ bump_package: typing.Optional[builtins.str] = None,
6100
6443
  jsii_release_version: typing.Optional[builtins.str] = None,
6101
6444
  major_version: typing.Optional[jsii.Number] = None,
6102
6445
  min_major_version: typing.Optional[jsii.Number] = None,
6446
+ next_version_command: typing.Optional[builtins.str] = None,
6103
6447
  npm_dist_tag: typing.Optional[builtins.str] = None,
6104
6448
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6105
6449
  prerelease: typing.Optional[builtins.str] = None,
@@ -6107,12 +6451,14 @@ class ConstructLibraryCdk8s(
6107
6451
  publish_tasks: typing.Optional[builtins.bool] = None,
6108
6452
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
6109
6453
  release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
6454
+ release_environment: typing.Optional[builtins.str] = None,
6110
6455
  release_every_commit: typing.Optional[builtins.bool] = None,
6111
6456
  release_failure_issue: typing.Optional[builtins.bool] = None,
6112
6457
  release_failure_issue_label: typing.Optional[builtins.str] = None,
6113
6458
  release_schedule: typing.Optional[builtins.str] = None,
6114
6459
  release_tag_prefix: typing.Optional[builtins.str] = None,
6115
6460
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
6461
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6116
6462
  release_workflow_name: typing.Optional[builtins.str] = None,
6117
6463
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6118
6464
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -6149,7 +6495,7 @@ class ConstructLibraryCdk8s(
6149
6495
  :param docgen_file_path: (experimental) File path for generated docs. Default: "API.md"
6150
6496
  :param dotnet:
6151
6497
  :param exclude_typescript: (experimental) Accepts a list of glob patterns. Files matching any of those patterns will be excluded from the TypeScript compiler input. By default, jsii will include all *.ts files (except .d.ts files) in the TypeScript compiler input. This can be problematic for example when the package's build or test procedure generates .ts files that cannot be compiled with jsii's compiler settings.
6152
- :param jsii_version: (experimental) Version of the jsii compiler to use. Set to "*" if you want to manually manage the version of jsii in your project by managing updates to ``package.json`` on your own. NOTE: The jsii compiler releases since 5.0.0 are not semantically versioned and should remain on the same minor, so we recommend using a ``~`` dependency (e.g. ``~5.0.0``). Default: "1.x"
6498
+ :param jsii_version: (experimental) Version of the jsii compiler to use. Set to "*" if you want to manually manage the version of jsii in your project by managing updates to ``package.json`` on your own. NOTE: The jsii compiler releases since 5.0.0 are not semantically versioned and should remain on the same minor, so we recommend using a ``~`` dependency (e.g. ``~5.0.0``). Default: "~5.8.0"
6153
6499
  :param publish_to_go: (experimental) Publish Go bindings to a git repository. Default: - no publishing
6154
6500
  :param publish_to_maven: (experimental) Publish to maven. Default: - no publishing
6155
6501
  :param publish_to_nuget: (experimental) Publish to NuGet. Default: - no publishing
@@ -6161,7 +6507,7 @@ class ConstructLibraryCdk8s(
6161
6507
  :param docgen: (experimental) Docgen by Typedoc. Default: false
6162
6508
  :param docs_directory: (experimental) Docs directory. Default: "docs"
6163
6509
  :param entrypoint_types: (experimental) 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)
6164
- :param eslint: (experimental) Setup eslint. Default: true
6510
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
6165
6511
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
6166
6512
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
6167
6513
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -6176,14 +6522,18 @@ class ConstructLibraryCdk8s(
6176
6522
  :param typescript_version: (experimental) TypeScript version to use. NOTE: Typescript is not semantically versioned and should remain on the same minor, so we recommend using a ``~`` dependency (e.g. ``~1.2.3``). Default: "latest"
6177
6523
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
6178
6524
  :param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
6525
+ :param audit_deps: (experimental) Run security audit on dependencies. When enabled, creates an "audit" task that checks for known security vulnerabilities in dependencies. By default, runs during every build and checks for "high" severity vulnerabilities or above in all dependencies (including dev dependencies). Default: false
6526
+ :param audit_deps_options: (experimental) Security audit options. Default: - default options
6179
6527
  :param auto_approve_upgrades: (experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). Throw if set to true but ``autoApproveOptions`` are not defined. Default: - true
6528
+ :param biome: (experimental) Setup Biome. Default: false
6529
+ :param biome_options: (experimental) Biome options. Default: - default options
6180
6530
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
6181
6531
  :param build_workflow_options: (experimental) Options for PR build workflow.
6182
6532
  :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
6183
6533
  :param bundler_options: (experimental) Options for ``Bundler``.
6184
6534
  :param check_licenses: (experimental) Configure which licenses should be deemed acceptable for use by dependencies. This setting will cause the build to fail, if any prohibited or not allowed licenses ares encountered. Default: - no license checks are run during the build and all licenses will be accepted
6185
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v4 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
6186
- :param code_cov_token_secret: (experimental) 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
6535
+ :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v5 By default, OIDC auth is used. Alternatively a token can be provided via ``codeCovTokenSecret``. Default: false
6536
+ :param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
6187
6537
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
6188
6538
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
6189
6539
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -6210,8 +6560,8 @@ class ConstructLibraryCdk8s(
6210
6560
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
6211
6561
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
6212
6562
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
6213
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
6214
- :param workflow_node_version: (experimental) The node version to use in GitHub workflows. Default: - same as ``minNodeVersion``
6563
+ :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
6564
+ :param workflow_node_version: (experimental) The node version used in GitHub Actions workflows. Always use this option if your GitHub Actions workflows require a specific to run. Default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
6215
6565
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
6216
6566
  :param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
6217
6567
  :param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
@@ -6240,6 +6590,7 @@ class ConstructLibraryCdk8s(
6240
6590
  :param bugs_email: (experimental) The email address to which issues should be reported.
6241
6591
  :param bugs_url: (experimental) The url to your project's issue tracker.
6242
6592
  :param bundled_deps: (experimental) List of dependencies to bundle into this module. These modules will be added both to the ``dependencies`` section and ``bundledDependencies`` section of your ``package.json``. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include.
6593
+ :param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
6243
6594
  :param code_artifact_options: (experimental) Options for npm packages using AWS CodeArtifact. This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact Default: - undefined
6244
6595
  :param deps: (experimental) Runtime dependencies of this module. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include. Default: []
6245
6596
  :param description: (experimental) The description is just a string that helps people understand the purpose of the package. It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description
@@ -6249,27 +6600,30 @@ class ConstructLibraryCdk8s(
6249
6600
  :param keywords: (experimental) Keywords to include in ``package.json``.
6250
6601
  :param license: (experimental) License's SPDX identifier. See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the ``licensed`` option if you want to no license to be specified. Default: "Apache-2.0"
6251
6602
  :param licensed: (experimental) Indicates if a license should be added. Default: true
6252
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
6253
- :param min_node_version: (experimental) Minimum Node.js version to require via package.json ``engines`` (inclusive). Default: - no "engines" specified
6603
+ :param max_node_version: (experimental) The maximum node version supported by this package. Most projects should not use this option. The value indicates that the package is incompatible with any newer versions of node. This requirement is enforced via the engines field. You will normally not need to set this option. Consider this option only if your package is known to not function with newer versions of node. Default: - no maximum version is enforced
6604
+ :param min_node_version: (experimental) The minimum node version required by this package to function. Most projects should not use this option. The value indicates that the package is incompatible with any older versions of node. This requirement is enforced via the engines field. You will normally not need to set this option, even if your package is incompatible with EOL versions of node. Consider this option only if your package depends on a specific feature, that is not available in other LTS versions. Setting this option has very high impact on the consumers of your package, as package managers will actively prevent usage with node versions you have marked as incompatible. To change the node version of your CI/CD workflows, use ``workflowNodeVersion``. Default: - no minimum version is enforced
6254
6605
  :param npm_access: (experimental) 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``.
6255
6606
  :param npm_provenance: (experimental) Should provenance statements be generated when the package is published. A supported package manager is required to publish a package with npm provenance statements and you will need to use a supported CI/CD provider. Note that the projen ``Release`` and ``Publisher`` components are using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: - true for public packages, false otherwise
6256
6607
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
6257
6608
  :param npm_registry_url: (experimental) The base URL of the npm package registry. Must be a URL (e.g. start with "https://" or "http://") Default: "https://registry.npmjs.org"
6258
6609
  :param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
6610
+ :param npm_trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Default: - false
6259
6611
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
6260
6612
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
6261
6613
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
6262
6614
  :param peer_deps: (experimental) Peer dependencies for this module. Dependencies listed here are required to be installed (and satisfied) by the *consumer* of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the ``node_modules`` tree of your consumers. Note that prior to npm@7, peer dependencies are *not* automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers. Unless ``peerDependencyOptions.pinnedDevDependency`` is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required. Default: []
6263
- :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "7"
6615
+ :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
6264
6616
  :param repository: (experimental) The repository is the location where the actual code for your package lives. See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository
6265
6617
  :param repository_directory: (experimental) 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.
6266
6618
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
6267
6619
  :param scripts: (deprecated) npm scripts to include. If a script has the same name as a standard script, the standard script will be overwritten. Also adds the script as a task. Default: {}
6268
6620
  :param stability: (experimental) Package's Stability.
6269
6621
  :param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
6622
+ :param bump_package: (experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string. This can be any compatible package version, including the deprecated ``standard-version@9``. Default: - A recent version of "commit-and-tag-version"
6270
6623
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
6271
6624
  :param major_version: (experimental) Major version to release from the default branch. If this is specified, we bump the latest version of this major version line. If not specified, we bump the global latest version. Default: - Major version is not enforced.
6272
6625
  :param min_major_version: (experimental) Minimal Major version to release. This can be useful to set to 1, as breaking changes before the 1.x major release are not incrementing the major version number. Can not be set together with ``majorVersion``. Default: - No minimum version is being enforced
6626
+ :param next_version_command: (experimental) A shell command to control the next version to release. If present, this shell command will be run before the bump is executed, and it determines what version to release. It will be executed in the following environment: - Working directory: the project directory. - ``$VERSION``: the current version. Looks like ``1.2.3``. - ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset. - ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``. The command should print one of the following to ``stdout``: - Nothing: the next version number will be determined based on commit history. - ``x.y.z``: the next version number will be ``x.y.z``. - ``major|minor|patch``: the next version number will be the current version number with the indicated component bumped. This setting cannot be specified together with ``minMajorVersion``; the invoked script can be used to achieve the effects of ``minMajorVersion``. Default: - The next version will be determined based on the commit history and project settings.
6273
6627
  :param npm_dist_tag: (experimental) The npmDistTag to use when publishing from the default branch. To set the npm dist-tag for release branches, set the ``npmDistTag`` property for each branch. Default: "latest"
6274
6628
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
6275
6629
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -6277,15 +6631,17 @@ class ConstructLibraryCdk8s(
6277
6631
  :param publish_tasks: (experimental) Define publishing tasks that can be executed manually as well as workflows. Normally, publishing only happens within automated workflows. Enable this in order to create a publishing task for each publishing activity. Default: false
6278
6632
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
6279
6633
  :param release_branches: (experimental) Defines additional release branches. A workflow will be created for each release branch which will publish releases from commits in this branch. Each release branch *must* be assigned a major version number which is used to enforce that versions published from that branch always use that major version. If multiple branches are used, the ``majorVersion`` field must also be provided for the default branch. Default: - no additional branches are used for release. you can use ``addBranch()`` to add additional branches.
6634
+ :param release_environment: (experimental) The GitHub Actions environment used for the release. This can be used to add an explicit approval step to the release or limit who can initiate a release through environment protection rules. When multiple artifacts are released, the environment can be overwritten on a per artifact basis. Default: - no environment used, unless set at the artifact level
6280
6635
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
6281
6636
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
6282
6637
  :param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
6283
6638
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
6284
6639
  :param release_tag_prefix: (experimental) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. Note: this prefix is used to detect the latest tagged version when bumping, so if you change this on a project with an existing version history, you may need to manually tag your latest release with the new prefix. Default: "v"
6285
6640
  :param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
6641
+ :param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
6286
6642
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
6287
6643
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
6288
- :param versionrc_options: (experimental) Custom configuration used when creating changelog with standard-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
6644
+ :param versionrc_options: (experimental) Custom configuration used when creating changelog with commit-and-tag-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
6289
6645
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
6290
6646
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
6291
6647
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
@@ -6348,7 +6704,11 @@ class ConstructLibraryCdk8s(
6348
6704
  typescript_version=typescript_version,
6349
6705
  default_release_branch=default_release_branch,
6350
6706
  artifacts_directory=artifacts_directory,
6707
+ audit_deps=audit_deps,
6708
+ audit_deps_options=audit_deps_options,
6351
6709
  auto_approve_upgrades=auto_approve_upgrades,
6710
+ biome=biome,
6711
+ biome_options=biome_options,
6352
6712
  build_workflow=build_workflow,
6353
6713
  build_workflow_options=build_workflow_options,
6354
6714
  build_workflow_triggers=build_workflow_triggers,
@@ -6412,6 +6772,7 @@ class ConstructLibraryCdk8s(
6412
6772
  bugs_email=bugs_email,
6413
6773
  bugs_url=bugs_url,
6414
6774
  bundled_deps=bundled_deps,
6775
+ bun_version=bun_version,
6415
6776
  code_artifact_options=code_artifact_options,
6416
6777
  deps=deps,
6417
6778
  description=description,
@@ -6428,6 +6789,7 @@ class ConstructLibraryCdk8s(
6428
6789
  npm_registry=npm_registry,
6429
6790
  npm_registry_url=npm_registry_url,
6430
6791
  npm_token_secret=npm_token_secret,
6792
+ npm_trusted_publishing=npm_trusted_publishing,
6431
6793
  package_manager=package_manager,
6432
6794
  package_name=package_name,
6433
6795
  peer_dependency_options=peer_dependency_options,
@@ -6439,9 +6801,11 @@ class ConstructLibraryCdk8s(
6439
6801
  scripts=scripts,
6440
6802
  stability=stability,
6441
6803
  yarn_berry_options=yarn_berry_options,
6804
+ bump_package=bump_package,
6442
6805
  jsii_release_version=jsii_release_version,
6443
6806
  major_version=major_version,
6444
6807
  min_major_version=min_major_version,
6808
+ next_version_command=next_version_command,
6445
6809
  npm_dist_tag=npm_dist_tag,
6446
6810
  post_build_steps=post_build_steps,
6447
6811
  prerelease=prerelease,
@@ -6449,12 +6813,14 @@ class ConstructLibraryCdk8s(
6449
6813
  publish_tasks=publish_tasks,
6450
6814
  releasable_commits=releasable_commits,
6451
6815
  release_branches=release_branches,
6816
+ release_environment=release_environment,
6452
6817
  release_every_commit=release_every_commit,
6453
6818
  release_failure_issue=release_failure_issue,
6454
6819
  release_failure_issue_label=release_failure_issue_label,
6455
6820
  release_schedule=release_schedule,
6456
6821
  release_tag_prefix=release_tag_prefix,
6457
6822
  release_trigger=release_trigger,
6823
+ release_workflow_env=release_workflow_env,
6458
6824
  release_workflow_name=release_workflow_name,
6459
6825
  release_workflow_setup_steps=release_workflow_setup_steps,
6460
6826
  versionrc_options=versionrc_options,
@@ -6539,6 +6905,7 @@ class ConstructLibraryCdk8s(
6539
6905
  "bugs_email": "bugsEmail",
6540
6906
  "bugs_url": "bugsUrl",
6541
6907
  "bundled_deps": "bundledDeps",
6908
+ "bun_version": "bunVersion",
6542
6909
  "code_artifact_options": "codeArtifactOptions",
6543
6910
  "deps": "deps",
6544
6911
  "description": "description",
@@ -6555,6 +6922,7 @@ class ConstructLibraryCdk8s(
6555
6922
  "npm_registry": "npmRegistry",
6556
6923
  "npm_registry_url": "npmRegistryUrl",
6557
6924
  "npm_token_secret": "npmTokenSecret",
6925
+ "npm_trusted_publishing": "npmTrustedPublishing",
6558
6926
  "package_manager": "packageManager",
6559
6927
  "package_name": "packageName",
6560
6928
  "peer_dependency_options": "peerDependencyOptions",
@@ -6566,9 +6934,11 @@ class ConstructLibraryCdk8s(
6566
6934
  "scripts": "scripts",
6567
6935
  "stability": "stability",
6568
6936
  "yarn_berry_options": "yarnBerryOptions",
6937
+ "bump_package": "bumpPackage",
6569
6938
  "jsii_release_version": "jsiiReleaseVersion",
6570
6939
  "major_version": "majorVersion",
6571
6940
  "min_major_version": "minMajorVersion",
6941
+ "next_version_command": "nextVersionCommand",
6572
6942
  "npm_dist_tag": "npmDistTag",
6573
6943
  "post_build_steps": "postBuildSteps",
6574
6944
  "prerelease": "prerelease",
@@ -6576,12 +6946,14 @@ class ConstructLibraryCdk8s(
6576
6946
  "publish_tasks": "publishTasks",
6577
6947
  "releasable_commits": "releasableCommits",
6578
6948
  "release_branches": "releaseBranches",
6949
+ "release_environment": "releaseEnvironment",
6579
6950
  "release_every_commit": "releaseEveryCommit",
6580
6951
  "release_failure_issue": "releaseFailureIssue",
6581
6952
  "release_failure_issue_label": "releaseFailureIssueLabel",
6582
6953
  "release_schedule": "releaseSchedule",
6583
6954
  "release_tag_prefix": "releaseTagPrefix",
6584
6955
  "release_trigger": "releaseTrigger",
6956
+ "release_workflow_env": "releaseWorkflowEnv",
6585
6957
  "release_workflow_name": "releaseWorkflowName",
6586
6958
  "release_workflow_setup_steps": "releaseWorkflowSetupSteps",
6587
6959
  "versionrc_options": "versionrcOptions",
@@ -6590,7 +6962,11 @@ class ConstructLibraryCdk8s(
6590
6962
  "workflow_runs_on_group": "workflowRunsOnGroup",
6591
6963
  "default_release_branch": "defaultReleaseBranch",
6592
6964
  "artifacts_directory": "artifactsDirectory",
6965
+ "audit_deps": "auditDeps",
6966
+ "audit_deps_options": "auditDepsOptions",
6593
6967
  "auto_approve_upgrades": "autoApproveUpgrades",
6968
+ "biome": "biome",
6969
+ "biome_options": "biomeOptions",
6594
6970
  "build_workflow": "buildWorkflow",
6595
6971
  "build_workflow_options": "buildWorkflowOptions",
6596
6972
  "build_workflow_triggers": "buildWorkflowTriggers",
@@ -6713,6 +7089,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6713
7089
  bugs_email: typing.Optional[builtins.str] = None,
6714
7090
  bugs_url: typing.Optional[builtins.str] = None,
6715
7091
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
7092
+ bun_version: typing.Optional[builtins.str] = None,
6716
7093
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
6717
7094
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
6718
7095
  description: typing.Optional[builtins.str] = None,
@@ -6729,6 +7106,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6729
7106
  npm_registry: typing.Optional[builtins.str] = None,
6730
7107
  npm_registry_url: typing.Optional[builtins.str] = None,
6731
7108
  npm_token_secret: typing.Optional[builtins.str] = None,
7109
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
6732
7110
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
6733
7111
  package_name: typing.Optional[builtins.str] = None,
6734
7112
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6740,9 +7118,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6740
7118
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6741
7119
  stability: typing.Optional[builtins.str] = None,
6742
7120
  yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
7121
+ bump_package: typing.Optional[builtins.str] = None,
6743
7122
  jsii_release_version: typing.Optional[builtins.str] = None,
6744
7123
  major_version: typing.Optional[jsii.Number] = None,
6745
7124
  min_major_version: typing.Optional[jsii.Number] = None,
7125
+ next_version_command: typing.Optional[builtins.str] = None,
6746
7126
  npm_dist_tag: typing.Optional[builtins.str] = None,
6747
7127
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6748
7128
  prerelease: typing.Optional[builtins.str] = None,
@@ -6750,12 +7130,14 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6750
7130
  publish_tasks: typing.Optional[builtins.bool] = None,
6751
7131
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
6752
7132
  release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
7133
+ release_environment: typing.Optional[builtins.str] = None,
6753
7134
  release_every_commit: typing.Optional[builtins.bool] = None,
6754
7135
  release_failure_issue: typing.Optional[builtins.bool] = None,
6755
7136
  release_failure_issue_label: typing.Optional[builtins.str] = None,
6756
7137
  release_schedule: typing.Optional[builtins.str] = None,
6757
7138
  release_tag_prefix: typing.Optional[builtins.str] = None,
6758
7139
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
7140
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6759
7141
  release_workflow_name: typing.Optional[builtins.str] = None,
6760
7142
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6761
7143
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -6764,7 +7146,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6764
7146
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
6765
7147
  default_release_branch: builtins.str,
6766
7148
  artifacts_directory: typing.Optional[builtins.str] = None,
7149
+ audit_deps: typing.Optional[builtins.bool] = None,
7150
+ audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
6767
7151
  auto_approve_upgrades: typing.Optional[builtins.bool] = None,
7152
+ biome: typing.Optional[builtins.bool] = None,
7153
+ biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
6768
7154
  build_workflow: typing.Optional[builtins.bool] = None,
6769
7155
  build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
6770
7156
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6883,6 +7269,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6883
7269
  :param bugs_email: (experimental) The email address to which issues should be reported.
6884
7270
  :param bugs_url: (experimental) The url to your project's issue tracker.
6885
7271
  :param bundled_deps: (experimental) List of dependencies to bundle into this module. These modules will be added both to the ``dependencies`` section and ``bundledDependencies`` section of your ``package.json``. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include.
7272
+ :param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
6886
7273
  :param code_artifact_options: (experimental) Options for npm packages using AWS CodeArtifact. This is required if publishing packages to, or installing scoped packages from AWS CodeArtifact Default: - undefined
6887
7274
  :param deps: (experimental) Runtime dependencies of this module. The recommendation is to only specify the module name here (e.g. ``express``). This will behave similar to ``yarn add`` or ``npm install`` in the sense that it will add the module as a dependency to your ``package.json`` file with the latest version (``^``). You can specify semver requirements in the same syntax passed to ``npm i`` or ``yarn add`` (e.g. ``express@^2``) and this will be what you ``package.json`` will eventually include. Default: []
6888
7275
  :param description: (experimental) The description is just a string that helps people understand the purpose of the package. It can be used when searching for packages in a package manager as well. See https://classic.yarnpkg.com/en/docs/package-json/#toc-description
@@ -6892,27 +7279,30 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6892
7279
  :param keywords: (experimental) Keywords to include in ``package.json``.
6893
7280
  :param license: (experimental) License's SPDX identifier. See https://github.com/projen/projen/tree/main/license-text for a list of supported licenses. Use the ``licensed`` option if you want to no license to be specified. Default: "Apache-2.0"
6894
7281
  :param licensed: (experimental) Indicates if a license should be added. Default: true
6895
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
6896
- :param min_node_version: (experimental) Minimum Node.js version to require via package.json ``engines`` (inclusive). Default: - no "engines" specified
7282
+ :param max_node_version: (experimental) The maximum node version supported by this package. Most projects should not use this option. The value indicates that the package is incompatible with any newer versions of node. This requirement is enforced via the engines field. You will normally not need to set this option. Consider this option only if your package is known to not function with newer versions of node. Default: - no maximum version is enforced
7283
+ :param min_node_version: (experimental) The minimum node version required by this package to function. Most projects should not use this option. The value indicates that the package is incompatible with any older versions of node. This requirement is enforced via the engines field. You will normally not need to set this option, even if your package is incompatible with EOL versions of node. Consider this option only if your package depends on a specific feature, that is not available in other LTS versions. Setting this option has very high impact on the consumers of your package, as package managers will actively prevent usage with node versions you have marked as incompatible. To change the node version of your CI/CD workflows, use ``workflowNodeVersion``. Default: - no minimum version is enforced
6897
7284
  :param npm_access: (experimental) 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``.
6898
7285
  :param npm_provenance: (experimental) Should provenance statements be generated when the package is published. A supported package manager is required to publish a package with npm provenance statements and you will need to use a supported CI/CD provider. Note that the projen ``Release`` and ``Publisher`` components are using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: - true for public packages, false otherwise
6899
7286
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
6900
7287
  :param npm_registry_url: (experimental) The base URL of the npm package registry. Must be a URL (e.g. start with "https://" or "http://") Default: "https://registry.npmjs.org"
6901
7288
  :param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
7289
+ :param npm_trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Default: - false
6902
7290
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
6903
7291
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
6904
7292
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
6905
7293
  :param peer_deps: (experimental) Peer dependencies for this module. Dependencies listed here are required to be installed (and satisfied) by the *consumer* of this library. Using peer dependencies allows you to ensure that only a single module of a certain library exists in the ``node_modules`` tree of your consumers. Note that prior to npm@7, peer dependencies are *not* automatically installed, which means that adding peer dependencies to a library will be a breaking change for your customers. Unless ``peerDependencyOptions.pinnedDevDependency`` is disabled (it is enabled by default), projen will automatically add a dev dependency with a pinned version for each peer dependency. This will ensure that you build & test your module against the lowest peer version required. Default: []
6906
- :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "7"
7294
+ :param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
6907
7295
  :param repository: (experimental) The repository is the location where the actual code for your package lives. See https://classic.yarnpkg.com/en/docs/package-json/#toc-repository
6908
7296
  :param repository_directory: (experimental) 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.
6909
7297
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
6910
7298
  :param scripts: (deprecated) npm scripts to include. If a script has the same name as a standard script, the standard script will be overwritten. Also adds the script as a task. Default: {}
6911
7299
  :param stability: (experimental) Package's Stability.
6912
7300
  :param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
7301
+ :param bump_package: (experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string. This can be any compatible package version, including the deprecated ``standard-version@9``. Default: - A recent version of "commit-and-tag-version"
6913
7302
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
6914
7303
  :param major_version: (experimental) Major version to release from the default branch. If this is specified, we bump the latest version of this major version line. If not specified, we bump the global latest version. Default: - Major version is not enforced.
6915
7304
  :param min_major_version: (experimental) Minimal Major version to release. This can be useful to set to 1, as breaking changes before the 1.x major release are not incrementing the major version number. Can not be set together with ``majorVersion``. Default: - No minimum version is being enforced
7305
+ :param next_version_command: (experimental) A shell command to control the next version to release. If present, this shell command will be run before the bump is executed, and it determines what version to release. It will be executed in the following environment: - Working directory: the project directory. - ``$VERSION``: the current version. Looks like ``1.2.3``. - ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset. - ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``. The command should print one of the following to ``stdout``: - Nothing: the next version number will be determined based on commit history. - ``x.y.z``: the next version number will be ``x.y.z``. - ``major|minor|patch``: the next version number will be the current version number with the indicated component bumped. This setting cannot be specified together with ``minMajorVersion``; the invoked script can be used to achieve the effects of ``minMajorVersion``. Default: - The next version will be determined based on the commit history and project settings.
6916
7306
  :param npm_dist_tag: (experimental) The npmDistTag to use when publishing from the default branch. To set the npm dist-tag for release branches, set the ``npmDistTag`` property for each branch. Default: "latest"
6917
7307
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
6918
7308
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -6920,28 +7310,34 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6920
7310
  :param publish_tasks: (experimental) Define publishing tasks that can be executed manually as well as workflows. Normally, publishing only happens within automated workflows. Enable this in order to create a publishing task for each publishing activity. Default: false
6921
7311
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
6922
7312
  :param release_branches: (experimental) Defines additional release branches. A workflow will be created for each release branch which will publish releases from commits in this branch. Each release branch *must* be assigned a major version number which is used to enforce that versions published from that branch always use that major version. If multiple branches are used, the ``majorVersion`` field must also be provided for the default branch. Default: - no additional branches are used for release. you can use ``addBranch()`` to add additional branches.
7313
+ :param release_environment: (experimental) The GitHub Actions environment used for the release. This can be used to add an explicit approval step to the release or limit who can initiate a release through environment protection rules. When multiple artifacts are released, the environment can be overwritten on a per artifact basis. Default: - no environment used, unless set at the artifact level
6923
7314
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
6924
7315
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
6925
7316
  :param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
6926
7317
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
6927
7318
  :param release_tag_prefix: (experimental) Automatically add the given prefix to release tags. Useful if you are releasing on multiple branches with overlapping version numbers. Note: this prefix is used to detect the latest tagged version when bumping, so if you change this on a project with an existing version history, you may need to manually tag your latest release with the new prefix. Default: "v"
6928
7319
  :param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
7320
+ :param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
6929
7321
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
6930
7322
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
6931
- :param versionrc_options: (experimental) Custom configuration used when creating changelog with standard-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
7323
+ :param versionrc_options: (experimental) Custom configuration used when creating changelog with commit-and-tag-version package. Given values either append to default configuration or overwrite values in it. Default: - standard configuration applicable for GitHub repositories
6932
7324
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
6933
7325
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
6934
7326
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
6935
7327
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
6936
7328
  :param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
7329
+ :param audit_deps: (experimental) Run security audit on dependencies. When enabled, creates an "audit" task that checks for known security vulnerabilities in dependencies. By default, runs during every build and checks for "high" severity vulnerabilities or above in all dependencies (including dev dependencies). Default: false
7330
+ :param audit_deps_options: (experimental) Security audit options. Default: - default options
6937
7331
  :param auto_approve_upgrades: (experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued). Throw if set to true but ``autoApproveOptions`` are not defined. Default: - true
7332
+ :param biome: (experimental) Setup Biome. Default: false
7333
+ :param biome_options: (experimental) Biome options. Default: - default options
6938
7334
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
6939
7335
  :param build_workflow_options: (experimental) Options for PR build workflow.
6940
7336
  :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
6941
7337
  :param bundler_options: (experimental) Options for ``Bundler``.
6942
7338
  :param check_licenses: (experimental) Configure which licenses should be deemed acceptable for use by dependencies. This setting will cause the build to fail, if any prohibited or not allowed licenses ares encountered. Default: - no license checks are run during the build and all licenses will be accepted
6943
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v4 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
6944
- :param code_cov_token_secret: (experimental) 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
7339
+ :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v5 By default, OIDC auth is used. Alternatively a token can be provided via ``codeCovTokenSecret``. Default: false
7340
+ :param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
6945
7341
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
6946
7342
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
6947
7343
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -6968,15 +7364,15 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6968
7364
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
6969
7365
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
6970
7366
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
6971
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
6972
- :param workflow_node_version: (experimental) The node version to use in GitHub workflows. Default: - same as ``minNodeVersion``
7367
+ :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
7368
+ :param workflow_node_version: (experimental) The node version used in GitHub Actions workflows. Always use this option if your GitHub Actions workflows require a specific to run. Default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
6973
7369
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
6974
7370
  :param disable_tsconfig: (experimental) Do not generate a ``tsconfig.json`` file (used by jsii projects since tsconfig.json is generated by the jsii compiler). Default: false
6975
7371
  :param disable_tsconfig_dev: (experimental) Do not generate a ``tsconfig.dev.json`` file. Default: false
6976
7372
  :param docgen: (experimental) Docgen by Typedoc. Default: false
6977
7373
  :param docs_directory: (experimental) Docs directory. Default: "docs"
6978
7374
  :param entrypoint_types: (experimental) 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)
6979
- :param eslint: (experimental) Setup eslint. Default: true
7375
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
6980
7376
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
6981
7377
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
6982
7378
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -6998,7 +7394,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6998
7394
  :param docgen_file_path: (experimental) File path for generated docs. Default: "API.md"
6999
7395
  :param dotnet:
7000
7396
  :param exclude_typescript: (experimental) Accepts a list of glob patterns. Files matching any of those patterns will be excluded from the TypeScript compiler input. By default, jsii will include all *.ts files (except .d.ts files) in the TypeScript compiler input. This can be problematic for example when the package's build or test procedure generates .ts files that cannot be compiled with jsii's compiler settings.
7001
- :param jsii_version: (experimental) Version of the jsii compiler to use. Set to "*" if you want to manually manage the version of jsii in your project by managing updates to ``package.json`` on your own. NOTE: The jsii compiler releases since 5.0.0 are not semantically versioned and should remain on the same minor, so we recommend using a ``~`` dependency (e.g. ``~5.0.0``). Default: "1.x"
7397
+ :param jsii_version: (experimental) Version of the jsii compiler to use. Set to "*" if you want to manually manage the version of jsii in your project by managing updates to ``package.json`` on your own. NOTE: The jsii compiler releases since 5.0.0 are not semantically versioned and should remain on the same minor, so we recommend using a ``~`` dependency (e.g. ``~5.0.0``). Default: "~5.8.0"
7002
7398
  :param publish_to_go: (experimental) Publish Go bindings to a git repository. Default: - no publishing
7003
7399
  :param publish_to_maven: (experimental) Publish to maven. Default: - no publishing
7004
7400
  :param publish_to_nuget: (experimental) Publish to NuGet. Default: - no publishing
@@ -7045,6 +7441,10 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7045
7441
  yarn_berry_options = _YarnBerryOptions_b6942539(**yarn_berry_options)
7046
7442
  if isinstance(workflow_runs_on_group, dict):
7047
7443
  workflow_runs_on_group = _GroupRunnerOptions_148c59c1(**workflow_runs_on_group)
7444
+ if isinstance(audit_deps_options, dict):
7445
+ audit_deps_options = _AuditOptions_429c62df(**audit_deps_options)
7446
+ if isinstance(biome_options, dict):
7447
+ biome_options = _BiomeOptions_452ab984(**biome_options)
7048
7448
  if isinstance(build_workflow_options, dict):
7049
7449
  build_workflow_options = _BuildWorkflowOptions_b756f97f(**build_workflow_options)
7050
7450
  if isinstance(build_workflow_triggers, dict):
@@ -7132,6 +7532,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7132
7532
  check_type(argname="argument bugs_email", value=bugs_email, expected_type=type_hints["bugs_email"])
7133
7533
  check_type(argname="argument bugs_url", value=bugs_url, expected_type=type_hints["bugs_url"])
7134
7534
  check_type(argname="argument bundled_deps", value=bundled_deps, expected_type=type_hints["bundled_deps"])
7535
+ check_type(argname="argument bun_version", value=bun_version, expected_type=type_hints["bun_version"])
7135
7536
  check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
7136
7537
  check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
7137
7538
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
@@ -7148,6 +7549,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7148
7549
  check_type(argname="argument npm_registry", value=npm_registry, expected_type=type_hints["npm_registry"])
7149
7550
  check_type(argname="argument npm_registry_url", value=npm_registry_url, expected_type=type_hints["npm_registry_url"])
7150
7551
  check_type(argname="argument npm_token_secret", value=npm_token_secret, expected_type=type_hints["npm_token_secret"])
7552
+ check_type(argname="argument npm_trusted_publishing", value=npm_trusted_publishing, expected_type=type_hints["npm_trusted_publishing"])
7151
7553
  check_type(argname="argument package_manager", value=package_manager, expected_type=type_hints["package_manager"])
7152
7554
  check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
7153
7555
  check_type(argname="argument peer_dependency_options", value=peer_dependency_options, expected_type=type_hints["peer_dependency_options"])
@@ -7159,9 +7561,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7159
7561
  check_type(argname="argument scripts", value=scripts, expected_type=type_hints["scripts"])
7160
7562
  check_type(argname="argument stability", value=stability, expected_type=type_hints["stability"])
7161
7563
  check_type(argname="argument yarn_berry_options", value=yarn_berry_options, expected_type=type_hints["yarn_berry_options"])
7564
+ check_type(argname="argument bump_package", value=bump_package, expected_type=type_hints["bump_package"])
7162
7565
  check_type(argname="argument jsii_release_version", value=jsii_release_version, expected_type=type_hints["jsii_release_version"])
7163
7566
  check_type(argname="argument major_version", value=major_version, expected_type=type_hints["major_version"])
7164
7567
  check_type(argname="argument min_major_version", value=min_major_version, expected_type=type_hints["min_major_version"])
7568
+ check_type(argname="argument next_version_command", value=next_version_command, expected_type=type_hints["next_version_command"])
7165
7569
  check_type(argname="argument npm_dist_tag", value=npm_dist_tag, expected_type=type_hints["npm_dist_tag"])
7166
7570
  check_type(argname="argument post_build_steps", value=post_build_steps, expected_type=type_hints["post_build_steps"])
7167
7571
  check_type(argname="argument prerelease", value=prerelease, expected_type=type_hints["prerelease"])
@@ -7169,12 +7573,14 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7169
7573
  check_type(argname="argument publish_tasks", value=publish_tasks, expected_type=type_hints["publish_tasks"])
7170
7574
  check_type(argname="argument releasable_commits", value=releasable_commits, expected_type=type_hints["releasable_commits"])
7171
7575
  check_type(argname="argument release_branches", value=release_branches, expected_type=type_hints["release_branches"])
7576
+ check_type(argname="argument release_environment", value=release_environment, expected_type=type_hints["release_environment"])
7172
7577
  check_type(argname="argument release_every_commit", value=release_every_commit, expected_type=type_hints["release_every_commit"])
7173
7578
  check_type(argname="argument release_failure_issue", value=release_failure_issue, expected_type=type_hints["release_failure_issue"])
7174
7579
  check_type(argname="argument release_failure_issue_label", value=release_failure_issue_label, expected_type=type_hints["release_failure_issue_label"])
7175
7580
  check_type(argname="argument release_schedule", value=release_schedule, expected_type=type_hints["release_schedule"])
7176
7581
  check_type(argname="argument release_tag_prefix", value=release_tag_prefix, expected_type=type_hints["release_tag_prefix"])
7177
7582
  check_type(argname="argument release_trigger", value=release_trigger, expected_type=type_hints["release_trigger"])
7583
+ check_type(argname="argument release_workflow_env", value=release_workflow_env, expected_type=type_hints["release_workflow_env"])
7178
7584
  check_type(argname="argument release_workflow_name", value=release_workflow_name, expected_type=type_hints["release_workflow_name"])
7179
7585
  check_type(argname="argument release_workflow_setup_steps", value=release_workflow_setup_steps, expected_type=type_hints["release_workflow_setup_steps"])
7180
7586
  check_type(argname="argument versionrc_options", value=versionrc_options, expected_type=type_hints["versionrc_options"])
@@ -7183,7 +7589,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7183
7589
  check_type(argname="argument workflow_runs_on_group", value=workflow_runs_on_group, expected_type=type_hints["workflow_runs_on_group"])
7184
7590
  check_type(argname="argument default_release_branch", value=default_release_branch, expected_type=type_hints["default_release_branch"])
7185
7591
  check_type(argname="argument artifacts_directory", value=artifacts_directory, expected_type=type_hints["artifacts_directory"])
7592
+ check_type(argname="argument audit_deps", value=audit_deps, expected_type=type_hints["audit_deps"])
7593
+ check_type(argname="argument audit_deps_options", value=audit_deps_options, expected_type=type_hints["audit_deps_options"])
7186
7594
  check_type(argname="argument auto_approve_upgrades", value=auto_approve_upgrades, expected_type=type_hints["auto_approve_upgrades"])
7595
+ check_type(argname="argument biome", value=biome, expected_type=type_hints["biome"])
7596
+ check_type(argname="argument biome_options", value=biome_options, expected_type=type_hints["biome_options"])
7187
7597
  check_type(argname="argument build_workflow", value=build_workflow, expected_type=type_hints["build_workflow"])
7188
7598
  check_type(argname="argument build_workflow_options", value=build_workflow_options, expected_type=type_hints["build_workflow_options"])
7189
7599
  check_type(argname="argument build_workflow_triggers", value=build_workflow_triggers, expected_type=type_hints["build_workflow_triggers"])
@@ -7345,6 +7755,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7345
7755
  self._values["bugs_url"] = bugs_url
7346
7756
  if bundled_deps is not None:
7347
7757
  self._values["bundled_deps"] = bundled_deps
7758
+ if bun_version is not None:
7759
+ self._values["bun_version"] = bun_version
7348
7760
  if code_artifact_options is not None:
7349
7761
  self._values["code_artifact_options"] = code_artifact_options
7350
7762
  if deps is not None:
@@ -7377,6 +7789,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7377
7789
  self._values["npm_registry_url"] = npm_registry_url
7378
7790
  if npm_token_secret is not None:
7379
7791
  self._values["npm_token_secret"] = npm_token_secret
7792
+ if npm_trusted_publishing is not None:
7793
+ self._values["npm_trusted_publishing"] = npm_trusted_publishing
7380
7794
  if package_manager is not None:
7381
7795
  self._values["package_manager"] = package_manager
7382
7796
  if package_name is not None:
@@ -7399,12 +7813,16 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7399
7813
  self._values["stability"] = stability
7400
7814
  if yarn_berry_options is not None:
7401
7815
  self._values["yarn_berry_options"] = yarn_berry_options
7816
+ if bump_package is not None:
7817
+ self._values["bump_package"] = bump_package
7402
7818
  if jsii_release_version is not None:
7403
7819
  self._values["jsii_release_version"] = jsii_release_version
7404
7820
  if major_version is not None:
7405
7821
  self._values["major_version"] = major_version
7406
7822
  if min_major_version is not None:
7407
7823
  self._values["min_major_version"] = min_major_version
7824
+ if next_version_command is not None:
7825
+ self._values["next_version_command"] = next_version_command
7408
7826
  if npm_dist_tag is not None:
7409
7827
  self._values["npm_dist_tag"] = npm_dist_tag
7410
7828
  if post_build_steps is not None:
@@ -7419,6 +7837,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7419
7837
  self._values["releasable_commits"] = releasable_commits
7420
7838
  if release_branches is not None:
7421
7839
  self._values["release_branches"] = release_branches
7840
+ if release_environment is not None:
7841
+ self._values["release_environment"] = release_environment
7422
7842
  if release_every_commit is not None:
7423
7843
  self._values["release_every_commit"] = release_every_commit
7424
7844
  if release_failure_issue is not None:
@@ -7431,6 +7851,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7431
7851
  self._values["release_tag_prefix"] = release_tag_prefix
7432
7852
  if release_trigger is not None:
7433
7853
  self._values["release_trigger"] = release_trigger
7854
+ if release_workflow_env is not None:
7855
+ self._values["release_workflow_env"] = release_workflow_env
7434
7856
  if release_workflow_name is not None:
7435
7857
  self._values["release_workflow_name"] = release_workflow_name
7436
7858
  if release_workflow_setup_steps is not None:
@@ -7445,8 +7867,16 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7445
7867
  self._values["workflow_runs_on_group"] = workflow_runs_on_group
7446
7868
  if artifacts_directory is not None:
7447
7869
  self._values["artifacts_directory"] = artifacts_directory
7870
+ if audit_deps is not None:
7871
+ self._values["audit_deps"] = audit_deps
7872
+ if audit_deps_options is not None:
7873
+ self._values["audit_deps_options"] = audit_deps_options
7448
7874
  if auto_approve_upgrades is not None:
7449
7875
  self._values["auto_approve_upgrades"] = auto_approve_upgrades
7876
+ if biome is not None:
7877
+ self._values["biome"] = biome
7878
+ if biome_options is not None:
7879
+ self._values["biome_options"] = biome_options
7450
7880
  if build_workflow is not None:
7451
7881
  self._values["build_workflow"] = build_workflow
7452
7882
  if build_workflow_options is not None:
@@ -8058,6 +8488,17 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8058
8488
  result = self._values.get("bundled_deps")
8059
8489
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
8060
8490
 
8491
+ @builtins.property
8492
+ def bun_version(self) -> typing.Optional[builtins.str]:
8493
+ '''(experimental) The version of Bun to use if using Bun as a package manager.
8494
+
8495
+ :default: "latest"
8496
+
8497
+ :stability: experimental
8498
+ '''
8499
+ result = self._values.get("bun_version")
8500
+ return typing.cast(typing.Optional[builtins.str], result)
8501
+
8061
8502
  @builtins.property
8062
8503
  def code_artifact_options(self) -> typing.Optional[_CodeArtifactOptions_e4782b3e]:
8063
8504
  '''(experimental) Options for npm packages using AWS CodeArtifact.
@@ -8192,9 +8633,15 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8192
8633
 
8193
8634
  @builtins.property
8194
8635
  def max_node_version(self) -> typing.Optional[builtins.str]:
8195
- '''(experimental) Minimum node.js version to require via ``engines`` (inclusive).
8636
+ '''(experimental) The maximum node version supported by this package. Most projects should not use this option.
8637
+
8638
+ The value indicates that the package is incompatible with any newer versions of node.
8639
+ This requirement is enforced via the engines field.
8196
8640
 
8197
- :default: - no max
8641
+ You will normally not need to set this option.
8642
+ Consider this option only if your package is known to not function with newer versions of node.
8643
+
8644
+ :default: - no maximum version is enforced
8198
8645
 
8199
8646
  :stability: experimental
8200
8647
  '''
@@ -8203,9 +8650,19 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8203
8650
 
8204
8651
  @builtins.property
8205
8652
  def min_node_version(self) -> typing.Optional[builtins.str]:
8206
- '''(experimental) Minimum Node.js version to require via package.json ``engines`` (inclusive).
8653
+ '''(experimental) The minimum node version required by this package to function. Most projects should not use this option.
8654
+
8655
+ The value indicates that the package is incompatible with any older versions of node.
8656
+ This requirement is enforced via the engines field.
8657
+
8658
+ You will normally not need to set this option, even if your package is incompatible with EOL versions of node.
8659
+ Consider this option only if your package depends on a specific feature, that is not available in other LTS versions.
8660
+ Setting this option has very high impact on the consumers of your package,
8661
+ as package managers will actively prevent usage with node versions you have marked as incompatible.
8207
8662
 
8208
- :default: - no "engines" specified
8663
+ To change the node version of your CI/CD workflows, use ``workflowNodeVersion``.
8664
+
8665
+ :default: - no minimum version is enforced
8209
8666
 
8210
8667
  :stability: experimental
8211
8668
  '''
@@ -8282,6 +8739,17 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8282
8739
  result = self._values.get("npm_token_secret")
8283
8740
  return typing.cast(typing.Optional[builtins.str], result)
8284
8741
 
8742
+ @builtins.property
8743
+ def npm_trusted_publishing(self) -> typing.Optional[builtins.bool]:
8744
+ '''(experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work.
8745
+
8746
+ :default: - false
8747
+
8748
+ :stability: experimental
8749
+ '''
8750
+ result = self._values.get("npm_trusted_publishing")
8751
+ return typing.cast(typing.Optional[builtins.bool], result)
8752
+
8285
8753
  @builtins.property
8286
8754
  def package_manager(self) -> typing.Optional[_NodePackageManager_3eb53bf6]:
8287
8755
  '''(experimental) The Node Package Manager used to execute scripts.
@@ -8345,7 +8813,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8345
8813
  def pnpm_version(self) -> typing.Optional[builtins.str]:
8346
8814
  '''(experimental) The version of PNPM to use if using PNPM as a package manager.
8347
8815
 
8348
- :default: "7"
8816
+ :default: "9"
8349
8817
 
8350
8818
  :stability: experimental
8351
8819
  '''
@@ -8422,6 +8890,19 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8422
8890
  result = self._values.get("yarn_berry_options")
8423
8891
  return typing.cast(typing.Optional[_YarnBerryOptions_b6942539], result)
8424
8892
 
8893
+ @builtins.property
8894
+ def bump_package(self) -> typing.Optional[builtins.str]:
8895
+ '''(experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string.
8896
+
8897
+ This can be any compatible package version, including the deprecated ``standard-version@9``.
8898
+
8899
+ :default: - A recent version of "commit-and-tag-version"
8900
+
8901
+ :stability: experimental
8902
+ '''
8903
+ result = self._values.get("bump_package")
8904
+ return typing.cast(typing.Optional[builtins.str], result)
8905
+
8425
8906
  @builtins.property
8426
8907
  def jsii_release_version(self) -> typing.Optional[builtins.str]:
8427
8908
  '''(experimental) Version requirement of ``publib`` which is used to publish modules to npm.
@@ -8463,6 +8944,36 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8463
8944
  result = self._values.get("min_major_version")
8464
8945
  return typing.cast(typing.Optional[jsii.Number], result)
8465
8946
 
8947
+ @builtins.property
8948
+ def next_version_command(self) -> typing.Optional[builtins.str]:
8949
+ '''(experimental) A shell command to control the next version to release.
8950
+
8951
+ If present, this shell command will be run before the bump is executed, and
8952
+ it determines what version to release. It will be executed in the following
8953
+ environment:
8954
+
8955
+ - Working directory: the project directory.
8956
+ - ``$VERSION``: the current version. Looks like ``1.2.3``.
8957
+ - ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset.
8958
+ - ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``.
8959
+
8960
+ The command should print one of the following to ``stdout``:
8961
+
8962
+ - Nothing: the next version number will be determined based on commit history.
8963
+ - ``x.y.z``: the next version number will be ``x.y.z``.
8964
+ - ``major|minor|patch``: the next version number will be the current version number
8965
+ with the indicated component bumped.
8966
+
8967
+ This setting cannot be specified together with ``minMajorVersion``; the invoked
8968
+ script can be used to achieve the effects of ``minMajorVersion``.
8969
+
8970
+ :default: - The next version will be determined based on the commit history and project settings.
8971
+
8972
+ :stability: experimental
8973
+ '''
8974
+ result = self._values.get("next_version_command")
8975
+ return typing.cast(typing.Optional[builtins.str], result)
8976
+
8466
8977
  @builtins.property
8467
8978
  def npm_dist_tag(self) -> typing.Optional[builtins.str]:
8468
8979
  '''(experimental) The npmDistTag to use when publishing from the default branch.
@@ -8558,6 +9069,23 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8558
9069
  result = self._values.get("release_branches")
8559
9070
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, _BranchOptions_13663d08]], result)
8560
9071
 
9072
+ @builtins.property
9073
+ def release_environment(self) -> typing.Optional[builtins.str]:
9074
+ '''(experimental) The GitHub Actions environment used for the release.
9075
+
9076
+ This can be used to add an explicit approval step to the release
9077
+ or limit who can initiate a release through environment protection rules.
9078
+
9079
+ When multiple artifacts are released, the environment can be overwritten
9080
+ on a per artifact basis.
9081
+
9082
+ :default: - no environment used, unless set at the artifact level
9083
+
9084
+ :stability: experimental
9085
+ '''
9086
+ result = self._values.get("release_environment")
9087
+ return typing.cast(typing.Optional[builtins.str], result)
9088
+
8561
9089
  @builtins.property
8562
9090
  def release_every_commit(self) -> typing.Optional[builtins.bool]:
8563
9091
  '''(deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``.
@@ -8635,6 +9163,19 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8635
9163
  result = self._values.get("release_trigger")
8636
9164
  return typing.cast(typing.Optional[_ReleaseTrigger_e4dc221f], result)
8637
9165
 
9166
+ @builtins.property
9167
+ def release_workflow_env(
9168
+ self,
9169
+ ) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
9170
+ '''(experimental) Build environment variables for release workflows.
9171
+
9172
+ :default: {}
9173
+
9174
+ :stability: experimental
9175
+ '''
9176
+ result = self._values.get("release_workflow_env")
9177
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
9178
+
8638
9179
  @builtins.property
8639
9180
  def release_workflow_name(self) -> typing.Optional[builtins.str]:
8640
9181
  '''(experimental) The name of the default release workflow.
@@ -8661,7 +9202,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8661
9202
  def versionrc_options(
8662
9203
  self,
8663
9204
  ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
8664
- '''(experimental) Custom configuration used when creating changelog with standard-version package.
9205
+ '''(experimental) Custom configuration used when creating changelog with commit-and-tag-version package.
8665
9206
 
8666
9207
  Given values either append to default configuration or overwrite values in it.
8667
9208
 
@@ -8730,6 +9271,32 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8730
9271
  result = self._values.get("artifacts_directory")
8731
9272
  return typing.cast(typing.Optional[builtins.str], result)
8732
9273
 
9274
+ @builtins.property
9275
+ def audit_deps(self) -> typing.Optional[builtins.bool]:
9276
+ '''(experimental) Run security audit on dependencies.
9277
+
9278
+ When enabled, creates an "audit" task that checks for known security vulnerabilities
9279
+ in dependencies. By default, runs during every build and checks for "high" severity
9280
+ vulnerabilities or above in all dependencies (including dev dependencies).
9281
+
9282
+ :default: false
9283
+
9284
+ :stability: experimental
9285
+ '''
9286
+ result = self._values.get("audit_deps")
9287
+ return typing.cast(typing.Optional[builtins.bool], result)
9288
+
9289
+ @builtins.property
9290
+ def audit_deps_options(self) -> typing.Optional[_AuditOptions_429c62df]:
9291
+ '''(experimental) Security audit options.
9292
+
9293
+ :default: - default options
9294
+
9295
+ :stability: experimental
9296
+ '''
9297
+ result = self._values.get("audit_deps_options")
9298
+ return typing.cast(typing.Optional[_AuditOptions_429c62df], result)
9299
+
8733
9300
  @builtins.property
8734
9301
  def auto_approve_upgrades(self) -> typing.Optional[builtins.bool]:
8735
9302
  '''(experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
@@ -8743,6 +9310,28 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8743
9310
  result = self._values.get("auto_approve_upgrades")
8744
9311
  return typing.cast(typing.Optional[builtins.bool], result)
8745
9312
 
9313
+ @builtins.property
9314
+ def biome(self) -> typing.Optional[builtins.bool]:
9315
+ '''(experimental) Setup Biome.
9316
+
9317
+ :default: false
9318
+
9319
+ :stability: experimental
9320
+ '''
9321
+ result = self._values.get("biome")
9322
+ return typing.cast(typing.Optional[builtins.bool], result)
9323
+
9324
+ @builtins.property
9325
+ def biome_options(self) -> typing.Optional[_BiomeOptions_452ab984]:
9326
+ '''(experimental) Biome options.
9327
+
9328
+ :default: - default options
9329
+
9330
+ :stability: experimental
9331
+ '''
9332
+ result = self._values.get("biome_options")
9333
+ return typing.cast(typing.Optional[_BiomeOptions_452ab984], result)
9334
+
8746
9335
  @builtins.property
8747
9336
  def build_workflow(self) -> typing.Optional[builtins.bool]:
8748
9337
  '''(experimental) Define a GitHub workflow for building PRs.
@@ -8800,7 +9389,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8800
9389
 
8801
9390
  @builtins.property
8802
9391
  def code_cov(self) -> typing.Optional[builtins.bool]:
8803
- '''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v4 A secret is required for private repos. Configured with ``@codeCovTokenSecret``.
9392
+ '''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v5 By default, OIDC auth is used. Alternatively a token can be provided via ``codeCovTokenSecret``.
8804
9393
 
8805
9394
  :default: false
8806
9395
 
@@ -8811,9 +9400,9 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8811
9400
 
8812
9401
  @builtins.property
8813
9402
  def code_cov_token_secret(self) -> typing.Optional[builtins.str]:
8814
- '''(experimental) Define the secret name for a specified https://codecov.io/ token A secret is required to send coverage for private repositories.
9403
+ '''(experimental) Define the secret name for a specified https://codecov.io/ token.
8815
9404
 
8816
- :default: - if this option is not specified, only public repositories are supported
9405
+ :default: - OIDC auth is used
8817
9406
 
8818
9407
  :stability: experimental
8819
9408
  '''
@@ -9126,7 +9715,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9126
9715
  def workflow_git_identity(self) -> typing.Optional[_GitIdentity_6effc3de]:
9127
9716
  '''(experimental) The git identity to use in workflows.
9128
9717
 
9129
- :default: - GitHub Actions
9718
+ :default: - default GitHub Actions user
9130
9719
 
9131
9720
  :stability: experimental
9132
9721
  '''
@@ -9135,9 +9724,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9135
9724
 
9136
9725
  @builtins.property
9137
9726
  def workflow_node_version(self) -> typing.Optional[builtins.str]:
9138
- '''(experimental) The node version to use in GitHub workflows.
9727
+ '''(experimental) The node version used in GitHub Actions workflows.
9728
+
9729
+ Always use this option if your GitHub Actions workflows require a specific to run.
9139
9730
 
9140
- :default: - same as ``minNodeVersion``
9731
+ :default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
9141
9732
 
9142
9733
  :stability: experimental
9143
9734
  '''
@@ -9214,7 +9805,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9214
9805
  def eslint(self) -> typing.Optional[builtins.bool]:
9215
9806
  '''(experimental) Setup eslint.
9216
9807
 
9217
- :default: true
9808
+ :default: - true, unless biome is enabled
9218
9809
 
9219
9810
  :stability: experimental
9220
9811
  '''
@@ -9477,10 +10068,10 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9477
10068
  and should remain on the same minor, so we recommend using a ``~`` dependency
9478
10069
  (e.g. ``~5.0.0``).
9479
10070
 
9480
- :default: "1.x"
10071
+ :default: "~5.8.0"
9481
10072
 
9482
10073
  :stability: experimental
9483
- :pjnew: "~5.4.0"
10074
+ :pjnew: "~5.9.0"
9484
10075
  '''
9485
10076
  result = self._values.get("jsii_version")
9486
10077
  return typing.cast(typing.Optional[builtins.str], result)
@@ -10106,6 +10697,7 @@ def _typecheckingstub__331399ffb98e7173ebfaf58cb4fb356507f6d5279e417cfcd418054d7
10106
10697
  package_name: typing.Optional[builtins.str] = None,
10107
10698
  poetry_options: typing.Optional[typing.Union[_PoetryPyprojectOptionsWithoutDeps_7947f35b, typing.Dict[builtins.str, typing.Any]]] = None,
10108
10699
  setup_config: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
10700
+ uv_options: typing.Optional[typing.Union[_UvOptions_49201464, typing.Dict[builtins.str, typing.Any]]] = None,
10109
10701
  python_exec: typing.Optional[builtins.str] = None,
10110
10702
  module_name: builtins.str,
10111
10703
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -10121,7 +10713,9 @@ def _typecheckingstub__331399ffb98e7173ebfaf58cb4fb356507f6d5279e417cfcd418054d7
10121
10713
  pytest: typing.Optional[builtins.bool] = None,
10122
10714
  pytest_options: typing.Optional[typing.Union[_PytestOptions_b400bccc, typing.Dict[builtins.str, typing.Any]]] = None,
10123
10715
  sample: typing.Optional[builtins.bool] = None,
10716
+ sample_testdir: typing.Optional[builtins.str] = None,
10124
10717
  setuptools: typing.Optional[builtins.bool] = None,
10718
+ uv: typing.Optional[builtins.bool] = None,
10125
10719
  venv: typing.Optional[builtins.bool] = None,
10126
10720
  venv_options: typing.Optional[typing.Union[_VenvOptions_8ea2b226, typing.Dict[builtins.str, typing.Any]]] = None,
10127
10721
  cdk8s_version: builtins.str,
@@ -10182,6 +10776,7 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10182
10776
  bugs_email: typing.Optional[builtins.str] = None,
10183
10777
  bugs_url: typing.Optional[builtins.str] = None,
10184
10778
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10779
+ bun_version: typing.Optional[builtins.str] = None,
10185
10780
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
10186
10781
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10187
10782
  description: typing.Optional[builtins.str] = None,
@@ -10198,6 +10793,7 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10198
10793
  npm_registry: typing.Optional[builtins.str] = None,
10199
10794
  npm_registry_url: typing.Optional[builtins.str] = None,
10200
10795
  npm_token_secret: typing.Optional[builtins.str] = None,
10796
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
10201
10797
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
10202
10798
  package_name: typing.Optional[builtins.str] = None,
10203
10799
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10209,9 +10805,11 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10209
10805
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10210
10806
  stability: typing.Optional[builtins.str] = None,
10211
10807
  yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
10808
+ bump_package: typing.Optional[builtins.str] = None,
10212
10809
  jsii_release_version: typing.Optional[builtins.str] = None,
10213
10810
  major_version: typing.Optional[jsii.Number] = None,
10214
10811
  min_major_version: typing.Optional[jsii.Number] = None,
10812
+ next_version_command: typing.Optional[builtins.str] = None,
10215
10813
  npm_dist_tag: typing.Optional[builtins.str] = None,
10216
10814
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10217
10815
  prerelease: typing.Optional[builtins.str] = None,
@@ -10219,12 +10817,14 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10219
10817
  publish_tasks: typing.Optional[builtins.bool] = None,
10220
10818
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
10221
10819
  release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
10820
+ release_environment: typing.Optional[builtins.str] = None,
10222
10821
  release_every_commit: typing.Optional[builtins.bool] = None,
10223
10822
  release_failure_issue: typing.Optional[builtins.bool] = None,
10224
10823
  release_failure_issue_label: typing.Optional[builtins.str] = None,
10225
10824
  release_schedule: typing.Optional[builtins.str] = None,
10226
10825
  release_tag_prefix: typing.Optional[builtins.str] = None,
10227
10826
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
10827
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10228
10828
  release_workflow_name: typing.Optional[builtins.str] = None,
10229
10829
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10230
10830
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -10233,7 +10833,11 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10233
10833
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
10234
10834
  default_release_branch: builtins.str,
10235
10835
  artifacts_directory: typing.Optional[builtins.str] = None,
10836
+ audit_deps: typing.Optional[builtins.bool] = None,
10837
+ audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
10236
10838
  auto_approve_upgrades: typing.Optional[builtins.bool] = None,
10839
+ biome: typing.Optional[builtins.bool] = None,
10840
+ biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
10237
10841
  build_workflow: typing.Optional[builtins.bool] = None,
10238
10842
  build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
10239
10843
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10347,6 +10951,7 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10347
10951
  bugs_email: typing.Optional[builtins.str] = None,
10348
10952
  bugs_url: typing.Optional[builtins.str] = None,
10349
10953
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10954
+ bun_version: typing.Optional[builtins.str] = None,
10350
10955
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
10351
10956
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10352
10957
  description: typing.Optional[builtins.str] = None,
@@ -10363,6 +10968,7 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10363
10968
  npm_registry: typing.Optional[builtins.str] = None,
10364
10969
  npm_registry_url: typing.Optional[builtins.str] = None,
10365
10970
  npm_token_secret: typing.Optional[builtins.str] = None,
10971
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
10366
10972
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
10367
10973
  package_name: typing.Optional[builtins.str] = None,
10368
10974
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10374,9 +10980,11 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10374
10980
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10375
10981
  stability: typing.Optional[builtins.str] = None,
10376
10982
  yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
10983
+ bump_package: typing.Optional[builtins.str] = None,
10377
10984
  jsii_release_version: typing.Optional[builtins.str] = None,
10378
10985
  major_version: typing.Optional[jsii.Number] = None,
10379
10986
  min_major_version: typing.Optional[jsii.Number] = None,
10987
+ next_version_command: typing.Optional[builtins.str] = None,
10380
10988
  npm_dist_tag: typing.Optional[builtins.str] = None,
10381
10989
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10382
10990
  prerelease: typing.Optional[builtins.str] = None,
@@ -10384,12 +10992,14 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10384
10992
  publish_tasks: typing.Optional[builtins.bool] = None,
10385
10993
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
10386
10994
  release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
10995
+ release_environment: typing.Optional[builtins.str] = None,
10387
10996
  release_every_commit: typing.Optional[builtins.bool] = None,
10388
10997
  release_failure_issue: typing.Optional[builtins.bool] = None,
10389
10998
  release_failure_issue_label: typing.Optional[builtins.str] = None,
10390
10999
  release_schedule: typing.Optional[builtins.str] = None,
10391
11000
  release_tag_prefix: typing.Optional[builtins.str] = None,
10392
11001
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
11002
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10393
11003
  release_workflow_name: typing.Optional[builtins.str] = None,
10394
11004
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10395
11005
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -10398,7 +11008,11 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10398
11008
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
10399
11009
  default_release_branch: builtins.str,
10400
11010
  artifacts_directory: typing.Optional[builtins.str] = None,
11011
+ audit_deps: typing.Optional[builtins.bool] = None,
11012
+ audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
10401
11013
  auto_approve_upgrades: typing.Optional[builtins.bool] = None,
11014
+ biome: typing.Optional[builtins.bool] = None,
11015
+ biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
10402
11016
  build_workflow: typing.Optional[builtins.bool] = None,
10403
11017
  build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
10404
11018
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,