projen 0.81.17__py3-none-any.whl → 0.98.25__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- projen/__init__.py +1020 -55
- projen/_jsii/__init__.py +17 -2
- projen/_jsii/projen@0.98.25.jsii.tgz +0 -0
- projen/awscdk/__init__.py +1503 -163
- projen/build/__init__.py +79 -44
- projen/cdk/__init__.py +877 -129
- projen/cdk8s/__init__.py +681 -67
- projen/cdktf/__init__.py +318 -36
- projen/circleci/__init__.py +32 -1
- projen/github/__init__.py +1250 -76
- projen/github/workflows/__init__.py +400 -17
- projen/gitlab/__init__.py +234 -4
- projen/java/__init__.py +296 -4
- projen/javascript/__init__.py +1294 -81
- projen/javascript/biome_config/__init__.py +5461 -0
- projen/python/__init__.py +2010 -189
- projen/python/uv_config/__init__.py +3933 -0
- projen/release/__init__.py +921 -141
- projen/typescript/__init__.py +851 -93
- projen/vscode/__init__.py +19 -1
- projen/web/__init__.py +1196 -119
- {projen-0.81.17.data → projen-0.98.25.data}/scripts/projen +1 -1
- {projen-0.81.17.dist-info → projen-0.98.25.dist-info}/METADATA +6 -15
- projen-0.98.25.dist-info/RECORD +28 -0
- {projen-0.81.17.dist-info → projen-0.98.25.dist-info}/WHEEL +1 -1
- projen/_jsii/projen@0.81.17.jsii.tgz +0 -0
- projen-0.81.17.dist-info/RECORD +0 -26
- {projen-0.81.17.dist-info → projen-0.98.25.dist-info}/LICENSE +0 -0
- {projen-0.81.17.dist-info → projen-0.98.25.dist-info}/top_level.txt +0 -0
projen/typescript/__init__.py
CHANGED
|
@@ -11,7 +11,22 @@ import jsii
|
|
|
11
11
|
import publication
|
|
12
12
|
import typing_extensions
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
import typeguard
|
|
15
|
+
from importlib.metadata import version as _metadata_package_version
|
|
16
|
+
TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
|
|
17
|
+
|
|
18
|
+
def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
|
|
19
|
+
if TYPEGUARD_MAJOR_VERSION <= 2:
|
|
20
|
+
return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
|
|
21
|
+
else:
|
|
22
|
+
if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
|
|
23
|
+
pass
|
|
24
|
+
else:
|
|
25
|
+
if TYPEGUARD_MAJOR_VERSION == 3:
|
|
26
|
+
typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
|
|
27
|
+
typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
|
|
28
|
+
else:
|
|
29
|
+
typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
|
|
15
30
|
|
|
16
31
|
from .._jsii import *
|
|
17
32
|
|
|
@@ -43,6 +58,8 @@ from ..github.workflows import (
|
|
|
43
58
|
JobStep as _JobStep_c3287c05, Triggers as _Triggers_e9ae7617
|
|
44
59
|
)
|
|
45
60
|
from ..javascript import (
|
|
61
|
+
AuditOptions as _AuditOptions_429c62df,
|
|
62
|
+
BiomeOptions as _BiomeOptions_452ab984,
|
|
46
63
|
BuildWorkflowOptions as _BuildWorkflowOptions_b756f97f,
|
|
47
64
|
BundlerOptions as _BundlerOptions_d60b85ed,
|
|
48
65
|
CodeArtifactOptions as _CodeArtifactOptions_e4782b3e,
|
|
@@ -59,8 +76,11 @@ from ..javascript import (
|
|
|
59
76
|
ProjenrcOptions as _ProjenrcOptions_179dd39f,
|
|
60
77
|
ScopedPackagesOptions as _ScopedPackagesOptions_52f0a477,
|
|
61
78
|
TypeScriptCompilerOptions as _TypeScriptCompilerOptions_829fc4b0,
|
|
79
|
+
TypeScriptImportsNotUsedAsValues as _TypeScriptImportsNotUsedAsValues_95cb8527,
|
|
80
|
+
TypeScriptJsxMode as _TypeScriptJsxMode_8489d67f,
|
|
81
|
+
TypeScriptModuleDetection as _TypeScriptModuleDetection_28bd432f,
|
|
82
|
+
TypeScriptModuleResolution as _TypeScriptModuleResolution_56cffb1b,
|
|
62
83
|
TypescriptConfig as _TypescriptConfig_e4a2920d,
|
|
63
|
-
TypescriptConfigExtends as _TypescriptConfigExtends_ba2a99fc,
|
|
64
84
|
TypescriptConfigOptions as _TypescriptConfigOptions_8c5492cd,
|
|
65
85
|
UpgradeDependenciesOptions as _UpgradeDependenciesOptions_1d8ce4da,
|
|
66
86
|
YarnBerryOptions as _YarnBerryOptions_b6942539,
|
|
@@ -738,29 +758,197 @@ class TsJestTsconfig(
|
|
|
738
758
|
def custom(
|
|
739
759
|
cls,
|
|
740
760
|
*,
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
744
|
-
|
|
745
|
-
|
|
761
|
+
allow_arbitrary_extensions: typing.Optional[builtins.bool] = None,
|
|
762
|
+
allow_importing_ts_extensions: typing.Optional[builtins.bool] = None,
|
|
763
|
+
allow_js: typing.Optional[builtins.bool] = None,
|
|
764
|
+
allow_synthetic_default_imports: typing.Optional[builtins.bool] = None,
|
|
765
|
+
allow_unreachable_code: typing.Optional[builtins.bool] = None,
|
|
766
|
+
allow_unused_labels: typing.Optional[builtins.bool] = None,
|
|
767
|
+
always_strict: typing.Optional[builtins.bool] = None,
|
|
768
|
+
base_url: typing.Optional[builtins.str] = None,
|
|
769
|
+
check_js: typing.Optional[builtins.bool] = None,
|
|
770
|
+
custom_conditions: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
771
|
+
declaration: typing.Optional[builtins.bool] = None,
|
|
772
|
+
declaration_dir: typing.Optional[builtins.str] = None,
|
|
773
|
+
declaration_map: typing.Optional[builtins.bool] = None,
|
|
774
|
+
downlevel_iteration: typing.Optional[builtins.bool] = None,
|
|
775
|
+
emit_declaration_only: typing.Optional[builtins.bool] = None,
|
|
776
|
+
emit_decorator_metadata: typing.Optional[builtins.bool] = None,
|
|
777
|
+
es_module_interop: typing.Optional[builtins.bool] = None,
|
|
778
|
+
exact_optional_property_types: typing.Optional[builtins.bool] = None,
|
|
779
|
+
experimental_decorators: typing.Optional[builtins.bool] = None,
|
|
780
|
+
force_consistent_casing_in_file_names: typing.Optional[builtins.bool] = None,
|
|
781
|
+
imports_not_used_as_values: typing.Optional[_TypeScriptImportsNotUsedAsValues_95cb8527] = None,
|
|
782
|
+
incremental: typing.Optional[builtins.bool] = None,
|
|
783
|
+
inline_source_map: typing.Optional[builtins.bool] = None,
|
|
784
|
+
inline_sources: typing.Optional[builtins.bool] = None,
|
|
785
|
+
isolated_modules: typing.Optional[builtins.bool] = None,
|
|
786
|
+
jsx: typing.Optional[_TypeScriptJsxMode_8489d67f] = None,
|
|
787
|
+
jsx_import_source: typing.Optional[builtins.str] = None,
|
|
788
|
+
lib: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
789
|
+
module: typing.Optional[builtins.str] = None,
|
|
790
|
+
module_detection: typing.Optional[_TypeScriptModuleDetection_28bd432f] = None,
|
|
791
|
+
module_resolution: typing.Optional[_TypeScriptModuleResolution_56cffb1b] = None,
|
|
792
|
+
no_emit: typing.Optional[builtins.bool] = None,
|
|
793
|
+
no_emit_on_error: typing.Optional[builtins.bool] = None,
|
|
794
|
+
no_fallthrough_cases_in_switch: typing.Optional[builtins.bool] = None,
|
|
795
|
+
no_implicit_any: typing.Optional[builtins.bool] = None,
|
|
796
|
+
no_implicit_override: typing.Optional[builtins.bool] = None,
|
|
797
|
+
no_implicit_returns: typing.Optional[builtins.bool] = None,
|
|
798
|
+
no_implicit_this: typing.Optional[builtins.bool] = None,
|
|
799
|
+
no_property_access_from_index_signature: typing.Optional[builtins.bool] = None,
|
|
800
|
+
no_unchecked_indexed_access: typing.Optional[builtins.bool] = None,
|
|
801
|
+
no_unused_locals: typing.Optional[builtins.bool] = None,
|
|
802
|
+
no_unused_parameters: typing.Optional[builtins.bool] = None,
|
|
803
|
+
out_dir: typing.Optional[builtins.str] = None,
|
|
804
|
+
paths: typing.Optional[typing.Mapping[builtins.str, typing.Sequence[builtins.str]]] = None,
|
|
805
|
+
resolve_json_module: typing.Optional[builtins.bool] = None,
|
|
806
|
+
resolve_package_json_exports: typing.Optional[builtins.bool] = None,
|
|
807
|
+
resolve_package_json_imports: typing.Optional[builtins.bool] = None,
|
|
808
|
+
root_dir: typing.Optional[builtins.str] = None,
|
|
809
|
+
skip_lib_check: typing.Optional[builtins.bool] = None,
|
|
810
|
+
source_map: typing.Optional[builtins.bool] = None,
|
|
811
|
+
source_root: typing.Optional[builtins.str] = None,
|
|
812
|
+
strict: typing.Optional[builtins.bool] = None,
|
|
813
|
+
strict_null_checks: typing.Optional[builtins.bool] = None,
|
|
814
|
+
strict_property_initialization: typing.Optional[builtins.bool] = None,
|
|
815
|
+
strip_internal: typing.Optional[builtins.bool] = None,
|
|
816
|
+
target: typing.Optional[builtins.str] = None,
|
|
817
|
+
ts_build_info_file: typing.Optional[builtins.str] = None,
|
|
818
|
+
type_roots: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
819
|
+
types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
820
|
+
use_unknown_in_catch_variables: typing.Optional[builtins.bool] = None,
|
|
821
|
+
verbatim_module_syntax: typing.Optional[builtins.bool] = None,
|
|
746
822
|
) -> "TsJestTsconfig":
|
|
747
823
|
'''(experimental) Inline compiler options.
|
|
748
824
|
|
|
749
|
-
:param
|
|
750
|
-
:param
|
|
751
|
-
:param
|
|
752
|
-
:param
|
|
753
|
-
:param
|
|
754
|
-
|
|
755
|
-
:
|
|
756
|
-
:
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
825
|
+
:param allow_arbitrary_extensions: (experimental) Suppress arbitrary extension import errors with the assumption that a bundler will be handling it. Default: undefined
|
|
826
|
+
:param allow_importing_ts_extensions: (experimental) Allows TypeScript files to import each other with TypeScript-specific extensions (``.ts``, ``.mts``, ``.tsx``). Requires ``noEmit`` or ``emitDeclarationOnly``. Default: undefined
|
|
827
|
+
:param allow_js: (experimental) Allow JavaScript files to be compiled. Default: false
|
|
828
|
+
:param allow_synthetic_default_imports: (experimental) Allow default imports from modules with no default export. This does not affect code emit, just typechecking.
|
|
829
|
+
:param allow_unreachable_code: (experimental) Allow Unreachable Code. When: - ``undefined`` (default) provide suggestions as warnings to editors - ``true`` unreachable code is ignored - ``false`` raises compiler errors about unreachable code These warnings are only about code which is provably unreachable due to the use of JavaScript syntax.
|
|
830
|
+
:param allow_unused_labels: (experimental) Allow Unused Labels. When: - ``undefined`` (default) provide suggestions as warnings to editors - ``true`` unused labels are ignored - ``false`` raises compiler errors about unused labels Labels are very rare in JavaScript and typically indicate an attempt to write an object literal:: function verifyAge(age: number) { // Forgot 'return' statement if (age > 18) { verified: true; // ^^^^^^^^ Unused label. } }
|
|
831
|
+
:param always_strict: (experimental) Ensures that your files are parsed in the ECMAScript strict mode, and emit “use strict” for each source file. Default: true
|
|
832
|
+
:param base_url: (experimental) Lets you set a base directory to resolve non-absolute module names. You can define a root folder where you can do absolute file resolution.
|
|
833
|
+
:param check_js: (experimental) Check JS. Works in tandem with `allowJs <https://www.typescriptlang.org/tsconfig#allowJs>`_. When checkJs is enabled then errors are reported in JavaScript files. This is the equivalent of including //
|
|
834
|
+
:param custom_conditions: (experimental) List of additional conditions that should succeed when TypeScript resolves from an ``exports`` or ``imports`` field of a ``package.json``. Default: undefined
|
|
835
|
+
:param declaration: (experimental) To be specified along with the above.
|
|
836
|
+
:param declaration_dir: (experimental) Offers a way to configure the root directory for where declaration files are emitted.
|
|
837
|
+
:param declaration_map: (experimental) Generates a source map for .d.ts files which map back to the original .ts source file. This will allow editors such as VS Code to go to the original .ts file when using features like Go to Definition.
|
|
838
|
+
:param downlevel_iteration: (experimental) Downleveling is TypeScript’s term for transpiling to an older version of JavaScript. This flag is to enable support for a more accurate implementation of how modern JavaScript iterates through new concepts in older JavaScript runtimes. ECMAScript 6 added several new iteration primitives: the for / of loop (for (el of arr)), Array spread ([a, ...b]), argument spread (fn(...args)), and Symbol.iterator. downlevelIteration allows for these iteration primitives to be used more accurately in ES5 environments if a Symbol.iterator implementation is present.
|
|
839
|
+
:param emit_declaration_only: (experimental) Only emit .d.ts files; do not emit .js files. Default: false
|
|
840
|
+
:param emit_decorator_metadata: (experimental) Enables experimental support for decorators, which is in stage 2 of the TC39 standardization process. Decorators are a language feature which hasn’t yet been fully ratified into the JavaScript specification. This means that the implementation version in TypeScript may differ from the implementation in JavaScript when it it decided by TC39. You can find out more about decorator support in TypeScript in the handbook. Default: undefined
|
|
841
|
+
:param es_module_interop: (experimental) Emit __importStar and __importDefault helpers for runtime babel ecosystem compatibility and enable --allowSyntheticDefaultImports for typesystem compatibility. Default: false
|
|
842
|
+
:param exact_optional_property_types: (experimental) Specifies that optional property types should be interpreted exactly as written, meaning that ``| undefined`` is not added to the type Available with TypeScript 4.4 and newer. Default: false
|
|
843
|
+
:param experimental_decorators: (experimental) Enables experimental support for decorators, which is in stage 2 of the TC39 standardization process. Default: true
|
|
844
|
+
:param force_consistent_casing_in_file_names: (experimental) Disallow inconsistently-cased references to the same file. Default: false
|
|
845
|
+
:param imports_not_used_as_values: (experimental) This flag works because you can use ``import type`` to explicitly create an ``import`` statement which should never be emitted into JavaScript. Default: "remove"
|
|
846
|
+
:param incremental: (experimental) Tells TypeScript to save information about the project graph from the last compilation to files stored on disk. This creates a series of .tsbuildinfo files in the same folder as your compilation output. They are not used by your JavaScript at runtime and can be safely deleted. You can read more about the flag in the 3.4 release notes.
|
|
847
|
+
:param inline_source_map: (experimental) When set, instead of writing out a .js.map file to provide source maps, TypeScript will embed the source map content in the .js files. Default: true
|
|
848
|
+
:param inline_sources: (experimental) When set, TypeScript will include the original content of the .ts file as an embedded string in the source map. This is often useful in the same cases as inlineSourceMap. Default: true
|
|
849
|
+
:param isolated_modules: (experimental) Perform additional checks to ensure that separate compilation (such as with transpileModule or. Default: false
|
|
850
|
+
:param jsx: (experimental) Support JSX in .tsx files: "react", "preserve", "react-native" etc. Default: undefined
|
|
851
|
+
:param jsx_import_source: (experimental) Declares the module specifier to be used for importing the jsx and jsxs factory functions when using jsx. Default: undefined
|
|
852
|
+
:param lib: (experimental) Reference for type definitions / libraries to use (eg. ES2016, ES5, ES2018). Default: [ "es2018" ]
|
|
853
|
+
:param module: (experimental) Sets the module system for the program. See https://www.typescriptlang.org/docs/handbook/modules.html#ambient-modules. Default: "CommonJS"
|
|
854
|
+
:param module_detection: (experimental) This setting controls how TypeScript determines whether a file is a `script or a module <https://www.typescriptlang.org/docs/handbook/modules/theory.html#scripts-and-modules-in-javascript>`_. Default: "auto"
|
|
855
|
+
:param module_resolution: (experimental) Determine how modules get resolved. Either "Node" for Node.js/io.js style resolution, or "Classic". Default: "node"
|
|
856
|
+
:param no_emit: (experimental) Do not emit outputs. Default: false
|
|
857
|
+
:param no_emit_on_error: (experimental) Do not emit compiler output files like JavaScript source code, source-maps or declarations if any errors were reported. Default: true
|
|
858
|
+
:param no_fallthrough_cases_in_switch: (experimental) Report errors for fallthrough cases in switch statements. Ensures that any non-empty case inside a switch statement includes either break or return. This means you won’t accidentally ship a case fallthrough bug. Default: true
|
|
859
|
+
:param no_implicit_any: (experimental) In some cases where no type annotations are present, TypeScript will fall back to a type of any for a variable when it cannot infer the type. Default: true
|
|
860
|
+
:param no_implicit_override: (experimental) Using ``noImplicitOverride``, you can ensure that sub-classes never go out of sync as they are required to explicitly declare that they are overriding a member using the ``override`` keyword. This also improves readability of the programmer's intent. Available with TypeScript 4.3 and newer. Default: false
|
|
861
|
+
:param no_implicit_returns: (experimental) When enabled, TypeScript will check all code paths in a function to ensure they return a value. Default: true
|
|
862
|
+
:param no_implicit_this: (experimental) Raise error on ‘this’ expressions with an implied ‘any’ type. Default: true
|
|
863
|
+
:param no_property_access_from_index_signature: (experimental) Raise error on use of the dot syntax to access fields which are not defined. Default: true
|
|
864
|
+
:param no_unchecked_indexed_access: (experimental) Raise error when accessing indexes on objects with unknown keys defined in index signatures. Default: true
|
|
865
|
+
:param no_unused_locals: (experimental) Report errors on unused local variables. Default: true
|
|
866
|
+
:param no_unused_parameters: (experimental) Report errors on unused parameters in functions. Default: true
|
|
867
|
+
:param out_dir: (experimental) Output directory for the compiled files.
|
|
868
|
+
:param paths: (experimental) A series of entries which re-map imports to lookup locations relative to the baseUrl, there is a larger coverage of paths in the handbook. paths lets you declare how TypeScript should resolve an import in your require/imports.
|
|
869
|
+
:param resolve_json_module: (experimental) Allows importing modules with a ‘.json’ extension, which is a common practice in node projects. This includes generating a type for the import based on the static JSON shape. Default: true
|
|
870
|
+
:param resolve_package_json_exports: (experimental) Forces TypeScript to consult the ``exports`` field of ``package.json`` files if it ever reads from a package in ``node_modules``. Default: true
|
|
871
|
+
:param resolve_package_json_imports: (experimental) Forces TypeScript to consult the ``imports`` field of ``package.json`` when performing a lookup that begins with ``#`` from a file that has a ``package.json`` as an ancestor. Default: undefined
|
|
872
|
+
:param root_dir: (experimental) Specifies the root directory of input files. Only use to control the output directory structure with ``outDir``.
|
|
873
|
+
:param skip_lib_check: (experimental) Skip type checking of all declaration files (*.d.ts). Default: false
|
|
874
|
+
:param source_map: (experimental) Enables the generation of sourcemap files. Default: undefined
|
|
875
|
+
:param source_root: (experimental) Specify the location where a debugger should locate TypeScript files instead of relative source locations. Default: undefined
|
|
876
|
+
:param strict: (experimental) The strict flag enables a wide range of type checking behavior that results in stronger guarantees of program correctness. Turning this on is equivalent to enabling all of the strict mode family options, which are outlined below. You can then turn off individual strict mode family checks as needed. Default: true
|
|
877
|
+
:param strict_null_checks: (experimental) When strictNullChecks is false, null and undefined are effectively ignored by the language. This can lead to unexpected errors at runtime. When strictNullChecks is true, null and undefined have their own distinct types and you’ll get a type error if you try to use them where a concrete value is expected. Default: true
|
|
878
|
+
:param strict_property_initialization: (experimental) When set to true, TypeScript will raise an error when a class property was declared but not set in the constructor. Default: true
|
|
879
|
+
:param strip_internal: (experimental) Do not emit declarations for code that has an ``@internal`` annotation in it’s JSDoc comment. Default: true
|
|
880
|
+
:param target: (experimental) Modern browsers support all ES6 features, so ES6 is a good choice. You might choose to set a lower target if your code is deployed to older environments, or a higher target if your code is guaranteed to run in newer environments. Default: "ES2018"
|
|
881
|
+
:param ts_build_info_file: (experimental) This setting lets you specify a file for storing incremental compilation information as a part of composite projects which enables faster building of larger TypeScript codebases. You can read more about composite projects in the handbook.
|
|
882
|
+
:param type_roots: (experimental) If typeRoots is specified, only packages under typeRoots will be included.
|
|
883
|
+
:param types: (experimental) If types is specified, only packages listed will be included in the global scope.
|
|
884
|
+
:param use_unknown_in_catch_variables: (experimental) Change the type of the variable in a catch clause from any to unknown Available with TypeScript 4.4 and newer. Default: true
|
|
885
|
+
:param verbatim_module_syntax: (experimental) Simplifies TypeScript's handling of import/export ``type`` modifiers. Default: undefined
|
|
886
|
+
|
|
887
|
+
:see: TypeScriptCompilerOptions
|
|
888
|
+
:stability: experimental
|
|
889
|
+
'''
|
|
890
|
+
config = _TypeScriptCompilerOptions_829fc4b0(
|
|
891
|
+
allow_arbitrary_extensions=allow_arbitrary_extensions,
|
|
892
|
+
allow_importing_ts_extensions=allow_importing_ts_extensions,
|
|
893
|
+
allow_js=allow_js,
|
|
894
|
+
allow_synthetic_default_imports=allow_synthetic_default_imports,
|
|
895
|
+
allow_unreachable_code=allow_unreachable_code,
|
|
896
|
+
allow_unused_labels=allow_unused_labels,
|
|
897
|
+
always_strict=always_strict,
|
|
898
|
+
base_url=base_url,
|
|
899
|
+
check_js=check_js,
|
|
900
|
+
custom_conditions=custom_conditions,
|
|
901
|
+
declaration=declaration,
|
|
902
|
+
declaration_dir=declaration_dir,
|
|
903
|
+
declaration_map=declaration_map,
|
|
904
|
+
downlevel_iteration=downlevel_iteration,
|
|
905
|
+
emit_declaration_only=emit_declaration_only,
|
|
906
|
+
emit_decorator_metadata=emit_decorator_metadata,
|
|
907
|
+
es_module_interop=es_module_interop,
|
|
908
|
+
exact_optional_property_types=exact_optional_property_types,
|
|
909
|
+
experimental_decorators=experimental_decorators,
|
|
910
|
+
force_consistent_casing_in_file_names=force_consistent_casing_in_file_names,
|
|
911
|
+
imports_not_used_as_values=imports_not_used_as_values,
|
|
912
|
+
incremental=incremental,
|
|
913
|
+
inline_source_map=inline_source_map,
|
|
914
|
+
inline_sources=inline_sources,
|
|
915
|
+
isolated_modules=isolated_modules,
|
|
916
|
+
jsx=jsx,
|
|
917
|
+
jsx_import_source=jsx_import_source,
|
|
918
|
+
lib=lib,
|
|
919
|
+
module=module,
|
|
920
|
+
module_detection=module_detection,
|
|
921
|
+
module_resolution=module_resolution,
|
|
922
|
+
no_emit=no_emit,
|
|
923
|
+
no_emit_on_error=no_emit_on_error,
|
|
924
|
+
no_fallthrough_cases_in_switch=no_fallthrough_cases_in_switch,
|
|
925
|
+
no_implicit_any=no_implicit_any,
|
|
926
|
+
no_implicit_override=no_implicit_override,
|
|
927
|
+
no_implicit_returns=no_implicit_returns,
|
|
928
|
+
no_implicit_this=no_implicit_this,
|
|
929
|
+
no_property_access_from_index_signature=no_property_access_from_index_signature,
|
|
930
|
+
no_unchecked_indexed_access=no_unchecked_indexed_access,
|
|
931
|
+
no_unused_locals=no_unused_locals,
|
|
932
|
+
no_unused_parameters=no_unused_parameters,
|
|
933
|
+
out_dir=out_dir,
|
|
934
|
+
paths=paths,
|
|
935
|
+
resolve_json_module=resolve_json_module,
|
|
936
|
+
resolve_package_json_exports=resolve_package_json_exports,
|
|
937
|
+
resolve_package_json_imports=resolve_package_json_imports,
|
|
938
|
+
root_dir=root_dir,
|
|
939
|
+
skip_lib_check=skip_lib_check,
|
|
940
|
+
source_map=source_map,
|
|
941
|
+
source_root=source_root,
|
|
942
|
+
strict=strict,
|
|
943
|
+
strict_null_checks=strict_null_checks,
|
|
944
|
+
strict_property_initialization=strict_property_initialization,
|
|
945
|
+
strip_internal=strip_internal,
|
|
946
|
+
target=target,
|
|
947
|
+
ts_build_info_file=ts_build_info_file,
|
|
948
|
+
type_roots=type_roots,
|
|
949
|
+
types=types,
|
|
950
|
+
use_unknown_in_catch_variables=use_unknown_in_catch_variables,
|
|
951
|
+
verbatim_module_syntax=verbatim_module_syntax,
|
|
764
952
|
)
|
|
765
953
|
|
|
766
954
|
return typing.cast("TsJestTsconfig", jsii.sinvoke(cls, "custom", [config]))
|
|
@@ -816,7 +1004,11 @@ class TypeScriptProject(
|
|
|
816
1004
|
typescript_version: typing.Optional[builtins.str] = None,
|
|
817
1005
|
default_release_branch: builtins.str,
|
|
818
1006
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
1007
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
1008
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
819
1009
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
1010
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
1011
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
820
1012
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
821
1013
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
822
1014
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -880,6 +1072,7 @@ class TypeScriptProject(
|
|
|
880
1072
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
881
1073
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
882
1074
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1075
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
883
1076
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
884
1077
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
885
1078
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -896,6 +1089,7 @@ class TypeScriptProject(
|
|
|
896
1089
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
897
1090
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
898
1091
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
1092
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
899
1093
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
900
1094
|
package_name: typing.Optional[builtins.str] = None,
|
|
901
1095
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -907,9 +1101,11 @@ class TypeScriptProject(
|
|
|
907
1101
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
908
1102
|
stability: typing.Optional[builtins.str] = None,
|
|
909
1103
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1104
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
910
1105
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
911
1106
|
major_version: typing.Optional[jsii.Number] = None,
|
|
912
1107
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
1108
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
913
1109
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
914
1110
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
915
1111
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -917,12 +1113,14 @@ class TypeScriptProject(
|
|
|
917
1113
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
918
1114
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
919
1115
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1116
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
920
1117
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
921
1118
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
922
1119
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
923
1120
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
924
1121
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
925
1122
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
1123
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
926
1124
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
927
1125
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
928
1126
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -948,7 +1146,7 @@ class TypeScriptProject(
|
|
|
948
1146
|
:param docgen: (experimental) Docgen by Typedoc. Default: false
|
|
949
1147
|
:param docs_directory: (experimental) Docs directory. Default: "docs"
|
|
950
1148
|
: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)
|
|
951
|
-
:param eslint: (experimental) Setup eslint. Default: true
|
|
1149
|
+
:param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
|
|
952
1150
|
:param eslint_options: (experimental) Eslint options. Default: - opinionated default options
|
|
953
1151
|
:param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
|
|
954
1152
|
:param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
|
|
@@ -963,14 +1161,18 @@ class TypeScriptProject(
|
|
|
963
1161
|
: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"
|
|
964
1162
|
:param default_release_branch: (experimental) The name of the main release branch. Default: "main"
|
|
965
1163
|
:param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
|
|
1164
|
+
: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
|
|
1165
|
+
:param audit_deps_options: (experimental) Security audit options. Default: - default options
|
|
966
1166
|
: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
|
|
1167
|
+
:param biome: (experimental) Setup Biome. Default: false
|
|
1168
|
+
:param biome_options: (experimental) Biome options. Default: - default options
|
|
967
1169
|
:param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
|
|
968
1170
|
:param build_workflow_options: (experimental) Options for PR build workflow.
|
|
969
1171
|
:param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
|
|
970
1172
|
:param bundler_options: (experimental) Options for ``Bundler``.
|
|
971
1173
|
: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
|
|
972
|
-
:param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
973
|
-
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token
|
|
1174
|
+
: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
|
|
1175
|
+
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
|
|
974
1176
|
:param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
|
|
975
1177
|
:param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
|
|
976
1178
|
:param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
|
|
@@ -997,8 +1199,8 @@ class TypeScriptProject(
|
|
|
997
1199
|
:param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
|
|
998
1200
|
:param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
|
|
999
1201
|
:param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
|
|
1000
|
-
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
|
|
1001
|
-
:param workflow_node_version: (experimental) The node version
|
|
1202
|
+
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
|
|
1203
|
+
: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/*``.
|
|
1002
1204
|
:param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
|
|
1003
1205
|
:param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
|
|
1004
1206
|
:param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
|
|
@@ -1027,6 +1229,7 @@ class TypeScriptProject(
|
|
|
1027
1229
|
:param bugs_email: (experimental) The email address to which issues should be reported.
|
|
1028
1230
|
:param bugs_url: (experimental) The url to your project's issue tracker.
|
|
1029
1231
|
: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.
|
|
1232
|
+
:param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
|
|
1030
1233
|
: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
|
|
1031
1234
|
: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: []
|
|
1032
1235
|
: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
|
|
@@ -1036,27 +1239,30 @@ class TypeScriptProject(
|
|
|
1036
1239
|
:param keywords: (experimental) Keywords to include in ``package.json``.
|
|
1037
1240
|
: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"
|
|
1038
1241
|
:param licensed: (experimental) Indicates if a license should be added. Default: true
|
|
1039
|
-
:param max_node_version: (experimental)
|
|
1040
|
-
:param min_node_version: (experimental)
|
|
1242
|
+
: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
|
|
1243
|
+
: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
|
|
1041
1244
|
: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``.
|
|
1042
1245
|
: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
|
|
1043
1246
|
:param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
|
|
1044
1247
|
: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"
|
|
1045
1248
|
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
|
|
1249
|
+
: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
|
|
1046
1250
|
:param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
|
|
1047
1251
|
:param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
|
|
1048
1252
|
:param peer_dependency_options: (experimental) Options for ``peerDeps``.
|
|
1049
1253
|
: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: []
|
|
1050
|
-
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "
|
|
1254
|
+
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
|
|
1051
1255
|
: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
|
|
1052
1256
|
: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.
|
|
1053
1257
|
:param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
|
|
1054
1258
|
: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: {}
|
|
1055
1259
|
:param stability: (experimental) Package's Stability.
|
|
1056
1260
|
:param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
|
|
1261
|
+
: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"
|
|
1057
1262
|
:param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
|
|
1058
1263
|
: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.
|
|
1059
1264
|
: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
|
|
1265
|
+
: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.
|
|
1060
1266
|
: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"
|
|
1061
1267
|
:param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
|
|
1062
1268
|
:param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
|
|
@@ -1064,15 +1270,17 @@ class TypeScriptProject(
|
|
|
1064
1270
|
: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
|
|
1065
1271
|
:param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
|
|
1066
1272
|
: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.
|
|
1273
|
+
: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
|
|
1067
1274
|
:param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
|
|
1068
1275
|
:param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
|
|
1069
1276
|
:param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
|
|
1070
1277
|
:param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
|
|
1071
1278
|
: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"
|
|
1072
1279
|
:param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
|
|
1280
|
+
:param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
|
|
1073
1281
|
:param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
|
|
1074
1282
|
:param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
|
|
1075
|
-
:param versionrc_options: (experimental) Custom configuration used when creating changelog with
|
|
1283
|
+
: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
|
|
1076
1284
|
:param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
|
|
1077
1285
|
:param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
|
|
1078
1286
|
:param workflow_runs_on_group: (experimental) Github Runner Group selection options.
|
|
@@ -1112,7 +1320,11 @@ class TypeScriptProject(
|
|
|
1112
1320
|
typescript_version=typescript_version,
|
|
1113
1321
|
default_release_branch=default_release_branch,
|
|
1114
1322
|
artifacts_directory=artifacts_directory,
|
|
1323
|
+
audit_deps=audit_deps,
|
|
1324
|
+
audit_deps_options=audit_deps_options,
|
|
1115
1325
|
auto_approve_upgrades=auto_approve_upgrades,
|
|
1326
|
+
biome=biome,
|
|
1327
|
+
biome_options=biome_options,
|
|
1116
1328
|
build_workflow=build_workflow,
|
|
1117
1329
|
build_workflow_options=build_workflow_options,
|
|
1118
1330
|
build_workflow_triggers=build_workflow_triggers,
|
|
@@ -1176,6 +1388,7 @@ class TypeScriptProject(
|
|
|
1176
1388
|
bugs_email=bugs_email,
|
|
1177
1389
|
bugs_url=bugs_url,
|
|
1178
1390
|
bundled_deps=bundled_deps,
|
|
1391
|
+
bun_version=bun_version,
|
|
1179
1392
|
code_artifact_options=code_artifact_options,
|
|
1180
1393
|
deps=deps,
|
|
1181
1394
|
description=description,
|
|
@@ -1192,6 +1405,7 @@ class TypeScriptProject(
|
|
|
1192
1405
|
npm_registry=npm_registry,
|
|
1193
1406
|
npm_registry_url=npm_registry_url,
|
|
1194
1407
|
npm_token_secret=npm_token_secret,
|
|
1408
|
+
npm_trusted_publishing=npm_trusted_publishing,
|
|
1195
1409
|
package_manager=package_manager,
|
|
1196
1410
|
package_name=package_name,
|
|
1197
1411
|
peer_dependency_options=peer_dependency_options,
|
|
@@ -1203,9 +1417,11 @@ class TypeScriptProject(
|
|
|
1203
1417
|
scripts=scripts,
|
|
1204
1418
|
stability=stability,
|
|
1205
1419
|
yarn_berry_options=yarn_berry_options,
|
|
1420
|
+
bump_package=bump_package,
|
|
1206
1421
|
jsii_release_version=jsii_release_version,
|
|
1207
1422
|
major_version=major_version,
|
|
1208
1423
|
min_major_version=min_major_version,
|
|
1424
|
+
next_version_command=next_version_command,
|
|
1209
1425
|
npm_dist_tag=npm_dist_tag,
|
|
1210
1426
|
post_build_steps=post_build_steps,
|
|
1211
1427
|
prerelease=prerelease,
|
|
@@ -1213,12 +1429,14 @@ class TypeScriptProject(
|
|
|
1213
1429
|
publish_tasks=publish_tasks,
|
|
1214
1430
|
releasable_commits=releasable_commits,
|
|
1215
1431
|
release_branches=release_branches,
|
|
1432
|
+
release_environment=release_environment,
|
|
1216
1433
|
release_every_commit=release_every_commit,
|
|
1217
1434
|
release_failure_issue=release_failure_issue,
|
|
1218
1435
|
release_failure_issue_label=release_failure_issue_label,
|
|
1219
1436
|
release_schedule=release_schedule,
|
|
1220
1437
|
release_tag_prefix=release_tag_prefix,
|
|
1221
1438
|
release_trigger=release_trigger,
|
|
1439
|
+
release_workflow_env=release_workflow_env,
|
|
1222
1440
|
release_workflow_name=release_workflow_name,
|
|
1223
1441
|
release_workflow_setup_steps=release_workflow_setup_steps,
|
|
1224
1442
|
versionrc_options=versionrc_options,
|
|
@@ -1241,6 +1459,16 @@ class TypeScriptProject(
|
|
|
1241
1459
|
|
|
1242
1460
|
jsii.create(self.__class__, self, [options])
|
|
1243
1461
|
|
|
1462
|
+
@jsii.member(jsii_name="defaultTypeScriptCompilerOptions")
|
|
1463
|
+
def _default_type_script_compiler_options(
|
|
1464
|
+
self,
|
|
1465
|
+
) -> _TypeScriptCompilerOptions_829fc4b0:
|
|
1466
|
+
'''(experimental) Projen default Typescript compiler options.
|
|
1467
|
+
|
|
1468
|
+
:stability: experimental
|
|
1469
|
+
'''
|
|
1470
|
+
return typing.cast(_TypeScriptCompilerOptions_829fc4b0, jsii.invoke(self, "defaultTypeScriptCompilerOptions", []))
|
|
1471
|
+
|
|
1244
1472
|
@jsii.python.classproperty
|
|
1245
1473
|
@jsii.member(jsii_name="DEFAULT_TS_JEST_TRANFORM_PATTERN")
|
|
1246
1474
|
def DEFAULT_TS_JEST_TRANFORM_PATTERN(cls) -> builtins.str:
|
|
@@ -1378,6 +1606,7 @@ class TypeScriptProject(
|
|
|
1378
1606
|
"bugs_email": "bugsEmail",
|
|
1379
1607
|
"bugs_url": "bugsUrl",
|
|
1380
1608
|
"bundled_deps": "bundledDeps",
|
|
1609
|
+
"bun_version": "bunVersion",
|
|
1381
1610
|
"code_artifact_options": "codeArtifactOptions",
|
|
1382
1611
|
"deps": "deps",
|
|
1383
1612
|
"description": "description",
|
|
@@ -1394,6 +1623,7 @@ class TypeScriptProject(
|
|
|
1394
1623
|
"npm_registry": "npmRegistry",
|
|
1395
1624
|
"npm_registry_url": "npmRegistryUrl",
|
|
1396
1625
|
"npm_token_secret": "npmTokenSecret",
|
|
1626
|
+
"npm_trusted_publishing": "npmTrustedPublishing",
|
|
1397
1627
|
"package_manager": "packageManager",
|
|
1398
1628
|
"package_name": "packageName",
|
|
1399
1629
|
"peer_dependency_options": "peerDependencyOptions",
|
|
@@ -1405,9 +1635,11 @@ class TypeScriptProject(
|
|
|
1405
1635
|
"scripts": "scripts",
|
|
1406
1636
|
"stability": "stability",
|
|
1407
1637
|
"yarn_berry_options": "yarnBerryOptions",
|
|
1638
|
+
"bump_package": "bumpPackage",
|
|
1408
1639
|
"jsii_release_version": "jsiiReleaseVersion",
|
|
1409
1640
|
"major_version": "majorVersion",
|
|
1410
1641
|
"min_major_version": "minMajorVersion",
|
|
1642
|
+
"next_version_command": "nextVersionCommand",
|
|
1411
1643
|
"npm_dist_tag": "npmDistTag",
|
|
1412
1644
|
"post_build_steps": "postBuildSteps",
|
|
1413
1645
|
"prerelease": "prerelease",
|
|
@@ -1415,12 +1647,14 @@ class TypeScriptProject(
|
|
|
1415
1647
|
"publish_tasks": "publishTasks",
|
|
1416
1648
|
"releasable_commits": "releasableCommits",
|
|
1417
1649
|
"release_branches": "releaseBranches",
|
|
1650
|
+
"release_environment": "releaseEnvironment",
|
|
1418
1651
|
"release_every_commit": "releaseEveryCommit",
|
|
1419
1652
|
"release_failure_issue": "releaseFailureIssue",
|
|
1420
1653
|
"release_failure_issue_label": "releaseFailureIssueLabel",
|
|
1421
1654
|
"release_schedule": "releaseSchedule",
|
|
1422
1655
|
"release_tag_prefix": "releaseTagPrefix",
|
|
1423
1656
|
"release_trigger": "releaseTrigger",
|
|
1657
|
+
"release_workflow_env": "releaseWorkflowEnv",
|
|
1424
1658
|
"release_workflow_name": "releaseWorkflowName",
|
|
1425
1659
|
"release_workflow_setup_steps": "releaseWorkflowSetupSteps",
|
|
1426
1660
|
"versionrc_options": "versionrcOptions",
|
|
@@ -1429,7 +1663,11 @@ class TypeScriptProject(
|
|
|
1429
1663
|
"workflow_runs_on_group": "workflowRunsOnGroup",
|
|
1430
1664
|
"default_release_branch": "defaultReleaseBranch",
|
|
1431
1665
|
"artifacts_directory": "artifactsDirectory",
|
|
1666
|
+
"audit_deps": "auditDeps",
|
|
1667
|
+
"audit_deps_options": "auditDepsOptions",
|
|
1432
1668
|
"auto_approve_upgrades": "autoApproveUpgrades",
|
|
1669
|
+
"biome": "biome",
|
|
1670
|
+
"biome_options": "biomeOptions",
|
|
1433
1671
|
"build_workflow": "buildWorkflow",
|
|
1434
1672
|
"build_workflow_options": "buildWorkflowOptions",
|
|
1435
1673
|
"build_workflow_triggers": "buildWorkflowTriggers",
|
|
@@ -1529,6 +1767,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1529
1767
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
1530
1768
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
1531
1769
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1770
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
1532
1771
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1533
1772
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
1534
1773
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -1545,6 +1784,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1545
1784
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
1546
1785
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
1547
1786
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
1787
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
1548
1788
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
1549
1789
|
package_name: typing.Optional[builtins.str] = None,
|
|
1550
1790
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -1556,9 +1796,11 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1556
1796
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
1557
1797
|
stability: typing.Optional[builtins.str] = None,
|
|
1558
1798
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1799
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
1559
1800
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
1560
1801
|
major_version: typing.Optional[jsii.Number] = None,
|
|
1561
1802
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
1803
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
1562
1804
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
1563
1805
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1564
1806
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -1566,12 +1808,14 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1566
1808
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
1567
1809
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
1568
1810
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1811
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
1569
1812
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
1570
1813
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
1571
1814
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
1572
1815
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
1573
1816
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
1574
1817
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
1818
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
1575
1819
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
1576
1820
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1577
1821
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -1580,7 +1824,11 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1580
1824
|
workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1581
1825
|
default_release_branch: builtins.str,
|
|
1582
1826
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
1827
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
1828
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1583
1829
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
1830
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
1831
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1584
1832
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
1585
1833
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
1586
1834
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -1676,6 +1924,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1676
1924
|
:param bugs_email: (experimental) The email address to which issues should be reported.
|
|
1677
1925
|
:param bugs_url: (experimental) The url to your project's issue tracker.
|
|
1678
1926
|
: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.
|
|
1927
|
+
:param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
|
|
1679
1928
|
: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
|
|
1680
1929
|
: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: []
|
|
1681
1930
|
: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
|
|
@@ -1685,27 +1934,30 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1685
1934
|
:param keywords: (experimental) Keywords to include in ``package.json``.
|
|
1686
1935
|
: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"
|
|
1687
1936
|
:param licensed: (experimental) Indicates if a license should be added. Default: true
|
|
1688
|
-
:param max_node_version: (experimental)
|
|
1689
|
-
:param min_node_version: (experimental)
|
|
1937
|
+
: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
|
|
1938
|
+
: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
|
|
1690
1939
|
: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``.
|
|
1691
1940
|
: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
|
|
1692
1941
|
:param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
|
|
1693
1942
|
: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"
|
|
1694
1943
|
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
|
|
1944
|
+
: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
|
|
1695
1945
|
:param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
|
|
1696
1946
|
:param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
|
|
1697
1947
|
:param peer_dependency_options: (experimental) Options for ``peerDeps``.
|
|
1698
1948
|
: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: []
|
|
1699
|
-
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "
|
|
1949
|
+
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
|
|
1700
1950
|
: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
|
|
1701
1951
|
: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.
|
|
1702
1952
|
:param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
|
|
1703
1953
|
: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: {}
|
|
1704
1954
|
:param stability: (experimental) Package's Stability.
|
|
1705
1955
|
:param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
|
|
1956
|
+
: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"
|
|
1706
1957
|
:param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
|
|
1707
1958
|
: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.
|
|
1708
1959
|
: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
|
|
1960
|
+
: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.
|
|
1709
1961
|
: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"
|
|
1710
1962
|
:param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
|
|
1711
1963
|
:param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
|
|
@@ -1713,28 +1965,34 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1713
1965
|
: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
|
|
1714
1966
|
:param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
|
|
1715
1967
|
: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.
|
|
1968
|
+
: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
|
|
1716
1969
|
:param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
|
|
1717
1970
|
:param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
|
|
1718
1971
|
:param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
|
|
1719
1972
|
:param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
|
|
1720
1973
|
: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"
|
|
1721
1974
|
:param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
|
|
1975
|
+
:param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
|
|
1722
1976
|
:param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
|
|
1723
1977
|
:param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
|
|
1724
|
-
:param versionrc_options: (experimental) Custom configuration used when creating changelog with
|
|
1978
|
+
: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
|
|
1725
1979
|
:param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
|
|
1726
1980
|
:param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
|
|
1727
1981
|
:param workflow_runs_on_group: (experimental) Github Runner Group selection options.
|
|
1728
1982
|
:param default_release_branch: (experimental) The name of the main release branch. Default: "main"
|
|
1729
1983
|
:param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
|
|
1984
|
+
: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
|
|
1985
|
+
:param audit_deps_options: (experimental) Security audit options. Default: - default options
|
|
1730
1986
|
: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
|
|
1987
|
+
:param biome: (experimental) Setup Biome. Default: false
|
|
1988
|
+
:param biome_options: (experimental) Biome options. Default: - default options
|
|
1731
1989
|
:param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
|
|
1732
1990
|
:param build_workflow_options: (experimental) Options for PR build workflow.
|
|
1733
1991
|
:param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
|
|
1734
1992
|
:param bundler_options: (experimental) Options for ``Bundler``.
|
|
1735
1993
|
: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
|
|
1736
|
-
:param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
1737
|
-
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token
|
|
1994
|
+
: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
|
|
1995
|
+
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
|
|
1738
1996
|
:param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
|
|
1739
1997
|
:param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
|
|
1740
1998
|
:param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
|
|
@@ -1761,15 +2019,15 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1761
2019
|
:param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
|
|
1762
2020
|
:param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
|
|
1763
2021
|
:param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
|
|
1764
|
-
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
|
|
1765
|
-
:param workflow_node_version: (experimental) The node version
|
|
2022
|
+
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
|
|
2023
|
+
: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/*``.
|
|
1766
2024
|
:param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
|
|
1767
2025
|
: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
|
|
1768
2026
|
:param disable_tsconfig_dev: (experimental) Do not generate a ``tsconfig.dev.json`` file. Default: false
|
|
1769
2027
|
:param docgen: (experimental) Docgen by Typedoc. Default: false
|
|
1770
2028
|
:param docs_directory: (experimental) Docs directory. Default: "docs"
|
|
1771
2029
|
: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)
|
|
1772
|
-
:param eslint: (experimental) Setup eslint. Default: true
|
|
2030
|
+
:param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
|
|
1773
2031
|
:param eslint_options: (experimental) Eslint options. Default: - opinionated default options
|
|
1774
2032
|
:param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
|
|
1775
2033
|
:param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
|
|
@@ -1815,6 +2073,10 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1815
2073
|
yarn_berry_options = _YarnBerryOptions_b6942539(**yarn_berry_options)
|
|
1816
2074
|
if isinstance(workflow_runs_on_group, dict):
|
|
1817
2075
|
workflow_runs_on_group = _GroupRunnerOptions_148c59c1(**workflow_runs_on_group)
|
|
2076
|
+
if isinstance(audit_deps_options, dict):
|
|
2077
|
+
audit_deps_options = _AuditOptions_429c62df(**audit_deps_options)
|
|
2078
|
+
if isinstance(biome_options, dict):
|
|
2079
|
+
biome_options = _BiomeOptions_452ab984(**biome_options)
|
|
1818
2080
|
if isinstance(build_workflow_options, dict):
|
|
1819
2081
|
build_workflow_options = _BuildWorkflowOptions_b756f97f(**build_workflow_options)
|
|
1820
2082
|
if isinstance(build_workflow_triggers, dict):
|
|
@@ -1888,6 +2150,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1888
2150
|
check_type(argname="argument bugs_email", value=bugs_email, expected_type=type_hints["bugs_email"])
|
|
1889
2151
|
check_type(argname="argument bugs_url", value=bugs_url, expected_type=type_hints["bugs_url"])
|
|
1890
2152
|
check_type(argname="argument bundled_deps", value=bundled_deps, expected_type=type_hints["bundled_deps"])
|
|
2153
|
+
check_type(argname="argument bun_version", value=bun_version, expected_type=type_hints["bun_version"])
|
|
1891
2154
|
check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
|
|
1892
2155
|
check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
|
|
1893
2156
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
@@ -1904,6 +2167,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1904
2167
|
check_type(argname="argument npm_registry", value=npm_registry, expected_type=type_hints["npm_registry"])
|
|
1905
2168
|
check_type(argname="argument npm_registry_url", value=npm_registry_url, expected_type=type_hints["npm_registry_url"])
|
|
1906
2169
|
check_type(argname="argument npm_token_secret", value=npm_token_secret, expected_type=type_hints["npm_token_secret"])
|
|
2170
|
+
check_type(argname="argument npm_trusted_publishing", value=npm_trusted_publishing, expected_type=type_hints["npm_trusted_publishing"])
|
|
1907
2171
|
check_type(argname="argument package_manager", value=package_manager, expected_type=type_hints["package_manager"])
|
|
1908
2172
|
check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
|
|
1909
2173
|
check_type(argname="argument peer_dependency_options", value=peer_dependency_options, expected_type=type_hints["peer_dependency_options"])
|
|
@@ -1915,9 +2179,11 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1915
2179
|
check_type(argname="argument scripts", value=scripts, expected_type=type_hints["scripts"])
|
|
1916
2180
|
check_type(argname="argument stability", value=stability, expected_type=type_hints["stability"])
|
|
1917
2181
|
check_type(argname="argument yarn_berry_options", value=yarn_berry_options, expected_type=type_hints["yarn_berry_options"])
|
|
2182
|
+
check_type(argname="argument bump_package", value=bump_package, expected_type=type_hints["bump_package"])
|
|
1918
2183
|
check_type(argname="argument jsii_release_version", value=jsii_release_version, expected_type=type_hints["jsii_release_version"])
|
|
1919
2184
|
check_type(argname="argument major_version", value=major_version, expected_type=type_hints["major_version"])
|
|
1920
2185
|
check_type(argname="argument min_major_version", value=min_major_version, expected_type=type_hints["min_major_version"])
|
|
2186
|
+
check_type(argname="argument next_version_command", value=next_version_command, expected_type=type_hints["next_version_command"])
|
|
1921
2187
|
check_type(argname="argument npm_dist_tag", value=npm_dist_tag, expected_type=type_hints["npm_dist_tag"])
|
|
1922
2188
|
check_type(argname="argument post_build_steps", value=post_build_steps, expected_type=type_hints["post_build_steps"])
|
|
1923
2189
|
check_type(argname="argument prerelease", value=prerelease, expected_type=type_hints["prerelease"])
|
|
@@ -1925,12 +2191,14 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1925
2191
|
check_type(argname="argument publish_tasks", value=publish_tasks, expected_type=type_hints["publish_tasks"])
|
|
1926
2192
|
check_type(argname="argument releasable_commits", value=releasable_commits, expected_type=type_hints["releasable_commits"])
|
|
1927
2193
|
check_type(argname="argument release_branches", value=release_branches, expected_type=type_hints["release_branches"])
|
|
2194
|
+
check_type(argname="argument release_environment", value=release_environment, expected_type=type_hints["release_environment"])
|
|
1928
2195
|
check_type(argname="argument release_every_commit", value=release_every_commit, expected_type=type_hints["release_every_commit"])
|
|
1929
2196
|
check_type(argname="argument release_failure_issue", value=release_failure_issue, expected_type=type_hints["release_failure_issue"])
|
|
1930
2197
|
check_type(argname="argument release_failure_issue_label", value=release_failure_issue_label, expected_type=type_hints["release_failure_issue_label"])
|
|
1931
2198
|
check_type(argname="argument release_schedule", value=release_schedule, expected_type=type_hints["release_schedule"])
|
|
1932
2199
|
check_type(argname="argument release_tag_prefix", value=release_tag_prefix, expected_type=type_hints["release_tag_prefix"])
|
|
1933
2200
|
check_type(argname="argument release_trigger", value=release_trigger, expected_type=type_hints["release_trigger"])
|
|
2201
|
+
check_type(argname="argument release_workflow_env", value=release_workflow_env, expected_type=type_hints["release_workflow_env"])
|
|
1934
2202
|
check_type(argname="argument release_workflow_name", value=release_workflow_name, expected_type=type_hints["release_workflow_name"])
|
|
1935
2203
|
check_type(argname="argument release_workflow_setup_steps", value=release_workflow_setup_steps, expected_type=type_hints["release_workflow_setup_steps"])
|
|
1936
2204
|
check_type(argname="argument versionrc_options", value=versionrc_options, expected_type=type_hints["versionrc_options"])
|
|
@@ -1939,7 +2207,11 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
1939
2207
|
check_type(argname="argument workflow_runs_on_group", value=workflow_runs_on_group, expected_type=type_hints["workflow_runs_on_group"])
|
|
1940
2208
|
check_type(argname="argument default_release_branch", value=default_release_branch, expected_type=type_hints["default_release_branch"])
|
|
1941
2209
|
check_type(argname="argument artifacts_directory", value=artifacts_directory, expected_type=type_hints["artifacts_directory"])
|
|
2210
|
+
check_type(argname="argument audit_deps", value=audit_deps, expected_type=type_hints["audit_deps"])
|
|
2211
|
+
check_type(argname="argument audit_deps_options", value=audit_deps_options, expected_type=type_hints["audit_deps_options"])
|
|
1942
2212
|
check_type(argname="argument auto_approve_upgrades", value=auto_approve_upgrades, expected_type=type_hints["auto_approve_upgrades"])
|
|
2213
|
+
check_type(argname="argument biome", value=biome, expected_type=type_hints["biome"])
|
|
2214
|
+
check_type(argname="argument biome_options", value=biome_options, expected_type=type_hints["biome_options"])
|
|
1943
2215
|
check_type(argname="argument build_workflow", value=build_workflow, expected_type=type_hints["build_workflow"])
|
|
1944
2216
|
check_type(argname="argument build_workflow_options", value=build_workflow_options, expected_type=type_hints["build_workflow_options"])
|
|
1945
2217
|
check_type(argname="argument build_workflow_triggers", value=build_workflow_triggers, expected_type=type_hints["build_workflow_triggers"])
|
|
@@ -2074,6 +2346,8 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2074
2346
|
self._values["bugs_url"] = bugs_url
|
|
2075
2347
|
if bundled_deps is not None:
|
|
2076
2348
|
self._values["bundled_deps"] = bundled_deps
|
|
2349
|
+
if bun_version is not None:
|
|
2350
|
+
self._values["bun_version"] = bun_version
|
|
2077
2351
|
if code_artifact_options is not None:
|
|
2078
2352
|
self._values["code_artifact_options"] = code_artifact_options
|
|
2079
2353
|
if deps is not None:
|
|
@@ -2106,6 +2380,8 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2106
2380
|
self._values["npm_registry_url"] = npm_registry_url
|
|
2107
2381
|
if npm_token_secret is not None:
|
|
2108
2382
|
self._values["npm_token_secret"] = npm_token_secret
|
|
2383
|
+
if npm_trusted_publishing is not None:
|
|
2384
|
+
self._values["npm_trusted_publishing"] = npm_trusted_publishing
|
|
2109
2385
|
if package_manager is not None:
|
|
2110
2386
|
self._values["package_manager"] = package_manager
|
|
2111
2387
|
if package_name is not None:
|
|
@@ -2128,12 +2404,16 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2128
2404
|
self._values["stability"] = stability
|
|
2129
2405
|
if yarn_berry_options is not None:
|
|
2130
2406
|
self._values["yarn_berry_options"] = yarn_berry_options
|
|
2407
|
+
if bump_package is not None:
|
|
2408
|
+
self._values["bump_package"] = bump_package
|
|
2131
2409
|
if jsii_release_version is not None:
|
|
2132
2410
|
self._values["jsii_release_version"] = jsii_release_version
|
|
2133
2411
|
if major_version is not None:
|
|
2134
2412
|
self._values["major_version"] = major_version
|
|
2135
2413
|
if min_major_version is not None:
|
|
2136
2414
|
self._values["min_major_version"] = min_major_version
|
|
2415
|
+
if next_version_command is not None:
|
|
2416
|
+
self._values["next_version_command"] = next_version_command
|
|
2137
2417
|
if npm_dist_tag is not None:
|
|
2138
2418
|
self._values["npm_dist_tag"] = npm_dist_tag
|
|
2139
2419
|
if post_build_steps is not None:
|
|
@@ -2148,6 +2428,8 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2148
2428
|
self._values["releasable_commits"] = releasable_commits
|
|
2149
2429
|
if release_branches is not None:
|
|
2150
2430
|
self._values["release_branches"] = release_branches
|
|
2431
|
+
if release_environment is not None:
|
|
2432
|
+
self._values["release_environment"] = release_environment
|
|
2151
2433
|
if release_every_commit is not None:
|
|
2152
2434
|
self._values["release_every_commit"] = release_every_commit
|
|
2153
2435
|
if release_failure_issue is not None:
|
|
@@ -2160,6 +2442,8 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2160
2442
|
self._values["release_tag_prefix"] = release_tag_prefix
|
|
2161
2443
|
if release_trigger is not None:
|
|
2162
2444
|
self._values["release_trigger"] = release_trigger
|
|
2445
|
+
if release_workflow_env is not None:
|
|
2446
|
+
self._values["release_workflow_env"] = release_workflow_env
|
|
2163
2447
|
if release_workflow_name is not None:
|
|
2164
2448
|
self._values["release_workflow_name"] = release_workflow_name
|
|
2165
2449
|
if release_workflow_setup_steps is not None:
|
|
@@ -2174,8 +2458,16 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2174
2458
|
self._values["workflow_runs_on_group"] = workflow_runs_on_group
|
|
2175
2459
|
if artifacts_directory is not None:
|
|
2176
2460
|
self._values["artifacts_directory"] = artifacts_directory
|
|
2461
|
+
if audit_deps is not None:
|
|
2462
|
+
self._values["audit_deps"] = audit_deps
|
|
2463
|
+
if audit_deps_options is not None:
|
|
2464
|
+
self._values["audit_deps_options"] = audit_deps_options
|
|
2177
2465
|
if auto_approve_upgrades is not None:
|
|
2178
2466
|
self._values["auto_approve_upgrades"] = auto_approve_upgrades
|
|
2467
|
+
if biome is not None:
|
|
2468
|
+
self._values["biome"] = biome
|
|
2469
|
+
if biome_options is not None:
|
|
2470
|
+
self._values["biome_options"] = biome_options
|
|
2179
2471
|
if build_workflow is not None:
|
|
2180
2472
|
self._values["build_workflow"] = build_workflow
|
|
2181
2473
|
if build_workflow_options is not None:
|
|
@@ -2749,6 +3041,17 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2749
3041
|
result = self._values.get("bundled_deps")
|
|
2750
3042
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
2751
3043
|
|
|
3044
|
+
@builtins.property
|
|
3045
|
+
def bun_version(self) -> typing.Optional[builtins.str]:
|
|
3046
|
+
'''(experimental) The version of Bun to use if using Bun as a package manager.
|
|
3047
|
+
|
|
3048
|
+
:default: "latest"
|
|
3049
|
+
|
|
3050
|
+
:stability: experimental
|
|
3051
|
+
'''
|
|
3052
|
+
result = self._values.get("bun_version")
|
|
3053
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3054
|
+
|
|
2752
3055
|
@builtins.property
|
|
2753
3056
|
def code_artifact_options(self) -> typing.Optional[_CodeArtifactOptions_e4782b3e]:
|
|
2754
3057
|
'''(experimental) Options for npm packages using AWS CodeArtifact.
|
|
@@ -2883,9 +3186,15 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2883
3186
|
|
|
2884
3187
|
@builtins.property
|
|
2885
3188
|
def max_node_version(self) -> typing.Optional[builtins.str]:
|
|
2886
|
-
'''(experimental)
|
|
3189
|
+
'''(experimental) The maximum node version supported by this package. Most projects should not use this option.
|
|
3190
|
+
|
|
3191
|
+
The value indicates that the package is incompatible with any newer versions of node.
|
|
3192
|
+
This requirement is enforced via the engines field.
|
|
2887
3193
|
|
|
2888
|
-
|
|
3194
|
+
You will normally not need to set this option.
|
|
3195
|
+
Consider this option only if your package is known to not function with newer versions of node.
|
|
3196
|
+
|
|
3197
|
+
:default: - no maximum version is enforced
|
|
2889
3198
|
|
|
2890
3199
|
:stability: experimental
|
|
2891
3200
|
'''
|
|
@@ -2894,9 +3203,19 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2894
3203
|
|
|
2895
3204
|
@builtins.property
|
|
2896
3205
|
def min_node_version(self) -> typing.Optional[builtins.str]:
|
|
2897
|
-
'''(experimental)
|
|
3206
|
+
'''(experimental) The minimum node version required by this package to function. Most projects should not use this option.
|
|
3207
|
+
|
|
3208
|
+
The value indicates that the package is incompatible with any older versions of node.
|
|
3209
|
+
This requirement is enforced via the engines field.
|
|
3210
|
+
|
|
3211
|
+
You will normally not need to set this option, even if your package is incompatible with EOL versions of node.
|
|
3212
|
+
Consider this option only if your package depends on a specific feature, that is not available in other LTS versions.
|
|
3213
|
+
Setting this option has very high impact on the consumers of your package,
|
|
3214
|
+
as package managers will actively prevent usage with node versions you have marked as incompatible.
|
|
2898
3215
|
|
|
2899
|
-
|
|
3216
|
+
To change the node version of your CI/CD workflows, use ``workflowNodeVersion``.
|
|
3217
|
+
|
|
3218
|
+
:default: - no minimum version is enforced
|
|
2900
3219
|
|
|
2901
3220
|
:stability: experimental
|
|
2902
3221
|
'''
|
|
@@ -2973,6 +3292,17 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
2973
3292
|
result = self._values.get("npm_token_secret")
|
|
2974
3293
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
2975
3294
|
|
|
3295
|
+
@builtins.property
|
|
3296
|
+
def npm_trusted_publishing(self) -> typing.Optional[builtins.bool]:
|
|
3297
|
+
'''(experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work.
|
|
3298
|
+
|
|
3299
|
+
:default: - false
|
|
3300
|
+
|
|
3301
|
+
:stability: experimental
|
|
3302
|
+
'''
|
|
3303
|
+
result = self._values.get("npm_trusted_publishing")
|
|
3304
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
3305
|
+
|
|
2976
3306
|
@builtins.property
|
|
2977
3307
|
def package_manager(self) -> typing.Optional[_NodePackageManager_3eb53bf6]:
|
|
2978
3308
|
'''(experimental) The Node Package Manager used to execute scripts.
|
|
@@ -3036,7 +3366,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3036
3366
|
def pnpm_version(self) -> typing.Optional[builtins.str]:
|
|
3037
3367
|
'''(experimental) The version of PNPM to use if using PNPM as a package manager.
|
|
3038
3368
|
|
|
3039
|
-
:default: "
|
|
3369
|
+
:default: "9"
|
|
3040
3370
|
|
|
3041
3371
|
:stability: experimental
|
|
3042
3372
|
'''
|
|
@@ -3113,6 +3443,19 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3113
3443
|
result = self._values.get("yarn_berry_options")
|
|
3114
3444
|
return typing.cast(typing.Optional[_YarnBerryOptions_b6942539], result)
|
|
3115
3445
|
|
|
3446
|
+
@builtins.property
|
|
3447
|
+
def bump_package(self) -> typing.Optional[builtins.str]:
|
|
3448
|
+
'''(experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string.
|
|
3449
|
+
|
|
3450
|
+
This can be any compatible package version, including the deprecated ``standard-version@9``.
|
|
3451
|
+
|
|
3452
|
+
:default: - A recent version of "commit-and-tag-version"
|
|
3453
|
+
|
|
3454
|
+
:stability: experimental
|
|
3455
|
+
'''
|
|
3456
|
+
result = self._values.get("bump_package")
|
|
3457
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3458
|
+
|
|
3116
3459
|
@builtins.property
|
|
3117
3460
|
def jsii_release_version(self) -> typing.Optional[builtins.str]:
|
|
3118
3461
|
'''(experimental) Version requirement of ``publib`` which is used to publish modules to npm.
|
|
@@ -3154,6 +3497,36 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3154
3497
|
result = self._values.get("min_major_version")
|
|
3155
3498
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
3156
3499
|
|
|
3500
|
+
@builtins.property
|
|
3501
|
+
def next_version_command(self) -> typing.Optional[builtins.str]:
|
|
3502
|
+
'''(experimental) A shell command to control the next version to release.
|
|
3503
|
+
|
|
3504
|
+
If present, this shell command will be run before the bump is executed, and
|
|
3505
|
+
it determines what version to release. It will be executed in the following
|
|
3506
|
+
environment:
|
|
3507
|
+
|
|
3508
|
+
- Working directory: the project directory.
|
|
3509
|
+
- ``$VERSION``: the current version. Looks like ``1.2.3``.
|
|
3510
|
+
- ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset.
|
|
3511
|
+
- ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``.
|
|
3512
|
+
|
|
3513
|
+
The command should print one of the following to ``stdout``:
|
|
3514
|
+
|
|
3515
|
+
- Nothing: the next version number will be determined based on commit history.
|
|
3516
|
+
- ``x.y.z``: the next version number will be ``x.y.z``.
|
|
3517
|
+
- ``major|minor|patch``: the next version number will be the current version number
|
|
3518
|
+
with the indicated component bumped.
|
|
3519
|
+
|
|
3520
|
+
This setting cannot be specified together with ``minMajorVersion``; the invoked
|
|
3521
|
+
script can be used to achieve the effects of ``minMajorVersion``.
|
|
3522
|
+
|
|
3523
|
+
:default: - The next version will be determined based on the commit history and project settings.
|
|
3524
|
+
|
|
3525
|
+
:stability: experimental
|
|
3526
|
+
'''
|
|
3527
|
+
result = self._values.get("next_version_command")
|
|
3528
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3529
|
+
|
|
3157
3530
|
@builtins.property
|
|
3158
3531
|
def npm_dist_tag(self) -> typing.Optional[builtins.str]:
|
|
3159
3532
|
'''(experimental) The npmDistTag to use when publishing from the default branch.
|
|
@@ -3249,6 +3622,23 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3249
3622
|
result = self._values.get("release_branches")
|
|
3250
3623
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, _BranchOptions_13663d08]], result)
|
|
3251
3624
|
|
|
3625
|
+
@builtins.property
|
|
3626
|
+
def release_environment(self) -> typing.Optional[builtins.str]:
|
|
3627
|
+
'''(experimental) The GitHub Actions environment used for the release.
|
|
3628
|
+
|
|
3629
|
+
This can be used to add an explicit approval step to the release
|
|
3630
|
+
or limit who can initiate a release through environment protection rules.
|
|
3631
|
+
|
|
3632
|
+
When multiple artifacts are released, the environment can be overwritten
|
|
3633
|
+
on a per artifact basis.
|
|
3634
|
+
|
|
3635
|
+
:default: - no environment used, unless set at the artifact level
|
|
3636
|
+
|
|
3637
|
+
:stability: experimental
|
|
3638
|
+
'''
|
|
3639
|
+
result = self._values.get("release_environment")
|
|
3640
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3641
|
+
|
|
3252
3642
|
@builtins.property
|
|
3253
3643
|
def release_every_commit(self) -> typing.Optional[builtins.bool]:
|
|
3254
3644
|
'''(deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``.
|
|
@@ -3326,6 +3716,19 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3326
3716
|
result = self._values.get("release_trigger")
|
|
3327
3717
|
return typing.cast(typing.Optional[_ReleaseTrigger_e4dc221f], result)
|
|
3328
3718
|
|
|
3719
|
+
@builtins.property
|
|
3720
|
+
def release_workflow_env(
|
|
3721
|
+
self,
|
|
3722
|
+
) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
3723
|
+
'''(experimental) Build environment variables for release workflows.
|
|
3724
|
+
|
|
3725
|
+
:default: {}
|
|
3726
|
+
|
|
3727
|
+
:stability: experimental
|
|
3728
|
+
'''
|
|
3729
|
+
result = self._values.get("release_workflow_env")
|
|
3730
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
3731
|
+
|
|
3329
3732
|
@builtins.property
|
|
3330
3733
|
def release_workflow_name(self) -> typing.Optional[builtins.str]:
|
|
3331
3734
|
'''(experimental) The name of the default release workflow.
|
|
@@ -3352,7 +3755,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3352
3755
|
def versionrc_options(
|
|
3353
3756
|
self,
|
|
3354
3757
|
) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
|
|
3355
|
-
'''(experimental) Custom configuration used when creating changelog with
|
|
3758
|
+
'''(experimental) Custom configuration used when creating changelog with commit-and-tag-version package.
|
|
3356
3759
|
|
|
3357
3760
|
Given values either append to default configuration or overwrite values in it.
|
|
3358
3761
|
|
|
@@ -3421,6 +3824,32 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3421
3824
|
result = self._values.get("artifacts_directory")
|
|
3422
3825
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
3423
3826
|
|
|
3827
|
+
@builtins.property
|
|
3828
|
+
def audit_deps(self) -> typing.Optional[builtins.bool]:
|
|
3829
|
+
'''(experimental) Run security audit on dependencies.
|
|
3830
|
+
|
|
3831
|
+
When enabled, creates an "audit" task that checks for known security vulnerabilities
|
|
3832
|
+
in dependencies. By default, runs during every build and checks for "high" severity
|
|
3833
|
+
vulnerabilities or above in all dependencies (including dev dependencies).
|
|
3834
|
+
|
|
3835
|
+
:default: false
|
|
3836
|
+
|
|
3837
|
+
:stability: experimental
|
|
3838
|
+
'''
|
|
3839
|
+
result = self._values.get("audit_deps")
|
|
3840
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
3841
|
+
|
|
3842
|
+
@builtins.property
|
|
3843
|
+
def audit_deps_options(self) -> typing.Optional[_AuditOptions_429c62df]:
|
|
3844
|
+
'''(experimental) Security audit options.
|
|
3845
|
+
|
|
3846
|
+
:default: - default options
|
|
3847
|
+
|
|
3848
|
+
:stability: experimental
|
|
3849
|
+
'''
|
|
3850
|
+
result = self._values.get("audit_deps_options")
|
|
3851
|
+
return typing.cast(typing.Optional[_AuditOptions_429c62df], result)
|
|
3852
|
+
|
|
3424
3853
|
@builtins.property
|
|
3425
3854
|
def auto_approve_upgrades(self) -> typing.Optional[builtins.bool]:
|
|
3426
3855
|
'''(experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
|
|
@@ -3434,6 +3863,28 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3434
3863
|
result = self._values.get("auto_approve_upgrades")
|
|
3435
3864
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
3436
3865
|
|
|
3866
|
+
@builtins.property
|
|
3867
|
+
def biome(self) -> typing.Optional[builtins.bool]:
|
|
3868
|
+
'''(experimental) Setup Biome.
|
|
3869
|
+
|
|
3870
|
+
:default: false
|
|
3871
|
+
|
|
3872
|
+
:stability: experimental
|
|
3873
|
+
'''
|
|
3874
|
+
result = self._values.get("biome")
|
|
3875
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
3876
|
+
|
|
3877
|
+
@builtins.property
|
|
3878
|
+
def biome_options(self) -> typing.Optional[_BiomeOptions_452ab984]:
|
|
3879
|
+
'''(experimental) Biome options.
|
|
3880
|
+
|
|
3881
|
+
:default: - default options
|
|
3882
|
+
|
|
3883
|
+
:stability: experimental
|
|
3884
|
+
'''
|
|
3885
|
+
result = self._values.get("biome_options")
|
|
3886
|
+
return typing.cast(typing.Optional[_BiomeOptions_452ab984], result)
|
|
3887
|
+
|
|
3437
3888
|
@builtins.property
|
|
3438
3889
|
def build_workflow(self) -> typing.Optional[builtins.bool]:
|
|
3439
3890
|
'''(experimental) Define a GitHub workflow for building PRs.
|
|
@@ -3491,7 +3942,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3491
3942
|
|
|
3492
3943
|
@builtins.property
|
|
3493
3944
|
def code_cov(self) -> typing.Optional[builtins.bool]:
|
|
3494
|
-
'''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
3945
|
+
'''(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``.
|
|
3495
3946
|
|
|
3496
3947
|
:default: false
|
|
3497
3948
|
|
|
@@ -3502,9 +3953,9 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3502
3953
|
|
|
3503
3954
|
@builtins.property
|
|
3504
3955
|
def code_cov_token_secret(self) -> typing.Optional[builtins.str]:
|
|
3505
|
-
'''(experimental) Define the secret name for a specified https://codecov.io/ token
|
|
3956
|
+
'''(experimental) Define the secret name for a specified https://codecov.io/ token.
|
|
3506
3957
|
|
|
3507
|
-
:default: -
|
|
3958
|
+
:default: - OIDC auth is used
|
|
3508
3959
|
|
|
3509
3960
|
:stability: experimental
|
|
3510
3961
|
'''
|
|
@@ -3817,7 +4268,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3817
4268
|
def workflow_git_identity(self) -> typing.Optional[_GitIdentity_6effc3de]:
|
|
3818
4269
|
'''(experimental) The git identity to use in workflows.
|
|
3819
4270
|
|
|
3820
|
-
:default: - GitHub Actions
|
|
4271
|
+
:default: - default GitHub Actions user
|
|
3821
4272
|
|
|
3822
4273
|
:stability: experimental
|
|
3823
4274
|
'''
|
|
@@ -3826,9 +4277,11 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3826
4277
|
|
|
3827
4278
|
@builtins.property
|
|
3828
4279
|
def workflow_node_version(self) -> typing.Optional[builtins.str]:
|
|
3829
|
-
'''(experimental) The node version
|
|
4280
|
+
'''(experimental) The node version used in GitHub Actions workflows.
|
|
4281
|
+
|
|
4282
|
+
Always use this option if your GitHub Actions workflows require a specific to run.
|
|
3830
4283
|
|
|
3831
|
-
:default: -
|
|
4284
|
+
:default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
|
|
3832
4285
|
|
|
3833
4286
|
:stability: experimental
|
|
3834
4287
|
'''
|
|
@@ -3905,7 +4358,7 @@ class TypeScriptProjectOptions(_NodeProjectOptions_d12f6f3b):
|
|
|
3905
4358
|
def eslint(self) -> typing.Optional[builtins.bool]:
|
|
3906
4359
|
'''(experimental) Setup eslint.
|
|
3907
4360
|
|
|
3908
|
-
:default: true
|
|
4361
|
+
:default: - true, unless biome is enabled
|
|
3909
4362
|
|
|
3910
4363
|
:stability: experimental
|
|
3911
4364
|
'''
|
|
@@ -4116,7 +4569,11 @@ class TypeScriptAppProject(
|
|
|
4116
4569
|
typescript_version: typing.Optional[builtins.str] = None,
|
|
4117
4570
|
default_release_branch: builtins.str,
|
|
4118
4571
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
4572
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
4573
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4119
4574
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
4575
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
4576
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4120
4577
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
4121
4578
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4122
4579
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -4180,6 +4637,7 @@ class TypeScriptAppProject(
|
|
|
4180
4637
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
4181
4638
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
4182
4639
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
4640
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
4183
4641
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4184
4642
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
4185
4643
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -4196,6 +4654,7 @@ class TypeScriptAppProject(
|
|
|
4196
4654
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
4197
4655
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
4198
4656
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
4657
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
4199
4658
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
4200
4659
|
package_name: typing.Optional[builtins.str] = None,
|
|
4201
4660
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -4207,9 +4666,11 @@ class TypeScriptAppProject(
|
|
|
4207
4666
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
4208
4667
|
stability: typing.Optional[builtins.str] = None,
|
|
4209
4668
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4669
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
4210
4670
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
4211
4671
|
major_version: typing.Optional[jsii.Number] = None,
|
|
4212
4672
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
4673
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
4213
4674
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
4214
4675
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4215
4676
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -4217,12 +4678,14 @@ class TypeScriptAppProject(
|
|
|
4217
4678
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
4218
4679
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
4219
4680
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4681
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
4220
4682
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
4221
4683
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
4222
4684
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
4223
4685
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
4224
4686
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
4225
4687
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
4688
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
4226
4689
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
4227
4690
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4228
4691
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -4248,7 +4711,7 @@ class TypeScriptAppProject(
|
|
|
4248
4711
|
:param docgen: (experimental) Docgen by Typedoc. Default: false
|
|
4249
4712
|
:param docs_directory: (experimental) Docs directory. Default: "docs"
|
|
4250
4713
|
: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)
|
|
4251
|
-
:param eslint: (experimental) Setup eslint. Default: true
|
|
4714
|
+
:param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
|
|
4252
4715
|
:param eslint_options: (experimental) Eslint options. Default: - opinionated default options
|
|
4253
4716
|
:param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
|
|
4254
4717
|
:param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
|
|
@@ -4263,14 +4726,18 @@ class TypeScriptAppProject(
|
|
|
4263
4726
|
: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"
|
|
4264
4727
|
:param default_release_branch: (experimental) The name of the main release branch. Default: "main"
|
|
4265
4728
|
:param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
|
|
4729
|
+
: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
|
|
4730
|
+
:param audit_deps_options: (experimental) Security audit options. Default: - default options
|
|
4266
4731
|
: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
|
|
4732
|
+
:param biome: (experimental) Setup Biome. Default: false
|
|
4733
|
+
:param biome_options: (experimental) Biome options. Default: - default options
|
|
4267
4734
|
:param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
|
|
4268
4735
|
:param build_workflow_options: (experimental) Options for PR build workflow.
|
|
4269
4736
|
:param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
|
|
4270
4737
|
:param bundler_options: (experimental) Options for ``Bundler``.
|
|
4271
4738
|
: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
|
|
4272
|
-
:param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
4273
|
-
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token
|
|
4739
|
+
: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
|
|
4740
|
+
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
|
|
4274
4741
|
:param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
|
|
4275
4742
|
:param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
|
|
4276
4743
|
:param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
|
|
@@ -4297,8 +4764,8 @@ class TypeScriptAppProject(
|
|
|
4297
4764
|
:param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
|
|
4298
4765
|
:param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
|
|
4299
4766
|
:param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
|
|
4300
|
-
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
|
|
4301
|
-
:param workflow_node_version: (experimental) The node version
|
|
4767
|
+
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
|
|
4768
|
+
: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/*``.
|
|
4302
4769
|
:param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
|
|
4303
4770
|
:param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
|
|
4304
4771
|
:param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
|
|
@@ -4327,6 +4794,7 @@ class TypeScriptAppProject(
|
|
|
4327
4794
|
:param bugs_email: (experimental) The email address to which issues should be reported.
|
|
4328
4795
|
:param bugs_url: (experimental) The url to your project's issue tracker.
|
|
4329
4796
|
: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.
|
|
4797
|
+
:param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
|
|
4330
4798
|
: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
|
|
4331
4799
|
: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: []
|
|
4332
4800
|
: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
|
|
@@ -4336,27 +4804,30 @@ class TypeScriptAppProject(
|
|
|
4336
4804
|
:param keywords: (experimental) Keywords to include in ``package.json``.
|
|
4337
4805
|
: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"
|
|
4338
4806
|
:param licensed: (experimental) Indicates if a license should be added. Default: true
|
|
4339
|
-
:param max_node_version: (experimental)
|
|
4340
|
-
:param min_node_version: (experimental)
|
|
4807
|
+
: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
|
|
4808
|
+
: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
|
|
4341
4809
|
: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``.
|
|
4342
4810
|
: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
|
|
4343
4811
|
:param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
|
|
4344
4812
|
: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"
|
|
4345
4813
|
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
|
|
4814
|
+
: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
|
|
4346
4815
|
:param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
|
|
4347
4816
|
:param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
|
|
4348
4817
|
:param peer_dependency_options: (experimental) Options for ``peerDeps``.
|
|
4349
4818
|
: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: []
|
|
4350
|
-
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "
|
|
4819
|
+
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
|
|
4351
4820
|
: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
|
|
4352
4821
|
: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.
|
|
4353
4822
|
:param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
|
|
4354
4823
|
: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: {}
|
|
4355
4824
|
:param stability: (experimental) Package's Stability.
|
|
4356
4825
|
:param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
|
|
4826
|
+
: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"
|
|
4357
4827
|
:param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
|
|
4358
4828
|
: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.
|
|
4359
4829
|
: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
|
|
4830
|
+
: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.
|
|
4360
4831
|
: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"
|
|
4361
4832
|
:param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
|
|
4362
4833
|
:param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
|
|
@@ -4364,15 +4835,17 @@ class TypeScriptAppProject(
|
|
|
4364
4835
|
: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
|
|
4365
4836
|
:param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
|
|
4366
4837
|
: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.
|
|
4838
|
+
: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
|
|
4367
4839
|
:param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
|
|
4368
4840
|
:param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
|
|
4369
4841
|
:param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
|
|
4370
4842
|
:param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
|
|
4371
4843
|
: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"
|
|
4372
4844
|
:param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
|
|
4845
|
+
:param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
|
|
4373
4846
|
:param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
|
|
4374
4847
|
:param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
|
|
4375
|
-
:param versionrc_options: (experimental) Custom configuration used when creating changelog with
|
|
4848
|
+
: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
|
|
4376
4849
|
:param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
|
|
4377
4850
|
:param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
|
|
4378
4851
|
:param workflow_runs_on_group: (experimental) Github Runner Group selection options.
|
|
@@ -4412,7 +4885,11 @@ class TypeScriptAppProject(
|
|
|
4412
4885
|
typescript_version=typescript_version,
|
|
4413
4886
|
default_release_branch=default_release_branch,
|
|
4414
4887
|
artifacts_directory=artifacts_directory,
|
|
4888
|
+
audit_deps=audit_deps,
|
|
4889
|
+
audit_deps_options=audit_deps_options,
|
|
4415
4890
|
auto_approve_upgrades=auto_approve_upgrades,
|
|
4891
|
+
biome=biome,
|
|
4892
|
+
biome_options=biome_options,
|
|
4416
4893
|
build_workflow=build_workflow,
|
|
4417
4894
|
build_workflow_options=build_workflow_options,
|
|
4418
4895
|
build_workflow_triggers=build_workflow_triggers,
|
|
@@ -4476,6 +4953,7 @@ class TypeScriptAppProject(
|
|
|
4476
4953
|
bugs_email=bugs_email,
|
|
4477
4954
|
bugs_url=bugs_url,
|
|
4478
4955
|
bundled_deps=bundled_deps,
|
|
4956
|
+
bun_version=bun_version,
|
|
4479
4957
|
code_artifact_options=code_artifact_options,
|
|
4480
4958
|
deps=deps,
|
|
4481
4959
|
description=description,
|
|
@@ -4492,6 +4970,7 @@ class TypeScriptAppProject(
|
|
|
4492
4970
|
npm_registry=npm_registry,
|
|
4493
4971
|
npm_registry_url=npm_registry_url,
|
|
4494
4972
|
npm_token_secret=npm_token_secret,
|
|
4973
|
+
npm_trusted_publishing=npm_trusted_publishing,
|
|
4495
4974
|
package_manager=package_manager,
|
|
4496
4975
|
package_name=package_name,
|
|
4497
4976
|
peer_dependency_options=peer_dependency_options,
|
|
@@ -4503,9 +4982,11 @@ class TypeScriptAppProject(
|
|
|
4503
4982
|
scripts=scripts,
|
|
4504
4983
|
stability=stability,
|
|
4505
4984
|
yarn_berry_options=yarn_berry_options,
|
|
4985
|
+
bump_package=bump_package,
|
|
4506
4986
|
jsii_release_version=jsii_release_version,
|
|
4507
4987
|
major_version=major_version,
|
|
4508
4988
|
min_major_version=min_major_version,
|
|
4989
|
+
next_version_command=next_version_command,
|
|
4509
4990
|
npm_dist_tag=npm_dist_tag,
|
|
4510
4991
|
post_build_steps=post_build_steps,
|
|
4511
4992
|
prerelease=prerelease,
|
|
@@ -4513,12 +4994,14 @@ class TypeScriptAppProject(
|
|
|
4513
4994
|
publish_tasks=publish_tasks,
|
|
4514
4995
|
releasable_commits=releasable_commits,
|
|
4515
4996
|
release_branches=release_branches,
|
|
4997
|
+
release_environment=release_environment,
|
|
4516
4998
|
release_every_commit=release_every_commit,
|
|
4517
4999
|
release_failure_issue=release_failure_issue,
|
|
4518
5000
|
release_failure_issue_label=release_failure_issue_label,
|
|
4519
5001
|
release_schedule=release_schedule,
|
|
4520
5002
|
release_tag_prefix=release_tag_prefix,
|
|
4521
5003
|
release_trigger=release_trigger,
|
|
5004
|
+
release_workflow_env=release_workflow_env,
|
|
4522
5005
|
release_workflow_name=release_workflow_name,
|
|
4523
5006
|
release_workflow_setup_steps=release_workflow_setup_steps,
|
|
4524
5007
|
versionrc_options=versionrc_options,
|
|
@@ -4576,7 +5059,11 @@ class TypeScriptLibraryProject(
|
|
|
4576
5059
|
typescript_version: typing.Optional[builtins.str] = None,
|
|
4577
5060
|
default_release_branch: builtins.str,
|
|
4578
5061
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
5062
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
5063
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4579
5064
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
5065
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
5066
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4580
5067
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
4581
5068
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4582
5069
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -4640,6 +5127,7 @@ class TypeScriptLibraryProject(
|
|
|
4640
5127
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
4641
5128
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
4642
5129
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
5130
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
4643
5131
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4644
5132
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
4645
5133
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -4656,6 +5144,7 @@ class TypeScriptLibraryProject(
|
|
|
4656
5144
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
4657
5145
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
4658
5146
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
5147
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
4659
5148
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
4660
5149
|
package_name: typing.Optional[builtins.str] = None,
|
|
4661
5150
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -4667,9 +5156,11 @@ class TypeScriptLibraryProject(
|
|
|
4667
5156
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
4668
5157
|
stability: typing.Optional[builtins.str] = None,
|
|
4669
5158
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5159
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
4670
5160
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
4671
5161
|
major_version: typing.Optional[jsii.Number] = None,
|
|
4672
5162
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
5163
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
4673
5164
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
4674
5165
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4675
5166
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -4677,12 +5168,14 @@ class TypeScriptLibraryProject(
|
|
|
4677
5168
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
4678
5169
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
4679
5170
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5171
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
4680
5172
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
4681
5173
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
4682
5174
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
4683
5175
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
4684
5176
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
4685
5177
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
5178
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
4686
5179
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
4687
5180
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4688
5181
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -4708,7 +5201,7 @@ class TypeScriptLibraryProject(
|
|
|
4708
5201
|
:param docgen: (experimental) Docgen by Typedoc. Default: false
|
|
4709
5202
|
:param docs_directory: (experimental) Docs directory. Default: "docs"
|
|
4710
5203
|
: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)
|
|
4711
|
-
:param eslint: (experimental) Setup eslint. Default: true
|
|
5204
|
+
:param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
|
|
4712
5205
|
:param eslint_options: (experimental) Eslint options. Default: - opinionated default options
|
|
4713
5206
|
:param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
|
|
4714
5207
|
:param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
|
|
@@ -4723,14 +5216,18 @@ class TypeScriptLibraryProject(
|
|
|
4723
5216
|
: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"
|
|
4724
5217
|
:param default_release_branch: (experimental) The name of the main release branch. Default: "main"
|
|
4725
5218
|
:param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
|
|
5219
|
+
: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
|
|
5220
|
+
:param audit_deps_options: (experimental) Security audit options. Default: - default options
|
|
4726
5221
|
: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
|
|
5222
|
+
:param biome: (experimental) Setup Biome. Default: false
|
|
5223
|
+
:param biome_options: (experimental) Biome options. Default: - default options
|
|
4727
5224
|
:param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
|
|
4728
5225
|
:param build_workflow_options: (experimental) Options for PR build workflow.
|
|
4729
5226
|
:param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
|
|
4730
5227
|
:param bundler_options: (experimental) Options for ``Bundler``.
|
|
4731
5228
|
: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
|
|
4732
|
-
:param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
4733
|
-
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token
|
|
5229
|
+
: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
|
|
5230
|
+
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
|
|
4734
5231
|
:param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
|
|
4735
5232
|
:param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
|
|
4736
5233
|
:param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
|
|
@@ -4757,8 +5254,8 @@ class TypeScriptLibraryProject(
|
|
|
4757
5254
|
:param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
|
|
4758
5255
|
:param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
|
|
4759
5256
|
:param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
|
|
4760
|
-
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
|
|
4761
|
-
:param workflow_node_version: (experimental) The node version
|
|
5257
|
+
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
|
|
5258
|
+
: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/*``.
|
|
4762
5259
|
:param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
|
|
4763
5260
|
:param auto_approve_options: (experimental) Enable and configure the 'auto approve' workflow. Default: - auto approve is disabled
|
|
4764
5261
|
:param auto_merge: (experimental) Enable automatic merging on GitHub. Has no effect if ``github.mergify`` is set to false. Default: true
|
|
@@ -4787,6 +5284,7 @@ class TypeScriptLibraryProject(
|
|
|
4787
5284
|
:param bugs_email: (experimental) The email address to which issues should be reported.
|
|
4788
5285
|
:param bugs_url: (experimental) The url to your project's issue tracker.
|
|
4789
5286
|
: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.
|
|
5287
|
+
:param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
|
|
4790
5288
|
: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
|
|
4791
5289
|
: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: []
|
|
4792
5290
|
: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
|
|
@@ -4796,27 +5294,30 @@ class TypeScriptLibraryProject(
|
|
|
4796
5294
|
:param keywords: (experimental) Keywords to include in ``package.json``.
|
|
4797
5295
|
: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"
|
|
4798
5296
|
:param licensed: (experimental) Indicates if a license should be added. Default: true
|
|
4799
|
-
:param max_node_version: (experimental)
|
|
4800
|
-
:param min_node_version: (experimental)
|
|
5297
|
+
: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
|
|
5298
|
+
: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
|
|
4801
5299
|
: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``.
|
|
4802
5300
|
: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
|
|
4803
5301
|
:param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
|
|
4804
5302
|
: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"
|
|
4805
5303
|
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
|
|
5304
|
+
: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
|
|
4806
5305
|
:param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
|
|
4807
5306
|
:param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
|
|
4808
5307
|
:param peer_dependency_options: (experimental) Options for ``peerDeps``.
|
|
4809
5308
|
: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: []
|
|
4810
|
-
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "
|
|
5309
|
+
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
|
|
4811
5310
|
: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
|
|
4812
5311
|
: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.
|
|
4813
5312
|
:param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
|
|
4814
5313
|
: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: {}
|
|
4815
5314
|
:param stability: (experimental) Package's Stability.
|
|
4816
5315
|
:param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
|
|
5316
|
+
: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"
|
|
4817
5317
|
:param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
|
|
4818
5318
|
: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.
|
|
4819
5319
|
: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
|
|
5320
|
+
: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.
|
|
4820
5321
|
: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"
|
|
4821
5322
|
:param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
|
|
4822
5323
|
:param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
|
|
@@ -4824,15 +5325,17 @@ class TypeScriptLibraryProject(
|
|
|
4824
5325
|
: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
|
|
4825
5326
|
:param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
|
|
4826
5327
|
: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.
|
|
5328
|
+
: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
|
|
4827
5329
|
:param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
|
|
4828
5330
|
:param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
|
|
4829
5331
|
:param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
|
|
4830
5332
|
:param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
|
|
4831
5333
|
: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"
|
|
4832
5334
|
:param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
|
|
5335
|
+
:param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
|
|
4833
5336
|
:param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
|
|
4834
5337
|
:param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
|
|
4835
|
-
:param versionrc_options: (experimental) Custom configuration used when creating changelog with
|
|
5338
|
+
: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
|
|
4836
5339
|
:param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
|
|
4837
5340
|
:param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
|
|
4838
5341
|
:param workflow_runs_on_group: (experimental) Github Runner Group selection options.
|
|
@@ -4872,7 +5375,11 @@ class TypeScriptLibraryProject(
|
|
|
4872
5375
|
typescript_version=typescript_version,
|
|
4873
5376
|
default_release_branch=default_release_branch,
|
|
4874
5377
|
artifacts_directory=artifacts_directory,
|
|
5378
|
+
audit_deps=audit_deps,
|
|
5379
|
+
audit_deps_options=audit_deps_options,
|
|
4875
5380
|
auto_approve_upgrades=auto_approve_upgrades,
|
|
5381
|
+
biome=biome,
|
|
5382
|
+
biome_options=biome_options,
|
|
4876
5383
|
build_workflow=build_workflow,
|
|
4877
5384
|
build_workflow_options=build_workflow_options,
|
|
4878
5385
|
build_workflow_triggers=build_workflow_triggers,
|
|
@@ -4936,6 +5443,7 @@ class TypeScriptLibraryProject(
|
|
|
4936
5443
|
bugs_email=bugs_email,
|
|
4937
5444
|
bugs_url=bugs_url,
|
|
4938
5445
|
bundled_deps=bundled_deps,
|
|
5446
|
+
bun_version=bun_version,
|
|
4939
5447
|
code_artifact_options=code_artifact_options,
|
|
4940
5448
|
deps=deps,
|
|
4941
5449
|
description=description,
|
|
@@ -4952,6 +5460,7 @@ class TypeScriptLibraryProject(
|
|
|
4952
5460
|
npm_registry=npm_registry,
|
|
4953
5461
|
npm_registry_url=npm_registry_url,
|
|
4954
5462
|
npm_token_secret=npm_token_secret,
|
|
5463
|
+
npm_trusted_publishing=npm_trusted_publishing,
|
|
4955
5464
|
package_manager=package_manager,
|
|
4956
5465
|
package_name=package_name,
|
|
4957
5466
|
peer_dependency_options=peer_dependency_options,
|
|
@@ -4963,9 +5472,11 @@ class TypeScriptLibraryProject(
|
|
|
4963
5472
|
scripts=scripts,
|
|
4964
5473
|
stability=stability,
|
|
4965
5474
|
yarn_berry_options=yarn_berry_options,
|
|
5475
|
+
bump_package=bump_package,
|
|
4966
5476
|
jsii_release_version=jsii_release_version,
|
|
4967
5477
|
major_version=major_version,
|
|
4968
5478
|
min_major_version=min_major_version,
|
|
5479
|
+
next_version_command=next_version_command,
|
|
4969
5480
|
npm_dist_tag=npm_dist_tag,
|
|
4970
5481
|
post_build_steps=post_build_steps,
|
|
4971
5482
|
prerelease=prerelease,
|
|
@@ -4973,12 +5484,14 @@ class TypeScriptLibraryProject(
|
|
|
4973
5484
|
publish_tasks=publish_tasks,
|
|
4974
5485
|
releasable_commits=releasable_commits,
|
|
4975
5486
|
release_branches=release_branches,
|
|
5487
|
+
release_environment=release_environment,
|
|
4976
5488
|
release_every_commit=release_every_commit,
|
|
4977
5489
|
release_failure_issue=release_failure_issue,
|
|
4978
5490
|
release_failure_issue_label=release_failure_issue_label,
|
|
4979
5491
|
release_schedule=release_schedule,
|
|
4980
5492
|
release_tag_prefix=release_tag_prefix,
|
|
4981
5493
|
release_trigger=release_trigger,
|
|
5494
|
+
release_workflow_env=release_workflow_env,
|
|
4982
5495
|
release_workflow_name=release_workflow_name,
|
|
4983
5496
|
release_workflow_setup_steps=release_workflow_setup_steps,
|
|
4984
5497
|
versionrc_options=versionrc_options,
|
|
@@ -5045,6 +5558,7 @@ class TypeScriptLibraryProject(
|
|
|
5045
5558
|
"bugs_email": "bugsEmail",
|
|
5046
5559
|
"bugs_url": "bugsUrl",
|
|
5047
5560
|
"bundled_deps": "bundledDeps",
|
|
5561
|
+
"bun_version": "bunVersion",
|
|
5048
5562
|
"code_artifact_options": "codeArtifactOptions",
|
|
5049
5563
|
"deps": "deps",
|
|
5050
5564
|
"description": "description",
|
|
@@ -5061,6 +5575,7 @@ class TypeScriptLibraryProject(
|
|
|
5061
5575
|
"npm_registry": "npmRegistry",
|
|
5062
5576
|
"npm_registry_url": "npmRegistryUrl",
|
|
5063
5577
|
"npm_token_secret": "npmTokenSecret",
|
|
5578
|
+
"npm_trusted_publishing": "npmTrustedPublishing",
|
|
5064
5579
|
"package_manager": "packageManager",
|
|
5065
5580
|
"package_name": "packageName",
|
|
5066
5581
|
"peer_dependency_options": "peerDependencyOptions",
|
|
@@ -5072,9 +5587,11 @@ class TypeScriptLibraryProject(
|
|
|
5072
5587
|
"scripts": "scripts",
|
|
5073
5588
|
"stability": "stability",
|
|
5074
5589
|
"yarn_berry_options": "yarnBerryOptions",
|
|
5590
|
+
"bump_package": "bumpPackage",
|
|
5075
5591
|
"jsii_release_version": "jsiiReleaseVersion",
|
|
5076
5592
|
"major_version": "majorVersion",
|
|
5077
5593
|
"min_major_version": "minMajorVersion",
|
|
5594
|
+
"next_version_command": "nextVersionCommand",
|
|
5078
5595
|
"npm_dist_tag": "npmDistTag",
|
|
5079
5596
|
"post_build_steps": "postBuildSteps",
|
|
5080
5597
|
"prerelease": "prerelease",
|
|
@@ -5082,12 +5599,14 @@ class TypeScriptLibraryProject(
|
|
|
5082
5599
|
"publish_tasks": "publishTasks",
|
|
5083
5600
|
"releasable_commits": "releasableCommits",
|
|
5084
5601
|
"release_branches": "releaseBranches",
|
|
5602
|
+
"release_environment": "releaseEnvironment",
|
|
5085
5603
|
"release_every_commit": "releaseEveryCommit",
|
|
5086
5604
|
"release_failure_issue": "releaseFailureIssue",
|
|
5087
5605
|
"release_failure_issue_label": "releaseFailureIssueLabel",
|
|
5088
5606
|
"release_schedule": "releaseSchedule",
|
|
5089
5607
|
"release_tag_prefix": "releaseTagPrefix",
|
|
5090
5608
|
"release_trigger": "releaseTrigger",
|
|
5609
|
+
"release_workflow_env": "releaseWorkflowEnv",
|
|
5091
5610
|
"release_workflow_name": "releaseWorkflowName",
|
|
5092
5611
|
"release_workflow_setup_steps": "releaseWorkflowSetupSteps",
|
|
5093
5612
|
"versionrc_options": "versionrcOptions",
|
|
@@ -5096,7 +5615,11 @@ class TypeScriptLibraryProject(
|
|
|
5096
5615
|
"workflow_runs_on_group": "workflowRunsOnGroup",
|
|
5097
5616
|
"default_release_branch": "defaultReleaseBranch",
|
|
5098
5617
|
"artifacts_directory": "artifactsDirectory",
|
|
5618
|
+
"audit_deps": "auditDeps",
|
|
5619
|
+
"audit_deps_options": "auditDepsOptions",
|
|
5099
5620
|
"auto_approve_upgrades": "autoApproveUpgrades",
|
|
5621
|
+
"biome": "biome",
|
|
5622
|
+
"biome_options": "biomeOptions",
|
|
5100
5623
|
"build_workflow": "buildWorkflow",
|
|
5101
5624
|
"build_workflow_options": "buildWorkflowOptions",
|
|
5102
5625
|
"build_workflow_triggers": "buildWorkflowTriggers",
|
|
@@ -5196,6 +5719,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5196
5719
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
5197
5720
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
5198
5721
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
5722
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
5199
5723
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5200
5724
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
5201
5725
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -5212,6 +5736,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5212
5736
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
5213
5737
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
5214
5738
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
5739
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
5215
5740
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
5216
5741
|
package_name: typing.Optional[builtins.str] = None,
|
|
5217
5742
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -5223,9 +5748,11 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5223
5748
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
5224
5749
|
stability: typing.Optional[builtins.str] = None,
|
|
5225
5750
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5751
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
5226
5752
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
5227
5753
|
major_version: typing.Optional[jsii.Number] = None,
|
|
5228
5754
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
5755
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
5229
5756
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
5230
5757
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5231
5758
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -5233,12 +5760,14 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5233
5760
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
5234
5761
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
5235
5762
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5763
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
5236
5764
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
5237
5765
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
5238
5766
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
5239
5767
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
5240
5768
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
5241
5769
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
5770
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
5242
5771
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
5243
5772
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5244
5773
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -5247,7 +5776,11 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5247
5776
|
workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5248
5777
|
default_release_branch: builtins.str,
|
|
5249
5778
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
5779
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
5780
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5250
5781
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
5782
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
5783
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5251
5784
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
5252
5785
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5253
5786
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -5343,6 +5876,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5343
5876
|
:param bugs_email: (experimental) The email address to which issues should be reported.
|
|
5344
5877
|
:param bugs_url: (experimental) The url to your project's issue tracker.
|
|
5345
5878
|
: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.
|
|
5879
|
+
:param bun_version: (experimental) The version of Bun to use if using Bun as a package manager. Default: "latest"
|
|
5346
5880
|
: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
|
|
5347
5881
|
: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: []
|
|
5348
5882
|
: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
|
|
@@ -5352,27 +5886,30 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5352
5886
|
:param keywords: (experimental) Keywords to include in ``package.json``.
|
|
5353
5887
|
: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"
|
|
5354
5888
|
:param licensed: (experimental) Indicates if a license should be added. Default: true
|
|
5355
|
-
:param max_node_version: (experimental)
|
|
5356
|
-
:param min_node_version: (experimental)
|
|
5889
|
+
: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
|
|
5890
|
+
: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
|
|
5357
5891
|
: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``.
|
|
5358
5892
|
: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
|
|
5359
5893
|
:param npm_registry: (deprecated) The host name of the npm registry to publish to. Cannot be set together with ``npmRegistryUrl``.
|
|
5360
5894
|
: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"
|
|
5361
5895
|
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use when publishing packages. Default: "NPM_TOKEN"
|
|
5896
|
+
: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
|
|
5362
5897
|
:param package_manager: (experimental) The Node Package Manager used to execute scripts. Default: NodePackageManager.YARN_CLASSIC
|
|
5363
5898
|
:param package_name: (experimental) The "name" in package.json. Default: - defaults to project name
|
|
5364
5899
|
:param peer_dependency_options: (experimental) Options for ``peerDeps``.
|
|
5365
5900
|
: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: []
|
|
5366
|
-
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "
|
|
5901
|
+
:param pnpm_version: (experimental) The version of PNPM to use if using PNPM as a package manager. Default: "9"
|
|
5367
5902
|
: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
|
|
5368
5903
|
: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.
|
|
5369
5904
|
:param scoped_packages_options: (experimental) Options for privately hosted scoped packages. Default: - fetch all scoped packages from the public npm registry
|
|
5370
5905
|
: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: {}
|
|
5371
5906
|
:param stability: (experimental) Package's Stability.
|
|
5372
5907
|
:param yarn_berry_options: (experimental) Options for Yarn Berry. Default: - Yarn Berry v4 with all default options
|
|
5908
|
+
: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"
|
|
5373
5909
|
:param jsii_release_version: (experimental) Version requirement of ``publib`` which is used to publish modules to npm. Default: "latest"
|
|
5374
5910
|
: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.
|
|
5375
5911
|
: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
|
|
5912
|
+
: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.
|
|
5376
5913
|
: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"
|
|
5377
5914
|
:param post_build_steps: (experimental) Steps to execute after build as part of the release workflow. Default: []
|
|
5378
5915
|
:param prerelease: (experimental) Bump versions from the default branch as pre-releases (e.g. "beta", "alpha", "pre"). Default: - normal semantic versions
|
|
@@ -5380,28 +5917,34 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5380
5917
|
: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
|
|
5381
5918
|
:param releasable_commits: (experimental) Find commits that should be considered releasable Used to decide if a release is required. Default: ReleasableCommits.everyCommit()
|
|
5382
5919
|
: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.
|
|
5920
|
+
: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
|
|
5383
5921
|
:param release_every_commit: (deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``. Default: true
|
|
5384
5922
|
:param release_failure_issue: (experimental) Create a github issue on every failed publishing task. Default: false
|
|
5385
5923
|
:param release_failure_issue_label: (experimental) The label to apply to issues indicating publish failures. Only applies if ``releaseFailureIssue`` is true. Default: "failed-release"
|
|
5386
5924
|
:param release_schedule: (deprecated) CRON schedule to trigger new releases. Default: - no scheduled releases
|
|
5387
5925
|
: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"
|
|
5388
5926
|
:param release_trigger: (experimental) The release trigger to use. Default: - Continuous releases (``ReleaseTrigger.continuous()``)
|
|
5927
|
+
:param release_workflow_env: (experimental) Build environment variables for release workflows. Default: {}
|
|
5389
5928
|
:param release_workflow_name: (experimental) The name of the default release workflow. Default: "release"
|
|
5390
5929
|
:param release_workflow_setup_steps: (experimental) A set of workflow steps to execute in order to setup the workflow container.
|
|
5391
|
-
:param versionrc_options: (experimental) Custom configuration used when creating changelog with
|
|
5930
|
+
: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
|
|
5392
5931
|
:param workflow_container_image: (experimental) Container image to use for GitHub workflows. Default: - default image
|
|
5393
5932
|
:param workflow_runs_on: (experimental) Github Runner selection labels. Default: ["ubuntu-latest"]
|
|
5394
5933
|
:param workflow_runs_on_group: (experimental) Github Runner Group selection options.
|
|
5395
5934
|
:param default_release_branch: (experimental) The name of the main release branch. Default: "main"
|
|
5396
5935
|
:param artifacts_directory: (experimental) A directory which will contain build artifacts. Default: "dist"
|
|
5936
|
+
: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
|
|
5937
|
+
:param audit_deps_options: (experimental) Security audit options. Default: - default options
|
|
5397
5938
|
: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
|
|
5939
|
+
:param biome: (experimental) Setup Biome. Default: false
|
|
5940
|
+
:param biome_options: (experimental) Biome options. Default: - default options
|
|
5398
5941
|
:param build_workflow: (experimental) Define a GitHub workflow for building PRs. Default: - true if not a subproject
|
|
5399
5942
|
:param build_workflow_options: (experimental) Options for PR build workflow.
|
|
5400
5943
|
:param build_workflow_triggers: (deprecated) Build workflow triggers. Default: "{ pullRequest: {}, workflowDispatch: {} }"
|
|
5401
5944
|
:param bundler_options: (experimental) Options for ``Bundler``.
|
|
5402
5945
|
: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
|
|
5403
|
-
:param code_cov: (experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
5404
|
-
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token
|
|
5946
|
+
: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
|
|
5947
|
+
:param code_cov_token_secret: (experimental) Define the secret name for a specified https://codecov.io/ token. Default: - OIDC auth is used
|
|
5405
5948
|
:param copyright_owner: (experimental) License copyright owner. Default: - defaults to the value of authorName or "" if ``authorName`` is undefined.
|
|
5406
5949
|
:param copyright_period: (experimental) The copyright years to put in the LICENSE file. Default: - current year
|
|
5407
5950
|
:param dependabot: (experimental) Use dependabot to handle dependency upgrades. Cannot be used in conjunction with ``depsUpgrade``. Default: false
|
|
@@ -5428,15 +5971,15 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5428
5971
|
:param release_to_npm: (experimental) Automatically release to npm when new versions are introduced. Default: false
|
|
5429
5972
|
:param release_workflow: (deprecated) DEPRECATED: renamed to ``release``. Default: - true if not a subproject
|
|
5430
5973
|
:param workflow_bootstrap_steps: (experimental) Workflow steps to use in order to bootstrap this repo. Default: "yarn install --frozen-lockfile && yarn projen"
|
|
5431
|
-
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - GitHub Actions
|
|
5432
|
-
:param workflow_node_version: (experimental) The node version
|
|
5974
|
+
:param workflow_git_identity: (experimental) The git identity to use in workflows. Default: - default GitHub Actions user
|
|
5975
|
+
: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/*``.
|
|
5433
5976
|
:param workflow_package_cache: (experimental) Enable Node.js package cache in GitHub workflows. Default: false
|
|
5434
5977
|
: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
|
|
5435
5978
|
:param disable_tsconfig_dev: (experimental) Do not generate a ``tsconfig.dev.json`` file. Default: false
|
|
5436
5979
|
:param docgen: (experimental) Docgen by Typedoc. Default: false
|
|
5437
5980
|
:param docs_directory: (experimental) Docs directory. Default: "docs"
|
|
5438
5981
|
: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)
|
|
5439
|
-
:param eslint: (experimental) Setup eslint. Default: true
|
|
5982
|
+
:param eslint: (experimental) Setup eslint. Default: - true, unless biome is enabled
|
|
5440
5983
|
:param eslint_options: (experimental) Eslint options. Default: - opinionated default options
|
|
5441
5984
|
:param libdir: (experimental) Typescript artifacts output directory. Default: "lib"
|
|
5442
5985
|
:param projenrc_ts: (experimental) Use TypeScript for your projenrc file (``.projenrc.ts``). Default: false
|
|
@@ -5484,6 +6027,10 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5484
6027
|
yarn_berry_options = _YarnBerryOptions_b6942539(**yarn_berry_options)
|
|
5485
6028
|
if isinstance(workflow_runs_on_group, dict):
|
|
5486
6029
|
workflow_runs_on_group = _GroupRunnerOptions_148c59c1(**workflow_runs_on_group)
|
|
6030
|
+
if isinstance(audit_deps_options, dict):
|
|
6031
|
+
audit_deps_options = _AuditOptions_429c62df(**audit_deps_options)
|
|
6032
|
+
if isinstance(biome_options, dict):
|
|
6033
|
+
biome_options = _BiomeOptions_452ab984(**biome_options)
|
|
5487
6034
|
if isinstance(build_workflow_options, dict):
|
|
5488
6035
|
build_workflow_options = _BuildWorkflowOptions_b756f97f(**build_workflow_options)
|
|
5489
6036
|
if isinstance(build_workflow_triggers, dict):
|
|
@@ -5557,6 +6104,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5557
6104
|
check_type(argname="argument bugs_email", value=bugs_email, expected_type=type_hints["bugs_email"])
|
|
5558
6105
|
check_type(argname="argument bugs_url", value=bugs_url, expected_type=type_hints["bugs_url"])
|
|
5559
6106
|
check_type(argname="argument bundled_deps", value=bundled_deps, expected_type=type_hints["bundled_deps"])
|
|
6107
|
+
check_type(argname="argument bun_version", value=bun_version, expected_type=type_hints["bun_version"])
|
|
5560
6108
|
check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
|
|
5561
6109
|
check_type(argname="argument deps", value=deps, expected_type=type_hints["deps"])
|
|
5562
6110
|
check_type(argname="argument description", value=description, expected_type=type_hints["description"])
|
|
@@ -5573,6 +6121,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5573
6121
|
check_type(argname="argument npm_registry", value=npm_registry, expected_type=type_hints["npm_registry"])
|
|
5574
6122
|
check_type(argname="argument npm_registry_url", value=npm_registry_url, expected_type=type_hints["npm_registry_url"])
|
|
5575
6123
|
check_type(argname="argument npm_token_secret", value=npm_token_secret, expected_type=type_hints["npm_token_secret"])
|
|
6124
|
+
check_type(argname="argument npm_trusted_publishing", value=npm_trusted_publishing, expected_type=type_hints["npm_trusted_publishing"])
|
|
5576
6125
|
check_type(argname="argument package_manager", value=package_manager, expected_type=type_hints["package_manager"])
|
|
5577
6126
|
check_type(argname="argument package_name", value=package_name, expected_type=type_hints["package_name"])
|
|
5578
6127
|
check_type(argname="argument peer_dependency_options", value=peer_dependency_options, expected_type=type_hints["peer_dependency_options"])
|
|
@@ -5584,9 +6133,11 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5584
6133
|
check_type(argname="argument scripts", value=scripts, expected_type=type_hints["scripts"])
|
|
5585
6134
|
check_type(argname="argument stability", value=stability, expected_type=type_hints["stability"])
|
|
5586
6135
|
check_type(argname="argument yarn_berry_options", value=yarn_berry_options, expected_type=type_hints["yarn_berry_options"])
|
|
6136
|
+
check_type(argname="argument bump_package", value=bump_package, expected_type=type_hints["bump_package"])
|
|
5587
6137
|
check_type(argname="argument jsii_release_version", value=jsii_release_version, expected_type=type_hints["jsii_release_version"])
|
|
5588
6138
|
check_type(argname="argument major_version", value=major_version, expected_type=type_hints["major_version"])
|
|
5589
6139
|
check_type(argname="argument min_major_version", value=min_major_version, expected_type=type_hints["min_major_version"])
|
|
6140
|
+
check_type(argname="argument next_version_command", value=next_version_command, expected_type=type_hints["next_version_command"])
|
|
5590
6141
|
check_type(argname="argument npm_dist_tag", value=npm_dist_tag, expected_type=type_hints["npm_dist_tag"])
|
|
5591
6142
|
check_type(argname="argument post_build_steps", value=post_build_steps, expected_type=type_hints["post_build_steps"])
|
|
5592
6143
|
check_type(argname="argument prerelease", value=prerelease, expected_type=type_hints["prerelease"])
|
|
@@ -5594,12 +6145,14 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5594
6145
|
check_type(argname="argument publish_tasks", value=publish_tasks, expected_type=type_hints["publish_tasks"])
|
|
5595
6146
|
check_type(argname="argument releasable_commits", value=releasable_commits, expected_type=type_hints["releasable_commits"])
|
|
5596
6147
|
check_type(argname="argument release_branches", value=release_branches, expected_type=type_hints["release_branches"])
|
|
6148
|
+
check_type(argname="argument release_environment", value=release_environment, expected_type=type_hints["release_environment"])
|
|
5597
6149
|
check_type(argname="argument release_every_commit", value=release_every_commit, expected_type=type_hints["release_every_commit"])
|
|
5598
6150
|
check_type(argname="argument release_failure_issue", value=release_failure_issue, expected_type=type_hints["release_failure_issue"])
|
|
5599
6151
|
check_type(argname="argument release_failure_issue_label", value=release_failure_issue_label, expected_type=type_hints["release_failure_issue_label"])
|
|
5600
6152
|
check_type(argname="argument release_schedule", value=release_schedule, expected_type=type_hints["release_schedule"])
|
|
5601
6153
|
check_type(argname="argument release_tag_prefix", value=release_tag_prefix, expected_type=type_hints["release_tag_prefix"])
|
|
5602
6154
|
check_type(argname="argument release_trigger", value=release_trigger, expected_type=type_hints["release_trigger"])
|
|
6155
|
+
check_type(argname="argument release_workflow_env", value=release_workflow_env, expected_type=type_hints["release_workflow_env"])
|
|
5603
6156
|
check_type(argname="argument release_workflow_name", value=release_workflow_name, expected_type=type_hints["release_workflow_name"])
|
|
5604
6157
|
check_type(argname="argument release_workflow_setup_steps", value=release_workflow_setup_steps, expected_type=type_hints["release_workflow_setup_steps"])
|
|
5605
6158
|
check_type(argname="argument versionrc_options", value=versionrc_options, expected_type=type_hints["versionrc_options"])
|
|
@@ -5608,7 +6161,11 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5608
6161
|
check_type(argname="argument workflow_runs_on_group", value=workflow_runs_on_group, expected_type=type_hints["workflow_runs_on_group"])
|
|
5609
6162
|
check_type(argname="argument default_release_branch", value=default_release_branch, expected_type=type_hints["default_release_branch"])
|
|
5610
6163
|
check_type(argname="argument artifacts_directory", value=artifacts_directory, expected_type=type_hints["artifacts_directory"])
|
|
6164
|
+
check_type(argname="argument audit_deps", value=audit_deps, expected_type=type_hints["audit_deps"])
|
|
6165
|
+
check_type(argname="argument audit_deps_options", value=audit_deps_options, expected_type=type_hints["audit_deps_options"])
|
|
5611
6166
|
check_type(argname="argument auto_approve_upgrades", value=auto_approve_upgrades, expected_type=type_hints["auto_approve_upgrades"])
|
|
6167
|
+
check_type(argname="argument biome", value=biome, expected_type=type_hints["biome"])
|
|
6168
|
+
check_type(argname="argument biome_options", value=biome_options, expected_type=type_hints["biome_options"])
|
|
5612
6169
|
check_type(argname="argument build_workflow", value=build_workflow, expected_type=type_hints["build_workflow"])
|
|
5613
6170
|
check_type(argname="argument build_workflow_options", value=build_workflow_options, expected_type=type_hints["build_workflow_options"])
|
|
5614
6171
|
check_type(argname="argument build_workflow_triggers", value=build_workflow_triggers, expected_type=type_hints["build_workflow_triggers"])
|
|
@@ -5743,6 +6300,8 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5743
6300
|
self._values["bugs_url"] = bugs_url
|
|
5744
6301
|
if bundled_deps is not None:
|
|
5745
6302
|
self._values["bundled_deps"] = bundled_deps
|
|
6303
|
+
if bun_version is not None:
|
|
6304
|
+
self._values["bun_version"] = bun_version
|
|
5746
6305
|
if code_artifact_options is not None:
|
|
5747
6306
|
self._values["code_artifact_options"] = code_artifact_options
|
|
5748
6307
|
if deps is not None:
|
|
@@ -5775,6 +6334,8 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5775
6334
|
self._values["npm_registry_url"] = npm_registry_url
|
|
5776
6335
|
if npm_token_secret is not None:
|
|
5777
6336
|
self._values["npm_token_secret"] = npm_token_secret
|
|
6337
|
+
if npm_trusted_publishing is not None:
|
|
6338
|
+
self._values["npm_trusted_publishing"] = npm_trusted_publishing
|
|
5778
6339
|
if package_manager is not None:
|
|
5779
6340
|
self._values["package_manager"] = package_manager
|
|
5780
6341
|
if package_name is not None:
|
|
@@ -5797,12 +6358,16 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5797
6358
|
self._values["stability"] = stability
|
|
5798
6359
|
if yarn_berry_options is not None:
|
|
5799
6360
|
self._values["yarn_berry_options"] = yarn_berry_options
|
|
6361
|
+
if bump_package is not None:
|
|
6362
|
+
self._values["bump_package"] = bump_package
|
|
5800
6363
|
if jsii_release_version is not None:
|
|
5801
6364
|
self._values["jsii_release_version"] = jsii_release_version
|
|
5802
6365
|
if major_version is not None:
|
|
5803
6366
|
self._values["major_version"] = major_version
|
|
5804
6367
|
if min_major_version is not None:
|
|
5805
6368
|
self._values["min_major_version"] = min_major_version
|
|
6369
|
+
if next_version_command is not None:
|
|
6370
|
+
self._values["next_version_command"] = next_version_command
|
|
5806
6371
|
if npm_dist_tag is not None:
|
|
5807
6372
|
self._values["npm_dist_tag"] = npm_dist_tag
|
|
5808
6373
|
if post_build_steps is not None:
|
|
@@ -5817,6 +6382,8 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5817
6382
|
self._values["releasable_commits"] = releasable_commits
|
|
5818
6383
|
if release_branches is not None:
|
|
5819
6384
|
self._values["release_branches"] = release_branches
|
|
6385
|
+
if release_environment is not None:
|
|
6386
|
+
self._values["release_environment"] = release_environment
|
|
5820
6387
|
if release_every_commit is not None:
|
|
5821
6388
|
self._values["release_every_commit"] = release_every_commit
|
|
5822
6389
|
if release_failure_issue is not None:
|
|
@@ -5829,6 +6396,8 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5829
6396
|
self._values["release_tag_prefix"] = release_tag_prefix
|
|
5830
6397
|
if release_trigger is not None:
|
|
5831
6398
|
self._values["release_trigger"] = release_trigger
|
|
6399
|
+
if release_workflow_env is not None:
|
|
6400
|
+
self._values["release_workflow_env"] = release_workflow_env
|
|
5832
6401
|
if release_workflow_name is not None:
|
|
5833
6402
|
self._values["release_workflow_name"] = release_workflow_name
|
|
5834
6403
|
if release_workflow_setup_steps is not None:
|
|
@@ -5843,8 +6412,16 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
5843
6412
|
self._values["workflow_runs_on_group"] = workflow_runs_on_group
|
|
5844
6413
|
if artifacts_directory is not None:
|
|
5845
6414
|
self._values["artifacts_directory"] = artifacts_directory
|
|
6415
|
+
if audit_deps is not None:
|
|
6416
|
+
self._values["audit_deps"] = audit_deps
|
|
6417
|
+
if audit_deps_options is not None:
|
|
6418
|
+
self._values["audit_deps_options"] = audit_deps_options
|
|
5846
6419
|
if auto_approve_upgrades is not None:
|
|
5847
6420
|
self._values["auto_approve_upgrades"] = auto_approve_upgrades
|
|
6421
|
+
if biome is not None:
|
|
6422
|
+
self._values["biome"] = biome
|
|
6423
|
+
if biome_options is not None:
|
|
6424
|
+
self._values["biome_options"] = biome_options
|
|
5848
6425
|
if build_workflow is not None:
|
|
5849
6426
|
self._values["build_workflow"] = build_workflow
|
|
5850
6427
|
if build_workflow_options is not None:
|
|
@@ -6418,6 +6995,17 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6418
6995
|
result = self._values.get("bundled_deps")
|
|
6419
6996
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
6420
6997
|
|
|
6998
|
+
@builtins.property
|
|
6999
|
+
def bun_version(self) -> typing.Optional[builtins.str]:
|
|
7000
|
+
'''(experimental) The version of Bun to use if using Bun as a package manager.
|
|
7001
|
+
|
|
7002
|
+
:default: "latest"
|
|
7003
|
+
|
|
7004
|
+
:stability: experimental
|
|
7005
|
+
'''
|
|
7006
|
+
result = self._values.get("bun_version")
|
|
7007
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
7008
|
+
|
|
6421
7009
|
@builtins.property
|
|
6422
7010
|
def code_artifact_options(self) -> typing.Optional[_CodeArtifactOptions_e4782b3e]:
|
|
6423
7011
|
'''(experimental) Options for npm packages using AWS CodeArtifact.
|
|
@@ -6552,9 +7140,15 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6552
7140
|
|
|
6553
7141
|
@builtins.property
|
|
6554
7142
|
def max_node_version(self) -> typing.Optional[builtins.str]:
|
|
6555
|
-
'''(experimental)
|
|
7143
|
+
'''(experimental) The maximum node version supported by this package. Most projects should not use this option.
|
|
6556
7144
|
|
|
6557
|
-
|
|
7145
|
+
The value indicates that the package is incompatible with any newer versions of node.
|
|
7146
|
+
This requirement is enforced via the engines field.
|
|
7147
|
+
|
|
7148
|
+
You will normally not need to set this option.
|
|
7149
|
+
Consider this option only if your package is known to not function with newer versions of node.
|
|
7150
|
+
|
|
7151
|
+
:default: - no maximum version is enforced
|
|
6558
7152
|
|
|
6559
7153
|
:stability: experimental
|
|
6560
7154
|
'''
|
|
@@ -6563,9 +7157,19 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6563
7157
|
|
|
6564
7158
|
@builtins.property
|
|
6565
7159
|
def min_node_version(self) -> typing.Optional[builtins.str]:
|
|
6566
|
-
'''(experimental)
|
|
7160
|
+
'''(experimental) The minimum node version required by this package to function. Most projects should not use this option.
|
|
7161
|
+
|
|
7162
|
+
The value indicates that the package is incompatible with any older versions of node.
|
|
7163
|
+
This requirement is enforced via the engines field.
|
|
6567
7164
|
|
|
6568
|
-
|
|
7165
|
+
You will normally not need to set this option, even if your package is incompatible with EOL versions of node.
|
|
7166
|
+
Consider this option only if your package depends on a specific feature, that is not available in other LTS versions.
|
|
7167
|
+
Setting this option has very high impact on the consumers of your package,
|
|
7168
|
+
as package managers will actively prevent usage with node versions you have marked as incompatible.
|
|
7169
|
+
|
|
7170
|
+
To change the node version of your CI/CD workflows, use ``workflowNodeVersion``.
|
|
7171
|
+
|
|
7172
|
+
:default: - no minimum version is enforced
|
|
6569
7173
|
|
|
6570
7174
|
:stability: experimental
|
|
6571
7175
|
'''
|
|
@@ -6642,6 +7246,17 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6642
7246
|
result = self._values.get("npm_token_secret")
|
|
6643
7247
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
6644
7248
|
|
|
7249
|
+
@builtins.property
|
|
7250
|
+
def npm_trusted_publishing(self) -> typing.Optional[builtins.bool]:
|
|
7251
|
+
'''(experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work.
|
|
7252
|
+
|
|
7253
|
+
:default: - false
|
|
7254
|
+
|
|
7255
|
+
:stability: experimental
|
|
7256
|
+
'''
|
|
7257
|
+
result = self._values.get("npm_trusted_publishing")
|
|
7258
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
7259
|
+
|
|
6645
7260
|
@builtins.property
|
|
6646
7261
|
def package_manager(self) -> typing.Optional[_NodePackageManager_3eb53bf6]:
|
|
6647
7262
|
'''(experimental) The Node Package Manager used to execute scripts.
|
|
@@ -6705,7 +7320,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6705
7320
|
def pnpm_version(self) -> typing.Optional[builtins.str]:
|
|
6706
7321
|
'''(experimental) The version of PNPM to use if using PNPM as a package manager.
|
|
6707
7322
|
|
|
6708
|
-
:default: "
|
|
7323
|
+
:default: "9"
|
|
6709
7324
|
|
|
6710
7325
|
:stability: experimental
|
|
6711
7326
|
'''
|
|
@@ -6782,6 +7397,19 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6782
7397
|
result = self._values.get("yarn_berry_options")
|
|
6783
7398
|
return typing.cast(typing.Optional[_YarnBerryOptions_b6942539], result)
|
|
6784
7399
|
|
|
7400
|
+
@builtins.property
|
|
7401
|
+
def bump_package(self) -> typing.Optional[builtins.str]:
|
|
7402
|
+
'''(experimental) The ``commit-and-tag-version`` compatible package used to bump the package version, as a dependency string.
|
|
7403
|
+
|
|
7404
|
+
This can be any compatible package version, including the deprecated ``standard-version@9``.
|
|
7405
|
+
|
|
7406
|
+
:default: - A recent version of "commit-and-tag-version"
|
|
7407
|
+
|
|
7408
|
+
:stability: experimental
|
|
7409
|
+
'''
|
|
7410
|
+
result = self._values.get("bump_package")
|
|
7411
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
7412
|
+
|
|
6785
7413
|
@builtins.property
|
|
6786
7414
|
def jsii_release_version(self) -> typing.Optional[builtins.str]:
|
|
6787
7415
|
'''(experimental) Version requirement of ``publib`` which is used to publish modules to npm.
|
|
@@ -6823,6 +7451,36 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6823
7451
|
result = self._values.get("min_major_version")
|
|
6824
7452
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
6825
7453
|
|
|
7454
|
+
@builtins.property
|
|
7455
|
+
def next_version_command(self) -> typing.Optional[builtins.str]:
|
|
7456
|
+
'''(experimental) A shell command to control the next version to release.
|
|
7457
|
+
|
|
7458
|
+
If present, this shell command will be run before the bump is executed, and
|
|
7459
|
+
it determines what version to release. It will be executed in the following
|
|
7460
|
+
environment:
|
|
7461
|
+
|
|
7462
|
+
- Working directory: the project directory.
|
|
7463
|
+
- ``$VERSION``: the current version. Looks like ``1.2.3``.
|
|
7464
|
+
- ``$LATEST_TAG``: the most recent tag. Looks like ``prefix-v1.2.3``, or may be unset.
|
|
7465
|
+
- ``$SUGGESTED_BUMP``: the suggested bump action based on commits. One of ``major|minor|patch|none``.
|
|
7466
|
+
|
|
7467
|
+
The command should print one of the following to ``stdout``:
|
|
7468
|
+
|
|
7469
|
+
- Nothing: the next version number will be determined based on commit history.
|
|
7470
|
+
- ``x.y.z``: the next version number will be ``x.y.z``.
|
|
7471
|
+
- ``major|minor|patch``: the next version number will be the current version number
|
|
7472
|
+
with the indicated component bumped.
|
|
7473
|
+
|
|
7474
|
+
This setting cannot be specified together with ``minMajorVersion``; the invoked
|
|
7475
|
+
script can be used to achieve the effects of ``minMajorVersion``.
|
|
7476
|
+
|
|
7477
|
+
:default: - The next version will be determined based on the commit history and project settings.
|
|
7478
|
+
|
|
7479
|
+
:stability: experimental
|
|
7480
|
+
'''
|
|
7481
|
+
result = self._values.get("next_version_command")
|
|
7482
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
7483
|
+
|
|
6826
7484
|
@builtins.property
|
|
6827
7485
|
def npm_dist_tag(self) -> typing.Optional[builtins.str]:
|
|
6828
7486
|
'''(experimental) The npmDistTag to use when publishing from the default branch.
|
|
@@ -6918,6 +7576,23 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6918
7576
|
result = self._values.get("release_branches")
|
|
6919
7577
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, _BranchOptions_13663d08]], result)
|
|
6920
7578
|
|
|
7579
|
+
@builtins.property
|
|
7580
|
+
def release_environment(self) -> typing.Optional[builtins.str]:
|
|
7581
|
+
'''(experimental) The GitHub Actions environment used for the release.
|
|
7582
|
+
|
|
7583
|
+
This can be used to add an explicit approval step to the release
|
|
7584
|
+
or limit who can initiate a release through environment protection rules.
|
|
7585
|
+
|
|
7586
|
+
When multiple artifacts are released, the environment can be overwritten
|
|
7587
|
+
on a per artifact basis.
|
|
7588
|
+
|
|
7589
|
+
:default: - no environment used, unless set at the artifact level
|
|
7590
|
+
|
|
7591
|
+
:stability: experimental
|
|
7592
|
+
'''
|
|
7593
|
+
result = self._values.get("release_environment")
|
|
7594
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
7595
|
+
|
|
6921
7596
|
@builtins.property
|
|
6922
7597
|
def release_every_commit(self) -> typing.Optional[builtins.bool]:
|
|
6923
7598
|
'''(deprecated) Automatically release new versions every commit to one of branches in ``releaseBranches``.
|
|
@@ -6995,6 +7670,19 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
6995
7670
|
result = self._values.get("release_trigger")
|
|
6996
7671
|
return typing.cast(typing.Optional[_ReleaseTrigger_e4dc221f], result)
|
|
6997
7672
|
|
|
7673
|
+
@builtins.property
|
|
7674
|
+
def release_workflow_env(
|
|
7675
|
+
self,
|
|
7676
|
+
) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
7677
|
+
'''(experimental) Build environment variables for release workflows.
|
|
7678
|
+
|
|
7679
|
+
:default: {}
|
|
7680
|
+
|
|
7681
|
+
:stability: experimental
|
|
7682
|
+
'''
|
|
7683
|
+
result = self._values.get("release_workflow_env")
|
|
7684
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
7685
|
+
|
|
6998
7686
|
@builtins.property
|
|
6999
7687
|
def release_workflow_name(self) -> typing.Optional[builtins.str]:
|
|
7000
7688
|
'''(experimental) The name of the default release workflow.
|
|
@@ -7021,7 +7709,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7021
7709
|
def versionrc_options(
|
|
7022
7710
|
self,
|
|
7023
7711
|
) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
|
|
7024
|
-
'''(experimental) Custom configuration used when creating changelog with
|
|
7712
|
+
'''(experimental) Custom configuration used when creating changelog with commit-and-tag-version package.
|
|
7025
7713
|
|
|
7026
7714
|
Given values either append to default configuration or overwrite values in it.
|
|
7027
7715
|
|
|
@@ -7090,6 +7778,32 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7090
7778
|
result = self._values.get("artifacts_directory")
|
|
7091
7779
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
7092
7780
|
|
|
7781
|
+
@builtins.property
|
|
7782
|
+
def audit_deps(self) -> typing.Optional[builtins.bool]:
|
|
7783
|
+
'''(experimental) Run security audit on dependencies.
|
|
7784
|
+
|
|
7785
|
+
When enabled, creates an "audit" task that checks for known security vulnerabilities
|
|
7786
|
+
in dependencies. By default, runs during every build and checks for "high" severity
|
|
7787
|
+
vulnerabilities or above in all dependencies (including dev dependencies).
|
|
7788
|
+
|
|
7789
|
+
:default: false
|
|
7790
|
+
|
|
7791
|
+
:stability: experimental
|
|
7792
|
+
'''
|
|
7793
|
+
result = self._values.get("audit_deps")
|
|
7794
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
7795
|
+
|
|
7796
|
+
@builtins.property
|
|
7797
|
+
def audit_deps_options(self) -> typing.Optional[_AuditOptions_429c62df]:
|
|
7798
|
+
'''(experimental) Security audit options.
|
|
7799
|
+
|
|
7800
|
+
:default: - default options
|
|
7801
|
+
|
|
7802
|
+
:stability: experimental
|
|
7803
|
+
'''
|
|
7804
|
+
result = self._values.get("audit_deps_options")
|
|
7805
|
+
return typing.cast(typing.Optional[_AuditOptions_429c62df], result)
|
|
7806
|
+
|
|
7093
7807
|
@builtins.property
|
|
7094
7808
|
def auto_approve_upgrades(self) -> typing.Optional[builtins.bool]:
|
|
7095
7809
|
'''(experimental) Automatically approve deps upgrade PRs, allowing them to be merged by mergify (if configued).
|
|
@@ -7103,6 +7817,28 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7103
7817
|
result = self._values.get("auto_approve_upgrades")
|
|
7104
7818
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
7105
7819
|
|
|
7820
|
+
@builtins.property
|
|
7821
|
+
def biome(self) -> typing.Optional[builtins.bool]:
|
|
7822
|
+
'''(experimental) Setup Biome.
|
|
7823
|
+
|
|
7824
|
+
:default: false
|
|
7825
|
+
|
|
7826
|
+
:stability: experimental
|
|
7827
|
+
'''
|
|
7828
|
+
result = self._values.get("biome")
|
|
7829
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
7830
|
+
|
|
7831
|
+
@builtins.property
|
|
7832
|
+
def biome_options(self) -> typing.Optional[_BiomeOptions_452ab984]:
|
|
7833
|
+
'''(experimental) Biome options.
|
|
7834
|
+
|
|
7835
|
+
:default: - default options
|
|
7836
|
+
|
|
7837
|
+
:stability: experimental
|
|
7838
|
+
'''
|
|
7839
|
+
result = self._values.get("biome_options")
|
|
7840
|
+
return typing.cast(typing.Optional[_BiomeOptions_452ab984], result)
|
|
7841
|
+
|
|
7106
7842
|
@builtins.property
|
|
7107
7843
|
def build_workflow(self) -> typing.Optional[builtins.bool]:
|
|
7108
7844
|
'''(experimental) Define a GitHub workflow for building PRs.
|
|
@@ -7160,7 +7896,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7160
7896
|
|
|
7161
7897
|
@builtins.property
|
|
7162
7898
|
def code_cov(self) -> typing.Optional[builtins.bool]:
|
|
7163
|
-
'''(experimental) Define a GitHub workflow step for sending code coverage metrics to https://codecov.io/ Uses codecov/codecov-action@
|
|
7899
|
+
'''(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``.
|
|
7164
7900
|
|
|
7165
7901
|
:default: false
|
|
7166
7902
|
|
|
@@ -7171,9 +7907,9 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7171
7907
|
|
|
7172
7908
|
@builtins.property
|
|
7173
7909
|
def code_cov_token_secret(self) -> typing.Optional[builtins.str]:
|
|
7174
|
-
'''(experimental) Define the secret name for a specified https://codecov.io/ token
|
|
7910
|
+
'''(experimental) Define the secret name for a specified https://codecov.io/ token.
|
|
7175
7911
|
|
|
7176
|
-
:default: -
|
|
7912
|
+
:default: - OIDC auth is used
|
|
7177
7913
|
|
|
7178
7914
|
:stability: experimental
|
|
7179
7915
|
'''
|
|
@@ -7486,7 +8222,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7486
8222
|
def workflow_git_identity(self) -> typing.Optional[_GitIdentity_6effc3de]:
|
|
7487
8223
|
'''(experimental) The git identity to use in workflows.
|
|
7488
8224
|
|
|
7489
|
-
:default: - GitHub Actions
|
|
8225
|
+
:default: - default GitHub Actions user
|
|
7490
8226
|
|
|
7491
8227
|
:stability: experimental
|
|
7492
8228
|
'''
|
|
@@ -7495,9 +8231,11 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7495
8231
|
|
|
7496
8232
|
@builtins.property
|
|
7497
8233
|
def workflow_node_version(self) -> typing.Optional[builtins.str]:
|
|
7498
|
-
'''(experimental) The node version
|
|
8234
|
+
'''(experimental) The node version used in GitHub Actions workflows.
|
|
7499
8235
|
|
|
7500
|
-
|
|
8236
|
+
Always use this option if your GitHub Actions workflows require a specific to run.
|
|
8237
|
+
|
|
8238
|
+
:default: - ``minNodeVersion`` if set, otherwise ``lts/*``.
|
|
7501
8239
|
|
|
7502
8240
|
:stability: experimental
|
|
7503
8241
|
'''
|
|
@@ -7574,7 +8312,7 @@ class TypeScriptLibraryProjectOptions(TypeScriptProjectOptions):
|
|
|
7574
8312
|
def eslint(self) -> typing.Optional[builtins.bool]:
|
|
7575
8313
|
'''(experimental) Setup eslint.
|
|
7576
8314
|
|
|
7577
|
-
:default: true
|
|
8315
|
+
:default: - true, unless biome is enabled
|
|
7578
8316
|
|
|
7579
8317
|
:stability: experimental
|
|
7580
8318
|
'''
|
|
@@ -7875,6 +8613,7 @@ def _typecheckingstub__a914f27f5d915b07b8847d407b03b08cab2aad7b213973084a9026526
|
|
|
7875
8613
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
7876
8614
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
7877
8615
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
8616
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
7878
8617
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
7879
8618
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
7880
8619
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -7891,6 +8630,7 @@ def _typecheckingstub__a914f27f5d915b07b8847d407b03b08cab2aad7b213973084a9026526
|
|
|
7891
8630
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
7892
8631
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
7893
8632
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
8633
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
7894
8634
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
7895
8635
|
package_name: typing.Optional[builtins.str] = None,
|
|
7896
8636
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -7902,9 +8642,11 @@ def _typecheckingstub__a914f27f5d915b07b8847d407b03b08cab2aad7b213973084a9026526
|
|
|
7902
8642
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
7903
8643
|
stability: typing.Optional[builtins.str] = None,
|
|
7904
8644
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8645
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
7905
8646
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
7906
8647
|
major_version: typing.Optional[jsii.Number] = None,
|
|
7907
8648
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
8649
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
7908
8650
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
7909
8651
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7910
8652
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -7912,12 +8654,14 @@ def _typecheckingstub__a914f27f5d915b07b8847d407b03b08cab2aad7b213973084a9026526
|
|
|
7912
8654
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
7913
8655
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
7914
8656
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
8657
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
7915
8658
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
7916
8659
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
7917
8660
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
7918
8661
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
7919
8662
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
7920
8663
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
8664
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
7921
8665
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
7922
8666
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
7923
8667
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -7926,7 +8670,11 @@ def _typecheckingstub__a914f27f5d915b07b8847d407b03b08cab2aad7b213973084a9026526
|
|
|
7926
8670
|
workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
7927
8671
|
default_release_branch: builtins.str,
|
|
7928
8672
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
8673
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
8674
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
7929
8675
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
8676
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
8677
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
7930
8678
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
7931
8679
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
7932
8680
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -8032,6 +8780,7 @@ def _typecheckingstub__ac162883b4ecfe9863890d69bffa76d7f9ce16e619c94b9b2a4b7b8f2
|
|
|
8032
8780
|
bugs_email: typing.Optional[builtins.str] = None,
|
|
8033
8781
|
bugs_url: typing.Optional[builtins.str] = None,
|
|
8034
8782
|
bundled_deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
8783
|
+
bun_version: typing.Optional[builtins.str] = None,
|
|
8035
8784
|
code_artifact_options: typing.Optional[typing.Union[_CodeArtifactOptions_e4782b3e, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8036
8785
|
deps: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
8037
8786
|
description: typing.Optional[builtins.str] = None,
|
|
@@ -8048,6 +8797,7 @@ def _typecheckingstub__ac162883b4ecfe9863890d69bffa76d7f9ce16e619c94b9b2a4b7b8f2
|
|
|
8048
8797
|
npm_registry: typing.Optional[builtins.str] = None,
|
|
8049
8798
|
npm_registry_url: typing.Optional[builtins.str] = None,
|
|
8050
8799
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
8800
|
+
npm_trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
8051
8801
|
package_manager: typing.Optional[_NodePackageManager_3eb53bf6] = None,
|
|
8052
8802
|
package_name: typing.Optional[builtins.str] = None,
|
|
8053
8803
|
peer_dependency_options: typing.Optional[typing.Union[_PeerDependencyOptions_99d7d493, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
@@ -8059,9 +8809,11 @@ def _typecheckingstub__ac162883b4ecfe9863890d69bffa76d7f9ce16e619c94b9b2a4b7b8f2
|
|
|
8059
8809
|
scripts: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
8060
8810
|
stability: typing.Optional[builtins.str] = None,
|
|
8061
8811
|
yarn_berry_options: typing.Optional[typing.Union[_YarnBerryOptions_b6942539, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8812
|
+
bump_package: typing.Optional[builtins.str] = None,
|
|
8062
8813
|
jsii_release_version: typing.Optional[builtins.str] = None,
|
|
8063
8814
|
major_version: typing.Optional[jsii.Number] = None,
|
|
8064
8815
|
min_major_version: typing.Optional[jsii.Number] = None,
|
|
8816
|
+
next_version_command: typing.Optional[builtins.str] = None,
|
|
8065
8817
|
npm_dist_tag: typing.Optional[builtins.str] = None,
|
|
8066
8818
|
post_build_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
8067
8819
|
prerelease: typing.Optional[builtins.str] = None,
|
|
@@ -8069,12 +8821,14 @@ def _typecheckingstub__ac162883b4ecfe9863890d69bffa76d7f9ce16e619c94b9b2a4b7b8f2
|
|
|
8069
8821
|
publish_tasks: typing.Optional[builtins.bool] = None,
|
|
8070
8822
|
releasable_commits: typing.Optional[_ReleasableCommits_d481ce10] = None,
|
|
8071
8823
|
release_branches: typing.Optional[typing.Mapping[builtins.str, typing.Union[_BranchOptions_13663d08, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
8824
|
+
release_environment: typing.Optional[builtins.str] = None,
|
|
8072
8825
|
release_every_commit: typing.Optional[builtins.bool] = None,
|
|
8073
8826
|
release_failure_issue: typing.Optional[builtins.bool] = None,
|
|
8074
8827
|
release_failure_issue_label: typing.Optional[builtins.str] = None,
|
|
8075
8828
|
release_schedule: typing.Optional[builtins.str] = None,
|
|
8076
8829
|
release_tag_prefix: typing.Optional[builtins.str] = None,
|
|
8077
8830
|
release_trigger: typing.Optional[_ReleaseTrigger_e4dc221f] = None,
|
|
8831
|
+
release_workflow_env: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
8078
8832
|
release_workflow_name: typing.Optional[builtins.str] = None,
|
|
8079
8833
|
release_workflow_setup_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
8080
8834
|
versionrc_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
@@ -8083,7 +8837,11 @@ def _typecheckingstub__ac162883b4ecfe9863890d69bffa76d7f9ce16e619c94b9b2a4b7b8f2
|
|
|
8083
8837
|
workflow_runs_on_group: typing.Optional[typing.Union[_GroupRunnerOptions_148c59c1, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8084
8838
|
default_release_branch: builtins.str,
|
|
8085
8839
|
artifacts_directory: typing.Optional[builtins.str] = None,
|
|
8840
|
+
audit_deps: typing.Optional[builtins.bool] = None,
|
|
8841
|
+
audit_deps_options: typing.Optional[typing.Union[_AuditOptions_429c62df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8086
8842
|
auto_approve_upgrades: typing.Optional[builtins.bool] = None,
|
|
8843
|
+
biome: typing.Optional[builtins.bool] = None,
|
|
8844
|
+
biome_options: typing.Optional[typing.Union[_BiomeOptions_452ab984, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8087
8845
|
build_workflow: typing.Optional[builtins.bool] = None,
|
|
8088
8846
|
build_workflow_options: typing.Optional[typing.Union[_BuildWorkflowOptions_b756f97f, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8089
8847
|
build_workflow_triggers: typing.Optional[typing.Union[_Triggers_e9ae7617, typing.Dict[builtins.str, typing.Any]]] = None,
|