projen 0.95.2__py3-none-any.whl → 0.95.3__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.
Potentially problematic release.
This version of projen might be problematic. Click here for more details.
- projen/_jsii/__init__.py +1 -1
- projen/_jsii/projen@0.95.3.jsii.tgz +0 -0
- projen/awscdk/__init__.py +63 -0
- projen/cdk/__init__.py +83 -0
- projen/cdk8s/__init__.py +42 -0
- projen/cdktf/__init__.py +21 -0
- projen/javascript/__init__.py +43 -0
- projen/javascript/biome_config/__init__.py +98 -4
- projen/release/__init__.py +154 -15
- projen/typescript/__init__.py +45 -0
- projen/web/__init__.py +84 -0
- {projen-0.95.2.data → projen-0.95.3.data}/scripts/projen +1 -1
- {projen-0.95.2.dist-info → projen-0.95.3.dist-info}/METADATA +1 -1
- projen-0.95.3.dist-info/RECORD +27 -0
- projen/_jsii/projen@0.95.2.jsii.tgz +0 -0
- projen-0.95.2.dist-info/RECORD +0 -27
- {projen-0.95.2.dist-info → projen-0.95.3.dist-info}/LICENSE +0 -0
- {projen-0.95.2.dist-info → projen-0.95.3.dist-info}/WHEEL +0 -0
- {projen-0.95.2.dist-info → projen-0.95.3.dist-info}/top_level.txt +0 -0
projen/release/__init__.py
CHANGED
|
@@ -1664,6 +1664,7 @@ class MavenPublishOptions(CommonPublishOptions):
|
|
|
1664
1664
|
"npm_provenance": "npmProvenance",
|
|
1665
1665
|
"npm_token_secret": "npmTokenSecret",
|
|
1666
1666
|
"registry": "registry",
|
|
1667
|
+
"trusted_publishing": "trustedPublishing",
|
|
1667
1668
|
},
|
|
1668
1669
|
)
|
|
1669
1670
|
class NpmPublishOptions(CommonPublishOptions):
|
|
@@ -1679,6 +1680,7 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1679
1680
|
npm_provenance: typing.Optional[builtins.bool] = None,
|
|
1680
1681
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
1681
1682
|
registry: typing.Optional[builtins.str] = None,
|
|
1683
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
1682
1684
|
) -> None:
|
|
1683
1685
|
'''(experimental) Options for npm release.
|
|
1684
1686
|
|
|
@@ -1686,11 +1688,12 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1686
1688
|
:param post_publish_steps: (experimental) Steps to execute after executing the publishing command. These can be used to add/update the release artifacts ot any other tasks needed. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPostPublishingSteps``.
|
|
1687
1689
|
:param pre_publish_steps: (experimental) Steps to execute before executing the publishing command. These can be used to prepare the artifact for publishing if needed. These steps are executed after ``dist/`` has been populated with the build output. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPrePublishingSteps``.
|
|
1688
1690
|
:param publish_tools: (experimental) Additional tools to install in the publishing job. Default: - no additional tools are installed
|
|
1689
|
-
:param code_artifact_options: (experimental) Options for publishing npm package to AWS CodeArtifact. Default: -
|
|
1691
|
+
:param code_artifact_options: (experimental) Options for publishing npm package to AWS CodeArtifact. Default: - package is not published to
|
|
1690
1692
|
:param dist_tag: (deprecated) Tags can be used to provide an alias instead of version numbers. For example, a project might choose to have multiple streams of development and use a different tag for each stream, e.g., stable, beta, dev, canary. By default, the ``latest`` tag is used by npm to identify the current version of a package, and ``npm install <pkg>`` (without any ``@<version>`` or ``@<tag>`` specifier) installs the latest tag. Typically, projects only use the ``latest`` tag for stable release versions, and use other tags for unstable versions such as prereleases. The ``next`` tag is used by some projects to identify the upcoming version. Default: "latest"
|
|
1691
|
-
:param npm_provenance: (experimental) Should provenance statements be generated when package is published. Note that this component is using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: -
|
|
1692
|
-
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use
|
|
1693
|
+
:param npm_provenance: (experimental) Should provenance statements be generated when package is published. Note that this component is using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Only works in supported CI/CD environments. Default: - enabled for for public packages using trusted publishing, disabled otherwise
|
|
1694
|
+
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use for publishing packages. Default: - "NPM_TOKEN" or "GITHUB_TOKEN" if ``registry`` is set to ``npm.pkg.github.com``.
|
|
1693
1695
|
:param registry: (experimental) The domain name of the npm package registry. To publish to GitHub Packages, set this value to ``"npm.pkg.github.com"``. In this if ``npmTokenSecret`` is not specified, it will default to ``GITHUB_TOKEN`` which means that you will be able to publish to the repository's package store. In this case, make sure ``repositoryUrl`` is correctly defined. Default: "registry.npmjs.org"
|
|
1696
|
+
:param trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Requires npm CLI version 11.5.1 or later, this is NOT ensured automatically. When used, ``npmTokenSecret`` will be ignored. Default: - false
|
|
1694
1697
|
|
|
1695
1698
|
:stability: experimental
|
|
1696
1699
|
'''
|
|
@@ -1709,6 +1712,7 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1709
1712
|
check_type(argname="argument npm_provenance", value=npm_provenance, expected_type=type_hints["npm_provenance"])
|
|
1710
1713
|
check_type(argname="argument npm_token_secret", value=npm_token_secret, expected_type=type_hints["npm_token_secret"])
|
|
1711
1714
|
check_type(argname="argument registry", value=registry, expected_type=type_hints["registry"])
|
|
1715
|
+
check_type(argname="argument trusted_publishing", value=trusted_publishing, expected_type=type_hints["trusted_publishing"])
|
|
1712
1716
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1713
1717
|
if github_environment is not None:
|
|
1714
1718
|
self._values["github_environment"] = github_environment
|
|
@@ -1728,6 +1732,8 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1728
1732
|
self._values["npm_token_secret"] = npm_token_secret
|
|
1729
1733
|
if registry is not None:
|
|
1730
1734
|
self._values["registry"] = registry
|
|
1735
|
+
if trusted_publishing is not None:
|
|
1736
|
+
self._values["trusted_publishing"] = trusted_publishing
|
|
1731
1737
|
|
|
1732
1738
|
@builtins.property
|
|
1733
1739
|
def github_environment(self) -> typing.Optional[builtins.str]:
|
|
@@ -1788,7 +1794,7 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1788
1794
|
def code_artifact_options(self) -> typing.Optional[CodeArtifactOptions]:
|
|
1789
1795
|
'''(experimental) Options for publishing npm package to AWS CodeArtifact.
|
|
1790
1796
|
|
|
1791
|
-
:default: -
|
|
1797
|
+
:default: - package is not published to
|
|
1792
1798
|
|
|
1793
1799
|
:stability: experimental
|
|
1794
1800
|
'''
|
|
@@ -1826,7 +1832,9 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1826
1832
|
Note that this component is using ``publib`` to publish packages,
|
|
1827
1833
|
which is using npm internally and supports provenance statements independently of the package manager used.
|
|
1828
1834
|
|
|
1829
|
-
|
|
1835
|
+
Only works in supported CI/CD environments.
|
|
1836
|
+
|
|
1837
|
+
:default: - enabled for for public packages using trusted publishing, disabled otherwise
|
|
1830
1838
|
|
|
1831
1839
|
:see: https://docs.npmjs.com/generating-provenance-statements
|
|
1832
1840
|
:stability: experimental
|
|
@@ -1836,7 +1844,7 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1836
1844
|
|
|
1837
1845
|
@builtins.property
|
|
1838
1846
|
def npm_token_secret(self) -> typing.Optional[builtins.str]:
|
|
1839
|
-
'''(experimental) GitHub secret which contains the NPM token to use
|
|
1847
|
+
'''(experimental) GitHub secret which contains the NPM token to use for publishing packages.
|
|
1840
1848
|
|
|
1841
1849
|
:default: - "NPM_TOKEN" or "GITHUB_TOKEN" if ``registry`` is set to ``npm.pkg.github.com``.
|
|
1842
1850
|
|
|
@@ -1866,6 +1874,21 @@ class NpmPublishOptions(CommonPublishOptions):
|
|
|
1866
1874
|
result = self._values.get("registry")
|
|
1867
1875
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
1868
1876
|
|
|
1877
|
+
@builtins.property
|
|
1878
|
+
def trusted_publishing(self) -> typing.Optional[builtins.bool]:
|
|
1879
|
+
'''(experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work.
|
|
1880
|
+
|
|
1881
|
+
Requires npm CLI version 11.5.1 or later, this is NOT ensured automatically.
|
|
1882
|
+
When used, ``npmTokenSecret`` will be ignored.
|
|
1883
|
+
|
|
1884
|
+
:default: - false
|
|
1885
|
+
|
|
1886
|
+
:see: https://docs.npmjs.com/trusted-publishers
|
|
1887
|
+
:stability: experimental
|
|
1888
|
+
'''
|
|
1889
|
+
result = self._values.get("trusted_publishing")
|
|
1890
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
1891
|
+
|
|
1869
1892
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1870
1893
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1871
1894
|
|
|
@@ -2297,6 +2320,7 @@ class Publisher(
|
|
|
2297
2320
|
npm_provenance: typing.Optional[builtins.bool] = None,
|
|
2298
2321
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
2299
2322
|
registry: typing.Optional[builtins.str] = None,
|
|
2323
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
2300
2324
|
github_environment: typing.Optional[builtins.str] = None,
|
|
2301
2325
|
post_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2302
2326
|
pre_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
@@ -2304,11 +2328,12 @@ class Publisher(
|
|
|
2304
2328
|
) -> None:
|
|
2305
2329
|
'''(experimental) Publishes artifacts from ``js/**`` to npm.
|
|
2306
2330
|
|
|
2307
|
-
:param code_artifact_options: (experimental) Options for publishing npm package to AWS CodeArtifact. Default: -
|
|
2331
|
+
:param code_artifact_options: (experimental) Options for publishing npm package to AWS CodeArtifact. Default: - package is not published to
|
|
2308
2332
|
:param dist_tag: (deprecated) Tags can be used to provide an alias instead of version numbers. For example, a project might choose to have multiple streams of development and use a different tag for each stream, e.g., stable, beta, dev, canary. By default, the ``latest`` tag is used by npm to identify the current version of a package, and ``npm install <pkg>`` (without any ``@<version>`` or ``@<tag>`` specifier) installs the latest tag. Typically, projects only use the ``latest`` tag for stable release versions, and use other tags for unstable versions such as prereleases. The ``next`` tag is used by some projects to identify the upcoming version. Default: "latest"
|
|
2309
|
-
:param npm_provenance: (experimental) Should provenance statements be generated when package is published. Note that this component is using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: -
|
|
2310
|
-
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use
|
|
2333
|
+
:param npm_provenance: (experimental) Should provenance statements be generated when package is published. Note that this component is using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Only works in supported CI/CD environments. Default: - enabled for for public packages using trusted publishing, disabled otherwise
|
|
2334
|
+
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use for publishing packages. Default: - "NPM_TOKEN" or "GITHUB_TOKEN" if ``registry`` is set to ``npm.pkg.github.com``.
|
|
2311
2335
|
:param registry: (experimental) The domain name of the npm package registry. To publish to GitHub Packages, set this value to ``"npm.pkg.github.com"``. In this if ``npmTokenSecret`` is not specified, it will default to ``GITHUB_TOKEN`` which means that you will be able to publish to the repository's package store. In this case, make sure ``repositoryUrl`` is correctly defined. Default: "registry.npmjs.org"
|
|
2336
|
+
:param trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Requires npm CLI version 11.5.1 or later, this is NOT ensured automatically. When used, ``npmTokenSecret`` will be ignored. Default: - false
|
|
2312
2337
|
:param github_environment: (experimental) The GitHub Actions environment used for publishing. This can be used to add an explicit approval step to the release or limit who can initiate a release through environment protection rules. Set this to overwrite a package level publishing environment just for this artifact. Default: - no environment used, unless set at the package level
|
|
2313
2338
|
:param post_publish_steps: (experimental) Steps to execute after executing the publishing command. These can be used to add/update the release artifacts ot any other tasks needed. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPostPublishingSteps``.
|
|
2314
2339
|
:param pre_publish_steps: (experimental) Steps to execute before executing the publishing command. These can be used to prepare the artifact for publishing if needed. These steps are executed after ``dist/`` has been populated with the build output. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPrePublishingSteps``.
|
|
@@ -2322,6 +2347,7 @@ class Publisher(
|
|
|
2322
2347
|
npm_provenance=npm_provenance,
|
|
2323
2348
|
npm_token_secret=npm_token_secret,
|
|
2324
2349
|
registry=registry,
|
|
2350
|
+
trusted_publishing=trusted_publishing,
|
|
2325
2351
|
github_environment=github_environment,
|
|
2326
2352
|
post_publish_steps=post_publish_steps,
|
|
2327
2353
|
pre_publish_steps=pre_publish_steps,
|
|
@@ -2367,7 +2393,9 @@ class Publisher(
|
|
|
2367
2393
|
def publish_to_py_pi(
|
|
2368
2394
|
self,
|
|
2369
2395
|
*,
|
|
2396
|
+
attestations: typing.Optional[builtins.bool] = None,
|
|
2370
2397
|
code_artifact_options: typing.Optional[typing.Union[CodeArtifactOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2398
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
2371
2399
|
twine_password_secret: typing.Optional[builtins.str] = None,
|
|
2372
2400
|
twine_registry_url: typing.Optional[builtins.str] = None,
|
|
2373
2401
|
twine_username_secret: typing.Optional[builtins.str] = None,
|
|
@@ -2378,7 +2406,9 @@ class Publisher(
|
|
|
2378
2406
|
) -> None:
|
|
2379
2407
|
'''(experimental) Publishes wheel artifacts from ``python`` to PyPI.
|
|
2380
2408
|
|
|
2409
|
+
:param attestations: (experimental) Generate and publish cryptographic attestations for files uploaded to PyPI. Attestations provide package provenance and integrity an can be viewed on PyPI. They are only available when using a Trusted Publisher for publishing. Default: - enabled when using trusted publishing, otherwise not applicable
|
|
2381
2410
|
:param code_artifact_options: (experimental) Options for publishing to AWS CodeArtifact. Default: - undefined
|
|
2411
|
+
:param trusted_publishing: (experimental) Use PyPI trusted publishing instead of tokens or username & password. Needs to be setup in PyPI.
|
|
2382
2412
|
:param twine_password_secret: (experimental) The GitHub secret which contains PyPI password. Default: "TWINE_PASSWORD"
|
|
2383
2413
|
:param twine_registry_url: (experimental) The registry url to use when releasing packages. Default: - twine default
|
|
2384
2414
|
:param twine_username_secret: (experimental) The GitHub secret which contains PyPI user name. Default: "TWINE_USERNAME"
|
|
@@ -2390,7 +2420,9 @@ class Publisher(
|
|
|
2390
2420
|
:stability: experimental
|
|
2391
2421
|
'''
|
|
2392
2422
|
options = PyPiPublishOptions(
|
|
2423
|
+
attestations=attestations,
|
|
2393
2424
|
code_artifact_options=code_artifact_options,
|
|
2425
|
+
trusted_publishing=trusted_publishing,
|
|
2394
2426
|
twine_password_secret=twine_password_secret,
|
|
2395
2427
|
twine_registry_url=twine_registry_url,
|
|
2396
2428
|
twine_username_secret=twine_username_secret,
|
|
@@ -2729,7 +2761,9 @@ class PublisherOptions:
|
|
|
2729
2761
|
"post_publish_steps": "postPublishSteps",
|
|
2730
2762
|
"pre_publish_steps": "prePublishSteps",
|
|
2731
2763
|
"publish_tools": "publishTools",
|
|
2764
|
+
"attestations": "attestations",
|
|
2732
2765
|
"code_artifact_options": "codeArtifactOptions",
|
|
2766
|
+
"trusted_publishing": "trustedPublishing",
|
|
2733
2767
|
"twine_password_secret": "twinePasswordSecret",
|
|
2734
2768
|
"twine_registry_url": "twineRegistryUrl",
|
|
2735
2769
|
"twine_username_secret": "twineUsernameSecret",
|
|
@@ -2743,7 +2777,9 @@ class PyPiPublishOptions(CommonPublishOptions):
|
|
|
2743
2777
|
post_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2744
2778
|
pre_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2745
2779
|
publish_tools: typing.Optional[typing.Union[_Tools_75b93a2a, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2780
|
+
attestations: typing.Optional[builtins.bool] = None,
|
|
2746
2781
|
code_artifact_options: typing.Optional[typing.Union[CodeArtifactOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
2782
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
2747
2783
|
twine_password_secret: typing.Optional[builtins.str] = None,
|
|
2748
2784
|
twine_registry_url: typing.Optional[builtins.str] = None,
|
|
2749
2785
|
twine_username_secret: typing.Optional[builtins.str] = None,
|
|
@@ -2754,7 +2790,9 @@ class PyPiPublishOptions(CommonPublishOptions):
|
|
|
2754
2790
|
:param post_publish_steps: (experimental) Steps to execute after executing the publishing command. These can be used to add/update the release artifacts ot any other tasks needed. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPostPublishingSteps``.
|
|
2755
2791
|
:param pre_publish_steps: (experimental) Steps to execute before executing the publishing command. These can be used to prepare the artifact for publishing if needed. These steps are executed after ``dist/`` has been populated with the build output. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPrePublishingSteps``.
|
|
2756
2792
|
:param publish_tools: (experimental) Additional tools to install in the publishing job. Default: - no additional tools are installed
|
|
2793
|
+
:param attestations: (experimental) Generate and publish cryptographic attestations for files uploaded to PyPI. Attestations provide package provenance and integrity an can be viewed on PyPI. They are only available when using a Trusted Publisher for publishing. Default: - enabled when using trusted publishing, otherwise not applicable
|
|
2757
2794
|
:param code_artifact_options: (experimental) Options for publishing to AWS CodeArtifact. Default: - undefined
|
|
2795
|
+
:param trusted_publishing: (experimental) Use PyPI trusted publishing instead of tokens or username & password. Needs to be setup in PyPI.
|
|
2758
2796
|
:param twine_password_secret: (experimental) The GitHub secret which contains PyPI password. Default: "TWINE_PASSWORD"
|
|
2759
2797
|
:param twine_registry_url: (experimental) The registry url to use when releasing packages. Default: - twine default
|
|
2760
2798
|
:param twine_username_secret: (experimental) The GitHub secret which contains PyPI user name. Default: "TWINE_USERNAME"
|
|
@@ -2771,7 +2809,9 @@ class PyPiPublishOptions(CommonPublishOptions):
|
|
|
2771
2809
|
check_type(argname="argument post_publish_steps", value=post_publish_steps, expected_type=type_hints["post_publish_steps"])
|
|
2772
2810
|
check_type(argname="argument pre_publish_steps", value=pre_publish_steps, expected_type=type_hints["pre_publish_steps"])
|
|
2773
2811
|
check_type(argname="argument publish_tools", value=publish_tools, expected_type=type_hints["publish_tools"])
|
|
2812
|
+
check_type(argname="argument attestations", value=attestations, expected_type=type_hints["attestations"])
|
|
2774
2813
|
check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
|
|
2814
|
+
check_type(argname="argument trusted_publishing", value=trusted_publishing, expected_type=type_hints["trusted_publishing"])
|
|
2775
2815
|
check_type(argname="argument twine_password_secret", value=twine_password_secret, expected_type=type_hints["twine_password_secret"])
|
|
2776
2816
|
check_type(argname="argument twine_registry_url", value=twine_registry_url, expected_type=type_hints["twine_registry_url"])
|
|
2777
2817
|
check_type(argname="argument twine_username_secret", value=twine_username_secret, expected_type=type_hints["twine_username_secret"])
|
|
@@ -2784,8 +2824,12 @@ class PyPiPublishOptions(CommonPublishOptions):
|
|
|
2784
2824
|
self._values["pre_publish_steps"] = pre_publish_steps
|
|
2785
2825
|
if publish_tools is not None:
|
|
2786
2826
|
self._values["publish_tools"] = publish_tools
|
|
2827
|
+
if attestations is not None:
|
|
2828
|
+
self._values["attestations"] = attestations
|
|
2787
2829
|
if code_artifact_options is not None:
|
|
2788
2830
|
self._values["code_artifact_options"] = code_artifact_options
|
|
2831
|
+
if trusted_publishing is not None:
|
|
2832
|
+
self._values["trusted_publishing"] = trusted_publishing
|
|
2789
2833
|
if twine_password_secret is not None:
|
|
2790
2834
|
self._values["twine_password_secret"] = twine_password_secret
|
|
2791
2835
|
if twine_registry_url is not None:
|
|
@@ -2848,6 +2892,21 @@ class PyPiPublishOptions(CommonPublishOptions):
|
|
|
2848
2892
|
result = self._values.get("publish_tools")
|
|
2849
2893
|
return typing.cast(typing.Optional[_Tools_75b93a2a], result)
|
|
2850
2894
|
|
|
2895
|
+
@builtins.property
|
|
2896
|
+
def attestations(self) -> typing.Optional[builtins.bool]:
|
|
2897
|
+
'''(experimental) Generate and publish cryptographic attestations for files uploaded to PyPI.
|
|
2898
|
+
|
|
2899
|
+
Attestations provide package provenance and integrity an can be viewed on PyPI.
|
|
2900
|
+
They are only available when using a Trusted Publisher for publishing.
|
|
2901
|
+
|
|
2902
|
+
:default: - enabled when using trusted publishing, otherwise not applicable
|
|
2903
|
+
|
|
2904
|
+
:see: https://docs.pypi.org/attestations/producing-attestations/
|
|
2905
|
+
:stability: experimental
|
|
2906
|
+
'''
|
|
2907
|
+
result = self._values.get("attestations")
|
|
2908
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
2909
|
+
|
|
2851
2910
|
@builtins.property
|
|
2852
2911
|
def code_artifact_options(self) -> typing.Optional[CodeArtifactOptions]:
|
|
2853
2912
|
'''(experimental) Options for publishing to AWS CodeArtifact.
|
|
@@ -2859,6 +2918,18 @@ class PyPiPublishOptions(CommonPublishOptions):
|
|
|
2859
2918
|
result = self._values.get("code_artifact_options")
|
|
2860
2919
|
return typing.cast(typing.Optional[CodeArtifactOptions], result)
|
|
2861
2920
|
|
|
2921
|
+
@builtins.property
|
|
2922
|
+
def trusted_publishing(self) -> typing.Optional[builtins.bool]:
|
|
2923
|
+
'''(experimental) Use PyPI trusted publishing instead of tokens or username & password.
|
|
2924
|
+
|
|
2925
|
+
Needs to be setup in PyPI.
|
|
2926
|
+
|
|
2927
|
+
:see: https://docs.pypi.org/trusted-publishers/adding-a-publisher/
|
|
2928
|
+
:stability: experimental
|
|
2929
|
+
'''
|
|
2930
|
+
result = self._values.get("trusted_publishing")
|
|
2931
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
2932
|
+
|
|
2862
2933
|
@builtins.property
|
|
2863
2934
|
def twine_password_secret(self) -> typing.Optional[builtins.str]:
|
|
2864
2935
|
'''(experimental) The GitHub secret which contains PyPI password.
|
|
@@ -4167,6 +4238,7 @@ class JsiiReleaseMaven(MavenPublishOptions):
|
|
|
4167
4238
|
"npm_provenance": "npmProvenance",
|
|
4168
4239
|
"npm_token_secret": "npmTokenSecret",
|
|
4169
4240
|
"registry": "registry",
|
|
4241
|
+
"trusted_publishing": "trustedPublishing",
|
|
4170
4242
|
},
|
|
4171
4243
|
)
|
|
4172
4244
|
class JsiiReleaseNpm(NpmPublishOptions):
|
|
@@ -4182,17 +4254,19 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4182
4254
|
npm_provenance: typing.Optional[builtins.bool] = None,
|
|
4183
4255
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
4184
4256
|
registry: typing.Optional[builtins.str] = None,
|
|
4257
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
4185
4258
|
) -> None:
|
|
4186
4259
|
'''
|
|
4187
4260
|
:param github_environment: (experimental) The GitHub Actions environment used for publishing. This can be used to add an explicit approval step to the release or limit who can initiate a release through environment protection rules. Set this to overwrite a package level publishing environment just for this artifact. Default: - no environment used, unless set at the package level
|
|
4188
4261
|
:param post_publish_steps: (experimental) Steps to execute after executing the publishing command. These can be used to add/update the release artifacts ot any other tasks needed. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPostPublishingSteps``.
|
|
4189
4262
|
:param pre_publish_steps: (experimental) Steps to execute before executing the publishing command. These can be used to prepare the artifact for publishing if needed. These steps are executed after ``dist/`` has been populated with the build output. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPrePublishingSteps``.
|
|
4190
4263
|
:param publish_tools: (experimental) Additional tools to install in the publishing job. Default: - no additional tools are installed
|
|
4191
|
-
:param code_artifact_options: (experimental) Options for publishing npm package to AWS CodeArtifact. Default: -
|
|
4264
|
+
:param code_artifact_options: (experimental) Options for publishing npm package to AWS CodeArtifact. Default: - package is not published to
|
|
4192
4265
|
:param dist_tag: (deprecated) Tags can be used to provide an alias instead of version numbers. For example, a project might choose to have multiple streams of development and use a different tag for each stream, e.g., stable, beta, dev, canary. By default, the ``latest`` tag is used by npm to identify the current version of a package, and ``npm install <pkg>`` (without any ``@<version>`` or ``@<tag>`` specifier) installs the latest tag. Typically, projects only use the ``latest`` tag for stable release versions, and use other tags for unstable versions such as prereleases. The ``next`` tag is used by some projects to identify the upcoming version. Default: "latest"
|
|
4193
|
-
:param npm_provenance: (experimental) Should provenance statements be generated when package is published. Note that this component is using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Default: -
|
|
4194
|
-
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use
|
|
4266
|
+
:param npm_provenance: (experimental) Should provenance statements be generated when package is published. Note that this component is using ``publib`` to publish packages, which is using npm internally and supports provenance statements independently of the package manager used. Only works in supported CI/CD environments. Default: - enabled for for public packages using trusted publishing, disabled otherwise
|
|
4267
|
+
:param npm_token_secret: (experimental) GitHub secret which contains the NPM token to use for publishing packages. Default: - "NPM_TOKEN" or "GITHUB_TOKEN" if ``registry`` is set to ``npm.pkg.github.com``.
|
|
4195
4268
|
:param registry: (experimental) The domain name of the npm package registry. To publish to GitHub Packages, set this value to ``"npm.pkg.github.com"``. In this if ``npmTokenSecret`` is not specified, it will default to ``GITHUB_TOKEN`` which means that you will be able to publish to the repository's package store. In this case, make sure ``repositoryUrl`` is correctly defined. Default: "registry.npmjs.org"
|
|
4269
|
+
:param trusted_publishing: (experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work. Requires npm CLI version 11.5.1 or later, this is NOT ensured automatically. When used, ``npmTokenSecret`` will be ignored. Default: - false
|
|
4196
4270
|
|
|
4197
4271
|
:deprecated: Use ``NpmPublishOptions`` instead.
|
|
4198
4272
|
|
|
@@ -4213,6 +4287,7 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4213
4287
|
check_type(argname="argument npm_provenance", value=npm_provenance, expected_type=type_hints["npm_provenance"])
|
|
4214
4288
|
check_type(argname="argument npm_token_secret", value=npm_token_secret, expected_type=type_hints["npm_token_secret"])
|
|
4215
4289
|
check_type(argname="argument registry", value=registry, expected_type=type_hints["registry"])
|
|
4290
|
+
check_type(argname="argument trusted_publishing", value=trusted_publishing, expected_type=type_hints["trusted_publishing"])
|
|
4216
4291
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
4217
4292
|
if github_environment is not None:
|
|
4218
4293
|
self._values["github_environment"] = github_environment
|
|
@@ -4232,6 +4307,8 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4232
4307
|
self._values["npm_token_secret"] = npm_token_secret
|
|
4233
4308
|
if registry is not None:
|
|
4234
4309
|
self._values["registry"] = registry
|
|
4310
|
+
if trusted_publishing is not None:
|
|
4311
|
+
self._values["trusted_publishing"] = trusted_publishing
|
|
4235
4312
|
|
|
4236
4313
|
@builtins.property
|
|
4237
4314
|
def github_environment(self) -> typing.Optional[builtins.str]:
|
|
@@ -4292,7 +4369,7 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4292
4369
|
def code_artifact_options(self) -> typing.Optional[CodeArtifactOptions]:
|
|
4293
4370
|
'''(experimental) Options for publishing npm package to AWS CodeArtifact.
|
|
4294
4371
|
|
|
4295
|
-
:default: -
|
|
4372
|
+
:default: - package is not published to
|
|
4296
4373
|
|
|
4297
4374
|
:stability: experimental
|
|
4298
4375
|
'''
|
|
@@ -4330,7 +4407,9 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4330
4407
|
Note that this component is using ``publib`` to publish packages,
|
|
4331
4408
|
which is using npm internally and supports provenance statements independently of the package manager used.
|
|
4332
4409
|
|
|
4333
|
-
|
|
4410
|
+
Only works in supported CI/CD environments.
|
|
4411
|
+
|
|
4412
|
+
:default: - enabled for for public packages using trusted publishing, disabled otherwise
|
|
4334
4413
|
|
|
4335
4414
|
:see: https://docs.npmjs.com/generating-provenance-statements
|
|
4336
4415
|
:stability: experimental
|
|
@@ -4340,7 +4419,7 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4340
4419
|
|
|
4341
4420
|
@builtins.property
|
|
4342
4421
|
def npm_token_secret(self) -> typing.Optional[builtins.str]:
|
|
4343
|
-
'''(experimental) GitHub secret which contains the NPM token to use
|
|
4422
|
+
'''(experimental) GitHub secret which contains the NPM token to use for publishing packages.
|
|
4344
4423
|
|
|
4345
4424
|
:default: - "NPM_TOKEN" or "GITHUB_TOKEN" if ``registry`` is set to ``npm.pkg.github.com``.
|
|
4346
4425
|
|
|
@@ -4370,6 +4449,21 @@ class JsiiReleaseNpm(NpmPublishOptions):
|
|
|
4370
4449
|
result = self._values.get("registry")
|
|
4371
4450
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
4372
4451
|
|
|
4452
|
+
@builtins.property
|
|
4453
|
+
def trusted_publishing(self) -> typing.Optional[builtins.bool]:
|
|
4454
|
+
'''(experimental) Use trusted publishing for publishing to npmjs.com Needs to be pre-configured on npm.js to work.
|
|
4455
|
+
|
|
4456
|
+
Requires npm CLI version 11.5.1 or later, this is NOT ensured automatically.
|
|
4457
|
+
When used, ``npmTokenSecret`` will be ignored.
|
|
4458
|
+
|
|
4459
|
+
:default: - false
|
|
4460
|
+
|
|
4461
|
+
:see: https://docs.npmjs.com/trusted-publishers
|
|
4462
|
+
:stability: experimental
|
|
4463
|
+
'''
|
|
4464
|
+
result = self._values.get("trusted_publishing")
|
|
4465
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
4466
|
+
|
|
4373
4467
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
4374
4468
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
4375
4469
|
|
|
@@ -4536,7 +4630,9 @@ class JsiiReleaseNuget(NugetPublishOptions):
|
|
|
4536
4630
|
"post_publish_steps": "postPublishSteps",
|
|
4537
4631
|
"pre_publish_steps": "prePublishSteps",
|
|
4538
4632
|
"publish_tools": "publishTools",
|
|
4633
|
+
"attestations": "attestations",
|
|
4539
4634
|
"code_artifact_options": "codeArtifactOptions",
|
|
4635
|
+
"trusted_publishing": "trustedPublishing",
|
|
4540
4636
|
"twine_password_secret": "twinePasswordSecret",
|
|
4541
4637
|
"twine_registry_url": "twineRegistryUrl",
|
|
4542
4638
|
"twine_username_secret": "twineUsernameSecret",
|
|
@@ -4550,7 +4646,9 @@ class JsiiReleasePyPi(PyPiPublishOptions):
|
|
|
4550
4646
|
post_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4551
4647
|
pre_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
4552
4648
|
publish_tools: typing.Optional[typing.Union[_Tools_75b93a2a, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4649
|
+
attestations: typing.Optional[builtins.bool] = None,
|
|
4553
4650
|
code_artifact_options: typing.Optional[typing.Union[CodeArtifactOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
4651
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
4554
4652
|
twine_password_secret: typing.Optional[builtins.str] = None,
|
|
4555
4653
|
twine_registry_url: typing.Optional[builtins.str] = None,
|
|
4556
4654
|
twine_username_secret: typing.Optional[builtins.str] = None,
|
|
@@ -4560,7 +4658,9 @@ class JsiiReleasePyPi(PyPiPublishOptions):
|
|
|
4560
4658
|
:param post_publish_steps: (experimental) Steps to execute after executing the publishing command. These can be used to add/update the release artifacts ot any other tasks needed. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPostPublishingSteps``.
|
|
4561
4659
|
:param pre_publish_steps: (experimental) Steps to execute before executing the publishing command. These can be used to prepare the artifact for publishing if needed. These steps are executed after ``dist/`` has been populated with the build output. Note that when using this in ``publishToGitHubReleases`` this will override steps added via ``addGitHubPrePublishingSteps``.
|
|
4562
4660
|
:param publish_tools: (experimental) Additional tools to install in the publishing job. Default: - no additional tools are installed
|
|
4661
|
+
:param attestations: (experimental) Generate and publish cryptographic attestations for files uploaded to PyPI. Attestations provide package provenance and integrity an can be viewed on PyPI. They are only available when using a Trusted Publisher for publishing. Default: - enabled when using trusted publishing, otherwise not applicable
|
|
4563
4662
|
:param code_artifact_options: (experimental) Options for publishing to AWS CodeArtifact. Default: - undefined
|
|
4663
|
+
:param trusted_publishing: (experimental) Use PyPI trusted publishing instead of tokens or username & password. Needs to be setup in PyPI.
|
|
4564
4664
|
:param twine_password_secret: (experimental) The GitHub secret which contains PyPI password. Default: "TWINE_PASSWORD"
|
|
4565
4665
|
:param twine_registry_url: (experimental) The registry url to use when releasing packages. Default: - twine default
|
|
4566
4666
|
:param twine_username_secret: (experimental) The GitHub secret which contains PyPI user name. Default: "TWINE_USERNAME"
|
|
@@ -4579,7 +4679,9 @@ class JsiiReleasePyPi(PyPiPublishOptions):
|
|
|
4579
4679
|
check_type(argname="argument post_publish_steps", value=post_publish_steps, expected_type=type_hints["post_publish_steps"])
|
|
4580
4680
|
check_type(argname="argument pre_publish_steps", value=pre_publish_steps, expected_type=type_hints["pre_publish_steps"])
|
|
4581
4681
|
check_type(argname="argument publish_tools", value=publish_tools, expected_type=type_hints["publish_tools"])
|
|
4682
|
+
check_type(argname="argument attestations", value=attestations, expected_type=type_hints["attestations"])
|
|
4582
4683
|
check_type(argname="argument code_artifact_options", value=code_artifact_options, expected_type=type_hints["code_artifact_options"])
|
|
4684
|
+
check_type(argname="argument trusted_publishing", value=trusted_publishing, expected_type=type_hints["trusted_publishing"])
|
|
4583
4685
|
check_type(argname="argument twine_password_secret", value=twine_password_secret, expected_type=type_hints["twine_password_secret"])
|
|
4584
4686
|
check_type(argname="argument twine_registry_url", value=twine_registry_url, expected_type=type_hints["twine_registry_url"])
|
|
4585
4687
|
check_type(argname="argument twine_username_secret", value=twine_username_secret, expected_type=type_hints["twine_username_secret"])
|
|
@@ -4592,8 +4694,12 @@ class JsiiReleasePyPi(PyPiPublishOptions):
|
|
|
4592
4694
|
self._values["pre_publish_steps"] = pre_publish_steps
|
|
4593
4695
|
if publish_tools is not None:
|
|
4594
4696
|
self._values["publish_tools"] = publish_tools
|
|
4697
|
+
if attestations is not None:
|
|
4698
|
+
self._values["attestations"] = attestations
|
|
4595
4699
|
if code_artifact_options is not None:
|
|
4596
4700
|
self._values["code_artifact_options"] = code_artifact_options
|
|
4701
|
+
if trusted_publishing is not None:
|
|
4702
|
+
self._values["trusted_publishing"] = trusted_publishing
|
|
4597
4703
|
if twine_password_secret is not None:
|
|
4598
4704
|
self._values["twine_password_secret"] = twine_password_secret
|
|
4599
4705
|
if twine_registry_url is not None:
|
|
@@ -4656,6 +4762,21 @@ class JsiiReleasePyPi(PyPiPublishOptions):
|
|
|
4656
4762
|
result = self._values.get("publish_tools")
|
|
4657
4763
|
return typing.cast(typing.Optional[_Tools_75b93a2a], result)
|
|
4658
4764
|
|
|
4765
|
+
@builtins.property
|
|
4766
|
+
def attestations(self) -> typing.Optional[builtins.bool]:
|
|
4767
|
+
'''(experimental) Generate and publish cryptographic attestations for files uploaded to PyPI.
|
|
4768
|
+
|
|
4769
|
+
Attestations provide package provenance and integrity an can be viewed on PyPI.
|
|
4770
|
+
They are only available when using a Trusted Publisher for publishing.
|
|
4771
|
+
|
|
4772
|
+
:default: - enabled when using trusted publishing, otherwise not applicable
|
|
4773
|
+
|
|
4774
|
+
:see: https://docs.pypi.org/attestations/producing-attestations/
|
|
4775
|
+
:stability: experimental
|
|
4776
|
+
'''
|
|
4777
|
+
result = self._values.get("attestations")
|
|
4778
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
4779
|
+
|
|
4659
4780
|
@builtins.property
|
|
4660
4781
|
def code_artifact_options(self) -> typing.Optional[CodeArtifactOptions]:
|
|
4661
4782
|
'''(experimental) Options for publishing to AWS CodeArtifact.
|
|
@@ -4667,6 +4788,18 @@ class JsiiReleasePyPi(PyPiPublishOptions):
|
|
|
4667
4788
|
result = self._values.get("code_artifact_options")
|
|
4668
4789
|
return typing.cast(typing.Optional[CodeArtifactOptions], result)
|
|
4669
4790
|
|
|
4791
|
+
@builtins.property
|
|
4792
|
+
def trusted_publishing(self) -> typing.Optional[builtins.bool]:
|
|
4793
|
+
'''(experimental) Use PyPI trusted publishing instead of tokens or username & password.
|
|
4794
|
+
|
|
4795
|
+
Needs to be setup in PyPI.
|
|
4796
|
+
|
|
4797
|
+
:see: https://docs.pypi.org/trusted-publishers/adding-a-publisher/
|
|
4798
|
+
:stability: experimental
|
|
4799
|
+
'''
|
|
4800
|
+
result = self._values.get("trusted_publishing")
|
|
4801
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
4802
|
+
|
|
4670
4803
|
@builtins.property
|
|
4671
4804
|
def twine_password_secret(self) -> typing.Optional[builtins.str]:
|
|
4672
4805
|
'''(experimental) The GitHub secret which contains PyPI password.
|
|
@@ -5541,6 +5674,7 @@ def _typecheckingstub__458289050585e6e895f9ee709ee4e102166b0f71e3c8b2a0617efa2d2
|
|
|
5541
5674
|
npm_provenance: typing.Optional[builtins.bool] = None,
|
|
5542
5675
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
5543
5676
|
registry: typing.Optional[builtins.str] = None,
|
|
5677
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
5544
5678
|
) -> None:
|
|
5545
5679
|
"""Type checking stubs"""
|
|
5546
5680
|
pass
|
|
@@ -5614,7 +5748,9 @@ def _typecheckingstub__f90cd44def59be822b686bcd759d7f0a910b9936ca8acc0ef3e69cda5
|
|
|
5614
5748
|
post_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5615
5749
|
pre_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5616
5750
|
publish_tools: typing.Optional[typing.Union[_Tools_75b93a2a, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5751
|
+
attestations: typing.Optional[builtins.bool] = None,
|
|
5617
5752
|
code_artifact_options: typing.Optional[typing.Union[CodeArtifactOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5753
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
5618
5754
|
twine_password_secret: typing.Optional[builtins.str] = None,
|
|
5619
5755
|
twine_registry_url: typing.Optional[builtins.str] = None,
|
|
5620
5756
|
twine_username_secret: typing.Optional[builtins.str] = None,
|
|
@@ -5755,6 +5891,7 @@ def _typecheckingstub__a34680d3cf9e2cc6374987796717402a524a0bb377e9172f0707da674
|
|
|
5755
5891
|
npm_provenance: typing.Optional[builtins.bool] = None,
|
|
5756
5892
|
npm_token_secret: typing.Optional[builtins.str] = None,
|
|
5757
5893
|
registry: typing.Optional[builtins.str] = None,
|
|
5894
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
5758
5895
|
) -> None:
|
|
5759
5896
|
"""Type checking stubs"""
|
|
5760
5897
|
pass
|
|
@@ -5777,7 +5914,9 @@ def _typecheckingstub__0fa7c01cc40634bf771011bf4e8ddb9e3be28efd1b3f15b5d0768a4e8
|
|
|
5777
5914
|
post_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5778
5915
|
pre_publish_steps: typing.Optional[typing.Sequence[typing.Union[_JobStep_c3287c05, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
5779
5916
|
publish_tools: typing.Optional[typing.Union[_Tools_75b93a2a, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5917
|
+
attestations: typing.Optional[builtins.bool] = None,
|
|
5780
5918
|
code_artifact_options: typing.Optional[typing.Union[CodeArtifactOptions, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
5919
|
+
trusted_publishing: typing.Optional[builtins.bool] = None,
|
|
5781
5920
|
twine_password_secret: typing.Optional[builtins.str] = None,
|
|
5782
5921
|
twine_registry_url: typing.Optional[builtins.str] = None,
|
|
5783
5922
|
twine_username_secret: typing.Optional[builtins.str] = None,
|