projen 0.79.4__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
@@ -1,3 +1,6 @@
1
+ from pkgutil import extend_path
2
+ __path__ = extend_path(__path__, __name__)
3
+
1
4
  import abc
2
5
  import builtins
3
6
  import datetime
@@ -8,7 +11,22 @@ import jsii
8
11
  import publication
9
12
  import typing_extensions
10
13
 
11
- 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
12
30
 
13
31
  from .._jsii import *
14
32
 
@@ -53,6 +71,9 @@ from ..github.workflows import (
53
71
  JobStep as _JobStep_c3287c05, Triggers as _Triggers_e9ae7617
54
72
  )
55
73
  from ..javascript import (
74
+ AuditOptions as _AuditOptions_429c62df,
75
+ BiomeOptions as _BiomeOptions_452ab984,
76
+ BuildWorkflowOptions as _BuildWorkflowOptions_b756f97f,
56
77
  BundlerOptions as _BundlerOptions_d60b85ed,
57
78
  CodeArtifactOptions as _CodeArtifactOptions_e4782b3e,
58
79
  EslintOptions as _EslintOptions_824f60bb,
@@ -74,6 +95,7 @@ from ..python import (
74
95
  PytestOptions as _PytestOptions_b400bccc,
75
96
  PythonProject as _PythonProject_f6db8592,
76
97
  PythonProjectOptions as _PythonProjectOptions_588b0f81,
98
+ UvOptions as _UvOptions_49201464,
77
99
  VenvOptions as _VenvOptions_8ea2b226,
78
100
  )
79
101
  from ..release import (
@@ -900,9 +922,10 @@ class Cdk8sPythonApp(
900
922
  projenrc_ts_options: typing.Optional[typing.Union[_ProjenrcTsOptions_e3a2602d, typing.Dict[builtins.str, typing.Any]]] = None,
901
923
  pytest: typing.Optional[builtins.bool] = None,
902
924
  pytest_options: typing.Optional[typing.Union[_PytestOptions_b400bccc, typing.Dict[builtins.str, typing.Any]]] = None,
903
- python_exec: typing.Optional[builtins.str] = None,
904
925
  sample: typing.Optional[builtins.bool] = None,
926
+ sample_testdir: typing.Optional[builtins.str] = None,
905
927
  setuptools: typing.Optional[builtins.bool] = None,
928
+ uv: typing.Optional[builtins.bool] = None,
906
929
  venv: typing.Optional[builtins.bool] = None,
907
930
  venv_options: typing.Optional[typing.Union[_VenvOptions_8ea2b226, typing.Dict[builtins.str, typing.Any]]] = None,
908
931
  cdk8s_version: builtins.str,
@@ -942,6 +965,8 @@ class Cdk8sPythonApp(
942
965
  package_name: typing.Optional[builtins.str] = None,
943
966
  poetry_options: typing.Optional[typing.Union[_PoetryPyprojectOptionsWithoutDeps_7947f35b, typing.Dict[builtins.str, typing.Any]]] = None,
944
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,
969
+ python_exec: typing.Optional[builtins.str] = None,
945
970
  name: builtins.str,
946
971
  commit_generated: typing.Optional[builtins.bool] = None,
947
972
  git_ignore_options: typing.Optional[typing.Union[_IgnoreFileOptions_86c48b91, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -972,9 +997,10 @@ class Cdk8sPythonApp(
972
997
  :param projenrc_ts_options: (experimental) Options related to projenrc in TypeScript. Default: - default options
973
998
  :param pytest: (experimental) Include pytest tests. Default: true
974
999
  :param pytest_options: (experimental) pytest options. Default: - defaults
975
- :param python_exec: (experimental) Path to the python executable to use. Default: "python"
976
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"
977
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
978
1004
  :param venv: (experimental) Use venv to manage a virtual environment for installing dependencies inside. Default: - true, unless poetry is true, then false
979
1005
  :param venv_options: (experimental) Venv options. Default: - defaults
980
1006
  :param cdk8s_version: (experimental) Minimum version of the cdk8s to depend on. Default: "2.3.33"
@@ -1014,6 +1040,8 @@ class Cdk8sPythonApp(
1014
1040
  :param package_name: (experimental) Package name.
1015
1041
  :param poetry_options: (experimental) Additional options to set for poetry if using poetry.
1016
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.
1044
+ :param python_exec: (experimental) Path to the python executable to use. Default: "python"
1017
1045
  :param name: (experimental) This is the name of your project. Default: $BASEDIR
1018
1046
  :param commit_generated: (experimental) Whether to commit the managed files by default. Default: true
1019
1047
  :param git_ignore_options: (experimental) Configuration options for .gitignore file.
@@ -1046,9 +1074,10 @@ class Cdk8sPythonApp(
1046
1074
  projenrc_ts_options=projenrc_ts_options,
1047
1075
  pytest=pytest,
1048
1076
  pytest_options=pytest_options,
1049
- python_exec=python_exec,
1050
1077
  sample=sample,
1078
+ sample_testdir=sample_testdir,
1051
1079
  setuptools=setuptools,
1080
+ uv=uv,
1052
1081
  venv=venv,
1053
1082
  venv_options=venv_options,
1054
1083
  cdk8s_version=cdk8s_version,
@@ -1088,6 +1117,8 @@ class Cdk8sPythonApp(
1088
1117
  package_name=package_name,
1089
1118
  poetry_options=poetry_options,
1090
1119
  setup_config=setup_config,
1120
+ uv_options=uv_options,
1121
+ python_exec=python_exec,
1091
1122
  name=name,
1092
1123
  commit_generated=commit_generated,
1093
1124
  git_ignore_options=git_ignore_options,
@@ -1165,6 +1196,8 @@ class Cdk8sPythonApp(
1165
1196
  "package_name": "packageName",
1166
1197
  "poetry_options": "poetryOptions",
1167
1198
  "setup_config": "setupConfig",
1199
+ "uv_options": "uvOptions",
1200
+ "python_exec": "pythonExec",
1168
1201
  "module_name": "moduleName",
1169
1202
  "deps": "deps",
1170
1203
  "dev_deps": "devDeps",
@@ -1178,9 +1211,10 @@ class Cdk8sPythonApp(
1178
1211
  "projenrc_ts_options": "projenrcTsOptions",
1179
1212
  "pytest": "pytest",
1180
1213
  "pytest_options": "pytestOptions",
1181
- "python_exec": "pythonExec",
1182
1214
  "sample": "sample",
1215
+ "sample_testdir": "sampleTestdir",
1183
1216
  "setuptools": "setuptools",
1217
+ "uv": "uv",
1184
1218
  "venv": "venv",
1185
1219
  "venv_options": "venvOptions",
1186
1220
  "cdk8s_version": "cdk8sVersion",
@@ -1241,6 +1275,8 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1241
1275
  package_name: typing.Optional[builtins.str] = None,
1242
1276
  poetry_options: typing.Optional[typing.Union[_PoetryPyprojectOptionsWithoutDeps_7947f35b, typing.Dict[builtins.str, typing.Any]]] = None,
1243
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,
1279
+ python_exec: typing.Optional[builtins.str] = None,
1244
1280
  module_name: builtins.str,
1245
1281
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
1246
1282
  dev_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -1254,9 +1290,10 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1254
1290
  projenrc_ts_options: typing.Optional[typing.Union[_ProjenrcTsOptions_e3a2602d, typing.Dict[builtins.str, typing.Any]]] = None,
1255
1291
  pytest: typing.Optional[builtins.bool] = None,
1256
1292
  pytest_options: typing.Optional[typing.Union[_PytestOptions_b400bccc, typing.Dict[builtins.str, typing.Any]]] = None,
1257
- python_exec: typing.Optional[builtins.str] = None,
1258
1293
  sample: typing.Optional[builtins.bool] = None,
1294
+ sample_testdir: typing.Optional[builtins.str] = None,
1259
1295
  setuptools: typing.Optional[builtins.bool] = None,
1296
+ uv: typing.Optional[builtins.bool] = None,
1260
1297
  venv: typing.Optional[builtins.bool] = None,
1261
1298
  venv_options: typing.Optional[typing.Union[_VenvOptions_8ea2b226, typing.Dict[builtins.str, typing.Any]]] = None,
1262
1299
  cdk8s_version: builtins.str,
@@ -1314,6 +1351,8 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1314
1351
  :param package_name: (experimental) Package name.
1315
1352
  :param poetry_options: (experimental) Additional options to set for poetry if using poetry.
1316
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.
1355
+ :param python_exec: (experimental) Path to the python executable to use. Default: "python"
1317
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
1318
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: []
1319
1358
  :param dev_deps: (experimental) List of dev dependencies for this project. Dependencies use the format: ``<module>@<semver>`` Additional dependencies can be added via ``project.addDevDependency()``. Default: []
@@ -1327,9 +1366,10 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1327
1366
  :param projenrc_ts_options: (experimental) Options related to projenrc in TypeScript. Default: - default options
1328
1367
  :param pytest: (experimental) Include pytest tests. Default: true
1329
1368
  :param pytest_options: (experimental) pytest options. Default: - defaults
1330
- :param python_exec: (experimental) Path to the python executable to use. Default: "python"
1331
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"
1332
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
1333
1373
  :param venv: (experimental) Use venv to manage a virtual environment for installing dependencies inside. Default: - true, unless poetry is true, then false
1334
1374
  :param venv_options: (experimental) Venv options. Default: - defaults
1335
1375
  :param cdk8s_version: (experimental) Minimum version of the cdk8s to depend on. Default: "2.3.33"
@@ -1372,6 +1412,8 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1372
1412
  stale_options = _StaleOptions_929db764(**stale_options)
1373
1413
  if isinstance(poetry_options, dict):
1374
1414
  poetry_options = _PoetryPyprojectOptionsWithoutDeps_7947f35b(**poetry_options)
1415
+ if isinstance(uv_options, dict):
1416
+ uv_options = _UvOptions_49201464(**uv_options)
1375
1417
  if isinstance(projenrc_js_options, dict):
1376
1418
  projenrc_js_options = _ProjenrcOptions_179dd39f(**projenrc_js_options)
1377
1419
  if isinstance(projenrc_python_options, dict):
@@ -1423,6 +1465,8 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1423
1465
  check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
1424
1466
  check_type(argname="argument poetry_options", value=poetry_options, expected_type=type_hints["poetry_options"])
1425
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"])
1469
+ check_type(argname="argument python_exec", value=python_exec, expected_type=type_hints["python_exec"])
1426
1470
  check_type(argname="argument module_name", value=module_name, expected_type=type_hints["module_name"])
1427
1471
  check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
1428
1472
  check_type(argname="argument dev_deps", value=dev_deps, expected_type=type_hints["dev_deps"])
@@ -1436,9 +1480,10 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1436
1480
  check_type(argname="argument projenrc_ts_options", value=projenrc_ts_options, expected_type=type_hints["projenrc_ts_options"])
1437
1481
  check_type(argname="argument pytest", value=pytest, expected_type=type_hints["pytest"])
1438
1482
  check_type(argname="argument pytest_options", value=pytest_options, expected_type=type_hints["pytest_options"])
1439
- check_type(argname="argument python_exec", value=python_exec, expected_type=type_hints["python_exec"])
1440
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"])
1441
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"])
1442
1487
  check_type(argname="argument venv", value=venv, expected_type=type_hints["venv"])
1443
1488
  check_type(argname="argument venv_options", value=venv_options, expected_type=type_hints["venv_options"])
1444
1489
  check_type(argname="argument cdk8s_version", value=cdk8s_version, expected_type=type_hints["cdk8s_version"])
@@ -1532,6 +1577,10 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1532
1577
  self._values["poetry_options"] = poetry_options
1533
1578
  if setup_config is not None:
1534
1579
  self._values["setup_config"] = setup_config
1580
+ if uv_options is not None:
1581
+ self._values["uv_options"] = uv_options
1582
+ if python_exec is not None:
1583
+ self._values["python_exec"] = python_exec
1535
1584
  if deps is not None:
1536
1585
  self._values["deps"] = deps
1537
1586
  if dev_deps is not None:
@@ -1556,12 +1605,14 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
1556
1605
  self._values["pytest"] = pytest
1557
1606
  if pytest_options is not None:
1558
1607
  self._values["pytest_options"] = pytest_options
1559
- if python_exec is not None:
1560
- self._values["python_exec"] = python_exec
1561
1608
  if sample is not None:
1562
1609
  self._values["sample"] = sample
1610
+ if sample_testdir is not None:
1611
+ self._values["sample_testdir"] = sample_testdir
1563
1612
  if setuptools is not None:
1564
1613
  self._values["setuptools"] = setuptools
1614
+ if uv is not None:
1615
+ self._values["uv"] = uv
1565
1616
  if venv is not None:
1566
1617
  self._values["venv"] = venv
1567
1618
  if venv_options is not None:
@@ -2047,6 +2098,26 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
2047
2098
  result = self._values.get("setup_config")
2048
2099
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
2049
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
+
2110
+ @builtins.property
2111
+ def python_exec(self) -> typing.Optional[builtins.str]:
2112
+ '''(experimental) Path to the python executable to use.
2113
+
2114
+ :default: "python"
2115
+
2116
+ :stability: experimental
2117
+ '''
2118
+ result = self._values.get("python_exec")
2119
+ return typing.cast(typing.Optional[builtins.str], result)
2120
+
2050
2121
  @builtins.property
2051
2122
  def module_name(self) -> builtins.str:
2052
2123
  '''(experimental) Name of the python package as used in imports and filenames.
@@ -2219,26 +2290,28 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
2219
2290
  return typing.cast(typing.Optional[_PytestOptions_b400bccc], result)
2220
2291
 
2221
2292
  @builtins.property
2222
- def python_exec(self) -> typing.Optional[builtins.str]:
2223
- '''(experimental) Path to the python executable to use.
2293
+ def sample(self) -> typing.Optional[builtins.bool]:
2294
+ '''(experimental) Include sample code and test if the relevant directories don't exist.
2224
2295
 
2225
- :default: "python"
2296
+ :default: true
2226
2297
 
2227
2298
  :stability: experimental
2228
2299
  '''
2229
- result = self._values.get("python_exec")
2230
- return typing.cast(typing.Optional[builtins.str], result)
2300
+ result = self._values.get("sample")
2301
+ return typing.cast(typing.Optional[builtins.bool], result)
2231
2302
 
2232
2303
  @builtins.property
2233
- def sample(self) -> typing.Optional[builtins.bool]:
2234
- '''(experimental) Include sample code and test if the relevant directories don't exist.
2304
+ def sample_testdir(self) -> typing.Optional[builtins.str]:
2305
+ '''(experimental) Location of sample tests.
2235
2306
 
2236
- :default: true
2307
+ Typically the same directory where project tests will be located.
2308
+
2309
+ :default: "tests"
2237
2310
 
2238
2311
  :stability: experimental
2239
2312
  '''
2240
- result = self._values.get("sample")
2241
- return typing.cast(typing.Optional[builtins.bool], result)
2313
+ result = self._values.get("sample_testdir")
2314
+ return typing.cast(typing.Optional[builtins.str], result)
2242
2315
 
2243
2316
  @builtins.property
2244
2317
  def setuptools(self) -> typing.Optional[builtins.bool]:
@@ -2252,6 +2325,18 @@ class Cdk8sPythonOptions(_PythonProjectOptions_588b0f81, Cdk8sDepsCommonOptions)
2252
2325
  result = self._values.get("setuptools")
2253
2326
  return typing.cast(typing.Optional[builtins.bool], result)
2254
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
+
2255
2340
  @builtins.property
2256
2341
  def venv(self) -> typing.Optional[builtins.bool]:
2257
2342
  '''(experimental) Use venv to manage a virtual environment for installing dependencies inside.
@@ -2491,8 +2576,13 @@ class Cdk8sTypeScriptApp(
2491
2576
  k8s_minor_version: typing.Optional[jsii.Number] = None,
2492
2577
  default_release_branch: builtins.str,
2493
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,
2494
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,
2495
2584
  build_workflow: typing.Optional[builtins.bool] = None,
2585
+ build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
2496
2586
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
2497
2587
  bundler_options: typing.Optional[typing.Union[_BundlerOptions_d60b85ed, typing.Dict[builtins.str, typing.Any]]] = None,
2498
2588
  check_licenses: typing.Optional[typing.Union[_LicenseCheckerOptions_80bcd362, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -2554,6 +2644,7 @@ class Cdk8sTypeScriptApp(
2554
2644
  bugs_email: typing.Optional[builtins.str] = None,
2555
2645
  bugs_url: typing.Optional[builtins.str] = None,
2556
2646
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
2647
+ bun_version: typing.Optional[builtins.str] = None,
2557
2648
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
2558
2649
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
2559
2650
  description: typing.Optional[builtins.str] = None,
@@ -2566,9 +2657,11 @@ class Cdk8sTypeScriptApp(
2566
2657
  max_node_version: typing.Optional[builtins.str] = None,
2567
2658
  min_node_version: typing.Optional[builtins.str] = None,
2568
2659
  npm_access: typing.Optional[_NpmAccess_134fa228] = None,
2660
+ npm_provenance: typing.Optional[builtins.bool] = None,
2569
2661
  npm_registry: typing.Optional[builtins.str] = None,
2570
2662
  npm_registry_url: typing.Optional[builtins.str] = None,
2571
2663
  npm_token_secret: typing.Optional[builtins.str] = None,
2664
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
2572
2665
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
2573
2666
  package_name: typing.Optional[builtins.str] = None,
2574
2667
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -2580,9 +2673,11 @@ class Cdk8sTypeScriptApp(
2580
2673
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
2581
2674
  stability: typing.Optional[builtins.str] = None,
2582
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,
2583
2677
  jsii_release_version: typing.Optional[builtins.str] = None,
2584
2678
  major_version: typing.Optional[jsii.Number] = None,
2585
2679
  min_major_version: typing.Optional[jsii.Number] = None,
2680
+ next_version_command: typing.Optional[builtins.str] = None,
2586
2681
  npm_dist_tag: typing.Optional[builtins.str] = None,
2587
2682
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
2588
2683
  prerelease: typing.Optional[builtins.str] = None,
@@ -2590,12 +2685,14 @@ class Cdk8sTypeScriptApp(
2590
2685
  publish_tasks: typing.Optional[builtins.bool] = None,
2591
2686
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
2592
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,
2593
2689
  release_every_commit: typing.Optional[builtins.bool] = None,
2594
2690
  release_failure_issue: typing.Optional[builtins.bool] = None,
2595
2691
  release_failure_issue_label: typing.Optional[builtins.str] = None,
2596
2692
  release_schedule: typing.Optional[builtins.str] = None,
2597
2693
  release_tag_prefix: typing.Optional[builtins.str] = None,
2598
2694
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
2695
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
2599
2696
  release_workflow_name: typing.Optional[builtins.str] = None,
2600
2697
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
2601
2698
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -2625,7 +2722,7 @@ class Cdk8sTypeScriptApp(
2625
2722
  :param docgen: (experimental) Docgen by Typedoc. Default: false
2626
2723
  :param docs_directory: (experimental) Docs directory. Default: "docs"
2627
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)
2628
- :param eslint: (experimental) Setup eslint. Default: true
2725
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
2629
2726
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
2630
2727
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
2631
2728
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -2650,13 +2747,18 @@ class Cdk8sTypeScriptApp(
2650
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
2651
2748
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
2652
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
2653
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
2654
2755
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
2655
- :param build_workflow_triggers: (experimental) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
2756
+ :param build_workflow_options: (experimental) Options for PR build workflow.
2757
+ :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
2656
2758
  :param bundler_options: (experimental) Options for ``Bundler``.
2657
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
2658
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
2659
- :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
2660
2762
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
2661
2763
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
2662
2764
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -2666,14 +2768,14 @@ class Cdk8sTypeScriptApp(
2666
2768
  :param gitignore: (experimental) Additional entries to .gitignore.
2667
2769
  :param jest: (experimental) Setup jest unit tests. Default: true
2668
2770
  :param jest_options: (experimental) Jest options. Default: - default options
2669
- :param mutable_build: (experimental) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
2771
+ :param mutable_build: (deprecated) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
2670
2772
  :param npmignore: (deprecated) Additional entries to .npmignore.
2671
2773
  :param npmignore_enabled: (experimental) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. Default: true
2672
2774
  :param npm_ignore_options: (experimental) Configuration options for .npmignore file.
2673
2775
  :param package: (experimental) Defines a ``package`` task that will produce an npm tarball under the artifacts directory (e.g. ``dist``). Default: true
2674
2776
  :param prettier: (experimental) Setup prettier. Default: false
2675
2777
  :param prettier_options: (experimental) Prettier options. Default: - default options
2676
- :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: true
2778
+ :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: - true if not a subproject
2677
2779
  :param projenrc_js: (experimental) Generate (once) .projenrc.js (in JavaScript). Set to ``false`` in order to disable .projenrc.js generation. Default: - true if projenrcJson is false
2678
2780
  :param projenrc_js_options: (experimental) Options for .projenrc.js. Default: - default options
2679
2781
  :param projen_version: (experimental) Version of projen to install. Default: - Defaults to the latest version.
@@ -2683,8 +2785,8 @@ class Cdk8sTypeScriptApp(
2683
2785
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
2684
2786
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
2685
2787
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
2686
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
2687
- :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/*``.
2688
2790
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
2689
2791
  :param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
2690
2792
  :param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
@@ -2713,6 +2815,7 @@ class Cdk8sTypeScriptApp(
2713
2815
  :param bugs_email: (experimental) The email address to which issues should be reported.
2714
2816
  :param bugs_url: (experimental) The url to your project's issue tracker.
2715
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"
2716
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
2717
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: []
2718
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
@@ -2722,26 +2825,30 @@ class Cdk8sTypeScriptApp(
2722
2825
  :param keywords: (experimental) Keywords to include in ``package.json``.
2723
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"
2724
2827
  :param licensed: (experimental) Indicates if a license should be added. Default: true
2725
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
2726
- :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
2727
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``.
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
2728
2832
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
2729
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"
2730
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
2731
2836
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
2732
2837
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
2733
2838
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
2734
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: []
2735
- :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"
2736
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
2737
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.
2738
2843
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
2739
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: {}
2740
2845
  :param stability: (experimental) Package's Stability.
2741
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"
2742
2848
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
2743
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.
2744
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.
2745
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"
2746
2853
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
2747
2854
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -2749,15 +2856,17 @@ class Cdk8sTypeScriptApp(
2749
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
2750
2857
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
2751
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
2752
2860
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
2753
2861
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
2754
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"
2755
2863
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
2756
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"
2757
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: {}
2758
2867
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
2759
2868
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
2760
- :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
2761
2870
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
2762
2871
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
2763
2872
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
@@ -2811,8 +2920,13 @@ class Cdk8sTypeScriptApp(
2811
2920
  k8s_minor_version=k8s_minor_version,
2812
2921
  default_release_branch=default_release_branch,
2813
2922
  artifacts_directory=artifacts_directory,
2923
+ audit_deps=audit_deps,
2924
+ audit_deps_options=audit_deps_options,
2814
2925
  auto_approve_upgrades=auto_approve_upgrades,
2926
+ biome=biome,
2927
+ biome_options=biome_options,
2815
2928
  build_workflow=build_workflow,
2929
+ build_workflow_options=build_workflow_options,
2816
2930
  build_workflow_triggers=build_workflow_triggers,
2817
2931
  bundler_options=bundler_options,
2818
2932
  check_licenses=check_licenses,
@@ -2874,6 +2988,7 @@ class Cdk8sTypeScriptApp(
2874
2988
  bugs_email=bugs_email,
2875
2989
  bugs_url=bugs_url,
2876
2990
  bundled_deps=bundled_deps,
2991
+ bun_version=bun_version,
2877
2992
  code_artifact_options=code_artifact_options,
2878
2993
  deps=deps,
2879
2994
  description=description,
@@ -2886,9 +3001,11 @@ class Cdk8sTypeScriptApp(
2886
3001
  max_node_version=max_node_version,
2887
3002
  min_node_version=min_node_version,
2888
3003
  npm_access=npm_access,
3004
+ npm_provenance=npm_provenance,
2889
3005
  npm_registry=npm_registry,
2890
3006
  npm_registry_url=npm_registry_url,
2891
3007
  npm_token_secret=npm_token_secret,
3008
+ npm_trusted_publishing=npm_trusted_publishing,
2892
3009
  package_manager=package_manager,
2893
3010
  package_name=package_name,
2894
3011
  peer_dependency_options=peer_dependency_options,
@@ -2900,9 +3017,11 @@ class Cdk8sTypeScriptApp(
2900
3017
  scripts=scripts,
2901
3018
  stability=stability,
2902
3019
  yarn_berry_options=yarn_berry_options,
3020
+ bump_package=bump_package,
2903
3021
  jsii_release_version=jsii_release_version,
2904
3022
  major_version=major_version,
2905
3023
  min_major_version=min_major_version,
3024
+ next_version_command=next_version_command,
2906
3025
  npm_dist_tag=npm_dist_tag,
2907
3026
  post_build_steps=post_build_steps,
2908
3027
  prerelease=prerelease,
@@ -2910,12 +3029,14 @@ class Cdk8sTypeScriptApp(
2910
3029
  publish_tasks=publish_tasks,
2911
3030
  releasable_commits=releasable_commits,
2912
3031
  release_branches=release_branches,
3032
+ release_environment=release_environment,
2913
3033
  release_every_commit=release_every_commit,
2914
3034
  release_failure_issue=release_failure_issue,
2915
3035
  release_failure_issue_label=release_failure_issue_label,
2916
3036
  release_schedule=release_schedule,
2917
3037
  release_tag_prefix=release_tag_prefix,
2918
3038
  release_trigger=release_trigger,
3039
+ release_workflow_env=release_workflow_env,
2919
3040
  release_workflow_name=release_workflow_name,
2920
3041
  release_workflow_setup_steps=release_workflow_setup_steps,
2921
3042
  versionrc_options=versionrc_options,
@@ -2999,6 +3120,7 @@ class Cdk8sTypeScriptApp(
2999
3120
  "bugs_email": "bugsEmail",
3000
3121
  "bugs_url": "bugsUrl",
3001
3122
  "bundled_deps": "bundledDeps",
3123
+ "bun_version": "bunVersion",
3002
3124
  "code_artifact_options": "codeArtifactOptions",
3003
3125
  "deps": "deps",
3004
3126
  "description": "description",
@@ -3011,9 +3133,11 @@ class Cdk8sTypeScriptApp(
3011
3133
  "max_node_version": "maxNodeVersion",
3012
3134
  "min_node_version": "minNodeVersion",
3013
3135
  "npm_access": "npmAccess",
3136
+ "npm_provenance": "npmProvenance",
3014
3137
  "npm_registry": "npmRegistry",
3015
3138
  "npm_registry_url": "npmRegistryUrl",
3016
3139
  "npm_token_secret": "npmTokenSecret",
3140
+ "npm_trusted_publishing": "npmTrustedPublishing",
3017
3141
  "package_manager": "packageManager",
3018
3142
  "package_name": "packageName",
3019
3143
  "peer_dependency_options": "peerDependencyOptions",
@@ -3025,9 +3149,11 @@ class Cdk8sTypeScriptApp(
3025
3149
  "scripts": "scripts",
3026
3150
  "stability": "stability",
3027
3151
  "yarn_berry_options": "yarnBerryOptions",
3152
+ "bump_package": "bumpPackage",
3028
3153
  "jsii_release_version": "jsiiReleaseVersion",
3029
3154
  "major_version": "majorVersion",
3030
3155
  "min_major_version": "minMajorVersion",
3156
+ "next_version_command": "nextVersionCommand",
3031
3157
  "npm_dist_tag": "npmDistTag",
3032
3158
  "post_build_steps": "postBuildSteps",
3033
3159
  "prerelease": "prerelease",
@@ -3035,12 +3161,14 @@ class Cdk8sTypeScriptApp(
3035
3161
  "publish_tasks": "publishTasks",
3036
3162
  "releasable_commits": "releasableCommits",
3037
3163
  "release_branches": "releaseBranches",
3164
+ "release_environment": "releaseEnvironment",
3038
3165
  "release_every_commit": "releaseEveryCommit",
3039
3166
  "release_failure_issue": "releaseFailureIssue",
3040
3167
  "release_failure_issue_label": "releaseFailureIssueLabel",
3041
3168
  "release_schedule": "releaseSchedule",
3042
3169
  "release_tag_prefix": "releaseTagPrefix",
3043
3170
  "release_trigger": "releaseTrigger",
3171
+ "release_workflow_env": "releaseWorkflowEnv",
3044
3172
  "release_workflow_name": "releaseWorkflowName",
3045
3173
  "release_workflow_setup_steps": "releaseWorkflowSetupSteps",
3046
3174
  "versionrc_options": "versionrcOptions",
@@ -3049,8 +3177,13 @@ class Cdk8sTypeScriptApp(
3049
3177
  "workflow_runs_on_group": "workflowRunsOnGroup",
3050
3178
  "default_release_branch": "defaultReleaseBranch",
3051
3179
  "artifacts_directory": "artifactsDirectory",
3180
+ "audit_deps": "auditDeps",
3181
+ "audit_deps_options": "auditDepsOptions",
3052
3182
  "auto_approve_upgrades": "autoApproveUpgrades",
3183
+ "biome": "biome",
3184
+ "biome_options": "biomeOptions",
3053
3185
  "build_workflow": "buildWorkflow",
3186
+ "build_workflow_options": "buildWorkflowOptions",
3054
3187
  "build_workflow_triggers": "buildWorkflowTriggers",
3055
3188
  "bundler_options": "bundlerOptions",
3056
3189
  "check_licenses": "checkLicenses",
@@ -3165,6 +3298,7 @@ class Cdk8sTypeScriptAppOptions(
3165
3298
  bugs_email: typing.Optional[builtins.str] = None,
3166
3299
  bugs_url: typing.Optional[builtins.str] = None,
3167
3300
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
3301
+ bun_version: typing.Optional[builtins.str] = None,
3168
3302
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
3169
3303
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
3170
3304
  description: typing.Optional[builtins.str] = None,
@@ -3177,9 +3311,11 @@ class Cdk8sTypeScriptAppOptions(
3177
3311
  max_node_version: typing.Optional[builtins.str] = None,
3178
3312
  min_node_version: typing.Optional[builtins.str] = None,
3179
3313
  npm_access: typing.Optional[_NpmAccess_134fa228] = None,
3314
+ npm_provenance: typing.Optional[builtins.bool] = None,
3180
3315
  npm_registry: typing.Optional[builtins.str] = None,
3181
3316
  npm_registry_url: typing.Optional[builtins.str] = None,
3182
3317
  npm_token_secret: typing.Optional[builtins.str] = None,
3318
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
3183
3319
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
3184
3320
  package_name: typing.Optional[builtins.str] = None,
3185
3321
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3191,9 +3327,11 @@ class Cdk8sTypeScriptAppOptions(
3191
3327
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
3192
3328
  stability: typing.Optional[builtins.str] = None,
3193
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,
3194
3331
  jsii_release_version: typing.Optional[builtins.str] = None,
3195
3332
  major_version: typing.Optional[jsii.Number] = None,
3196
3333
  min_major_version: typing.Optional[jsii.Number] = None,
3334
+ next_version_command: typing.Optional[builtins.str] = None,
3197
3335
  npm_dist_tag: typing.Optional[builtins.str] = None,
3198
3336
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
3199
3337
  prerelease: typing.Optional[builtins.str] = None,
@@ -3201,12 +3339,14 @@ class Cdk8sTypeScriptAppOptions(
3201
3339
  publish_tasks: typing.Optional[builtins.bool] = None,
3202
3340
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
3203
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,
3204
3343
  release_every_commit: typing.Optional[builtins.bool] = None,
3205
3344
  release_failure_issue: typing.Optional[builtins.bool] = None,
3206
3345
  release_failure_issue_label: typing.Optional[builtins.str] = None,
3207
3346
  release_schedule: typing.Optional[builtins.str] = None,
3208
3347
  release_tag_prefix: typing.Optional[builtins.str] = None,
3209
3348
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
3349
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
3210
3350
  release_workflow_name: typing.Optional[builtins.str] = None,
3211
3351
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
3212
3352
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -3215,8 +3355,13 @@ class Cdk8sTypeScriptAppOptions(
3215
3355
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
3216
3356
  default_release_branch: builtins.str,
3217
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,
3218
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,
3219
3363
  build_workflow: typing.Optional[builtins.bool] = None,
3364
+ build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
3220
3365
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
3221
3366
  bundler_options: typing.Optional[typing.Union[_BundlerOptions_d60b85ed, typing.Dict[builtins.str, typing.Any]]] = None,
3222
3367
  check_licenses: typing.Optional[typing.Union[_LicenseCheckerOptions_80bcd362, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -3324,6 +3469,7 @@ class Cdk8sTypeScriptAppOptions(
3324
3469
  :param bugs_email: (experimental) The email address to which issues should be reported.
3325
3470
  :param bugs_url: (experimental) The url to your project's issue tracker.
3326
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"
3327
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
3328
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: []
3329
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
@@ -3333,26 +3479,30 @@ class Cdk8sTypeScriptAppOptions(
3333
3479
  :param keywords: (experimental) Keywords to include in ``package.json``.
3334
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"
3335
3481
  :param licensed: (experimental) Indicates if a license should be added. Default: true
3336
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
3337
- :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
3338
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``.
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
3339
3486
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
3340
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"
3341
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
3342
3490
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
3343
3491
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
3344
3492
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
3345
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: []
3346
- :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"
3347
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
3348
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.
3349
3497
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
3350
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: {}
3351
3499
  :param stability: (experimental) Package's Stability.
3352
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"
3353
3502
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
3354
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.
3355
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.
3356
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"
3357
3507
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
3358
3508
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -3360,27 +3510,34 @@ class Cdk8sTypeScriptAppOptions(
3360
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
3361
3511
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
3362
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
3363
3514
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
3364
3515
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
3365
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"
3366
3517
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
3367
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"
3368
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: {}
3369
3521
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
3370
3522
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
3371
- :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
3372
3524
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
3373
3525
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
3374
3526
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
3375
3527
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
3376
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
3377
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
3378
3534
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
3379
- :param build_workflow_triggers: (experimental) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
3535
+ :param build_workflow_options: (experimental) Options for PR build workflow.
3536
+ :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
3380
3537
  :param bundler_options: (experimental) Options for ``Bundler``.
3381
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
3382
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
3383
- :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
3384
3541
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
3385
3542
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
3386
3543
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -3390,14 +3547,14 @@ class Cdk8sTypeScriptAppOptions(
3390
3547
  :param gitignore: (experimental) Additional entries to .gitignore.
3391
3548
  :param jest: (experimental) Setup jest unit tests. Default: true
3392
3549
  :param jest_options: (experimental) Jest options. Default: - default options
3393
- :param mutable_build: (experimental) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
3550
+ :param mutable_build: (deprecated) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
3394
3551
  :param npmignore: (deprecated) Additional entries to .npmignore.
3395
3552
  :param npmignore_enabled: (experimental) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. Default: true
3396
3553
  :param npm_ignore_options: (experimental) Configuration options for .npmignore file.
3397
3554
  :param package: (experimental) Defines a ``package`` task that will produce an npm tarball under the artifacts directory (e.g. ``dist``). Default: true
3398
3555
  :param prettier: (experimental) Setup prettier. Default: false
3399
3556
  :param prettier_options: (experimental) Prettier options. Default: - default options
3400
- :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: true
3557
+ :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: - true if not a subproject
3401
3558
  :param projenrc_js: (experimental) Generate (once) .projenrc.js (in JavaScript). Set to ``false`` in order to disable .projenrc.js generation. Default: - true if projenrcJson is false
3402
3559
  :param projenrc_js_options: (experimental) Options for .projenrc.js. Default: - default options
3403
3560
  :param projen_version: (experimental) Version of projen to install. Default: - Defaults to the latest version.
@@ -3407,15 +3564,15 @@ class Cdk8sTypeScriptAppOptions(
3407
3564
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
3408
3565
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
3409
3566
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
3410
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
3411
- :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/*``.
3412
3569
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
3413
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
3414
3571
  :param disable_tsconfig_dev: (experimental) Do not generate a ``tsconfig.dev.json`` file. Default: false
3415
3572
  :param docgen: (experimental) Docgen by Typedoc. Default: false
3416
3573
  :param docs_directory: (experimental) Docs directory. Default: "docs"
3417
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)
3418
- :param eslint: (experimental) Setup eslint. Default: true
3575
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
3419
3576
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
3420
3577
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
3421
3578
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -3475,6 +3632,12 @@ class Cdk8sTypeScriptAppOptions(
3475
3632
  yarn_berry_options = _YarnBerryOptions_b6942539(**yarn_berry_options)
3476
3633
  if isinstance(workflow_runs_on_group, dict):
3477
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)
3639
+ if isinstance(build_workflow_options, dict):
3640
+ build_workflow_options = _BuildWorkflowOptions_b756f97f(**build_workflow_options)
3478
3641
  if isinstance(build_workflow_triggers, dict):
3479
3642
  build_workflow_triggers = _Triggers_e9ae7617(**build_workflow_triggers)
3480
3643
  if isinstance(bundler_options, dict):
@@ -3546,6 +3709,7 @@ class Cdk8sTypeScriptAppOptions(
3546
3709
  check_type(argname="argument bugs_email", value=bugs_email, expected_type=type_hints["bugs_email"])
3547
3710
  check_type(argname="argument bugs_url", value=bugs_url, expected_type=type_hints["bugs_url"])
3548
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"])
3549
3713
  check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
3550
3714
  check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
3551
3715
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
@@ -3558,9 +3722,11 @@ class Cdk8sTypeScriptAppOptions(
3558
3722
  check_type(argname="argument max_node_version", value=max_node_version, expected_type=type_hints["max_node_version"])
3559
3723
  check_type(argname="argument min_node_version", value=min_node_version, expected_type=type_hints["min_node_version"])
3560
3724
  check_type(argname="argument npm_access", value=npm_access, expected_type=type_hints["npm_access"])
3725
+ check_type(argname="argument npm_provenance", value=npm_provenance, expected_type=type_hints["npm_provenance"])
3561
3726
  check_type(argname="argument npm_registry", value=npm_registry, expected_type=type_hints["npm_registry"])
3562
3727
  check_type(argname="argument npm_registry_url", value=npm_registry_url, expected_type=type_hints["npm_registry_url"])
3563
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"])
3564
3730
  check_type(argname="argument package_manager", value=package_manager, expected_type=type_hints["package_manager"])
3565
3731
  check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
3566
3732
  check_type(argname="argument peer_dependency_options", value=peer_dependency_options, expected_type=type_hints["peer_dependency_options"])
@@ -3572,9 +3738,11 @@ class Cdk8sTypeScriptAppOptions(
3572
3738
  check_type(argname="argument scripts", value=scripts, expected_type=type_hints["scripts"])
3573
3739
  check_type(argname="argument stability", value=stability, expected_type=type_hints["stability"])
3574
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"])
3575
3742
  check_type(argname="argument jsii_release_version", value=jsii_release_version, expected_type=type_hints["jsii_release_version"])
3576
3743
  check_type(argname="argument major_version", value=major_version, expected_type=type_hints["major_version"])
3577
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"])
3578
3746
  check_type(argname="argument npm_dist_tag", value=npm_dist_tag, expected_type=type_hints["npm_dist_tag"])
3579
3747
  check_type(argname="argument post_build_steps", value=post_build_steps, expected_type=type_hints["post_build_steps"])
3580
3748
  check_type(argname="argument prerelease", value=prerelease, expected_type=type_hints["prerelease"])
@@ -3582,12 +3750,14 @@ class Cdk8sTypeScriptAppOptions(
3582
3750
  check_type(argname="argument publish_tasks", value=publish_tasks, expected_type=type_hints["publish_tasks"])
3583
3751
  check_type(argname="argument releasable_commits", value=releasable_commits, expected_type=type_hints["releasable_commits"])
3584
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"])
3585
3754
  check_type(argname="argument release_every_commit", value=release_every_commit, expected_type=type_hints["release_every_commit"])
3586
3755
  check_type(argname="argument release_failure_issue", value=release_failure_issue, expected_type=type_hints["release_failure_issue"])
3587
3756
  check_type(argname="argument release_failure_issue_label", value=release_failure_issue_label, expected_type=type_hints["release_failure_issue_label"])
3588
3757
  check_type(argname="argument release_schedule", value=release_schedule, expected_type=type_hints["release_schedule"])
3589
3758
  check_type(argname="argument release_tag_prefix", value=release_tag_prefix, expected_type=type_hints["release_tag_prefix"])
3590
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"])
3591
3761
  check_type(argname="argument release_workflow_name", value=release_workflow_name, expected_type=type_hints["release_workflow_name"])
3592
3762
  check_type(argname="argument release_workflow_setup_steps", value=release_workflow_setup_steps, expected_type=type_hints["release_workflow_setup_steps"])
3593
3763
  check_type(argname="argument versionrc_options", value=versionrc_options, expected_type=type_hints["versionrc_options"])
@@ -3596,8 +3766,13 @@ class Cdk8sTypeScriptAppOptions(
3596
3766
  check_type(argname="argument workflow_runs_on_group", value=workflow_runs_on_group, expected_type=type_hints["workflow_runs_on_group"])
3597
3767
  check_type(argname="argument default_release_branch", value=default_release_branch, expected_type=type_hints["default_release_branch"])
3598
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"])
3599
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"])
3600
3774
  check_type(argname="argument build_workflow", value=build_workflow, expected_type=type_hints["build_workflow"])
3775
+ check_type(argname="argument build_workflow_options", value=build_workflow_options, expected_type=type_hints["build_workflow_options"])
3601
3776
  check_type(argname="argument build_workflow_triggers", value=build_workflow_triggers, expected_type=type_hints["build_workflow_triggers"])
3602
3777
  check_type(argname="argument bundler_options", value=bundler_options, expected_type=type_hints["bundler_options"])
3603
3778
  check_type(argname="argument check_licenses", value=check_licenses, expected_type=type_hints["check_licenses"])
@@ -3745,6 +3920,8 @@ class Cdk8sTypeScriptAppOptions(
3745
3920
  self._values["bugs_url"] = bugs_url
3746
3921
  if bundled_deps is not None:
3747
3922
  self._values["bundled_deps"] = bundled_deps
3923
+ if bun_version is not None:
3924
+ self._values["bun_version"] = bun_version
3748
3925
  if code_artifact_options is not None:
3749
3926
  self._values["code_artifact_options"] = code_artifact_options
3750
3927
  if deps is not None:
@@ -3769,12 +3946,16 @@ class Cdk8sTypeScriptAppOptions(
3769
3946
  self._values["min_node_version"] = min_node_version
3770
3947
  if npm_access is not None:
3771
3948
  self._values["npm_access"] = npm_access
3949
+ if npm_provenance is not None:
3950
+ self._values["npm_provenance"] = npm_provenance
3772
3951
  if npm_registry is not None:
3773
3952
  self._values["npm_registry"] = npm_registry
3774
3953
  if npm_registry_url is not None:
3775
3954
  self._values["npm_registry_url"] = npm_registry_url
3776
3955
  if npm_token_secret is not None:
3777
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
3778
3959
  if package_manager is not None:
3779
3960
  self._values["package_manager"] = package_manager
3780
3961
  if package_name is not None:
@@ -3797,12 +3978,16 @@ class Cdk8sTypeScriptAppOptions(
3797
3978
  self._values["stability"] = stability
3798
3979
  if yarn_berry_options is not None:
3799
3980
  self._values["yarn_berry_options"] = yarn_berry_options
3981
+ if bump_package is not None:
3982
+ self._values["bump_package"] = bump_package
3800
3983
  if jsii_release_version is not None:
3801
3984
  self._values["jsii_release_version"] = jsii_release_version
3802
3985
  if major_version is not None:
3803
3986
  self._values["major_version"] = major_version
3804
3987
  if min_major_version is not None:
3805
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
3806
3991
  if npm_dist_tag is not None:
3807
3992
  self._values["npm_dist_tag"] = npm_dist_tag
3808
3993
  if post_build_steps is not None:
@@ -3817,6 +4002,8 @@ class Cdk8sTypeScriptAppOptions(
3817
4002
  self._values["releasable_commits"] = releasable_commits
3818
4003
  if release_branches is not None:
3819
4004
  self._values["release_branches"] = release_branches
4005
+ if release_environment is not None:
4006
+ self._values["release_environment"] = release_environment
3820
4007
  if release_every_commit is not None:
3821
4008
  self._values["release_every_commit"] = release_every_commit
3822
4009
  if release_failure_issue is not None:
@@ -3829,6 +4016,8 @@ class Cdk8sTypeScriptAppOptions(
3829
4016
  self._values["release_tag_prefix"] = release_tag_prefix
3830
4017
  if release_trigger is not None:
3831
4018
  self._values["release_trigger"] = release_trigger
4019
+ if release_workflow_env is not None:
4020
+ self._values["release_workflow_env"] = release_workflow_env
3832
4021
  if release_workflow_name is not None:
3833
4022
  self._values["release_workflow_name"] = release_workflow_name
3834
4023
  if release_workflow_setup_steps is not None:
@@ -3843,10 +4032,20 @@ class Cdk8sTypeScriptAppOptions(
3843
4032
  self._values["workflow_runs_on_group"] = workflow_runs_on_group
3844
4033
  if artifacts_directory is not None:
3845
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
3846
4039
  if auto_approve_upgrades is not None:
3847
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
3848
4045
  if build_workflow is not None:
3849
4046
  self._values["build_workflow"] = build_workflow
4047
+ if build_workflow_options is not None:
4048
+ self._values["build_workflow_options"] = build_workflow_options
3850
4049
  if build_workflow_triggers is not None:
3851
4050
  self._values["build_workflow_triggers"] = build_workflow_triggers
3852
4051
  if bundler_options is not None:
@@ -4442,6 +4641,17 @@ class Cdk8sTypeScriptAppOptions(
4442
4641
  result = self._values.get("bundled_deps")
4443
4642
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
4444
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
+
4445
4655
  @builtins.property
4446
4656
  def code_artifact_options(self) -> typing.Optional[_CodeArtifactOptions_e4782b3e]:
4447
4657
  '''(experimental) Options for npm packages using AWS CodeArtifact.
@@ -4576,9 +4786,15 @@ class Cdk8sTypeScriptAppOptions(
4576
4786
 
4577
4787
  @builtins.property
4578
4788
  def max_node_version(self) -> typing.Optional[builtins.str]:
4579
- '''(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.
4580
4790
 
4581
- :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
4582
4798
 
4583
4799
  :stability: experimental
4584
4800
  '''
@@ -4587,9 +4803,19 @@ class Cdk8sTypeScriptAppOptions(
4587
4803
 
4588
4804
  @builtins.property
4589
4805
  def min_node_version(self) -> typing.Optional[builtins.str]:
4590
- '''(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.
4810
+
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.
4591
4815
 
4592
- :default: - no "engines" specified
4816
+ To change the node version of your CI/CD workflows, use ``workflowNodeVersion``.
4817
+
4818
+ :default: - no minimum version is enforced
4593
4819
 
4594
4820
  :stability: experimental
4595
4821
  '''
@@ -4611,6 +4837,24 @@ class Cdk8sTypeScriptAppOptions(
4611
4837
  result = self._values.get("npm_access")
4612
4838
  return typing.cast(typing.Optional[_NpmAccess_134fa228], result)
4613
4839
 
4840
+ @builtins.property
4841
+ def npm_provenance(self) -> typing.Optional[builtins.bool]:
4842
+ '''(experimental) Should provenance statements be generated when the package is published.
4843
+
4844
+ A supported package manager is required to publish a package with npm provenance statements and
4845
+ you will need to use a supported CI/CD provider.
4846
+
4847
+ Note that the projen ``Release`` and ``Publisher`` components are using ``publib`` to publish packages,
4848
+ which is using npm internally and supports provenance statements independently of the package manager used.
4849
+
4850
+ :default: - true for public packages, false otherwise
4851
+
4852
+ :see: https://docs.npmjs.com/generating-provenance-statements
4853
+ :stability: experimental
4854
+ '''
4855
+ result = self._values.get("npm_provenance")
4856
+ return typing.cast(typing.Optional[builtins.bool], result)
4857
+
4614
4858
  @builtins.property
4615
4859
  def npm_registry(self) -> typing.Optional[builtins.str]:
4616
4860
  '''(deprecated) The host name of the npm registry to publish to.
@@ -4648,6 +4892,17 @@ class Cdk8sTypeScriptAppOptions(
4648
4892
  result = self._values.get("npm_token_secret")
4649
4893
  return typing.cast(typing.Optional[builtins.str], result)
4650
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
+
4651
4906
  @builtins.property
4652
4907
  def package_manager(self) -> typing.Optional[_NodePackageManager_3eb53bf6]:
4653
4908
  '''(experimental) The Node Package Manager used to execute scripts.
@@ -4711,7 +4966,7 @@ class Cdk8sTypeScriptAppOptions(
4711
4966
  def pnpm_version(self) -> typing.Optional[builtins.str]:
4712
4967
  '''(experimental) The version of PNPM to use if using PNPM as a package manager.
4713
4968
 
4714
- :default: "7"
4969
+ :default: "9"
4715
4970
 
4716
4971
  :stability: experimental
4717
4972
  '''
@@ -4788,6 +5043,19 @@ class Cdk8sTypeScriptAppOptions(
4788
5043
  result = self._values.get("yarn_berry_options")
4789
5044
  return typing.cast(typing.Optional[_YarnBerryOptions_b6942539], result)
4790
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
+
4791
5059
  @builtins.property
4792
5060
  def jsii_release_version(self) -> typing.Optional[builtins.str]:
4793
5061
  '''(experimental) Version requirement of ``publib`` which is used to publish modules to npm.
@@ -4829,6 +5097,36 @@ class Cdk8sTypeScriptAppOptions(
4829
5097
  result = self._values.get("min_major_version")
4830
5098
  return typing.cast(typing.Optional[jsii.Number], result)
4831
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
+
4832
5130
  @builtins.property
4833
5131
  def npm_dist_tag(self) -> typing.Optional[builtins.str]:
4834
5132
  '''(experimental) The npmDistTag to use when publishing from the default branch.
@@ -4924,6 +5222,23 @@ class Cdk8sTypeScriptAppOptions(
4924
5222
  result = self._values.get("release_branches")
4925
5223
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, _BranchOptions_13663d08]], result)
4926
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
+
4927
5242
  @builtins.property
4928
5243
  def release_every_commit(self) -> typing.Optional[builtins.bool]:
4929
5244
  '''(deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``.
@@ -5001,6 +5316,19 @@ class Cdk8sTypeScriptAppOptions(
5001
5316
  result = self._values.get("release_trigger")
5002
5317
  return typing.cast(typing.Optional[_ReleaseTrigger_e4dc221f], result)
5003
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
+
5004
5332
  @builtins.property
5005
5333
  def release_workflow_name(self) -> typing.Optional[builtins.str]:
5006
5334
  '''(experimental) The name of the default release workflow.
@@ -5027,7 +5355,7 @@ class Cdk8sTypeScriptAppOptions(
5027
5355
  def versionrc_options(
5028
5356
  self,
5029
5357
  ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
5030
- '''(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.
5031
5359
 
5032
5360
  Given values either append to default configuration or overwrite values in it.
5033
5361
 
@@ -5096,6 +5424,32 @@ class Cdk8sTypeScriptAppOptions(
5096
5424
  result = self._values.get("artifacts_directory")
5097
5425
  return typing.cast(typing.Optional[builtins.str], result)
5098
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
+
5099
5453
  @builtins.property
5100
5454
  def auto_approve_upgrades(self) -> typing.Optional[builtins.bool]:
5101
5455
  '''(experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
@@ -5109,6 +5463,28 @@ class Cdk8sTypeScriptAppOptions(
5109
5463
  result = self._values.get("auto_approve_upgrades")
5110
5464
  return typing.cast(typing.Optional[builtins.bool], result)
5111
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
+
5112
5488
  @builtins.property
5113
5489
  def build_workflow(self) -> typing.Optional[builtins.bool]:
5114
5490
  '''(experimental) Define a GitHub workflow for building PRs.
@@ -5120,13 +5496,24 @@ class Cdk8sTypeScriptAppOptions(
5120
5496
  result = self._values.get("build_workflow")
5121
5497
  return typing.cast(typing.Optional[builtins.bool], result)
5122
5498
 
5499
+ @builtins.property
5500
+ def build_workflow_options(self) -> typing.Optional[_BuildWorkflowOptions_b756f97f]:
5501
+ '''(experimental) Options for PR build workflow.
5502
+
5503
+ :stability: experimental
5504
+ '''
5505
+ result = self._values.get("build_workflow_options")
5506
+ return typing.cast(typing.Optional[_BuildWorkflowOptions_b756f97f], result)
5507
+
5123
5508
  @builtins.property
5124
5509
  def build_workflow_triggers(self) -> typing.Optional[_Triggers_e9ae7617]:
5125
- '''(experimental) Build workflow triggers.
5510
+ '''(deprecated) Build workflow triggers.
5126
5511
 
5127
5512
  :default: "{ pullRequest: {}, workflowDispatch: {} }"
5128
5513
 
5129
- :stability: experimental
5514
+ :deprecated: - Use ``buildWorkflowOptions.workflowTriggers``
5515
+
5516
+ :stability: deprecated
5130
5517
  '''
5131
5518
  result = self._values.get("build_workflow_triggers")
5132
5519
  return typing.cast(typing.Optional[_Triggers_e9ae7617], result)
@@ -5155,7 +5542,7 @@ class Cdk8sTypeScriptAppOptions(
5155
5542
 
5156
5543
  @builtins.property
5157
5544
  def code_cov(self) -> typing.Optional[builtins.bool]:
5158
- '''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with ``@codeCovTokenSecret``.
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``.
5159
5546
 
5160
5547
  :default: false
5161
5548
 
@@ -5166,9 +5553,9 @@ class Cdk8sTypeScriptAppOptions(
5166
5553
 
5167
5554
  @builtins.property
5168
5555
  def code_cov_token_secret(self) -> typing.Optional[builtins.str]:
5169
- '''(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.
5170
5557
 
5171
- :default: - if this option is not specified, only public repositories are supported
5558
+ :default: - OIDC auth is used
5172
5559
 
5173
5560
  :stability: experimental
5174
5561
  '''
@@ -5280,7 +5667,7 @@ class Cdk8sTypeScriptAppOptions(
5280
5667
 
5281
5668
  @builtins.property
5282
5669
  def mutable_build(self) -> typing.Optional[builtins.bool]:
5283
- '''(experimental) Automatically update files modified during builds to pull-request branches.
5670
+ '''(deprecated) Automatically update files modified during builds to pull-request branches.
5284
5671
 
5285
5672
  This means
5286
5673
  that any files synthesized by projen or e.g. test snapshots will always be up-to-date
@@ -5290,7 +5677,9 @@ class Cdk8sTypeScriptAppOptions(
5290
5677
 
5291
5678
  :default: true
5292
5679
 
5293
- :stability: experimental
5680
+ :deprecated: - Use ``buildWorkflowOptions.mutableBuild``
5681
+
5682
+ :stability: deprecated
5294
5683
  '''
5295
5684
  result = self._values.get("mutable_build")
5296
5685
  return typing.cast(typing.Optional[builtins.bool], result)
@@ -5363,7 +5752,7 @@ class Cdk8sTypeScriptAppOptions(
5363
5752
  def projen_dev_dependency(self) -> typing.Optional[builtins.bool]:
5364
5753
  '''(experimental) Indicates of "projen" should be installed as a devDependency.
5365
5754
 
5366
- :default: true
5755
+ :default: - true if not a subproject
5367
5756
 
5368
5757
  :stability: experimental
5369
5758
  '''
@@ -5479,7 +5868,7 @@ class Cdk8sTypeScriptAppOptions(
5479
5868
  def workflow_git_identity(self) -> typing.Optional[_GitIdentity_6effc3de]:
5480
5869
  '''(experimental) The git identity to use in workflows.
5481
5870
 
5482
- :default: - GitHub Actions
5871
+ :default: - default GitHub Actions user
5483
5872
 
5484
5873
  :stability: experimental
5485
5874
  '''
@@ -5488,9 +5877,11 @@ class Cdk8sTypeScriptAppOptions(
5488
5877
 
5489
5878
  @builtins.property
5490
5879
  def workflow_node_version(self) -> typing.Optional[builtins.str]:
5491
- '''(experimental) The node version to use in GitHub workflows.
5880
+ '''(experimental) The node version used in GitHub Actions workflows.
5492
5881
 
5493
- :default: - same as ``minNodeVersion``
5882
+ Always use this option if your GitHub Actions workflows require a specific to run.
5883
+
5884
+ :default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
5494
5885
 
5495
5886
  :stability: experimental
5496
5887
  '''
@@ -5567,7 +5958,7 @@ class Cdk8sTypeScriptAppOptions(
5567
5958
  def eslint(self) -> typing.Optional[builtins.bool]:
5568
5959
  '''(experimental) Setup eslint.
5569
5960
 
5570
- :default: true
5961
+ :default: - true, unless biome is enabled
5571
5962
 
5572
5963
  :stability: experimental
5573
5964
  '''
@@ -5951,8 +6342,13 @@ class ConstructLibraryCdk8s(
5951
6342
  typescript_version: typing.Optional[builtins.str] = None,
5952
6343
  default_release_branch: builtins.str,
5953
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,
5954
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,
5955
6350
  build_workflow: typing.Optional[builtins.bool] = None,
6351
+ build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
5956
6352
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
5957
6353
  bundler_options: typing.Optional[typing.Union[_BundlerOptions_d60b85ed, typing.Dict[builtins.str, typing.Any]]] = None,
5958
6354
  check_licenses: typing.Optional[typing.Union[_LicenseCheckerOptions_80bcd362, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6014,6 +6410,7 @@ class ConstructLibraryCdk8s(
6014
6410
  bugs_email: typing.Optional[builtins.str] = None,
6015
6411
  bugs_url: typing.Optional[builtins.str] = None,
6016
6412
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
6413
+ bun_version: typing.Optional[builtins.str] = None,
6017
6414
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
6018
6415
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
6019
6416
  description: typing.Optional[builtins.str] = None,
@@ -6026,9 +6423,11 @@ class ConstructLibraryCdk8s(
6026
6423
  max_node_version: typing.Optional[builtins.str] = None,
6027
6424
  min_node_version: typing.Optional[builtins.str] = None,
6028
6425
  npm_access: typing.Optional[_NpmAccess_134fa228] = None,
6426
+ npm_provenance: typing.Optional[builtins.bool] = None,
6029
6427
  npm_registry: typing.Optional[builtins.str] = None,
6030
6428
  npm_registry_url: typing.Optional[builtins.str] = None,
6031
6429
  npm_token_secret: typing.Optional[builtins.str] = None,
6430
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
6032
6431
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
6033
6432
  package_name: typing.Optional[builtins.str] = None,
6034
6433
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6040,9 +6439,11 @@ class ConstructLibraryCdk8s(
6040
6439
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6041
6440
  stability: typing.Optional[builtins.str] = None,
6042
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,
6043
6443
  jsii_release_version: typing.Optional[builtins.str] = None,
6044
6444
  major_version: typing.Optional[jsii.Number] = None,
6045
6445
  min_major_version: typing.Optional[jsii.Number] = None,
6446
+ next_version_command: typing.Optional[builtins.str] = None,
6046
6447
  npm_dist_tag: typing.Optional[builtins.str] = None,
6047
6448
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6048
6449
  prerelease: typing.Optional[builtins.str] = None,
@@ -6050,12 +6451,14 @@ class ConstructLibraryCdk8s(
6050
6451
  publish_tasks: typing.Optional[builtins.bool] = None,
6051
6452
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
6052
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,
6053
6455
  release_every_commit: typing.Optional[builtins.bool] = None,
6054
6456
  release_failure_issue: typing.Optional[builtins.bool] = None,
6055
6457
  release_failure_issue_label: typing.Optional[builtins.str] = None,
6056
6458
  release_schedule: typing.Optional[builtins.str] = None,
6057
6459
  release_tag_prefix: typing.Optional[builtins.str] = None,
6058
6460
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
6461
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6059
6462
  release_workflow_name: typing.Optional[builtins.str] = None,
6060
6463
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6061
6464
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -6092,7 +6495,7 @@ class ConstructLibraryCdk8s(
6092
6495
  :param docgen_file_path: (experimental) File path for generated docs. Default: "API.md"
6093
6496
  :param dotnet:
6094
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.
6095
- :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"
6096
6499
  :param publish_to_go: (experimental) Publish Go bindings to a git repository. Default: - no publishing
6097
6500
  :param publish_to_maven: (experimental) Publish to maven. Default: - no publishing
6098
6501
  :param publish_to_nuget: (experimental) Publish to NuGet. Default: - no publishing
@@ -6104,7 +6507,7 @@ class ConstructLibraryCdk8s(
6104
6507
  :param docgen: (experimental) Docgen by Typedoc. Default: false
6105
6508
  :param docs_directory: (experimental) Docs directory. Default: "docs"
6106
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)
6107
- :param eslint: (experimental) Setup eslint. Default: true
6510
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
6108
6511
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
6109
6512
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
6110
6513
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -6119,13 +6522,18 @@ class ConstructLibraryCdk8s(
6119
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"
6120
6523
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
6121
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
6122
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
6123
6530
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
6124
- :param build_workflow_triggers: (experimental) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
6531
+ :param build_workflow_options: (experimental) Options for PR build workflow.
6532
+ :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
6125
6533
  :param bundler_options: (experimental) Options for ``Bundler``.
6126
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
6127
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
6128
- :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
6129
6537
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
6130
6538
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
6131
6539
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -6135,14 +6543,14 @@ class ConstructLibraryCdk8s(
6135
6543
  :param gitignore: (experimental) Additional entries to .gitignore.
6136
6544
  :param jest: (experimental) Setup jest unit tests. Default: true
6137
6545
  :param jest_options: (experimental) Jest options. Default: - default options
6138
- :param mutable_build: (experimental) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
6546
+ :param mutable_build: (deprecated) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
6139
6547
  :param npmignore: (deprecated) Additional entries to .npmignore.
6140
6548
  :param npmignore_enabled: (experimental) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. Default: true
6141
6549
  :param npm_ignore_options: (experimental) Configuration options for .npmignore file.
6142
6550
  :param package: (experimental) Defines a ``package`` task that will produce an npm tarball under the artifacts directory (e.g. ``dist``). Default: true
6143
6551
  :param prettier: (experimental) Setup prettier. Default: false
6144
6552
  :param prettier_options: (experimental) Prettier options. Default: - default options
6145
- :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: true
6553
+ :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: - true if not a subproject
6146
6554
  :param projenrc_js: (experimental) Generate (once) .projenrc.js (in JavaScript). Set to ``false`` in order to disable .projenrc.js generation. Default: - true if projenrcJson is false
6147
6555
  :param projenrc_js_options: (experimental) Options for .projenrc.js. Default: - default options
6148
6556
  :param projen_version: (experimental) Version of projen to install. Default: - Defaults to the latest version.
@@ -6152,8 +6560,8 @@ class ConstructLibraryCdk8s(
6152
6560
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
6153
6561
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
6154
6562
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
6155
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
6156
- :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/*``.
6157
6565
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
6158
6566
  :param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
6159
6567
  :param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
@@ -6182,6 +6590,7 @@ class ConstructLibraryCdk8s(
6182
6590
  :param bugs_email: (experimental) The email address to which issues should be reported.
6183
6591
  :param bugs_url: (experimental) The url to your project's issue tracker.
6184
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"
6185
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
6186
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: []
6187
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
@@ -6191,26 +6600,30 @@ class ConstructLibraryCdk8s(
6191
6600
  :param keywords: (experimental) Keywords to include in ``package.json``.
6192
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"
6193
6602
  :param licensed: (experimental) Indicates if a license should be added. Default: true
6194
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
6195
- :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
6196
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``.
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
6197
6607
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
6198
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"
6199
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
6200
6611
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
6201
6612
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
6202
6613
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
6203
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: []
6204
- :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"
6205
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
6206
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.
6207
6618
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
6208
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: {}
6209
6620
  :param stability: (experimental) Package's Stability.
6210
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"
6211
6623
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
6212
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.
6213
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.
6214
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"
6215
6628
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
6216
6629
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -6218,15 +6631,17 @@ class ConstructLibraryCdk8s(
6218
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
6219
6632
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
6220
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
6221
6635
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
6222
6636
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
6223
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"
6224
6638
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
6225
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"
6226
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: {}
6227
6642
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
6228
6643
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
6229
- :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
6230
6645
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
6231
6646
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
6232
6647
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
@@ -6289,8 +6704,13 @@ class ConstructLibraryCdk8s(
6289
6704
  typescript_version=typescript_version,
6290
6705
  default_release_branch=default_release_branch,
6291
6706
  artifacts_directory=artifacts_directory,
6707
+ audit_deps=audit_deps,
6708
+ audit_deps_options=audit_deps_options,
6292
6709
  auto_approve_upgrades=auto_approve_upgrades,
6710
+ biome=biome,
6711
+ biome_options=biome_options,
6293
6712
  build_workflow=build_workflow,
6713
+ build_workflow_options=build_workflow_options,
6294
6714
  build_workflow_triggers=build_workflow_triggers,
6295
6715
  bundler_options=bundler_options,
6296
6716
  check_licenses=check_licenses,
@@ -6352,6 +6772,7 @@ class ConstructLibraryCdk8s(
6352
6772
  bugs_email=bugs_email,
6353
6773
  bugs_url=bugs_url,
6354
6774
  bundled_deps=bundled_deps,
6775
+ bun_version=bun_version,
6355
6776
  code_artifact_options=code_artifact_options,
6356
6777
  deps=deps,
6357
6778
  description=description,
@@ -6364,9 +6785,11 @@ class ConstructLibraryCdk8s(
6364
6785
  max_node_version=max_node_version,
6365
6786
  min_node_version=min_node_version,
6366
6787
  npm_access=npm_access,
6788
+ npm_provenance=npm_provenance,
6367
6789
  npm_registry=npm_registry,
6368
6790
  npm_registry_url=npm_registry_url,
6369
6791
  npm_token_secret=npm_token_secret,
6792
+ npm_trusted_publishing=npm_trusted_publishing,
6370
6793
  package_manager=package_manager,
6371
6794
  package_name=package_name,
6372
6795
  peer_dependency_options=peer_dependency_options,
@@ -6378,9 +6801,11 @@ class ConstructLibraryCdk8s(
6378
6801
  scripts=scripts,
6379
6802
  stability=stability,
6380
6803
  yarn_berry_options=yarn_berry_options,
6804
+ bump_package=bump_package,
6381
6805
  jsii_release_version=jsii_release_version,
6382
6806
  major_version=major_version,
6383
6807
  min_major_version=min_major_version,
6808
+ next_version_command=next_version_command,
6384
6809
  npm_dist_tag=npm_dist_tag,
6385
6810
  post_build_steps=post_build_steps,
6386
6811
  prerelease=prerelease,
@@ -6388,12 +6813,14 @@ class ConstructLibraryCdk8s(
6388
6813
  publish_tasks=publish_tasks,
6389
6814
  releasable_commits=releasable_commits,
6390
6815
  release_branches=release_branches,
6816
+ release_environment=release_environment,
6391
6817
  release_every_commit=release_every_commit,
6392
6818
  release_failure_issue=release_failure_issue,
6393
6819
  release_failure_issue_label=release_failure_issue_label,
6394
6820
  release_schedule=release_schedule,
6395
6821
  release_tag_prefix=release_tag_prefix,
6396
6822
  release_trigger=release_trigger,
6823
+ release_workflow_env=release_workflow_env,
6397
6824
  release_workflow_name=release_workflow_name,
6398
6825
  release_workflow_setup_steps=release_workflow_setup_steps,
6399
6826
  versionrc_options=versionrc_options,
@@ -6478,6 +6905,7 @@ class ConstructLibraryCdk8s(
6478
6905
  "bugs_email": "bugsEmail",
6479
6906
  "bugs_url": "bugsUrl",
6480
6907
  "bundled_deps": "bundledDeps",
6908
+ "bun_version": "bunVersion",
6481
6909
  "code_artifact_options": "codeArtifactOptions",
6482
6910
  "deps": "deps",
6483
6911
  "description": "description",
@@ -6490,9 +6918,11 @@ class ConstructLibraryCdk8s(
6490
6918
  "max_node_version": "maxNodeVersion",
6491
6919
  "min_node_version": "minNodeVersion",
6492
6920
  "npm_access": "npmAccess",
6921
+ "npm_provenance": "npmProvenance",
6493
6922
  "npm_registry": "npmRegistry",
6494
6923
  "npm_registry_url": "npmRegistryUrl",
6495
6924
  "npm_token_secret": "npmTokenSecret",
6925
+ "npm_trusted_publishing": "npmTrustedPublishing",
6496
6926
  "package_manager": "packageManager",
6497
6927
  "package_name": "packageName",
6498
6928
  "peer_dependency_options": "peerDependencyOptions",
@@ -6504,9 +6934,11 @@ class ConstructLibraryCdk8s(
6504
6934
  "scripts": "scripts",
6505
6935
  "stability": "stability",
6506
6936
  "yarn_berry_options": "yarnBerryOptions",
6937
+ "bump_package": "bumpPackage",
6507
6938
  "jsii_release_version": "jsiiReleaseVersion",
6508
6939
  "major_version": "majorVersion",
6509
6940
  "min_major_version": "minMajorVersion",
6941
+ "next_version_command": "nextVersionCommand",
6510
6942
  "npm_dist_tag": "npmDistTag",
6511
6943
  "post_build_steps": "postBuildSteps",
6512
6944
  "prerelease": "prerelease",
@@ -6514,12 +6946,14 @@ class ConstructLibraryCdk8s(
6514
6946
  "publish_tasks": "publishTasks",
6515
6947
  "releasable_commits": "releasableCommits",
6516
6948
  "release_branches": "releaseBranches",
6949
+ "release_environment": "releaseEnvironment",
6517
6950
  "release_every_commit": "releaseEveryCommit",
6518
6951
  "release_failure_issue": "releaseFailureIssue",
6519
6952
  "release_failure_issue_label": "releaseFailureIssueLabel",
6520
6953
  "release_schedule": "releaseSchedule",
6521
6954
  "release_tag_prefix": "releaseTagPrefix",
6522
6955
  "release_trigger": "releaseTrigger",
6956
+ "release_workflow_env": "releaseWorkflowEnv",
6523
6957
  "release_workflow_name": "releaseWorkflowName",
6524
6958
  "release_workflow_setup_steps": "releaseWorkflowSetupSteps",
6525
6959
  "versionrc_options": "versionrcOptions",
@@ -6528,8 +6962,13 @@ class ConstructLibraryCdk8s(
6528
6962
  "workflow_runs_on_group": "workflowRunsOnGroup",
6529
6963
  "default_release_branch": "defaultReleaseBranch",
6530
6964
  "artifacts_directory": "artifactsDirectory",
6965
+ "audit_deps": "auditDeps",
6966
+ "audit_deps_options": "auditDepsOptions",
6531
6967
  "auto_approve_upgrades": "autoApproveUpgrades",
6968
+ "biome": "biome",
6969
+ "biome_options": "biomeOptions",
6532
6970
  "build_workflow": "buildWorkflow",
6971
+ "build_workflow_options": "buildWorkflowOptions",
6533
6972
  "build_workflow_triggers": "buildWorkflowTriggers",
6534
6973
  "bundler_options": "bundlerOptions",
6535
6974
  "check_licenses": "checkLicenses",
@@ -6650,6 +7089,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6650
7089
  bugs_email: typing.Optional[builtins.str] = None,
6651
7090
  bugs_url: typing.Optional[builtins.str] = None,
6652
7091
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
7092
+ bun_version: typing.Optional[builtins.str] = None,
6653
7093
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
6654
7094
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
6655
7095
  description: typing.Optional[builtins.str] = None,
@@ -6662,9 +7102,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6662
7102
  max_node_version: typing.Optional[builtins.str] = None,
6663
7103
  min_node_version: typing.Optional[builtins.str] = None,
6664
7104
  npm_access: typing.Optional[_NpmAccess_134fa228] = None,
7105
+ npm_provenance: typing.Optional[builtins.bool] = None,
6665
7106
  npm_registry: typing.Optional[builtins.str] = None,
6666
7107
  npm_registry_url: typing.Optional[builtins.str] = None,
6667
7108
  npm_token_secret: typing.Optional[builtins.str] = None,
7109
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
6668
7110
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
6669
7111
  package_name: typing.Optional[builtins.str] = None,
6670
7112
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6676,9 +7118,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6676
7118
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6677
7119
  stability: typing.Optional[builtins.str] = None,
6678
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,
6679
7122
  jsii_release_version: typing.Optional[builtins.str] = None,
6680
7123
  major_version: typing.Optional[jsii.Number] = None,
6681
7124
  min_major_version: typing.Optional[jsii.Number] = None,
7125
+ next_version_command: typing.Optional[builtins.str] = None,
6682
7126
  npm_dist_tag: typing.Optional[builtins.str] = None,
6683
7127
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6684
7128
  prerelease: typing.Optional[builtins.str] = None,
@@ -6686,12 +7130,14 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6686
7130
  publish_tasks: typing.Optional[builtins.bool] = None,
6687
7131
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
6688
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,
6689
7134
  release_every_commit: typing.Optional[builtins.bool] = None,
6690
7135
  release_failure_issue: typing.Optional[builtins.bool] = None,
6691
7136
  release_failure_issue_label: typing.Optional[builtins.str] = None,
6692
7137
  release_schedule: typing.Optional[builtins.str] = None,
6693
7138
  release_tag_prefix: typing.Optional[builtins.str] = None,
6694
7139
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
7140
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6695
7141
  release_workflow_name: typing.Optional[builtins.str] = None,
6696
7142
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
6697
7143
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -6700,8 +7146,13 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6700
7146
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
6701
7147
  default_release_branch: builtins.str,
6702
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,
6703
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,
6704
7154
  build_workflow: typing.Optional[builtins.bool] = None,
7155
+ build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
6705
7156
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
6706
7157
  bundler_options: typing.Optional[typing.Union[_BundlerOptions_d60b85ed, typing.Dict[builtins.str, typing.Any]]] = None,
6707
7158
  check_licenses: typing.Optional[typing.Union[_LicenseCheckerOptions_80bcd362, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -6818,6 +7269,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6818
7269
  :param bugs_email: (experimental) The email address to which issues should be reported.
6819
7270
  :param bugs_url: (experimental) The url to your project's issue tracker.
6820
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"
6821
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
6822
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: []
6823
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
@@ -6827,26 +7279,30 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6827
7279
  :param keywords: (experimental) Keywords to include in ``package.json``.
6828
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"
6829
7281
  :param licensed: (experimental) Indicates if a license should be added. Default: true
6830
- :param max_node_version: (experimental) Minimum node.js version to require via ``engines`` (inclusive). Default: - no max
6831
- :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
6832
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``.
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
6833
7286
  :param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
6834
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"
6835
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
6836
7290
  :param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
6837
7291
  :param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
6838
7292
  :param peer_dependency_options: (experimental) Options for ``peerDeps``.
6839
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: []
6840
- :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"
6841
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
6842
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.
6843
7297
  :param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
6844
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: {}
6845
7299
  :param stability: (experimental) Package's Stability.
6846
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"
6847
7302
  :param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
6848
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.
6849
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.
6850
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"
6851
7307
  :param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
6852
7308
  :param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
@@ -6854,27 +7310,34 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6854
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
6855
7311
  :param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
6856
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
6857
7314
  :param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
6858
7315
  :param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
6859
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"
6860
7317
  :param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
6861
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"
6862
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: {}
6863
7321
  :param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
6864
7322
  :param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
6865
- :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
6866
7324
  :param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
6867
7325
  :param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
6868
7326
  :param workflow_runs_on_group: (experimental) Github Runner Group selection options.
6869
7327
  :param default_release_branch: (experimental) The name of the main release branch. Default: "main"
6870
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
6871
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
6872
7334
  :param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
6873
- :param build_workflow_triggers: (experimental) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
7335
+ :param build_workflow_options: (experimental) Options for PR build workflow.
7336
+ :param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
6874
7337
  :param bundler_options: (experimental) Options for ``Bundler``.
6875
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
6876
- :param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with ``@codeCovTokenSecret``. Default: false
6877
- :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
6878
7341
  :param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
6879
7342
  :param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
6880
7343
  :param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
@@ -6884,14 +7347,14 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6884
7347
  :param gitignore: (experimental) Additional entries to .gitignore.
6885
7348
  :param jest: (experimental) Setup jest unit tests. Default: true
6886
7349
  :param jest_options: (experimental) Jest options. Default: - default options
6887
- :param mutable_build: (experimental) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
7350
+ :param mutable_build: (deprecated) Automatically update files modified during builds to pull-request branches. This means that any files synthesized by projen or e.g. test snapshots will always be up-to-date before a PR is merged. Implies that PR builds do not have anti-tamper checks. Default: true
6888
7351
  :param npmignore: (deprecated) Additional entries to .npmignore.
6889
7352
  :param npmignore_enabled: (experimental) Defines an .npmignore file. Normally this is only needed for libraries that are packaged as tarballs. Default: true
6890
7353
  :param npm_ignore_options: (experimental) Configuration options for .npmignore file.
6891
7354
  :param package: (experimental) Defines a ``package`` task that will produce an npm tarball under the artifacts directory (e.g. ``dist``). Default: true
6892
7355
  :param prettier: (experimental) Setup prettier. Default: false
6893
7356
  :param prettier_options: (experimental) Prettier options. Default: - default options
6894
- :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: true
7357
+ :param projen_dev_dependency: (experimental) Indicates of "projen" should be installed as a devDependency. Default: - true if not a subproject
6895
7358
  :param projenrc_js: (experimental) Generate (once) .projenrc.js (in JavaScript). Set to ``false`` in order to disable .projenrc.js generation. Default: - true if projenrcJson is false
6896
7359
  :param projenrc_js_options: (experimental) Options for .projenrc.js. Default: - default options
6897
7360
  :param projen_version: (experimental) Version of projen to install. Default: - Defaults to the latest version.
@@ -6901,15 +7364,15 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6901
7364
  :param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
6902
7365
  :param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
6903
7366
  :param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
6904
- :param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
6905
- :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/*``.
6906
7369
  :param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
6907
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
6908
7371
  :param disable_tsconfig_dev: (experimental) Do not generate a ``tsconfig.dev.json`` file. Default: false
6909
7372
  :param docgen: (experimental) Docgen by Typedoc. Default: false
6910
7373
  :param docs_directory: (experimental) Docs directory. Default: "docs"
6911
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)
6912
- :param eslint: (experimental) Setup eslint. Default: true
7375
+ :param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
6913
7376
  :param eslint_options: (experimental) Eslint options. Default: - opinionated default options
6914
7377
  :param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
6915
7378
  :param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
@@ -6931,7 +7394,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6931
7394
  :param docgen_file_path: (experimental) File path for generated docs. Default: "API.md"
6932
7395
  :param dotnet:
6933
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.
6934
- :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"
6935
7398
  :param publish_to_go: (experimental) Publish Go bindings to a git repository. Default: - no publishing
6936
7399
  :param publish_to_maven: (experimental) Publish to maven. Default: - no publishing
6937
7400
  :param publish_to_nuget: (experimental) Publish to NuGet. Default: - no publishing
@@ -6978,6 +7441,12 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
6978
7441
  yarn_berry_options = _YarnBerryOptions_b6942539(**yarn_berry_options)
6979
7442
  if isinstance(workflow_runs_on_group, dict):
6980
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)
7448
+ if isinstance(build_workflow_options, dict):
7449
+ build_workflow_options = _BuildWorkflowOptions_b756f97f(**build_workflow_options)
6981
7450
  if isinstance(build_workflow_triggers, dict):
6982
7451
  build_workflow_triggers = _Triggers_e9ae7617(**build_workflow_triggers)
6983
7452
  if isinstance(bundler_options, dict):
@@ -7063,6 +7532,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7063
7532
  check_type(argname="argument bugs_email", value=bugs_email, expected_type=type_hints["bugs_email"])
7064
7533
  check_type(argname="argument bugs_url", value=bugs_url, expected_type=type_hints["bugs_url"])
7065
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"])
7066
7536
  check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
7067
7537
  check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
7068
7538
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
@@ -7075,9 +7545,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7075
7545
  check_type(argname="argument max_node_version", value=max_node_version, expected_type=type_hints["max_node_version"])
7076
7546
  check_type(argname="argument min_node_version", value=min_node_version, expected_type=type_hints["min_node_version"])
7077
7547
  check_type(argname="argument npm_access", value=npm_access, expected_type=type_hints["npm_access"])
7548
+ check_type(argname="argument npm_provenance", value=npm_provenance, expected_type=type_hints["npm_provenance"])
7078
7549
  check_type(argname="argument npm_registry", value=npm_registry, expected_type=type_hints["npm_registry"])
7079
7550
  check_type(argname="argument npm_registry_url", value=npm_registry_url, expected_type=type_hints["npm_registry_url"])
7080
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"])
7081
7553
  check_type(argname="argument package_manager", value=package_manager, expected_type=type_hints["package_manager"])
7082
7554
  check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
7083
7555
  check_type(argname="argument peer_dependency_options", value=peer_dependency_options, expected_type=type_hints["peer_dependency_options"])
@@ -7089,9 +7561,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7089
7561
  check_type(argname="argument scripts", value=scripts, expected_type=type_hints["scripts"])
7090
7562
  check_type(argname="argument stability", value=stability, expected_type=type_hints["stability"])
7091
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"])
7092
7565
  check_type(argname="argument jsii_release_version", value=jsii_release_version, expected_type=type_hints["jsii_release_version"])
7093
7566
  check_type(argname="argument major_version", value=major_version, expected_type=type_hints["major_version"])
7094
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"])
7095
7569
  check_type(argname="argument npm_dist_tag", value=npm_dist_tag, expected_type=type_hints["npm_dist_tag"])
7096
7570
  check_type(argname="argument post_build_steps", value=post_build_steps, expected_type=type_hints["post_build_steps"])
7097
7571
  check_type(argname="argument prerelease", value=prerelease, expected_type=type_hints["prerelease"])
@@ -7099,12 +7573,14 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7099
7573
  check_type(argname="argument publish_tasks", value=publish_tasks, expected_type=type_hints["publish_tasks"])
7100
7574
  check_type(argname="argument releasable_commits", value=releasable_commits, expected_type=type_hints["releasable_commits"])
7101
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"])
7102
7577
  check_type(argname="argument release_every_commit", value=release_every_commit, expected_type=type_hints["release_every_commit"])
7103
7578
  check_type(argname="argument release_failure_issue", value=release_failure_issue, expected_type=type_hints["release_failure_issue"])
7104
7579
  check_type(argname="argument release_failure_issue_label", value=release_failure_issue_label, expected_type=type_hints["release_failure_issue_label"])
7105
7580
  check_type(argname="argument release_schedule", value=release_schedule, expected_type=type_hints["release_schedule"])
7106
7581
  check_type(argname="argument release_tag_prefix", value=release_tag_prefix, expected_type=type_hints["release_tag_prefix"])
7107
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"])
7108
7584
  check_type(argname="argument release_workflow_name", value=release_workflow_name, expected_type=type_hints["release_workflow_name"])
7109
7585
  check_type(argname="argument release_workflow_setup_steps", value=release_workflow_setup_steps, expected_type=type_hints["release_workflow_setup_steps"])
7110
7586
  check_type(argname="argument versionrc_options", value=versionrc_options, expected_type=type_hints["versionrc_options"])
@@ -7113,8 +7589,13 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7113
7589
  check_type(argname="argument workflow_runs_on_group", value=workflow_runs_on_group, expected_type=type_hints["workflow_runs_on_group"])
7114
7590
  check_type(argname="argument default_release_branch", value=default_release_branch, expected_type=type_hints["default_release_branch"])
7115
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"])
7116
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"])
7117
7597
  check_type(argname="argument build_workflow", value=build_workflow, expected_type=type_hints["build_workflow"])
7598
+ check_type(argname="argument build_workflow_options", value=build_workflow_options, expected_type=type_hints["build_workflow_options"])
7118
7599
  check_type(argname="argument build_workflow_triggers", value=build_workflow_triggers, expected_type=type_hints["build_workflow_triggers"])
7119
7600
  check_type(argname="argument bundler_options", value=bundler_options, expected_type=type_hints["bundler_options"])
7120
7601
  check_type(argname="argument check_licenses", value=check_licenses, expected_type=type_hints["check_licenses"])
@@ -7274,6 +7755,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7274
7755
  self._values["bugs_url"] = bugs_url
7275
7756
  if bundled_deps is not None:
7276
7757
  self._values["bundled_deps"] = bundled_deps
7758
+ if bun_version is not None:
7759
+ self._values["bun_version"] = bun_version
7277
7760
  if code_artifact_options is not None:
7278
7761
  self._values["code_artifact_options"] = code_artifact_options
7279
7762
  if deps is not None:
@@ -7298,12 +7781,16 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7298
7781
  self._values["min_node_version"] = min_node_version
7299
7782
  if npm_access is not None:
7300
7783
  self._values["npm_access"] = npm_access
7784
+ if npm_provenance is not None:
7785
+ self._values["npm_provenance"] = npm_provenance
7301
7786
  if npm_registry is not None:
7302
7787
  self._values["npm_registry"] = npm_registry
7303
7788
  if npm_registry_url is not None:
7304
7789
  self._values["npm_registry_url"] = npm_registry_url
7305
7790
  if npm_token_secret is not None:
7306
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
7307
7794
  if package_manager is not None:
7308
7795
  self._values["package_manager"] = package_manager
7309
7796
  if package_name is not None:
@@ -7326,12 +7813,16 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7326
7813
  self._values["stability"] = stability
7327
7814
  if yarn_berry_options is not None:
7328
7815
  self._values["yarn_berry_options"] = yarn_berry_options
7816
+ if bump_package is not None:
7817
+ self._values["bump_package"] = bump_package
7329
7818
  if jsii_release_version is not None:
7330
7819
  self._values["jsii_release_version"] = jsii_release_version
7331
7820
  if major_version is not None:
7332
7821
  self._values["major_version"] = major_version
7333
7822
  if min_major_version is not None:
7334
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
7335
7826
  if npm_dist_tag is not None:
7336
7827
  self._values["npm_dist_tag"] = npm_dist_tag
7337
7828
  if post_build_steps is not None:
@@ -7346,6 +7837,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7346
7837
  self._values["releasable_commits"] = releasable_commits
7347
7838
  if release_branches is not None:
7348
7839
  self._values["release_branches"] = release_branches
7840
+ if release_environment is not None:
7841
+ self._values["release_environment"] = release_environment
7349
7842
  if release_every_commit is not None:
7350
7843
  self._values["release_every_commit"] = release_every_commit
7351
7844
  if release_failure_issue is not None:
@@ -7358,6 +7851,8 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7358
7851
  self._values["release_tag_prefix"] = release_tag_prefix
7359
7852
  if release_trigger is not None:
7360
7853
  self._values["release_trigger"] = release_trigger
7854
+ if release_workflow_env is not None:
7855
+ self._values["release_workflow_env"] = release_workflow_env
7361
7856
  if release_workflow_name is not None:
7362
7857
  self._values["release_workflow_name"] = release_workflow_name
7363
7858
  if release_workflow_setup_steps is not None:
@@ -7372,10 +7867,20 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7372
7867
  self._values["workflow_runs_on_group"] = workflow_runs_on_group
7373
7868
  if artifacts_directory is not None:
7374
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
7375
7874
  if auto_approve_upgrades is not None:
7376
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
7377
7880
  if build_workflow is not None:
7378
7881
  self._values["build_workflow"] = build_workflow
7882
+ if build_workflow_options is not None:
7883
+ self._values["build_workflow_options"] = build_workflow_options
7379
7884
  if build_workflow_triggers is not None:
7380
7885
  self._values["build_workflow_triggers"] = build_workflow_triggers
7381
7886
  if bundler_options is not None:
@@ -7983,6 +8488,17 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
7983
8488
  result = self._values.get("bundled_deps")
7984
8489
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
7985
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
+
7986
8502
  @builtins.property
7987
8503
  def code_artifact_options(self) -> typing.Optional[_CodeArtifactOptions_e4782b3e]:
7988
8504
  '''(experimental) Options for npm packages using AWS CodeArtifact.
@@ -8117,9 +8633,15 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8117
8633
 
8118
8634
  @builtins.property
8119
8635
  def max_node_version(self) -> typing.Optional[builtins.str]:
8120
- '''(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.
8640
+
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.
8121
8643
 
8122
- :default: - no max
8644
+ :default: - no maximum version is enforced
8123
8645
 
8124
8646
  :stability: experimental
8125
8647
  '''
@@ -8128,9 +8650,19 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8128
8650
 
8129
8651
  @builtins.property
8130
8652
  def min_node_version(self) -> typing.Optional[builtins.str]:
8131
- '''(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.
8132
8662
 
8133
- :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
8134
8666
 
8135
8667
  :stability: experimental
8136
8668
  '''
@@ -8152,6 +8684,24 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8152
8684
  result = self._values.get("npm_access")
8153
8685
  return typing.cast(typing.Optional[_NpmAccess_134fa228], result)
8154
8686
 
8687
+ @builtins.property
8688
+ def npm_provenance(self) -> typing.Optional[builtins.bool]:
8689
+ '''(experimental) Should provenance statements be generated when the package is published.
8690
+
8691
+ A supported package manager is required to publish a package with npm provenance statements and
8692
+ you will need to use a supported CI/CD provider.
8693
+
8694
+ Note that the projen ``Release`` and ``Publisher`` components are using ``publib`` to publish packages,
8695
+ which is using npm internally and supports provenance statements independently of the package manager used.
8696
+
8697
+ :default: - true for public packages, false otherwise
8698
+
8699
+ :see: https://docs.npmjs.com/generating-provenance-statements
8700
+ :stability: experimental
8701
+ '''
8702
+ result = self._values.get("npm_provenance")
8703
+ return typing.cast(typing.Optional[builtins.bool], result)
8704
+
8155
8705
  @builtins.property
8156
8706
  def npm_registry(self) -> typing.Optional[builtins.str]:
8157
8707
  '''(deprecated) The host name of the npm registry to publish to.
@@ -8189,6 +8739,17 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8189
8739
  result = self._values.get("npm_token_secret")
8190
8740
  return typing.cast(typing.Optional[builtins.str], result)
8191
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
+
8192
8753
  @builtins.property
8193
8754
  def package_manager(self) -> typing.Optional[_NodePackageManager_3eb53bf6]:
8194
8755
  '''(experimental) The Node Package Manager used to execute scripts.
@@ -8252,7 +8813,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8252
8813
  def pnpm_version(self) -> typing.Optional[builtins.str]:
8253
8814
  '''(experimental) The version of PNPM to use if using PNPM as a package manager.
8254
8815
 
8255
- :default: "7"
8816
+ :default: "9"
8256
8817
 
8257
8818
  :stability: experimental
8258
8819
  '''
@@ -8329,6 +8890,19 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8329
8890
  result = self._values.get("yarn_berry_options")
8330
8891
  return typing.cast(typing.Optional[_YarnBerryOptions_b6942539], result)
8331
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
+
8332
8906
  @builtins.property
8333
8907
  def jsii_release_version(self) -> typing.Optional[builtins.str]:
8334
8908
  '''(experimental) Version requirement of ``publib`` which is used to publish modules to npm.
@@ -8370,6 +8944,36 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8370
8944
  result = self._values.get("min_major_version")
8371
8945
  return typing.cast(typing.Optional[jsii.Number], result)
8372
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
+
8373
8977
  @builtins.property
8374
8978
  def npm_dist_tag(self) -> typing.Optional[builtins.str]:
8375
8979
  '''(experimental) The npmDistTag to use when publishing from the default branch.
@@ -8465,6 +9069,23 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8465
9069
  result = self._values.get("release_branches")
8466
9070
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, _BranchOptions_13663d08]], result)
8467
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
+
8468
9089
  @builtins.property
8469
9090
  def release_every_commit(self) -> typing.Optional[builtins.bool]:
8470
9091
  '''(deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``.
@@ -8542,6 +9163,19 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8542
9163
  result = self._values.get("release_trigger")
8543
9164
  return typing.cast(typing.Optional[_ReleaseTrigger_e4dc221f], result)
8544
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
+
8545
9179
  @builtins.property
8546
9180
  def release_workflow_name(self) -> typing.Optional[builtins.str]:
8547
9181
  '''(experimental) The name of the default release workflow.
@@ -8568,7 +9202,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8568
9202
  def versionrc_options(
8569
9203
  self,
8570
9204
  ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
8571
- '''(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.
8572
9206
 
8573
9207
  Given values either append to default configuration or overwrite values in it.
8574
9208
 
@@ -8637,6 +9271,32 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8637
9271
  result = self._values.get("artifacts_directory")
8638
9272
  return typing.cast(typing.Optional[builtins.str], result)
8639
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
+
8640
9300
  @builtins.property
8641
9301
  def auto_approve_upgrades(self) -> typing.Optional[builtins.bool]:
8642
9302
  '''(experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
@@ -8650,6 +9310,28 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8650
9310
  result = self._values.get("auto_approve_upgrades")
8651
9311
  return typing.cast(typing.Optional[builtins.bool], result)
8652
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
+
8653
9335
  @builtins.property
8654
9336
  def build_workflow(self) -> typing.Optional[builtins.bool]:
8655
9337
  '''(experimental) Define a GitHub workflow for building PRs.
@@ -8661,13 +9343,24 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8661
9343
  result = self._values.get("build_workflow")
8662
9344
  return typing.cast(typing.Optional[builtins.bool], result)
8663
9345
 
9346
+ @builtins.property
9347
+ def build_workflow_options(self) -> typing.Optional[_BuildWorkflowOptions_b756f97f]:
9348
+ '''(experimental) Options for PR build workflow.
9349
+
9350
+ :stability: experimental
9351
+ '''
9352
+ result = self._values.get("build_workflow_options")
9353
+ return typing.cast(typing.Optional[_BuildWorkflowOptions_b756f97f], result)
9354
+
8664
9355
  @builtins.property
8665
9356
  def build_workflow_triggers(self) -> typing.Optional[_Triggers_e9ae7617]:
8666
- '''(experimental) Build workflow triggers.
9357
+ '''(deprecated) Build workflow triggers.
8667
9358
 
8668
9359
  :default: "{ pullRequest: {}, workflowDispatch: {} }"
8669
9360
 
8670
- :stability: experimental
9361
+ :deprecated: - Use ``buildWorkflowOptions.workflowTriggers``
9362
+
9363
+ :stability: deprecated
8671
9364
  '''
8672
9365
  result = self._values.get("build_workflow_triggers")
8673
9366
  return typing.cast(typing.Optional[_Triggers_e9ae7617], result)
@@ -8696,7 +9389,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8696
9389
 
8697
9390
  @builtins.property
8698
9391
  def code_cov(self) -> typing.Optional[builtins.bool]:
8699
- '''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@v3 A secret is required for private repos. Configured with ``@codeCovTokenSecret``.
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``.
8700
9393
 
8701
9394
  :default: false
8702
9395
 
@@ -8707,9 +9400,9 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8707
9400
 
8708
9401
  @builtins.property
8709
9402
  def code_cov_token_secret(self) -> typing.Optional[builtins.str]:
8710
- '''(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.
8711
9404
 
8712
- :default: - if this option is not specified, only public repositories are supported
9405
+ :default: - OIDC auth is used
8713
9406
 
8714
9407
  :stability: experimental
8715
9408
  '''
@@ -8821,7 +9514,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8821
9514
 
8822
9515
  @builtins.property
8823
9516
  def mutable_build(self) -> typing.Optional[builtins.bool]:
8824
- '''(experimental) Automatically update files modified during builds to pull-request branches.
9517
+ '''(deprecated) Automatically update files modified during builds to pull-request branches.
8825
9518
 
8826
9519
  This means
8827
9520
  that any files synthesized by projen or e.g. test snapshots will always be up-to-date
@@ -8831,7 +9524,9 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8831
9524
 
8832
9525
  :default: true
8833
9526
 
8834
- :stability: experimental
9527
+ :deprecated: - Use ``buildWorkflowOptions.mutableBuild``
9528
+
9529
+ :stability: deprecated
8835
9530
  '''
8836
9531
  result = self._values.get("mutable_build")
8837
9532
  return typing.cast(typing.Optional[builtins.bool], result)
@@ -8904,7 +9599,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
8904
9599
  def projen_dev_dependency(self) -> typing.Optional[builtins.bool]:
8905
9600
  '''(experimental) Indicates of "projen" should be installed as a devDependency.
8906
9601
 
8907
- :default: true
9602
+ :default: - true if not a subproject
8908
9603
 
8909
9604
  :stability: experimental
8910
9605
  '''
@@ -9020,7 +9715,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9020
9715
  def workflow_git_identity(self) -> typing.Optional[_GitIdentity_6effc3de]:
9021
9716
  '''(experimental) The git identity to use in workflows.
9022
9717
 
9023
- :default: - GitHub Actions
9718
+ :default: - default GitHub Actions user
9024
9719
 
9025
9720
  :stability: experimental
9026
9721
  '''
@@ -9029,9 +9724,11 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9029
9724
 
9030
9725
  @builtins.property
9031
9726
  def workflow_node_version(self) -> typing.Optional[builtins.str]:
9032
- '''(experimental) The node version to use in GitHub workflows.
9727
+ '''(experimental) The node version used in GitHub Actions workflows.
9033
9728
 
9034
- :default: - same as ``minNodeVersion``
9729
+ Always use this option if your GitHub Actions workflows require a specific to run.
9730
+
9731
+ :default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
9035
9732
 
9036
9733
  :stability: experimental
9037
9734
  '''
@@ -9108,7 +9805,7 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9108
9805
  def eslint(self) -> typing.Optional[builtins.bool]:
9109
9806
  '''(experimental) Setup eslint.
9110
9807
 
9111
- :default: true
9808
+ :default: - true, unless biome is enabled
9112
9809
 
9113
9810
  :stability: experimental
9114
9811
  '''
@@ -9371,10 +10068,10 @@ class ConstructLibraryCdk8sOptions(_ConstructLibraryOptions_dcd2adc0):
9371
10068
  and should remain on the same minor, so we recommend using a ``~`` dependency
9372
10069
  (e.g. ``~5.0.0``).
9373
10070
 
9374
- :default: "1.x"
10071
+ :default: "~5.8.0"
9375
10072
 
9376
10073
  :stability: experimental
9377
- :pjnew: "~5.0.0"
10074
+ :pjnew: "~5.9.0"
9378
10075
  '''
9379
10076
  result = self._values.get("jsii_version")
9380
10077
  return typing.cast(typing.Optional[builtins.str], result)
@@ -10000,6 +10697,8 @@ def _typecheckingstub__331399ffb98e7173ebfaf58cb4fb356507f6d5279e417cfcd418054d7
10000
10697
  package_name: typing.Optional[builtins.str] = None,
10001
10698
  poetry_options: typing.Optional[typing.Union[_PoetryPyprojectOptionsWithoutDeps_7947f35b, typing.Dict[builtins.str, typing.Any]]] = None,
10002
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,
10701
+ python_exec: typing.Optional[builtins.str] = None,
10003
10702
  module_name: builtins.str,
10004
10703
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10005
10704
  dev_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -10013,9 +10712,10 @@ def _typecheckingstub__331399ffb98e7173ebfaf58cb4fb356507f6d5279e417cfcd418054d7
10013
10712
  projenrc_ts_options: typing.Optional[typing.Union[_ProjenrcTsOptions_e3a2602d, typing.Dict[builtins.str, typing.Any]]] = None,
10014
10713
  pytest: typing.Optional[builtins.bool] = None,
10015
10714
  pytest_options: typing.Optional[typing.Union[_PytestOptions_b400bccc, typing.Dict[builtins.str, typing.Any]]] = None,
10016
- python_exec: typing.Optional[builtins.str] = None,
10017
10715
  sample: typing.Optional[builtins.bool] = None,
10716
+ sample_testdir: typing.Optional[builtins.str] = None,
10018
10717
  setuptools: typing.Optional[builtins.bool] = None,
10718
+ uv: typing.Optional[builtins.bool] = None,
10019
10719
  venv: typing.Optional[builtins.bool] = None,
10020
10720
  venv_options: typing.Optional[typing.Union[_VenvOptions_8ea2b226, typing.Dict[builtins.str, typing.Any]]] = None,
10021
10721
  cdk8s_version: builtins.str,
@@ -10076,6 +10776,7 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10076
10776
  bugs_email: typing.Optional[builtins.str] = None,
10077
10777
  bugs_url: typing.Optional[builtins.str] = None,
10078
10778
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10779
+ bun_version: typing.Optional[builtins.str] = None,
10079
10780
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
10080
10781
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10081
10782
  description: typing.Optional[builtins.str] = None,
@@ -10088,9 +10789,11 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10088
10789
  max_node_version: typing.Optional[builtins.str] = None,
10089
10790
  min_node_version: typing.Optional[builtins.str] = None,
10090
10791
  npm_access: typing.Optional[_NpmAccess_134fa228] = None,
10792
+ npm_provenance: typing.Optional[builtins.bool] = None,
10091
10793
  npm_registry: typing.Optional[builtins.str] = None,
10092
10794
  npm_registry_url: typing.Optional[builtins.str] = None,
10093
10795
  npm_token_secret: typing.Optional[builtins.str] = None,
10796
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
10094
10797
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
10095
10798
  package_name: typing.Optional[builtins.str] = None,
10096
10799
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10102,9 +10805,11 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10102
10805
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10103
10806
  stability: typing.Optional[builtins.str] = None,
10104
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,
10105
10809
  jsii_release_version: typing.Optional[builtins.str] = None,
10106
10810
  major_version: typing.Optional[jsii.Number] = None,
10107
10811
  min_major_version: typing.Optional[jsii.Number] = None,
10812
+ next_version_command: typing.Optional[builtins.str] = None,
10108
10813
  npm_dist_tag: typing.Optional[builtins.str] = None,
10109
10814
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10110
10815
  prerelease: typing.Optional[builtins.str] = None,
@@ -10112,12 +10817,14 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10112
10817
  publish_tasks: typing.Optional[builtins.bool] = None,
10113
10818
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
10114
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,
10115
10821
  release_every_commit: typing.Optional[builtins.bool] = None,
10116
10822
  release_failure_issue: typing.Optional[builtins.bool] = None,
10117
10823
  release_failure_issue_label: typing.Optional[builtins.str] = None,
10118
10824
  release_schedule: typing.Optional[builtins.str] = None,
10119
10825
  release_tag_prefix: typing.Optional[builtins.str] = None,
10120
10826
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
10827
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10121
10828
  release_workflow_name: typing.Optional[builtins.str] = None,
10122
10829
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10123
10830
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -10126,8 +10833,13 @@ def _typecheckingstub__38d5838b3dba3e0494a1842bc0bf0513fd0a9baecf03b52c6bb2ef53e
10126
10833
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
10127
10834
  default_release_branch: builtins.str,
10128
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,
10129
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,
10130
10841
  build_workflow: typing.Optional[builtins.bool] = None,
10842
+ build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
10131
10843
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
10132
10844
  bundler_options: typing.Optional[typing.Union[_BundlerOptions_d60b85ed, typing.Dict[builtins.str, typing.Any]]] = None,
10133
10845
  check_licenses: typing.Optional[typing.Union[_LicenseCheckerOptions_80bcd362, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10239,6 +10951,7 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10239
10951
  bugs_email: typing.Optional[builtins.str] = None,
10240
10952
  bugs_url: typing.Optional[builtins.str] = None,
10241
10953
  bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10954
+ bun_version: typing.Optional[builtins.str] = None,
10242
10955
  code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
10243
10956
  deps: typing.Optional[typing.Sequence[builtins.str]] = None,
10244
10957
  description: typing.Optional[builtins.str] = None,
@@ -10251,9 +10964,11 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10251
10964
  max_node_version: typing.Optional[builtins.str] = None,
10252
10965
  min_node_version: typing.Optional[builtins.str] = None,
10253
10966
  npm_access: typing.Optional[_NpmAccess_134fa228] = None,
10967
+ npm_provenance: typing.Optional[builtins.bool] = None,
10254
10968
  npm_registry: typing.Optional[builtins.str] = None,
10255
10969
  npm_registry_url: typing.Optional[builtins.str] = None,
10256
10970
  npm_token_secret: typing.Optional[builtins.str] = None,
10971
+ npm_trusted_publishing: typing.Optional[builtins.bool] = None,
10257
10972
  package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
10258
10973
  package_name: typing.Optional[builtins.str] = None,
10259
10974
  peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -10265,9 +10980,11 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10265
10980
  scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10266
10981
  stability: typing.Optional[builtins.str] = None,
10267
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,
10268
10984
  jsii_release_version: typing.Optional[builtins.str] = None,
10269
10985
  major_version: typing.Optional[jsii.Number] = None,
10270
10986
  min_major_version: typing.Optional[jsii.Number] = None,
10987
+ next_version_command: typing.Optional[builtins.str] = None,
10271
10988
  npm_dist_tag: typing.Optional[builtins.str] = None,
10272
10989
  post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10273
10990
  prerelease: typing.Optional[builtins.str] = None,
@@ -10275,12 +10992,14 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10275
10992
  publish_tasks: typing.Optional[builtins.bool] = None,
10276
10993
  releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
10277
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,
10278
10996
  release_every_commit: typing.Optional[builtins.bool] = None,
10279
10997
  release_failure_issue: typing.Optional[builtins.bool] = None,
10280
10998
  release_failure_issue_label: typing.Optional[builtins.str] = None,
10281
10999
  release_schedule: typing.Optional[builtins.str] = None,
10282
11000
  release_tag_prefix: typing.Optional[builtins.str] = None,
10283
11001
  release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
11002
+ release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
10284
11003
  release_workflow_name: typing.Optional[builtins.str] = None,
10285
11004
  release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
10286
11005
  versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
@@ -10289,8 +11008,13 @@ def _typecheckingstub__af97c045aa0635813d6575f726d794c22aabe3eb1e51bf1ae61d8f28b
10289
11008
  workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
10290
11009
  default_release_branch: builtins.str,
10291
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,
10292
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,
10293
11016
  build_workflow: typing.Optional[builtins.bool] = None,
11017
+ build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
10294
11018
  build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
10295
11019
  bundler_options: typing.Optional[typing.Union[_BundlerOptions_d60b85ed, typing.Dict[builtins.str, typing.Any]]] = None,
10296
11020
  check_licenses: typing.Optional[typing.Union[_LicenseCheckerOptions_80bcd362, typing.Dict[builtins.str, typing.Any]]] = None,