@hallcor/pulumi-projen-project-types 0.0.35 → 0.0.37

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.
package/.jsii CHANGED
@@ -81,7 +81,7 @@
81
81
  "stability": "stable"
82
82
  },
83
83
  "homepage": "https://github.com/corymhall/pulumi-projen-project-types.git",
84
- "jsiiVersion": "5.7.9 (build fc02aa4)",
84
+ "jsiiVersion": "5.7.10 (build 5114b23)",
85
85
  "license": "Apache-2.0",
86
86
  "metadata": {
87
87
  "jsii": {
@@ -93,7 +93,7 @@
93
93
  },
94
94
  "name": "@hallcor/pulumi-projen-project-types",
95
95
  "readme": {
96
- "markdown": "# Pulumi Projen Project Types\n\nCollection of [Projen](https://github.com/projen/projen) project types for use\nwith [Pulumi](https://www.pulumi.com/)\n\n## Getting Started\n\n_projen_ doesn't need to be installed. You will be using\n[npx](https://docs.npmjs.com/cli/v7/commands/npx) to run _projen_ which takes\ncare of all required setup steps.\n\nTo create a new project, run the following command and follow the instructions:\n\n```console\n$ mkdir my-project\n$ cd my-project\n$ npx projen new --from @hallcor/pulumi-projen-project-types PROJECT-TYPE\nšŸ¤– Synthesizing project...\n...\n```\n\nOnce your project is created, you can configure your project by editing\n`.projenrc.ts` or `.projenrc.py` and re-running `npx projen` to synthesize again.\n\n> The files generated by _projen_ are considered an \"implementation detail\" and\n> _projen_ protects them from being manually edited (most files are marked\n> read-only, and an \"anti tamper\" check is configured in the CI build workflow\n> to ensure that files are not updated during build).\n\n## Projen commands\n\nFor the TypeScript based projects the project commands can be viewed an run\nusing the package manager (e.g. `yarn build`, `yarn package`, etc). For\nnon-TypeScript based projects (i.e. Python) you can use projen to view and run\nproject commands.\n\nProjen is built around a standard build process for all projects. Each project\nwill have these standard [tasks](https://projen.io/docs/concepts/tasks).\n\n1. `default`: The \"default\" task that executes projen and synthesizes the project\n2. `pre-compile`: Task that runs prior to `compile`\n3. `compile`: Compiles the project (e.g. `tsc --build` for TypeScript projects)\n4. `post-compile`: Task that runs after `compile`\n5. `test`: Task that runs the project tests\n6. `package`: Task that runs steps to package the project for publishing\n\nThere is also a standard `build` task the chains the above 6 tasks in order.\n\nThere is a great [tasks guide] where you can find more information on adding new\ntasks, editing existing tasks, etc.\n\n**List available commands**\n\n```console\n$ npx projen --help\nprojen [command]\n\nCommands:\n projen new [PROJECT-TYPE-NAME] [OPTIONS] Creates a new projen project\n\n For a complete list of the available options for a specific project type, run:\n projen new [PROJECT-TYPE-NAME] --help\n projen build Full release build\n projen bump Bumps version based on latest git tag and generates a changelog entry\n projen clobber hard resets to HEAD of origin and cleans the local repo\n projen compile Only compile\n projen default Synthesize project files\n projen dist\n projen eject Remove projen from the project\n projen install Install and upgrade dependencies\n projen package Creates the distribution package\n projen post-compile Runs after successful compilation\n projen pre-compile Prepare the project for compilation\n projen publish:git Prepends the release changelog onto the project changelog, creates a release commit, and tags the release\n projen release Prepare a release from \"main\" branch\n projen test Run tests\n projen unbump Restores version to 0.0.0\n projen completion generate completion script\n\nOptions:\n --post Run post-synthesis steps such as installing dependencies. Use --no-post to skip [boolean] [default: true]\n -w, --watch Keep running and resynthesize when projenrc changes [boolean] [default: false]\n --debug Debug logs [boolean] [default: false]\n --rc path to .projenrc.js file [deprecated] [string] [default: \"/Users/chall/personal/pulumi-lambda-builders/.projenrc.js\"]\n --help Show help [boolean]\n --version Show version number\n\n```\n\n**Run a specific command**\n\n```console\n$ npx projen build\n```\n\n**Inspect a specific command**\n\n```console\n$ npx projen build -i\ndescription: Full release build\n- default\n description: Synthesize project files\n - exec: python .projenrc.py\n- pre-compile\n description: Prepare the project for compilation\n- compile\n description: Only compile\n- post-compile\n description: Runs after successful compilation\n- test\n description: Run tests\n - exec: npm ci\n - exec: pytest\n- package\n description: Creates the distribution package\n - dist\n - exec: mkdir -p dist\n - exec: cp version.json dist/\n - exec: git checkout version.json\n```\n\n## Project types\n\nCurrently supported project types\n\n- `PythonComponent`: Creates a Pulumi Python Component project\n- `TypeScriptComponent`: Creates a Pulumi TypeScript Component project\n\n### Pulumi Python Component\n\n```console\n$ mkdir my-python-component\n$ cd my-python-component\n$ npx projen new --from @hallcor/pulumi-projen-project-types python_component\n```\n\n\n#### Example\n\n```python\nfrom hallcor.pulumi_projen_project_types import PythonComponent\n\nproject = PythonComponent(\n author_email=\"43035978+corymhall@users.noreply.github.com\",\n author_name=\"corymhall\",\n module_name=\"pulumi_lambda_builders\",\n component_name=\"lambda-builders\",\n name=\"pulumi-lambda-builders\",\n version=\"0.1.0\",\n deps=[\n \"aws_lambda_builders\",\n ],\n dev_deps=[\n \"pyfakefs\",\n \"numpy\",\n \"hallcor.pulumi-projen-project-types\",\n ],\n)\n\nproject.synth()\n```\n\n#### Configuration Options\n\n- [componentName](https://github.com/corymhall/pulumi-projen-project-types/blob/main/API.md#componentnameoptional-)\nBy default the `name` of the of the Pulumi component will be taken from the\nproject `name`. This can be overridden by using the `componentName` property.\n\nFor a full list of input properties supported see the [Input Property Reference](https://github.com/corymhall/pulumi-projen-project-types/blob/main/API.md#typescriptprojectprops-)\n\n- [pulumi_python_options](https://github.com/corymhall/pulumi-projen-project-types/blob/main/API.md#pulumipythonoptionsoptional-)\nThis can be used to override some of the default Pulumi options. For example you\ncan specify a specific version of `pulumi` to use.\n\n```python\n\nproject = PythonComponent(\n ...,\n pulumi_python_options=PulumiPythonOptions(\n pulumi_version=\">=3.153 <4.0\" # this is the default value\n ),\n)\n```\n\nFor publishing related options see the [publishing section](#publishing)\n\n### Pulumi TypeScript Component\n\n```console\n$ mkdir my-python-component\n$ cd my-python-component\n$ npx projen new --from @hallcor/pulumi-projen-project-types type_script_component\n```\n\n#### Example\n\n- TODO\n\n#### Configuration Options\n\n- TODO\n\n## Publishing\n\nThe Pulumi Component project types also setup publishing workflows to publish\ngit tags and GitHub releases. By default these will\n\n> [!IMPORTANT]\n> The publishing workflows rely on [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version)\n> which means your commits must follow [Conventional Commits](https://conventionalcommits.org/)\n\n- Create an annotated tag on push to the `main` branch\n- Create a GitHub release for the tag when the tag is created\n\n### Release Trigger\n\nBy default the project will publish a new tag on every commit to the `main`\nbranch. This can be configured via the `releaseTrigger` option.\n\n- `scheduled`: Run the release workflow on a schedule\n- `manual`: Creates a publish task which can be run locally to publish a tag\n- `continuous`: Run the release workflow on every commit to the `main` branch\n\n**On a schedule**\n\n```ts\nnew TypeScriptComponent({\n ...,\n releaseTrigger: ReleaseTrigger.scheduled({ schedule: '0 0 * * 2' }), // run every tuesday\n});\n```\n\n**Manual**\n\n```ts\nnew TypeScriptComponent({\n ...,\n releaseTrigger: ReleaseTrigger.manual(),\n});\n```\n\n### GitHub Credentials\n\nFor the release workflow to create tags, specific credentials are needed.\nBy default it expects a GitHub secret variable named `PROJEN_GITHUB_TOKEN` with\n`read/write` access to `contents`. A separate token from the builtin `${{ secrets.GITHUB_TOKEN }}`\nis needed in order to trigger the downstream `release-github` workflow.\n\nThis can be customized using the `projenCredentials` option.\n\n**From a different secret**\n\n```ts\nnew TypeScriptComponent({\n ...,\n projenCredentials: GithubCredentials.fromPersonalAccessToken({ secret: 'MY_GITHUB_TOKEN' }),\n});\n```\n\n**From a GitHub app**\n```ts\nnew TypeScriptComponent({\n ...,\n projenCredentials: GithubCredentials.fromApp({\n privateKeySecret: 'MY_GITHUB_APP_PRIVATE_KEY',\n appIdSecret: 'MY_GITHUB_APP_ID',\n }),\n});\n```\n\n"
96
+ "markdown": "# Pulumi Projen Project Types\n\nCollection of [Projen](https://github.com/projen/projen) project types for use\nwith [Pulumi](https://www.pulumi.com/)\n\n## Getting Started\n\n_projen_ doesn't need to be installed. You will be using\n[npx](https://docs.npmjs.com/cli/v7/commands/npx) to run _projen_ which takes\ncare of all required setup steps.\n\nTo create a new project, run the following command and follow the instructions:\n\n```console\n$ mkdir my-project\n$ cd my-project\n$ npx projen new --from @hallcor/pulumi-projen-project-types PROJECT-TYPE\nšŸ¤– Synthesizing project...\n...\n```\n\nOnce your project is created, you can configure your project by editing\n`.projenrc.ts` or `.projenrc.py` and re-running `npx projen` to synthesize again.\n\n> The files generated by _projen_ are considered an \"implementation detail\" and\n> _projen_ protects them from being manually edited (most files are marked\n> read-only, and an \"anti tamper\" check is configured in the CI build workflow\n> to ensure that files are not updated during build).\n\n## Projen commands\n\nFor the TypeScript based projects the project commands can be viewed an run\nusing the package manager (e.g. `yarn build`, `yarn package`, etc). For\nnon-TypeScript based projects (i.e. Python) you can use projen to view and run\nproject commands.\n\nProjen is built around a standard build process for all projects. Each project\nwill have these standard [tasks](https://projen.io/docs/concepts/tasks).\n\n1. `default`: The \"default\" task that executes projen and synthesizes the project\n2. `pre-compile`: Task that runs prior to `compile`\n3. `compile`: Compiles the project (e.g. `tsc --build` for TypeScript projects)\n4. `post-compile`: Task that runs after `compile`\n5. `test`: Task that runs the project tests\n6. `package`: Task that runs steps to package the project for publishing\n\nThere is also a standard `build` task the chains the above 6 tasks in order.\n\nThere is a great [tasks guide] where you can find more information on adding new\ntasks, editing existing tasks, etc.\n\n**List available commands**\n\n```console\n$ npx projen --help\nprojen [command]\n\nCommands:\n projen new [PROJECT-TYPE-NAME] [OPTIONS] Creates a new projen project\n\n For a complete list of the available options for a specific project type, run:\n projen new [PROJECT-TYPE-NAME] --help\n projen build Full release build\n projen bump Bumps version based on latest git tag and generates a changelog entry\n projen clobber hard resets to HEAD of origin and cleans the local repo\n projen compile Only compile\n projen default Synthesize project files\n projen dist\n projen eject Remove projen from the project\n projen install Install and upgrade dependencies\n projen package Creates the distribution package\n projen post-compile Runs after successful compilation\n projen pre-compile Prepare the project for compilation\n projen publish:git Prepends the release changelog onto the project changelog, creates a release commit, and tags the release\n projen release Prepare a release from \"main\" branch\n projen test Run tests\n projen unbump Restores version to 0.0.0\n projen completion generate completion script\n\nOptions:\n --post Run post-synthesis steps such as installing dependencies. Use --no-post to skip [boolean] [default: true]\n -w, --watch Keep running and resynthesize when projenrc changes [boolean] [default: false]\n --debug Debug logs [boolean] [default: false]\n --rc path to .projenrc.js file [deprecated] [string] [default: \"/Users/chall/personal/pulumi-lambda-builders/.projenrc.js\"]\n --help Show help [boolean]\n --version Show version number\n\n```\n\n**Run a specific command**\n\n```console\n$ npx projen build\n```\n\n**Inspect a specific command**\n\n```console\n$ npx projen build -i\ndescription: Full release build\n- default\n description: Synthesize project files\n - exec: python .projenrc.py\n- pre-compile\n description: Prepare the project for compilation\n- compile\n description: Only compile\n- post-compile\n description: Runs after successful compilation\n- test\n description: Run tests\n - exec: npm ci\n - exec: pytest\n- package\n description: Creates the distribution package\n - dist\n - exec: mkdir -p dist\n - exec: cp version.json dist/\n - exec: git checkout version.json\n```\n\n## Project types\n\nCurrently supported project types\n\n- `PythonComponent`: Creates a Pulumi Python Component project\n- `TypeScriptComponent`: Creates a Pulumi TypeScript Component project\n\n### Pulumi Python Component\n\n```console\n$ mkdir my-python-component\n$ cd my-python-component\n$ npx projen new --from @hallcor/pulumi-projen-project-types python_component\n```\n\n\n#### Example\n\n```python\nfrom hallcor.pulumi_projen_project_types import PythonComponent\n\nproject = PythonComponent(\n module_name=\"pulumi_lambda_builders\",\n component_name=\"lambda-builders\",\n name=\"pulumi-lambda-builders\",\n version=\"0.1.0\",\n deps=[\n \"aws_lambda_builders\",\n ],\n dev_deps=[\n \"pyfakefs\",\n \"numpy\",\n \"hallcor.pulumi-projen-project-types\",\n ],\n)\n\nproject.synth()\n```\n\n#### Configuration Options\n\n- [componentName](https://github.com/corymhall/pulumi-projen-project-types/blob/main/API.md#componentnameoptional-)\nBy default the `name` of the of the Pulumi component will be taken from the\nproject `name`. This can be overridden by using the `componentName` property.\n\nFor a full list of input properties supported see the [Input Property Reference](https://github.com/corymhall/pulumi-projen-project-types/blob/main/API.md#typescriptprojectprops-)\n\n- [pulumi_python_options](https://github.com/corymhall/pulumi-projen-project-types/blob/main/API.md#pulumipythonoptionsoptional-)\nThis can be used to override some of the default Pulumi options. For example you\ncan specify a specific version of `pulumi` to use.\n\n```python\n\nproject = PythonComponent(\n ...,\n pulumi_python_options=PulumiPythonOptions(\n pulumi_version=\">=3.159 <4.0\" # this is the default value\n ),\n)\n```\n\nFor publishing related options see the [publishing section](#publishing)\n\n### Pulumi TypeScript Component\n\n```console\n$ mkdir my-python-component\n$ cd my-python-component\n$ npx projen new --from @hallcor/pulumi-projen-project-types type_script_component --name my-component\n```\n\n#### Example\n\n\n```ts\nimport { TypeScriptComponent } from '@hallcor/pulumi-projen-project-types';\n\nconst project = new TypeScriptComponent({\n defaultReleaseBranch: 'main',\n devDeps: [\n '@hallcor/pulumi-projen-project-types',\n ],\n name: 'my-component',\n projenrcTs: true,\n\n // deps: [], /* Runtime dependencies of this module. */\n // description: undefined, /* The description is just a string that helps people understand the purpose of the package. */\n // packageName: undefined, /* The \"name\" in package.json. */\n});\nproject.synth();\n```\n\n#### Configuration Options\n\n- TODO\n\n## Publishing\n\nThe Pulumi Component project types also setup publishing workflows to publish\ngit tags and GitHub releases. By default these will\n\n> [!IMPORTANT]\n> The publishing workflows rely on [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version)\n> which means your commits must follow [Conventional Commits](https://conventionalcommits.org/)\n\n- Create an annotated tag on push to the `main` branch\n- Create a GitHub release for the tag when the tag is created\n\n### Release Trigger\n\nBy default the project will publish a new tag on every commit to the `main`\nbranch. This can be configured via the `releaseTrigger` option.\n\n- `scheduled`: Run the release workflow on a schedule\n- `manual`: Creates a publish task which can be run locally to publish a tag\n- `continuous`: Run the release workflow on every commit to the `main` branch\n\n**On a schedule**\n\n```ts\nnew TypeScriptComponent({\n ...,\n releaseTrigger: ReleaseTrigger.scheduled({ schedule: '0 0 * * 2' }), // run every tuesday\n});\n```\n\n**Manual**\n\n```ts\nnew TypeScriptComponent({\n ...,\n releaseTrigger: ReleaseTrigger.manual(),\n});\n```\n\n### GitHub Credentials\n\nFor the release workflow to create tags, specific credentials are needed.\nBy default it expects a GitHub secret variable named `PROJEN_GITHUB_TOKEN` with\n`read/write` access to `contents`. A separate token from the builtin `${{ secrets.GITHUB_TOKEN }}`\nis needed in order to trigger the downstream `release-github` workflow.\n\nThis can be customized using the `projenCredentials` option.\n\n**From a different secret**\n\n```ts\nnew TypeScriptComponent({\n ...,\n projenCredentials: GithubCredentials.fromPersonalAccessToken({ secret: 'MY_GITHUB_TOKEN' }),\n});\n```\n\n**From a GitHub app**\n```ts\nnew TypeScriptComponent({\n ...,\n projenCredentials: GithubCredentials.fromApp({\n privateKeySecret: 'MY_GITHUB_APP_PRIVATE_KEY',\n appIdSecret: 'MY_GITHUB_APP_ID',\n }),\n});\n```\n\n"
97
97
  },
98
98
  "repository": {
99
99
  "type": "git",
@@ -1673,7 +1673,7 @@
1673
1673
  {
1674
1674
  "abstract": true,
1675
1675
  "docs": {
1676
- "default": ">=3.153 <4.0",
1676
+ "default": ">=3.159 <4.0",
1677
1677
  "remarks": "The version range should be valid semver",
1678
1678
  "stability": "stable",
1679
1679
  "summary": "The pulumi version to use."
@@ -1873,7 +1873,7 @@
1873
1873
  },
1874
1874
  "locationInModule": {
1875
1875
  "filename": "src/python.ts",
1876
- "line": 20
1876
+ "line": 90
1877
1877
  },
1878
1878
  "parameters": [
1879
1879
  {
@@ -1887,7 +1887,7 @@
1887
1887
  "kind": "class",
1888
1888
  "locationInModule": {
1889
1889
  "filename": "src/python.ts",
1890
- "line": 9
1890
+ "line": 79
1891
1891
  },
1892
1892
  "name": "PythonComponent",
1893
1893
  "properties": [
@@ -1899,7 +1899,7 @@
1899
1899
  "immutable": true,
1900
1900
  "locationInModule": {
1901
1901
  "filename": "src/python.ts",
1902
- "line": 18
1902
+ "line": 88
1903
1903
  },
1904
1904
  "name": "autoMerge",
1905
1905
  "optional": true,
@@ -1916,7 +1916,7 @@
1916
1916
  "immutable": true,
1917
1917
  "locationInModule": {
1918
1918
  "filename": "src/python.ts",
1919
- "line": 13
1919
+ "line": 83
1920
1920
  },
1921
1921
  "name": "buildWorkflow",
1922
1922
  "optional": true,
@@ -3750,7 +3750,7 @@
3750
3750
  },
3751
3751
  "locationInModule": {
3752
3752
  "filename": "src/typescript.ts",
3753
- "line": 6
3753
+ "line": 7
3754
3754
  },
3755
3755
  "parameters": [
3756
3756
  {
@@ -3794,7 +3794,7 @@
3794
3794
  "immutable": true,
3795
3795
  "locationInModule": {
3796
3796
  "filename": "src/structs/typescript-options/component-options.ts",
3797
- "line": 595
3797
+ "line": 616
3798
3798
  },
3799
3799
  "name": "defaultReleaseBranch",
3800
3800
  "type": {
@@ -3850,7 +3850,7 @@
3850
3850
  "immutable": true,
3851
3851
  "locationInModule": {
3852
3852
  "filename": "src/structs/typescript-options/component-options.ts",
3853
- "line": 601
3853
+ "line": 622
3854
3854
  },
3855
3855
  "name": "artifactsDirectory",
3856
3856
  "optional": true,
@@ -3955,7 +3955,7 @@
3955
3955
  "immutable": true,
3956
3956
  "locationInModule": {
3957
3957
  "filename": "src/structs/typescript-options/component-options.ts",
3958
- "line": 608
3958
+ "line": 629
3959
3959
  },
3960
3960
  "name": "autoApproveUpgrades",
3961
3961
  "optional": true,
@@ -4086,7 +4086,7 @@
4086
4086
  "immutable": true,
4087
4087
  "locationInModule": {
4088
4088
  "filename": "src/structs/typescript-options/component-options.ts",
4089
- "line": 614
4089
+ "line": 635
4090
4090
  },
4091
4091
  "name": "buildWorkflow",
4092
4092
  "optional": true,
@@ -4103,7 +4103,7 @@
4103
4103
  "immutable": true,
4104
4104
  "locationInModule": {
4105
4105
  "filename": "src/structs/typescript-options/component-options.ts",
4106
- "line": 619
4106
+ "line": 640
4107
4107
  },
4108
4108
  "name": "buildWorkflowOptions",
4109
4109
  "optional": true,
@@ -4162,7 +4162,7 @@
4162
4162
  "immutable": true,
4163
4163
  "locationInModule": {
4164
4164
  "filename": "src/structs/typescript-options/component-options.ts",
4165
- "line": 624
4165
+ "line": 645
4166
4166
  },
4167
4167
  "name": "bundlerOptions",
4168
4168
  "optional": true,
@@ -4199,7 +4199,7 @@
4199
4199
  "immutable": true,
4200
4200
  "locationInModule": {
4201
4201
  "filename": "src/structs/typescript-options/component-options.ts",
4202
- "line": 631
4202
+ "line": 652
4203
4203
  },
4204
4204
  "name": "checkLicenses",
4205
4205
  "optional": true,
@@ -4254,7 +4254,7 @@
4254
4254
  "immutable": true,
4255
4255
  "locationInModule": {
4256
4256
  "filename": "src/structs/typescript-options/component-options.ts",
4257
- "line": 637
4257
+ "line": 658
4258
4258
  },
4259
4259
  "name": "codeCov",
4260
4260
  "optional": true,
@@ -4272,7 +4272,7 @@
4272
4272
  "immutable": true,
4273
4273
  "locationInModule": {
4274
4274
  "filename": "src/structs/typescript-options/component-options.ts",
4275
- "line": 643
4275
+ "line": 664
4276
4276
  },
4277
4277
  "name": "codeCovTokenSecret",
4278
4278
  "optional": true,
@@ -4298,24 +4298,6 @@
4298
4298
  "primitive": "boolean"
4299
4299
  }
4300
4300
  },
4301
- {
4302
- "abstract": true,
4303
- "docs": {
4304
- "default": "the `moduleName`",
4305
- "stability": "stable",
4306
- "summary": "The name of the pulumi component."
4307
- },
4308
- "immutable": true,
4309
- "locationInModule": {
4310
- "filename": "src/structs/typescript-options/component-options.ts",
4311
- "line": 913
4312
- },
4313
- "name": "componentName",
4314
- "optional": true,
4315
- "type": {
4316
- "primitive": "string"
4317
- }
4318
- },
4319
4301
  {
4320
4302
  "abstract": true,
4321
4303
  "docs": {
@@ -4326,7 +4308,7 @@
4326
4308
  "immutable": true,
4327
4309
  "locationInModule": {
4328
4310
  "filename": "src/structs/typescript-options/component-options.ts",
4329
- "line": 649
4311
+ "line": 670
4330
4312
  },
4331
4313
  "name": "copyrightOwner",
4332
4314
  "optional": true,
@@ -4344,7 +4326,7 @@
4344
4326
  "immutable": true,
4345
4327
  "locationInModule": {
4346
4328
  "filename": "src/structs/typescript-options/component-options.ts",
4347
- "line": 655
4329
+ "line": 676
4348
4330
  },
4349
4331
  "name": "copyrightPeriod",
4350
4332
  "optional": true,
@@ -4363,7 +4345,7 @@
4363
4345
  "immutable": true,
4364
4346
  "locationInModule": {
4365
4347
  "filename": "src/structs/typescript-options/component-options.ts",
4366
- "line": 662
4348
+ "line": 683
4367
4349
  },
4368
4350
  "name": "dependabot",
4369
4351
  "optional": true,
@@ -4381,7 +4363,7 @@
4381
4363
  "immutable": true,
4382
4364
  "locationInModule": {
4383
4365
  "filename": "src/structs/typescript-options/component-options.ts",
4384
- "line": 668
4366
+ "line": 689
4385
4367
  },
4386
4368
  "name": "dependabotOptions",
4387
4369
  "optional": true,
@@ -4427,7 +4409,7 @@
4427
4409
  "immutable": true,
4428
4410
  "locationInModule": {
4429
4411
  "filename": "src/structs/typescript-options/component-options.ts",
4430
- "line": 675
4412
+ "line": 696
4431
4413
  },
4432
4414
  "name": "depsUpgrade",
4433
4415
  "optional": true,
@@ -4445,7 +4427,7 @@
4445
4427
  "immutable": true,
4446
4428
  "locationInModule": {
4447
4429
  "filename": "src/structs/typescript-options/component-options.ts",
4448
- "line": 681
4430
+ "line": 702
4449
4431
  },
4450
4432
  "name": "depsUpgradeOptions",
4451
4433
  "optional": true,
@@ -4529,7 +4511,7 @@
4529
4511
  "immutable": true,
4530
4512
  "locationInModule": {
4531
4513
  "filename": "src/structs/typescript-options/component-options.ts",
4532
- "line": 794
4514
+ "line": 827
4533
4515
  },
4534
4516
  "name": "disableTsconfig",
4535
4517
  "optional": true,
@@ -4547,7 +4529,7 @@
4547
4529
  "immutable": true,
4548
4530
  "locationInModule": {
4549
4531
  "filename": "src/structs/typescript-options/component-options.ts",
4550
- "line": 800
4532
+ "line": 833
4551
4533
  },
4552
4534
  "name": "disableTsconfigDev",
4553
4535
  "optional": true,
@@ -4565,7 +4547,7 @@
4565
4547
  "immutable": true,
4566
4548
  "locationInModule": {
4567
4549
  "filename": "src/structs/typescript-options/component-options.ts",
4568
- "line": 806
4550
+ "line": 839
4569
4551
  },
4570
4552
  "name": "docgen",
4571
4553
  "optional": true,
@@ -4583,7 +4565,7 @@
4583
4565
  "immutable": true,
4584
4566
  "locationInModule": {
4585
4567
  "filename": "src/structs/typescript-options/component-options.ts",
4586
- "line": 812
4568
+ "line": 845
4587
4569
  },
4588
4570
  "name": "docsDirectory",
4589
4571
  "optional": true,
@@ -4619,7 +4601,7 @@
4619
4601
  "immutable": true,
4620
4602
  "locationInModule": {
4621
4603
  "filename": "src/structs/typescript-options/component-options.ts",
4622
- "line": 818
4604
+ "line": 851
4623
4605
  },
4624
4606
  "name": "entrypointTypes",
4625
4607
  "optional": true,
@@ -4637,7 +4619,7 @@
4637
4619
  "immutable": true,
4638
4620
  "locationInModule": {
4639
4621
  "filename": "src/structs/typescript-options/component-options.ts",
4640
- "line": 824
4622
+ "line": 857
4641
4623
  },
4642
4624
  "name": "eslint",
4643
4625
  "optional": true,
@@ -4655,7 +4637,7 @@
4655
4637
  "immutable": true,
4656
4638
  "locationInModule": {
4657
4639
  "filename": "src/structs/typescript-options/component-options.ts",
4658
- "line": 830
4640
+ "line": 863
4659
4641
  },
4660
4642
  "name": "eslintOptions",
4661
4643
  "optional": true,
@@ -4691,7 +4673,7 @@
4691
4673
  "immutable": true,
4692
4674
  "locationInModule": {
4693
4675
  "filename": "src/structs/typescript-options/component-options.ts",
4694
- "line": 908
4676
+ "line": 941
4695
4677
  },
4696
4678
  "name": "gitIdentity",
4697
4679
  "optional": true,
@@ -4708,7 +4690,7 @@
4708
4690
  "immutable": true,
4709
4691
  "locationInModule": {
4710
4692
  "filename": "src/structs/typescript-options/component-options.ts",
4711
- "line": 686
4693
+ "line": 707
4712
4694
  },
4713
4695
  "name": "gitignore",
4714
4696
  "optional": true,
@@ -4800,7 +4782,7 @@
4800
4782
  "immutable": true,
4801
4783
  "locationInModule": {
4802
4784
  "filename": "src/structs/typescript-options/component-options.ts",
4803
- "line": 692
4785
+ "line": 713
4804
4786
  },
4805
4787
  "name": "jest",
4806
4788
  "optional": true,
@@ -4818,7 +4800,7 @@
4818
4800
  "immutable": true,
4819
4801
  "locationInModule": {
4820
4802
  "filename": "src/structs/typescript-options/component-options.ts",
4821
- "line": 698
4803
+ "line": 719
4822
4804
  },
4823
4805
  "name": "jestOptions",
4824
4806
  "optional": true,
@@ -4858,7 +4840,7 @@
4858
4840
  "immutable": true,
4859
4841
  "locationInModule": {
4860
4842
  "filename": "src/structs/typescript-options/component-options.ts",
4861
- "line": 836
4843
+ "line": 869
4862
4844
  },
4863
4845
  "name": "libdir",
4864
4846
  "optional": true,
@@ -5034,6 +5016,25 @@
5034
5016
  "fqn": "projen.javascript.NpmAccess"
5035
5017
  }
5036
5018
  },
5019
+ {
5020
+ "abstract": true,
5021
+ "docs": {
5022
+ "default": "\"latest\"",
5023
+ "remarks": "To set the npm dist-tag for release branches, set the `npmDistTag` property\nfor each branch.",
5024
+ "stability": "experimental",
5025
+ "summary": "The npmDistTag to use when publishing from the default branch."
5026
+ },
5027
+ "immutable": true,
5028
+ "locationInModule": {
5029
+ "filename": "src/structs/typescript-options/component-options.ts",
5030
+ "line": 497
5031
+ },
5032
+ "name": "npmDistTag",
5033
+ "optional": true,
5034
+ "type": {
5035
+ "primitive": "string"
5036
+ }
5037
+ },
5037
5038
  {
5038
5039
  "abstract": true,
5039
5040
  "docs": {
@@ -5044,7 +5045,7 @@
5044
5045
  "immutable": true,
5045
5046
  "locationInModule": {
5046
5047
  "filename": "src/structs/typescript-options/component-options.ts",
5047
- "line": 704
5048
+ "line": 725
5048
5049
  },
5049
5050
  "name": "npmignoreEnabled",
5050
5051
  "optional": true,
@@ -5061,7 +5062,7 @@
5061
5062
  "immutable": true,
5062
5063
  "locationInModule": {
5063
5064
  "filename": "src/structs/typescript-options/component-options.ts",
5064
- "line": 709
5065
+ "line": 730
5065
5066
  },
5066
5067
  "name": "npmIgnoreOptions",
5067
5068
  "optional": true,
@@ -5144,6 +5145,24 @@
5144
5145
  "primitive": "string"
5145
5146
  }
5146
5147
  },
5148
+ {
5149
+ "abstract": true,
5150
+ "docs": {
5151
+ "default": "true",
5152
+ "stability": "experimental",
5153
+ "summary": "Defines a `package` task that will produce an npm tarball under the artifacts directory (e.g. `dist`)."
5154
+ },
5155
+ "immutable": true,
5156
+ "locationInModule": {
5157
+ "filename": "src/structs/typescript-options/component-options.ts",
5158
+ "line": 736
5159
+ },
5160
+ "name": "package",
5161
+ "optional": true,
5162
+ "type": {
5163
+ "primitive": "boolean"
5164
+ }
5165
+ },
5147
5166
  {
5148
5167
  "abstract": true,
5149
5168
  "docs": {
@@ -5269,7 +5288,7 @@
5269
5288
  "immutable": true,
5270
5289
  "locationInModule": {
5271
5290
  "filename": "src/structs/typescript-options/component-options.ts",
5272
- "line": 495
5291
+ "line": 503
5273
5292
  },
5274
5293
  "name": "postBuildSteps",
5275
5294
  "optional": true,
@@ -5292,7 +5311,7 @@
5292
5311
  "immutable": true,
5293
5312
  "locationInModule": {
5294
5313
  "filename": "src/structs/typescript-options/component-options.ts",
5295
- "line": 501
5314
+ "line": 509
5296
5315
  },
5297
5316
  "name": "prerelease",
5298
5317
  "optional": true,
@@ -5310,7 +5329,7 @@
5310
5329
  "immutable": true,
5311
5330
  "locationInModule": {
5312
5331
  "filename": "src/structs/typescript-options/component-options.ts",
5313
- "line": 715
5332
+ "line": 742
5314
5333
  },
5315
5334
  "name": "prettier",
5316
5335
  "optional": true,
@@ -5328,7 +5347,7 @@
5328
5347
  "immutable": true,
5329
5348
  "locationInModule": {
5330
5349
  "filename": "src/structs/typescript-options/component-options.ts",
5331
- "line": 721
5350
+ "line": 748
5332
5351
  },
5333
5352
  "name": "prettierOptions",
5334
5353
  "optional": true,
@@ -5383,7 +5402,7 @@
5383
5402
  "immutable": true,
5384
5403
  "locationInModule": {
5385
5404
  "filename": "src/structs/typescript-options/component-options.ts",
5386
- "line": 727
5405
+ "line": 754
5387
5406
  },
5388
5407
  "name": "projenDevDependency",
5389
5408
  "optional": true,
@@ -5401,7 +5420,7 @@
5401
5420
  "immutable": true,
5402
5421
  "locationInModule": {
5403
5422
  "filename": "src/structs/typescript-options/component-options.ts",
5404
- "line": 733
5423
+ "line": 760
5405
5424
  },
5406
5425
  "name": "projenrcJs",
5407
5426
  "optional": true,
@@ -5455,7 +5474,7 @@
5455
5474
  "immutable": true,
5456
5475
  "locationInModule": {
5457
5476
  "filename": "src/structs/typescript-options/component-options.ts",
5458
- "line": 739
5477
+ "line": 766
5459
5478
  },
5460
5479
  "name": "projenrcJsOptions",
5461
5480
  "optional": true,
@@ -5476,7 +5495,7 @@
5476
5495
  "immutable": true,
5477
5496
  "locationInModule": {
5478
5497
  "filename": "src/structs/typescript-options/component-options.ts",
5479
- "line": 843
5498
+ "line": 876
5480
5499
  },
5481
5500
  "name": "projenrcTs",
5482
5501
  "optional": true,
@@ -5493,7 +5512,7 @@
5493
5512
  "immutable": true,
5494
5513
  "locationInModule": {
5495
5514
  "filename": "src/structs/typescript-options/component-options.ts",
5496
- "line": 848
5515
+ "line": 881
5497
5516
  },
5498
5517
  "name": "projenrcTsOptions",
5499
5518
  "optional": true,
@@ -5511,7 +5530,7 @@
5511
5530
  "immutable": true,
5512
5531
  "locationInModule": {
5513
5532
  "filename": "src/structs/typescript-options/component-options.ts",
5514
- "line": 745
5533
+ "line": 772
5515
5534
  },
5516
5535
  "name": "projenVersion",
5517
5536
  "optional": true,
@@ -5529,7 +5548,7 @@
5529
5548
  "immutable": true,
5530
5549
  "locationInModule": {
5531
5550
  "filename": "src/structs/typescript-options/component-options.ts",
5532
- "line": 507
5551
+ "line": 515
5533
5552
  },
5534
5553
  "name": "publishDryRun",
5535
5554
  "optional": true,
@@ -5548,7 +5567,7 @@
5548
5567
  "immutable": true,
5549
5568
  "locationInModule": {
5550
5569
  "filename": "src/structs/typescript-options/component-options.ts",
5551
- "line": 515
5570
+ "line": 523
5552
5571
  },
5553
5572
  "name": "publishTasks",
5554
5573
  "optional": true,
@@ -5566,7 +5585,7 @@
5566
5585
  "immutable": true,
5567
5586
  "locationInModule": {
5568
5587
  "filename": "src/structs/typescript-options/component-options.ts",
5569
- "line": 751
5588
+ "line": 778
5570
5589
  },
5571
5590
  "name": "pullRequestTemplate",
5572
5591
  "optional": true,
@@ -5584,7 +5603,7 @@
5584
5603
  "immutable": true,
5585
5604
  "locationInModule": {
5586
5605
  "filename": "src/structs/typescript-options/component-options.ts",
5587
- "line": 757
5606
+ "line": 784
5588
5607
  },
5589
5608
  "name": "pullRequestTemplateContents",
5590
5609
  "optional": true,
@@ -5625,7 +5644,7 @@
5625
5644
  "immutable": true,
5626
5645
  "locationInModule": {
5627
5646
  "filename": "src/structs/typescript-options/component-options.ts",
5628
- "line": 521
5647
+ "line": 529
5629
5648
  },
5630
5649
  "name": "releasableCommits",
5631
5650
  "optional": true,
@@ -5643,7 +5662,7 @@
5643
5662
  "immutable": true,
5644
5663
  "locationInModule": {
5645
5664
  "filename": "src/structs/typescript-options/component-options.ts",
5646
- "line": 763
5665
+ "line": 790
5647
5666
  },
5648
5667
  "name": "release",
5649
5668
  "optional": true,
@@ -5651,6 +5670,30 @@
5651
5670
  "primitive": "boolean"
5652
5671
  }
5653
5672
  },
5673
+ {
5674
+ "abstract": true,
5675
+ "docs": {
5676
+ "default": "- no additional branches are used for release. you can use\n`addBranch()` to add additional branches.",
5677
+ "remarks": "A workflow will be created for each\nrelease branch which will publish releases from commits in this branch.\nEach release branch _must_ be assigned a major version number which is used\nto enforce that versions published from that branch always use that major\nversion. If multiple branches are used, the `majorVersion` field must also\nbe provided for the default branch.",
5678
+ "stability": "experimental",
5679
+ "summary": "Defines additional release branches."
5680
+ },
5681
+ "immutable": true,
5682
+ "locationInModule": {
5683
+ "filename": "src/structs/typescript-options/component-options.ts",
5684
+ "line": 542
5685
+ },
5686
+ "name": "releaseBranches",
5687
+ "optional": true,
5688
+ "type": {
5689
+ "collection": {
5690
+ "elementtype": {
5691
+ "fqn": "projen.release.BranchOptions"
5692
+ },
5693
+ "kind": "map"
5694
+ }
5695
+ }
5696
+ },
5654
5697
  {
5655
5698
  "abstract": true,
5656
5699
  "docs": {
@@ -5661,7 +5704,7 @@
5661
5704
  "immutable": true,
5662
5705
  "locationInModule": {
5663
5706
  "filename": "src/structs/typescript-options/component-options.ts",
5664
- "line": 527
5707
+ "line": 548
5665
5708
  },
5666
5709
  "name": "releaseFailureIssue",
5667
5710
  "optional": true,
@@ -5680,7 +5723,7 @@
5680
5723
  "immutable": true,
5681
5724
  "locationInModule": {
5682
5725
  "filename": "src/structs/typescript-options/component-options.ts",
5683
- "line": 534
5726
+ "line": 555
5684
5727
  },
5685
5728
  "name": "releaseFailureIssueLabel",
5686
5729
  "optional": true,
@@ -5699,7 +5742,7 @@
5699
5742
  "immutable": true,
5700
5743
  "locationInModule": {
5701
5744
  "filename": "src/structs/typescript-options/component-options.ts",
5702
- "line": 544
5745
+ "line": 565
5703
5746
  },
5704
5747
  "name": "releaseTagPrefix",
5705
5748
  "optional": true,
@@ -5707,6 +5750,24 @@
5707
5750
  "primitive": "string"
5708
5751
  }
5709
5752
  },
5753
+ {
5754
+ "abstract": true,
5755
+ "docs": {
5756
+ "default": "false",
5757
+ "stability": "experimental",
5758
+ "summary": "Automatically release to npm when new versions are introduced."
5759
+ },
5760
+ "immutable": true,
5761
+ "locationInModule": {
5762
+ "filename": "src/structs/typescript-options/component-options.ts",
5763
+ "line": 796
5764
+ },
5765
+ "name": "releaseToNpm",
5766
+ "optional": true,
5767
+ "type": {
5768
+ "primitive": "boolean"
5769
+ }
5770
+ },
5710
5771
  {
5711
5772
  "abstract": true,
5712
5773
  "docs": {
@@ -5717,7 +5778,7 @@
5717
5778
  "immutable": true,
5718
5779
  "locationInModule": {
5719
5780
  "filename": "src/structs/typescript-options/component-options.ts",
5720
- "line": 550
5781
+ "line": 571
5721
5782
  },
5722
5783
  "name": "releaseTrigger",
5723
5784
  "optional": true,
@@ -5735,7 +5796,7 @@
5735
5796
  "immutable": true,
5736
5797
  "locationInModule": {
5737
5798
  "filename": "src/structs/typescript-options/component-options.ts",
5738
- "line": 556
5799
+ "line": 577
5739
5800
  },
5740
5801
  "name": "releaseWorkflowName",
5741
5802
  "optional": true,
@@ -5752,7 +5813,7 @@
5752
5813
  "immutable": true,
5753
5814
  "locationInModule": {
5754
5815
  "filename": "src/structs/typescript-options/component-options.ts",
5755
- "line": 561
5816
+ "line": 582
5756
5817
  },
5757
5818
  "name": "releaseWorkflowSetupSteps",
5758
5819
  "optional": true,
@@ -5846,7 +5907,7 @@
5846
5907
  "immutable": true,
5847
5908
  "locationInModule": {
5848
5909
  "filename": "src/structs/typescript-options/component-options.ts",
5849
- "line": 854
5910
+ "line": 887
5850
5911
  },
5851
5912
  "name": "sampleCode",
5852
5913
  "optional": true,
@@ -5887,7 +5948,7 @@
5887
5948
  "immutable": true,
5888
5949
  "locationInModule": {
5889
5950
  "filename": "src/structs/typescript-options/component-options.ts",
5890
- "line": 860
5951
+ "line": 893
5891
5952
  },
5892
5953
  "name": "srcdir",
5893
5954
  "optional": true,
@@ -5961,7 +6022,7 @@
5961
6022
  "immutable": true,
5962
6023
  "locationInModule": {
5963
6024
  "filename": "src/structs/typescript-options/component-options.ts",
5964
- "line": 870
6025
+ "line": 903
5965
6026
  },
5966
6027
  "name": "testdir",
5967
6028
  "optional": true,
@@ -5979,7 +6040,7 @@
5979
6040
  "immutable": true,
5980
6041
  "locationInModule": {
5981
6042
  "filename": "src/structs/typescript-options/component-options.ts",
5982
- "line": 876
6043
+ "line": 909
5983
6044
  },
5984
6045
  "name": "tsconfig",
5985
6046
  "optional": true,
@@ -5997,7 +6058,7 @@
5997
6058
  "immutable": true,
5998
6059
  "locationInModule": {
5999
6060
  "filename": "src/structs/typescript-options/component-options.ts",
6000
- "line": 882
6061
+ "line": 915
6001
6062
  },
6002
6063
  "name": "tsconfigDev",
6003
6064
  "optional": true,
@@ -6015,7 +6076,7 @@
6015
6076
  "immutable": true,
6016
6077
  "locationInModule": {
6017
6078
  "filename": "src/structs/typescript-options/component-options.ts",
6018
- "line": 888
6079
+ "line": 921
6019
6080
  },
6020
6081
  "name": "tsconfigDevFile",
6021
6082
  "optional": true,
@@ -6032,7 +6093,7 @@
6032
6093
  "immutable": true,
6033
6094
  "locationInModule": {
6034
6095
  "filename": "src/structs/typescript-options/component-options.ts",
6035
- "line": 893
6096
+ "line": 926
6036
6097
  },
6037
6098
  "name": "tsJestOptions",
6038
6099
  "optional": true,
@@ -6051,7 +6112,7 @@
6051
6112
  "immutable": true,
6052
6113
  "locationInModule": {
6053
6114
  "filename": "src/structs/typescript-options/component-options.ts",
6054
- "line": 901
6115
+ "line": 934
6055
6116
  },
6056
6117
  "name": "typescriptVersion",
6057
6118
  "optional": true,
@@ -6070,7 +6131,7 @@
6070
6131
  "immutable": true,
6071
6132
  "locationInModule": {
6072
6133
  "filename": "src/structs/typescript-options/component-options.ts",
6073
- "line": 568
6134
+ "line": 589
6074
6135
  },
6075
6136
  "name": "versionrcOptions",
6076
6137
  "optional": true,
@@ -6112,7 +6173,7 @@
6112
6173
  "immutable": true,
6113
6174
  "locationInModule": {
6114
6175
  "filename": "src/structs/typescript-options/component-options.ts",
6115
- "line": 769
6176
+ "line": 802
6116
6177
  },
6117
6178
  "name": "workflowBootstrapSteps",
6118
6179
  "optional": true,
@@ -6135,7 +6196,7 @@
6135
6196
  "immutable": true,
6136
6197
  "locationInModule": {
6137
6198
  "filename": "src/structs/typescript-options/component-options.ts",
6138
- "line": 574
6199
+ "line": 595
6139
6200
  },
6140
6201
  "name": "workflowContainerImage",
6141
6202
  "optional": true,
@@ -6153,7 +6214,7 @@
6153
6214
  "immutable": true,
6154
6215
  "locationInModule": {
6155
6216
  "filename": "src/structs/typescript-options/component-options.ts",
6156
- "line": 775
6217
+ "line": 808
6157
6218
  },
6158
6219
  "name": "workflowGitIdentity",
6159
6220
  "optional": true,
@@ -6172,7 +6233,7 @@
6172
6233
  "immutable": true,
6173
6234
  "locationInModule": {
6174
6235
  "filename": "src/structs/typescript-options/component-options.ts",
6175
- "line": 782
6236
+ "line": 815
6176
6237
  },
6177
6238
  "name": "workflowNodeVersion",
6178
6239
  "optional": true,
@@ -6190,7 +6251,7 @@
6190
6251
  "immutable": true,
6191
6252
  "locationInModule": {
6192
6253
  "filename": "src/structs/typescript-options/component-options.ts",
6193
- "line": 788
6254
+ "line": 821
6194
6255
  },
6195
6256
  "name": "workflowPackageCache",
6196
6257
  "optional": true,
@@ -6212,7 +6273,7 @@
6212
6273
  "immutable": true,
6213
6274
  "locationInModule": {
6214
6275
  "filename": "src/structs/typescript-options/component-options.ts",
6215
- "line": 582
6276
+ "line": 603
6216
6277
  },
6217
6278
  "name": "workflowRunsOn",
6218
6279
  "optional": true,
@@ -6238,7 +6299,7 @@
6238
6299
  "immutable": true,
6239
6300
  "locationInModule": {
6240
6301
  "filename": "src/structs/typescript-options/component-options.ts",
6241
- "line": 589
6302
+ "line": 610
6242
6303
  },
6243
6304
  "name": "workflowRunsOnGroup",
6244
6305
  "optional": true,
@@ -8878,6 +8939,6 @@
8878
8939
  "symbolId": "src/structs/typescript-options/project-props:TypeScriptProjectProps"
8879
8940
  }
8880
8941
  },
8881
- "version": "0.0.35",
8882
- "fingerprint": "t4gQ+t7UqGszQn4oJGYOo4NJPL9RZJntIJmmnxjSokQ="
8942
+ "version": "0.0.37",
8943
+ "fingerprint": "82jHVkLCqTEUYzWAEUZTsRxTKfLOYNtdf8FrN1t4vWI="
8883
8944
  }