projen 0.100.7 → 0.101.1

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.
Files changed (158) hide show
  1. package/.jsii +1300 -204
  2. package/lib/ai-instructions.js +2 -2
  3. package/lib/awscdk/auto-discover.js +6 -6
  4. package/lib/awscdk/awscdk-app-java.js +1 -1
  5. package/lib/awscdk/awscdk-app-py.js +1 -1
  6. package/lib/awscdk/awscdk-app-ts.js +1 -1
  7. package/lib/awscdk/awscdk-construct.js +1 -1
  8. package/lib/awscdk/awscdk-deps-java.js +1 -1
  9. package/lib/awscdk/awscdk-deps-js.js +1 -1
  10. package/lib/awscdk/awscdk-deps-py.js +1 -1
  11. package/lib/awscdk/awscdk-deps.js +1 -1
  12. package/lib/awscdk/cdk-config.js +3 -3
  13. package/lib/awscdk/cdk-tasks.js +1 -1
  14. package/lib/awscdk/integration-test.js +1 -1
  15. package/lib/awscdk/lambda-extension.js +1 -1
  16. package/lib/awscdk/lambda-function.js +2 -2
  17. package/lib/build/build-workflow.js +1 -1
  18. package/lib/cdk/auto-discover-base.js +2 -2
  19. package/lib/cdk/construct-lib.js +1 -1
  20. package/lib/cdk/integration-test-base.js +1 -1
  21. package/lib/cdk/jsii-build.js +1 -1
  22. package/lib/cdk/jsii-docgen.js +1 -1
  23. package/lib/cdk/jsii-project.js +1 -1
  24. package/lib/cdk8s/auto-discover.js +2 -2
  25. package/lib/cdk8s/cdk8s-app-py.js +1 -1
  26. package/lib/cdk8s/cdk8s-app-ts.js +1 -1
  27. package/lib/cdk8s/cdk8s-construct.js +1 -1
  28. package/lib/cdk8s/cdk8s-deps-py.js +1 -1
  29. package/lib/cdk8s/cdk8s-deps.js +1 -1
  30. package/lib/cdk8s/integration-test.js +1 -1
  31. package/lib/cdktf/cdktf-construct.js +1 -1
  32. package/lib/circleci/circleci.js +1 -1
  33. package/lib/cli/task-runtime.js +115 -104
  34. package/lib/common.d.ts +1 -1
  35. package/lib/common.js +2 -2
  36. package/lib/component.js +1 -1
  37. package/lib/dependencies.js +1 -1
  38. package/lib/dev-env.js +1 -1
  39. package/lib/docker-compose/docker-compose-service.js +1 -1
  40. package/lib/docker-compose/docker-compose.js +1 -1
  41. package/lib/file.js +1 -1
  42. package/lib/gitattributes.js +1 -1
  43. package/lib/github/actions-provider.js +1 -1
  44. package/lib/github/auto-approve.js +1 -1
  45. package/lib/github/auto-merge.js +1 -1
  46. package/lib/github/auto-queue.js +1 -1
  47. package/lib/github/dependabot.js +1 -1
  48. package/lib/github/dependency-review.js +1 -1
  49. package/lib/github/github-credentials.js +1 -1
  50. package/lib/github/github-project.js +1 -1
  51. package/lib/github/github.js +1 -1
  52. package/lib/github/merge-queue.js +1 -1
  53. package/lib/github/mergify.js +1 -1
  54. package/lib/github/pr-template.js +1 -1
  55. package/lib/github/pull-request-backport.js +1 -1
  56. package/lib/github/pull-request-lint.js +1 -1
  57. package/lib/github/stale.js +1 -1
  58. package/lib/github/task-workflow-job.js +1 -1
  59. package/lib/github/task-workflow.js +1 -1
  60. package/lib/github/workflow-actions.js +1 -1
  61. package/lib/github/workflow-jobs.js +1 -1
  62. package/lib/github/workflow-steps.js +1 -1
  63. package/lib/github/workflows.js +1 -1
  64. package/lib/gitlab/configuration.js +1 -1
  65. package/lib/gitlab/gitlab-configuration.js +1 -1
  66. package/lib/gitlab/nested-configuration.js +1 -1
  67. package/lib/gitpod.js +1 -1
  68. package/lib/ignore-file.js +1 -1
  69. package/lib/index.d.ts +1 -0
  70. package/lib/index.js +2 -1
  71. package/lib/ini.js +1 -1
  72. package/lib/java/java-project.js +1 -1
  73. package/lib/java/junit.js +1 -1
  74. package/lib/java/maven-compile.js +1 -1
  75. package/lib/java/maven-packaging.js +1 -1
  76. package/lib/java/maven-sample.js +1 -1
  77. package/lib/java/pom.js +2 -2
  78. package/lib/java/projenrc.js +1 -1
  79. package/lib/javascript/biome/biome.js +1 -1
  80. package/lib/javascript/bundler.js +1 -1
  81. package/lib/javascript/eslint.js +1 -1
  82. package/lib/javascript/jest.d.ts +179 -7
  83. package/lib/javascript/jest.js +5 -5
  84. package/lib/javascript/license-checker.js +1 -1
  85. package/lib/javascript/node-package.js +1 -1
  86. package/lib/javascript/node-project.js +1 -1
  87. package/lib/javascript/npm-config.js +1 -1
  88. package/lib/javascript/prettier.js +1 -1
  89. package/lib/javascript/projenrc.js +1 -1
  90. package/lib/javascript/typescript-config.js +2 -2
  91. package/lib/javascript/upgrade-dependencies.js +2 -2
  92. package/lib/javascript/yarnrc.js +1 -1
  93. package/lib/json-patch.js +1 -1
  94. package/lib/json.js +1 -1
  95. package/lib/license.js +1 -1
  96. package/lib/logger.js +1 -1
  97. package/lib/makefile.js +1 -1
  98. package/lib/object-file.js +1 -1
  99. package/lib/project-build.js +1 -1
  100. package/lib/project-tree.js +1 -1
  101. package/lib/project.js +1 -1
  102. package/lib/projects.js +1 -1
  103. package/lib/projenrc-json.js +1 -1
  104. package/lib/projenrc.js +1 -1
  105. package/lib/python/pip.js +1 -1
  106. package/lib/python/poetry.js +2 -2
  107. package/lib/python/projenrc.js +1 -1
  108. package/lib/python/pyproject-toml-file.js +1 -1
  109. package/lib/python/pytest-sample.js +1 -1
  110. package/lib/python/pytest.js +1 -1
  111. package/lib/python/python-project.js +1 -1
  112. package/lib/python/python-sample.js +1 -1
  113. package/lib/python/requirements-file.js +1 -1
  114. package/lib/python/setuppy.js +1 -1
  115. package/lib/python/setuptools.js +1 -1
  116. package/lib/python/uv.js +1 -1
  117. package/lib/python/venv.js +1 -1
  118. package/lib/readme.js +1 -1
  119. package/lib/release/bump-version.d.ts +1 -1
  120. package/lib/release/bump-version.js +6 -2
  121. package/lib/release/publisher.js +1 -1
  122. package/lib/release/release-trigger.js +1 -1
  123. package/lib/release/release.js +1 -1
  124. package/lib/renovatebot.js +1 -1
  125. package/lib/run-task.cjs +107 -131
  126. package/lib/sample-file.js +2 -2
  127. package/lib/source-code.js +1 -1
  128. package/lib/task-model.d.ts +119 -3
  129. package/lib/task-model.js +1 -1
  130. package/lib/task-shell.d.ts +63 -0
  131. package/lib/task-shell.js +87 -0
  132. package/lib/task.d.ts +19 -2
  133. package/lib/task.js +46 -11
  134. package/lib/tasks.d.ts +13 -0
  135. package/lib/tasks.js +19 -2
  136. package/lib/testing.js +1 -1
  137. package/lib/textfile.js +1 -1
  138. package/lib/toml.js +1 -1
  139. package/lib/typescript/projenrc-ts.js +1 -1
  140. package/lib/typescript/projenrc.js +1 -1
  141. package/lib/typescript/typescript-typedoc.js +1 -1
  142. package/lib/typescript/typescript.js +5 -5
  143. package/lib/util/exec.d.ts +33 -69
  144. package/lib/util/exec.js +57 -51
  145. package/lib/version.d.ts +1 -1
  146. package/lib/version.js +5 -5
  147. package/lib/vscode/devcontainer.js +1 -1
  148. package/lib/vscode/extensions.js +1 -1
  149. package/lib/vscode/launch-config.js +1 -1
  150. package/lib/vscode/settings.js +1 -1
  151. package/lib/vscode/vscode.js +1 -1
  152. package/lib/web/next.js +3 -3
  153. package/lib/web/postcss.js +1 -1
  154. package/lib/web/react.js +3 -3
  155. package/lib/web/tailwind.js +1 -1
  156. package/lib/xmlfile.js +1 -1
  157. package/lib/yaml.js +1 -1
  158. package/package.json +1 -1
package/.jsii CHANGED
@@ -92,49 +92,49 @@
92
92
  "projen.awscdk": {
93
93
  "locationInModule": {
94
94
  "filename": "src/index.ts",
95
- "line": 54
95
+ "line": 55
96
96
  },
97
97
  "symbolId": "src/awscdk/index:"
98
98
  },
99
99
  "projen.build": {
100
100
  "locationInModule": {
101
101
  "filename": "src/index.ts",
102
- "line": 58
102
+ "line": 59
103
103
  },
104
104
  "symbolId": "src/build/index:"
105
105
  },
106
106
  "projen.cdk": {
107
107
  "locationInModule": {
108
108
  "filename": "src/index.ts",
109
- "line": 57
109
+ "line": 58
110
110
  },
111
111
  "symbolId": "src/cdk/index:"
112
112
  },
113
113
  "projen.cdk8s": {
114
114
  "locationInModule": {
115
115
  "filename": "src/index.ts",
116
- "line": 55
116
+ "line": 56
117
117
  },
118
118
  "symbolId": "src/cdk8s/index:"
119
119
  },
120
120
  "projen.cdktf": {
121
121
  "locationInModule": {
122
122
  "filename": "src/index.ts",
123
- "line": 56
123
+ "line": 57
124
124
  },
125
125
  "symbolId": "src/cdktf/index:"
126
126
  },
127
127
  "projen.circleci": {
128
128
  "locationInModule": {
129
129
  "filename": "src/index.ts",
130
- "line": 47
130
+ "line": 48
131
131
  },
132
132
  "symbolId": "src/circleci/index:"
133
133
  },
134
134
  "projen.github": {
135
135
  "locationInModule": {
136
136
  "filename": "src/index.ts",
137
- "line": 45
137
+ "line": 46
138
138
  },
139
139
  "symbolId": "src/github/index:"
140
140
  },
@@ -148,21 +148,21 @@
148
148
  "projen.gitlab": {
149
149
  "locationInModule": {
150
150
  "filename": "src/index.ts",
151
- "line": 46
151
+ "line": 47
152
152
  },
153
153
  "symbolId": "src/gitlab/index:"
154
154
  },
155
155
  "projen.java": {
156
156
  "locationInModule": {
157
157
  "filename": "src/index.ts",
158
- "line": 49
158
+ "line": 50
159
159
  },
160
160
  "symbolId": "src/java/index:"
161
161
  },
162
162
  "projen.javascript": {
163
163
  "locationInModule": {
164
164
  "filename": "src/index.ts",
165
- "line": 52
165
+ "line": 53
166
166
  },
167
167
  "symbolId": "src/javascript/index:"
168
168
  },
@@ -176,7 +176,7 @@
176
176
  "projen.python": {
177
177
  "locationInModule": {
178
178
  "filename": "src/index.ts",
179
- "line": 50
179
+ "line": 51
180
180
  },
181
181
  "symbolId": "src/python/index:"
182
182
  },
@@ -190,28 +190,28 @@
190
190
  "projen.release": {
191
191
  "locationInModule": {
192
192
  "filename": "src/index.ts",
193
- "line": 53
193
+ "line": 54
194
194
  },
195
195
  "symbolId": "src/release/index:"
196
196
  },
197
197
  "projen.typescript": {
198
198
  "locationInModule": {
199
199
  "filename": "src/index.ts",
200
- "line": 51
200
+ "line": 52
201
201
  },
202
202
  "symbolId": "src/typescript/index:"
203
203
  },
204
204
  "projen.vscode": {
205
205
  "locationInModule": {
206
206
  "filename": "src/index.ts",
207
- "line": 48
207
+ "line": 49
208
208
  },
209
209
  "symbolId": "src/vscode/index:"
210
210
  },
211
211
  "projen.web": {
212
212
  "locationInModule": {
213
213
  "filename": "src/index.ts",
214
- "line": 44
214
+ "line": 45
215
215
  },
216
216
  "symbolId": "src/web/index:"
217
217
  }
@@ -9290,7 +9290,7 @@
9290
9290
  {
9291
9291
  "docs": {
9292
9292
  "example": "\"git log --oneline $LATEST_TAG..HEAD -- .\"",
9293
- "remarks": "A new release will be initiated, if the number of returned commits is greater than zero.\nMust return a newline separate list of commits that should considered releasable.\n`$LATEST_TAG` will be replaced with the actual latest tag for the given prefix.*",
9293
+ "remarks": "A new release will be initiated, if the number of returned commits is greater than zero.\nMust return a newline separate list of commits that should considered releasable.\n`$LATEST_TAG` is available as an environment variable (set to the actual latest tag for the given prefix).",
9294
9294
  "stability": "experimental",
9295
9295
  "summary": "Use an arbitrary shell command to find releasable commits since the latest tag."
9296
9296
  },
@@ -10526,7 +10526,7 @@
10526
10526
  },
10527
10527
  "locationInModule": {
10528
10528
  "filename": "src/task.ts",
10529
- "line": 76
10529
+ "line": 78
10530
10530
  },
10531
10531
  "parameters": [
10532
10532
  {
@@ -10547,7 +10547,7 @@
10547
10547
  "kind": "class",
10548
10548
  "locationInModule": {
10549
10549
  "filename": "src/task.ts",
10550
- "line": 61
10550
+ "line": 62
10551
10551
  },
10552
10552
  "methods": [
10553
10553
  {
@@ -10559,7 +10559,7 @@
10559
10559
  },
10560
10560
  "locationInModule": {
10561
10561
  "filename": "src/task.ts",
10562
- "line": 161
10562
+ "line": 180
10563
10563
  },
10564
10564
  "name": "addCondition",
10565
10565
  "parameters": [
@@ -10584,7 +10584,7 @@
10584
10584
  },
10585
10585
  "locationInModule": {
10586
10586
  "filename": "src/task.ts",
10587
- "line": 192
10587
+ "line": 211
10588
10588
  },
10589
10589
  "name": "addSteps",
10590
10590
  "parameters": [
@@ -10609,7 +10609,7 @@
10609
10609
  },
10610
10610
  "locationInModule": {
10611
10611
  "filename": "src/task.ts",
10612
- "line": 234
10612
+ "line": 255
10613
10613
  },
10614
10614
  "name": "builtin",
10615
10615
  "parameters": [
@@ -10631,7 +10631,7 @@
10631
10631
  },
10632
10632
  "locationInModule": {
10633
10633
  "filename": "src/task.ts",
10634
- "line": 317
10634
+ "line": 357
10635
10635
  },
10636
10636
  "name": "env",
10637
10637
  "parameters": [
@@ -10663,7 +10663,7 @@
10663
10663
  },
10664
10664
  "locationInModule": {
10665
10665
  "filename": "src/task.ts",
10666
- "line": 201
10666
+ "line": 220
10667
10667
  },
10668
10668
  "name": "exec",
10669
10669
  "parameters": [
@@ -10697,7 +10697,7 @@
10697
10697
  },
10698
10698
  "locationInModule": {
10699
10699
  "filename": "src/task.ts",
10700
- "line": 219
10700
+ "line": 238
10701
10701
  },
10702
10702
  "name": "execArgs",
10703
10703
  "parameters": [
@@ -10734,7 +10734,7 @@
10734
10734
  },
10735
10735
  "locationInModule": {
10736
10736
  "filename": "src/task.ts",
10737
- "line": 348
10737
+ "line": 388
10738
10738
  },
10739
10739
  "name": "insertStep",
10740
10740
  "parameters": [
@@ -10768,7 +10768,7 @@
10768
10768
  },
10769
10769
  "locationInModule": {
10770
10770
  "filename": "src/task.ts",
10771
- "line": 111
10771
+ "line": 114
10772
10772
  },
10773
10773
  "name": "lock"
10774
10774
  },
@@ -10779,7 +10779,7 @@
10779
10779
  },
10780
10780
  "locationInModule": {
10781
10781
  "filename": "src/task.ts",
10782
- "line": 268
10782
+ "line": 291
10783
10783
  },
10784
10784
  "name": "prependExec",
10785
10785
  "parameters": [
@@ -10787,7 +10787,7 @@
10787
10787
  "docs": {
10788
10788
  "summary": "The command to add."
10789
10789
  },
10790
- "name": "shell",
10790
+ "name": "command",
10791
10791
  "type": {
10792
10792
  "primitive": "string"
10793
10793
  }
@@ -10808,7 +10808,7 @@
10808
10808
  },
10809
10809
  "locationInModule": {
10810
10810
  "filename": "src/task.ts",
10811
- "line": 284
10811
+ "line": 311
10812
10812
  },
10813
10813
  "name": "prependSay",
10814
10814
  "parameters": [
@@ -10837,7 +10837,7 @@
10837
10837
  },
10838
10838
  "locationInModule": {
10839
10839
  "filename": "src/task.ts",
10840
- "line": 276
10840
+ "line": 301
10841
10841
  },
10842
10842
  "name": "prependSpawn",
10843
10843
  "parameters": [
@@ -10866,7 +10866,7 @@
10866
10866
  },
10867
10867
  "locationInModule": {
10868
10868
  "filename": "src/task.ts",
10869
- "line": 260
10869
+ "line": 283
10870
10870
  },
10871
10871
  "name": "prependSteps",
10872
10872
  "parameters": [
@@ -10889,7 +10889,7 @@
10889
10889
  },
10890
10890
  "locationInModule": {
10891
10891
  "filename": "src/task.ts",
10892
- "line": 392
10892
+ "line": 432
10893
10893
  },
10894
10894
  "name": "removeStep",
10895
10895
  "parameters": [
@@ -10911,7 +10911,7 @@
10911
10911
  },
10912
10912
  "locationInModule": {
10913
10913
  "filename": "src/task.ts",
10914
- "line": 169
10914
+ "line": 188
10915
10915
  },
10916
10916
  "name": "reset",
10917
10917
  "parameters": [
@@ -10941,7 +10941,7 @@
10941
10941
  },
10942
10942
  "locationInModule": {
10943
10943
  "filename": "src/task.ts",
10944
- "line": 243
10944
+ "line": 264
10945
10945
  },
10946
10946
  "name": "say",
10947
10947
  "parameters": [
@@ -10973,7 +10973,7 @@
10973
10973
  },
10974
10974
  "locationInModule": {
10975
10975
  "filename": "src/task.ts",
10976
- "line": 251
10976
+ "line": 272
10977
10977
  },
10978
10978
  "name": "spawn",
10979
10979
  "parameters": [
@@ -11001,7 +11001,7 @@
11001
11001
  },
11002
11002
  "locationInModule": {
11003
11003
  "filename": "src/task.ts",
11004
- "line": 370
11004
+ "line": 410
11005
11005
  },
11006
11006
  "name": "updateStep",
11007
11007
  "parameters": [
@@ -11036,7 +11036,7 @@
11036
11036
  "immutable": true,
11037
11037
  "locationInModule": {
11038
11038
  "filename": "src/task.ts",
11039
- "line": 325
11039
+ "line": 365
11040
11040
  },
11041
11041
  "name": "envVars",
11042
11042
  "type": {
@@ -11056,7 +11056,7 @@
11056
11056
  "immutable": true,
11057
11057
  "locationInModule": {
11058
11058
  "filename": "src/task.ts",
11059
- "line": 65
11059
+ "line": 66
11060
11060
  },
11061
11061
  "name": "name",
11062
11062
  "type": {
@@ -11071,7 +11071,7 @@
11071
11071
  "immutable": true,
11072
11072
  "locationInModule": {
11073
11073
  "filename": "src/task.ts",
11074
- "line": 332
11074
+ "line": 372
11075
11075
  },
11076
11076
  "name": "steps",
11077
11077
  "type": {
@@ -11092,7 +11092,7 @@
11092
11092
  "immutable": true,
11093
11093
  "locationInModule": {
11094
11094
  "filename": "src/task.ts",
11095
- "line": 147
11095
+ "line": 166
11096
11096
  },
11097
11097
  "name": "condition",
11098
11098
  "optional": true,
@@ -11108,7 +11108,7 @@
11108
11108
  },
11109
11109
  "locationInModule": {
11110
11110
  "filename": "src/task.ts",
11111
- "line": 118
11111
+ "line": 121
11112
11112
  },
11113
11113
  "name": "cwd",
11114
11114
  "optional": true,
@@ -11124,13 +11124,30 @@
11124
11124
  },
11125
11125
  "locationInModule": {
11126
11126
  "filename": "src/task.ts",
11127
- "line": 132
11127
+ "line": 151
11128
11128
  },
11129
11129
  "name": "description",
11130
11130
  "optional": true,
11131
11131
  "type": {
11132
11132
  "primitive": "string"
11133
11133
  }
11134
+ },
11135
+ {
11136
+ "docs": {
11137
+ "remarks": "Sets the shell used to run this task's commands.",
11138
+ "see": "{@link TaskCommonOptions.shell }",
11139
+ "stability": "experimental",
11140
+ "summary": "The shell used to run this task's commands, or `undefined` when inheriting the built-in default shell."
11141
+ },
11142
+ "locationInModule": {
11143
+ "filename": "src/task.ts",
11144
+ "line": 137
11145
+ },
11146
+ "name": "shell",
11147
+ "optional": true,
11148
+ "type": {
11149
+ "fqn": "projen.TaskShell"
11150
+ }
11134
11151
  }
11135
11152
  ],
11136
11153
  "symbolId": "src/task:Task"
@@ -11145,7 +11162,7 @@
11145
11162
  "kind": "interface",
11146
11163
  "locationInModule": {
11147
11164
  "filename": "src/task-model.ts",
11148
- "line": 27
11165
+ "line": 36
11149
11166
  },
11150
11167
  "name": "TaskCommonOptions",
11151
11168
  "properties": [
@@ -11159,7 +11176,7 @@
11159
11176
  "immutable": true,
11160
11177
  "locationInModule": {
11161
11178
  "filename": "src/task-model.ts",
11162
- "line": 52
11179
+ "line": 61
11163
11180
  },
11164
11181
  "name": "condition",
11165
11182
  "optional": true,
@@ -11177,7 +11194,7 @@
11177
11194
  "immutable": true,
11178
11195
  "locationInModule": {
11179
11196
  "filename": "src/task-model.ts",
11180
- "line": 60
11197
+ "line": 69
11181
11198
  },
11182
11199
  "name": "cwd",
11183
11200
  "optional": true,
@@ -11195,7 +11212,7 @@
11195
11212
  "immutable": true,
11196
11213
  "locationInModule": {
11197
11214
  "filename": "src/task-model.ts",
11198
- "line": 32
11215
+ "line": 41
11199
11216
  },
11200
11217
  "name": "description",
11201
11218
  "optional": true,
@@ -11214,7 +11231,7 @@
11214
11231
  "immutable": true,
11215
11232
  "locationInModule": {
11216
11233
  "filename": "src/task-model.ts",
11217
- "line": 39
11234
+ "line": 48
11218
11235
  },
11219
11236
  "name": "env",
11220
11237
  "optional": true,
@@ -11237,7 +11254,7 @@
11237
11254
  "immutable": true,
11238
11255
  "locationInModule": {
11239
11256
  "filename": "src/task-model.ts",
11240
- "line": 45
11257
+ "line": 54
11241
11258
  },
11242
11259
  "name": "requiredEnv",
11243
11260
  "optional": true,
@@ -11249,6 +11266,24 @@
11249
11266
  "kind": "array"
11250
11267
  }
11251
11268
  }
11269
+ },
11270
+ {
11271
+ "abstract": true,
11272
+ "docs": {
11273
+ "default": "- inherited from the task/project, otherwise the built-in projen shell",
11274
+ "stability": "experimental",
11275
+ "summary": "The shell used to run this task's commands, including its `condition` and `$(...)` environment evaluation. Use {@link TaskShell} to pick a built-in or an explicit invocation. Set at project, task or step level; the nearest declared level wins."
11276
+ },
11277
+ "immutable": true,
11278
+ "locationInModule": {
11279
+ "filename": "src/task-model.ts",
11280
+ "line": 79
11281
+ },
11282
+ "name": "shell",
11283
+ "optional": true,
11284
+ "type": {
11285
+ "fqn": "projen.TaskShell"
11286
+ }
11252
11287
  }
11253
11288
  ],
11254
11289
  "symbolId": "src/task-model:TaskCommonOptions"
@@ -11266,7 +11301,7 @@
11266
11301
  "kind": "interface",
11267
11302
  "locationInModule": {
11268
11303
  "filename": "src/task.ts",
11269
- "line": 9
11304
+ "line": 10
11270
11305
  },
11271
11306
  "name": "TaskOptions",
11272
11307
  "properties": [
@@ -11281,7 +11316,7 @@
11281
11316
  "immutable": true,
11282
11317
  "locationInModule": {
11283
11318
  "filename": "src/task.ts",
11284
- "line": 54
11319
+ "line": 55
11285
11320
  },
11286
11321
  "name": "args",
11287
11322
  "optional": true,
@@ -11305,7 +11340,7 @@
11305
11340
  "immutable": true,
11306
11341
  "locationInModule": {
11307
11342
  "filename": "src/task.ts",
11308
- "line": 17
11343
+ "line": 18
11309
11344
  },
11310
11345
  "name": "exec",
11311
11346
  "optional": true,
@@ -11325,7 +11360,7 @@
11325
11360
  "immutable": true,
11326
11361
  "locationInModule": {
11327
11362
  "filename": "src/task.ts",
11328
- "line": 33
11363
+ "line": 34
11329
11364
  },
11330
11365
  "name": "execArgs",
11331
11366
  "optional": true,
@@ -11349,7 +11384,7 @@
11349
11384
  "immutable": true,
11350
11385
  "locationInModule": {
11351
11386
  "filename": "src/task.ts",
11352
- "line": 46
11387
+ "line": 47
11353
11388
  },
11354
11389
  "name": "receiveArgs",
11355
11390
  "optional": true,
@@ -11366,7 +11401,7 @@
11366
11401
  "immutable": true,
11367
11402
  "locationInModule": {
11368
11403
  "filename": "src/task.ts",
11369
- "line": 38
11404
+ "line": 39
11370
11405
  },
11371
11406
  "name": "steps",
11372
11407
  "optional": true,
@@ -11382,21 +11417,143 @@
11382
11417
  ],
11383
11418
  "symbolId": "src/task:TaskOptions"
11384
11419
  },
11420
+ "projen.TaskShell": {
11421
+ "assembly": "projen",
11422
+ "docs": {
11423
+ "remarks": "Choose one of the built-in shells, or provide an explicit shell invocation:\n\n- {@link TaskShell.projen} (the default) - the built-in cross-platform shell.\n- {@link TaskShell.system} - the operating system's native shell.\n- {@link TaskShell.bash} / {@link TaskShell.sh} - common POSIX shells.\n- {@link TaskShell.command} - an arbitrary shell invocation given as an\n explicit argument list, e.g. `TaskShell.command([\"npx\", \"-c\"])`.\n\nA `shell` can be set at the project (tasks), task and step level, and the\nnearest declared level wins (it is a scalar override, not merged).",
11424
+ "stability": "experimental",
11425
+ "summary": "The shell used to run a task's commands - including its `condition` and any `$(...)` environment-variable evaluation."
11426
+ },
11427
+ "fqn": "projen.TaskShell",
11428
+ "kind": "class",
11429
+ "locationInModule": {
11430
+ "filename": "src/task-shell.ts",
11431
+ "line": 16
11432
+ },
11433
+ "methods": [
11434
+ {
11435
+ "docs": {
11436
+ "stability": "experimental",
11437
+ "summary": "Runs commands through `bash -c`."
11438
+ },
11439
+ "locationInModule": {
11440
+ "filename": "src/task-shell.ts",
11441
+ "line": 40
11442
+ },
11443
+ "name": "bash",
11444
+ "returns": {
11445
+ "type": {
11446
+ "fqn": "projen.TaskShell"
11447
+ }
11448
+ },
11449
+ "static": true
11450
+ },
11451
+ {
11452
+ "docs": {
11453
+ "example": "TaskShell.command([\"npx\", \"-c\"]);",
11454
+ "remarks": "The task\ncommand is appended as the final argument, so the invocation must accept\nthe command as its last argument (e.g. `bash -c`, `sh -c`, `npx -c`,\n`yarn exec`).",
11455
+ "stability": "experimental",
11456
+ "summary": "An arbitrary shell invocation, given as an explicit argument list."
11457
+ },
11458
+ "locationInModule": {
11459
+ "filename": "src/task-shell.ts",
11460
+ "line": 64
11461
+ },
11462
+ "name": "command",
11463
+ "parameters": [
11464
+ {
11465
+ "docs": {
11466
+ "remarks": "Must not be\nempty.",
11467
+ "summary": "The shell program followed by its arguments."
11468
+ },
11469
+ "name": "command",
11470
+ "type": {
11471
+ "collection": {
11472
+ "elementtype": {
11473
+ "primitive": "string"
11474
+ },
11475
+ "kind": "array"
11476
+ }
11477
+ }
11478
+ }
11479
+ ],
11480
+ "returns": {
11481
+ "type": {
11482
+ "fqn": "projen.TaskShell"
11483
+ }
11484
+ },
11485
+ "static": true
11486
+ },
11487
+ {
11488
+ "docs": {
11489
+ "remarks": "It interprets POSIX-style\ntask syntax (`mkdir -p`, `&&`, `$VAR`, ...) identically on every platform,\nincluding Windows.",
11490
+ "stability": "experimental",
11491
+ "summary": "The built-in cross-platform shell (the default)."
11492
+ },
11493
+ "locationInModule": {
11494
+ "filename": "src/task-shell.ts",
11495
+ "line": 22
11496
+ },
11497
+ "name": "projen",
11498
+ "returns": {
11499
+ "type": {
11500
+ "fqn": "projen.TaskShell"
11501
+ }
11502
+ },
11503
+ "static": true
11504
+ },
11505
+ {
11506
+ "docs": {
11507
+ "stability": "experimental",
11508
+ "summary": "Runs commands through `sh -c`."
11509
+ },
11510
+ "locationInModule": {
11511
+ "filename": "src/task-shell.ts",
11512
+ "line": 47
11513
+ },
11514
+ "name": "sh",
11515
+ "returns": {
11516
+ "type": {
11517
+ "fqn": "projen.TaskShell"
11518
+ }
11519
+ },
11520
+ "static": true
11521
+ },
11522
+ {
11523
+ "docs": {
11524
+ "remarks": "Use this to opt out of the cross-platform shell and run commands through\nwhatever shell the host provides.",
11525
+ "stability": "experimental",
11526
+ "summary": "The operating system's native shell (`/bin/sh` on POSIX, `cmd.exe` on Windows)."
11527
+ },
11528
+ "locationInModule": {
11529
+ "filename": "src/task-shell.ts",
11530
+ "line": 33
11531
+ },
11532
+ "name": "system",
11533
+ "returns": {
11534
+ "type": {
11535
+ "fqn": "projen.TaskShell"
11536
+ }
11537
+ },
11538
+ "static": true
11539
+ }
11540
+ ],
11541
+ "name": "TaskShell",
11542
+ "symbolId": "src/task-shell:TaskShell"
11543
+ },
11385
11544
  "projen.TaskSpec": {
11386
11545
  "assembly": "projen",
11387
11546
  "datatype": true,
11388
11547
  "docs": {
11548
+ "remarks": "The `tasks.json` (manifest) form of a task. {@link TaskCommonOptions} is the\nform used to define one; they differ only in the rendered `shell` field.",
11389
11549
  "stability": "experimental",
11390
11550
  "summary": "Specification of a single task."
11391
11551
  },
11392
11552
  "fqn": "projen.TaskSpec",
11393
- "interfaces": [
11394
- "projen.TaskCommonOptions"
11395
- ],
11396
11553
  "kind": "interface",
11397
11554
  "locationInModule": {
11398
11555
  "filename": "src/task-model.ts",
11399
- "line": 66
11556
+ "line": 88
11400
11557
  },
11401
11558
  "name": "TaskSpec",
11402
11559
  "properties": [
@@ -11409,13 +11566,146 @@
11409
11566
  "immutable": true,
11410
11567
  "locationInModule": {
11411
11568
  "filename": "src/task-model.ts",
11412
- "line": 70
11569
+ "line": 92
11413
11570
  },
11414
11571
  "name": "name",
11415
11572
  "type": {
11416
11573
  "primitive": "string"
11417
11574
  }
11418
11575
  },
11576
+ {
11577
+ "abstract": true,
11578
+ "docs": {
11579
+ "remarks": "If\nthe program exits with a zero exit code, steps will be executed. A non-zero\ncode means that task will be skipped.",
11580
+ "stability": "experimental",
11581
+ "summary": "A shell command which determines if the this task should be executed."
11582
+ },
11583
+ "immutable": true,
11584
+ "locationInModule": {
11585
+ "filename": "src/task-model.ts",
11586
+ "line": 118
11587
+ },
11588
+ "name": "condition",
11589
+ "optional": true,
11590
+ "type": {
11591
+ "primitive": "string"
11592
+ }
11593
+ },
11594
+ {
11595
+ "abstract": true,
11596
+ "docs": {
11597
+ "default": "- process.cwd()",
11598
+ "stability": "experimental",
11599
+ "summary": "The working directory for all steps in this task (unless overridden by the step)."
11600
+ },
11601
+ "immutable": true,
11602
+ "locationInModule": {
11603
+ "filename": "src/task-model.ts",
11604
+ "line": 126
11605
+ },
11606
+ "name": "cwd",
11607
+ "optional": true,
11608
+ "type": {
11609
+ "primitive": "string"
11610
+ }
11611
+ },
11612
+ {
11613
+ "abstract": true,
11614
+ "docs": {
11615
+ "default": "- the task name",
11616
+ "stability": "experimental",
11617
+ "summary": "The description of this build command."
11618
+ },
11619
+ "immutable": true,
11620
+ "locationInModule": {
11621
+ "filename": "src/task-model.ts",
11622
+ "line": 98
11623
+ },
11624
+ "name": "description",
11625
+ "optional": true,
11626
+ "type": {
11627
+ "primitive": "string"
11628
+ }
11629
+ },
11630
+ {
11631
+ "abstract": true,
11632
+ "docs": {
11633
+ "default": "{}",
11634
+ "remarks": "Values in this map will be evaluated in a shell, so you can do stuff like `$(echo \"foo\")`.",
11635
+ "stability": "experimental",
11636
+ "summary": "Defines environment variables for the execution of this task."
11637
+ },
11638
+ "immutable": true,
11639
+ "locationInModule": {
11640
+ "filename": "src/task-model.ts",
11641
+ "line": 105
11642
+ },
11643
+ "name": "env",
11644
+ "optional": true,
11645
+ "type": {
11646
+ "collection": {
11647
+ "elementtype": {
11648
+ "primitive": "string"
11649
+ },
11650
+ "kind": "map"
11651
+ }
11652
+ }
11653
+ },
11654
+ {
11655
+ "abstract": true,
11656
+ "docs": {
11657
+ "remarks": "Task execution will fail if one of these is not defined.",
11658
+ "stability": "experimental",
11659
+ "summary": "A set of environment variables that must be defined in order to execute this task."
11660
+ },
11661
+ "immutable": true,
11662
+ "locationInModule": {
11663
+ "filename": "src/task-model.ts",
11664
+ "line": 111
11665
+ },
11666
+ "name": "requiredEnv",
11667
+ "optional": true,
11668
+ "type": {
11669
+ "collection": {
11670
+ "elementtype": {
11671
+ "primitive": "string"
11672
+ },
11673
+ "kind": "array"
11674
+ }
11675
+ }
11676
+ },
11677
+ {
11678
+ "abstract": true,
11679
+ "docs": {
11680
+ "default": "- the built-in projen shell",
11681
+ "stability": "experimental",
11682
+ "summary": "The task shell in `tasks.json` form: a keyword (`\"projen\"` or `\"system\"`) or an invocation argument list."
11683
+ },
11684
+ "immutable": true,
11685
+ "locationInModule": {
11686
+ "filename": "src/task-model.ts",
11687
+ "line": 134
11688
+ },
11689
+ "name": "shell",
11690
+ "optional": true,
11691
+ "type": {
11692
+ "union": {
11693
+ "types": [
11694
+ {
11695
+ "primitive": "string"
11696
+ },
11697
+ {
11698
+ "collection": {
11699
+ "elementtype": {
11700
+ "primitive": "string"
11701
+ },
11702
+ "kind": "array"
11703
+ }
11704
+ }
11705
+ ]
11706
+ }
11707
+ }
11708
+ },
11419
11709
  {
11420
11710
  "abstract": true,
11421
11711
  "docs": {
@@ -11425,7 +11715,7 @@
11425
11715
  "immutable": true,
11426
11716
  "locationInModule": {
11427
11717
  "filename": "src/task-model.ts",
11428
- "line": 75
11718
+ "line": 139
11429
11719
  },
11430
11720
  "name": "steps",
11431
11721
  "optional": true,
@@ -11445,21 +11735,42 @@
11445
11735
  "assembly": "projen",
11446
11736
  "datatype": true,
11447
11737
  "docs": {
11448
- "remarks": "The step could either be the execution of a\nshell command or execution of a sub-task, by name.",
11738
+ "remarks": "The step could either be the execution of a\nshell command or execution of a sub-task, by name.\n\nThe `tasks.json` (manifest) form of a step. {@link TaskStepOptions} is the\nform used to define steps (via `task.exec()` etc.); they differ only in the\nrendered `shell` field.",
11449
11739
  "stability": "experimental",
11450
11740
  "summary": "A single step within a task."
11451
11741
  },
11452
11742
  "fqn": "projen.TaskStep",
11453
- "interfaces": [
11454
- "projen.TaskStepOptions"
11455
- ],
11456
11743
  "kind": "interface",
11457
11744
  "locationInModule": {
11458
11745
  "filename": "src/task-model.ts",
11459
- "line": 158
11746
+ "line": 234
11460
11747
  },
11461
11748
  "name": "TaskStep",
11462
11749
  "properties": [
11750
+ {
11751
+ "abstract": true,
11752
+ "docs": {
11753
+ "default": "- no arguments are passed to the step",
11754
+ "see": "{@link TaskStepOptions.args }",
11755
+ "stability": "experimental",
11756
+ "summary": "A list of fixed arguments always passed to the step."
11757
+ },
11758
+ "immutable": true,
11759
+ "locationInModule": {
11760
+ "filename": "src/task-model.ts",
11761
+ "line": 270
11762
+ },
11763
+ "name": "args",
11764
+ "optional": true,
11765
+ "type": {
11766
+ "collection": {
11767
+ "elementtype": {
11768
+ "primitive": "string"
11769
+ },
11770
+ "kind": "array"
11771
+ }
11772
+ }
11773
+ },
11463
11774
  {
11464
11775
  "abstract": true,
11465
11776
  "docs": {
@@ -11471,7 +11782,7 @@
11471
11782
  "immutable": true,
11472
11783
  "locationInModule": {
11473
11784
  "filename": "src/task-model.ts",
11474
- "line": 216
11785
+ "line": 345
11475
11786
  },
11476
11787
  "name": "builtin",
11477
11788
  "optional": true,
@@ -11479,6 +11790,66 @@
11479
11790
  "primitive": "string"
11480
11791
  }
11481
11792
  },
11793
+ {
11794
+ "abstract": true,
11795
+ "docs": {
11796
+ "remarks": "If\nthe program exits with a zero exit code, the step will be executed. A non-zero\ncode means the step will be skipped (subsequent task steps will still be evaluated/executed).",
11797
+ "stability": "experimental",
11798
+ "summary": "A shell command which determines if the this step should be executed."
11799
+ },
11800
+ "immutable": true,
11801
+ "locationInModule": {
11802
+ "filename": "src/task-model.ts",
11803
+ "line": 254
11804
+ },
11805
+ "name": "condition",
11806
+ "optional": true,
11807
+ "type": {
11808
+ "primitive": "string"
11809
+ }
11810
+ },
11811
+ {
11812
+ "abstract": true,
11813
+ "docs": {
11814
+ "default": "- determined by the task",
11815
+ "stability": "experimental",
11816
+ "summary": "The working directory for this step."
11817
+ },
11818
+ "immutable": true,
11819
+ "locationInModule": {
11820
+ "filename": "src/task-model.ts",
11821
+ "line": 247
11822
+ },
11823
+ "name": "cwd",
11824
+ "optional": true,
11825
+ "type": {
11826
+ "primitive": "string"
11827
+ }
11828
+ },
11829
+ {
11830
+ "abstract": true,
11831
+ "docs": {
11832
+ "default": "- no environment variables defined in step",
11833
+ "see": "{@link TaskStepOptions.env }",
11834
+ "stability": "experimental",
11835
+ "summary": "Defines environment variables for the execution of this step (`exec` and `builtin` only)."
11836
+ },
11837
+ "immutable": true,
11838
+ "locationInModule": {
11839
+ "filename": "src/task-model.ts",
11840
+ "line": 278
11841
+ },
11842
+ "name": "env",
11843
+ "optional": true,
11844
+ "type": {
11845
+ "collection": {
11846
+ "elementtype": {
11847
+ "primitive": "string"
11848
+ },
11849
+ "kind": "map"
11850
+ }
11851
+ }
11852
+ },
11482
11853
  {
11483
11854
  "abstract": true,
11484
11855
  "docs": {
@@ -11490,7 +11861,7 @@
11490
11861
  "immutable": true,
11491
11862
  "locationInModule": {
11492
11863
  "filename": "src/task-model.ts",
11493
- "line": 168
11864
+ "line": 297
11494
11865
  },
11495
11866
  "name": "exec",
11496
11867
  "optional": true,
@@ -11510,7 +11881,7 @@
11510
11881
  "immutable": true,
11511
11882
  "locationInModule": {
11512
11883
  "filename": "src/task-model.ts",
11513
- "line": 189
11884
+ "line": 318
11514
11885
  },
11515
11886
  "name": "execArgs",
11516
11887
  "optional": true,
@@ -11523,6 +11894,43 @@
11523
11894
  }
11524
11895
  }
11525
11896
  },
11897
+ {
11898
+ "abstract": true,
11899
+ "docs": {
11900
+ "default": "- no name",
11901
+ "stability": "experimental",
11902
+ "summary": "Step name."
11903
+ },
11904
+ "immutable": true,
11905
+ "locationInModule": {
11906
+ "filename": "src/task-model.ts",
11907
+ "line": 240
11908
+ },
11909
+ "name": "name",
11910
+ "optional": true,
11911
+ "type": {
11912
+ "primitive": "string"
11913
+ }
11914
+ },
11915
+ {
11916
+ "abstract": true,
11917
+ "docs": {
11918
+ "default": "false",
11919
+ "see": "{@link TaskStepOptions.receiveArgs }",
11920
+ "stability": "experimental",
11921
+ "summary": "Should this step receive args passed to the task."
11922
+ },
11923
+ "immutable": true,
11924
+ "locationInModule": {
11925
+ "filename": "src/task-model.ts",
11926
+ "line": 262
11927
+ },
11928
+ "name": "receiveArgs",
11929
+ "optional": true,
11930
+ "type": {
11931
+ "primitive": "boolean"
11932
+ }
11933
+ },
11526
11934
  {
11527
11935
  "abstract": true,
11528
11936
  "docs": {
@@ -11533,7 +11941,7 @@
11533
11941
  "immutable": true,
11534
11942
  "locationInModule": {
11535
11943
  "filename": "src/task-model.ts",
11536
- "line": 202
11944
+ "line": 331
11537
11945
  },
11538
11946
  "name": "say",
11539
11947
  "optional": true,
@@ -11541,6 +11949,38 @@
11541
11949
  "primitive": "string"
11542
11950
  }
11543
11951
  },
11952
+ {
11953
+ "abstract": true,
11954
+ "docs": {
11955
+ "default": "- the task's (or project's) shell",
11956
+ "stability": "experimental",
11957
+ "summary": "The step shell in `tasks.json` form: a keyword (`\"projen\"` or `\"system\"`) or an invocation argument list."
11958
+ },
11959
+ "immutable": true,
11960
+ "locationInModule": {
11961
+ "filename": "src/task-model.ts",
11962
+ "line": 286
11963
+ },
11964
+ "name": "shell",
11965
+ "optional": true,
11966
+ "type": {
11967
+ "union": {
11968
+ "types": [
11969
+ {
11970
+ "primitive": "string"
11971
+ },
11972
+ {
11973
+ "collection": {
11974
+ "elementtype": {
11975
+ "primitive": "string"
11976
+ },
11977
+ "kind": "array"
11978
+ }
11979
+ }
11980
+ ]
11981
+ }
11982
+ }
11983
+ },
11544
11984
  {
11545
11985
  "abstract": true,
11546
11986
  "docs": {
@@ -11551,7 +11991,7 @@
11551
11991
  "immutable": true,
11552
11992
  "locationInModule": {
11553
11993
  "filename": "src/task-model.ts",
11554
- "line": 196
11994
+ "line": 325
11555
11995
  },
11556
11996
  "name": "spawn",
11557
11997
  "optional": true,
@@ -11573,7 +12013,7 @@
11573
12013
  "kind": "interface",
11574
12014
  "locationInModule": {
11575
12015
  "filename": "src/task-model.ts",
11576
- "line": 81
12016
+ "line": 145
11577
12017
  },
11578
12018
  "name": "TaskStepOptions",
11579
12019
  "properties": [
@@ -11589,7 +12029,7 @@
11589
12029
  "immutable": true,
11590
12030
  "locationInModule": {
11591
12031
  "filename": "src/task-model.ts",
11592
- "line": 141
12032
+ "line": 205
11593
12033
  },
11594
12034
  "name": "args",
11595
12035
  "optional": true,
@@ -11612,7 +12052,7 @@
11612
12052
  "immutable": true,
11613
12053
  "locationInModule": {
11614
12054
  "filename": "src/task-model.ts",
11615
- "line": 101
12055
+ "line": 165
11616
12056
  },
11617
12057
  "name": "condition",
11618
12058
  "optional": true,
@@ -11630,7 +12070,7 @@
11630
12070
  "immutable": true,
11631
12071
  "locationInModule": {
11632
12072
  "filename": "src/task-model.ts",
11633
- "line": 94
12073
+ "line": 158
11634
12074
  },
11635
12075
  "name": "cwd",
11636
12076
  "optional": true,
@@ -11650,7 +12090,7 @@
11650
12090
  "immutable": true,
11651
12091
  "locationInModule": {
11652
12092
  "filename": "src/task-model.ts",
11653
- "line": 151
12093
+ "line": 215
11654
12094
  },
11655
12095
  "name": "env",
11656
12096
  "optional": true,
@@ -11673,7 +12113,7 @@
11673
12113
  "immutable": true,
11674
12114
  "locationInModule": {
11675
12115
  "filename": "src/task-model.ts",
11676
- "line": 87
12116
+ "line": 151
11677
12117
  },
11678
12118
  "name": "name",
11679
12119
  "optional": true,
@@ -11686,20 +12126,39 @@
11686
12126
  "docs": {
11687
12127
  "default": "false",
11688
12128
  "example": "task.exec(\"echo Hello $@ World!\", { receiveArgs: true });",
11689
- "remarks": "If `true`, args are passed through at the end of the `exec` shell command.\\\nThe position of the args can be changed by including the marker `$@` inside the command string.\n\nIf the marker is explicitly double-quoted (\"$@\") arguments will be wrapped in single quotes, approximating\nthe whitespace preserving behavior of bash variable expansion.\n\nIf the step spawns a subtask, args are passed to the subtask.\nThe subtask must define steps receiving args for this to have any effect.",
12129
+ "remarks": "If `true`, args are passed through at the end of the `exec` shell command.\\\nThe position of the args can be changed by including the marker `$@` inside the command string.\n\nIf the marker is explicitly double-quoted (\"$@\") arguments will be wrapped in double quotes, approximating\nthe whitespace preserving behavior of bash variable expansion.\n\nIf the step spawns a subtask, args are passed to the subtask.\nThe subtask must define steps receiving args for this to have any effect.",
11690
12130
  "stability": "experimental",
11691
12131
  "summary": "Should this step receive args passed to the task."
11692
12132
  },
11693
12133
  "immutable": true,
11694
12134
  "locationInModule": {
11695
12135
  "filename": "src/task-model.ts",
11696
- "line": 119
12136
+ "line": 183
11697
12137
  },
11698
12138
  "name": "receiveArgs",
11699
12139
  "optional": true,
11700
12140
  "type": {
11701
12141
  "primitive": "boolean"
11702
12142
  }
12143
+ },
12144
+ {
12145
+ "abstract": true,
12146
+ "docs": {
12147
+ "default": "- the task's (or project's) shell",
12148
+ "see": "{@link TaskCommonOptions.shell }",
12149
+ "stability": "experimental",
12150
+ "summary": "The shell used to run this step, overriding the task/project shell."
12151
+ },
12152
+ "immutable": true,
12153
+ "locationInModule": {
12154
+ "filename": "src/task-model.ts",
12155
+ "line": 223
12156
+ },
12157
+ "name": "shell",
12158
+ "optional": true,
12159
+ "type": {
12160
+ "fqn": "projen.TaskShell"
12161
+ }
11703
12162
  }
11704
12163
  ],
11705
12164
  "symbolId": "src/task-model:TaskStepOptions"
@@ -11719,7 +12178,7 @@
11719
12178
  },
11720
12179
  "locationInModule": {
11721
12180
  "filename": "src/tasks.ts",
11722
- "line": 23
12181
+ "line": 25
11723
12182
  },
11724
12183
  "parameters": [
11725
12184
  {
@@ -11733,7 +12192,7 @@
11733
12192
  "kind": "class",
11734
12193
  "locationInModule": {
11735
12194
  "filename": "src/tasks.ts",
11736
- "line": 18
12195
+ "line": 19
11737
12196
  },
11738
12197
  "methods": [
11739
12198
  {
@@ -11743,7 +12202,7 @@
11743
12202
  },
11744
12203
  "locationInModule": {
11745
12204
  "filename": "src/tasks.ts",
11746
- "line": 90
12205
+ "line": 92
11747
12206
  },
11748
12207
  "name": "addEnvironment",
11749
12208
  "parameters": [
@@ -11774,7 +12233,7 @@
11774
12233
  },
11775
12234
  "locationInModule": {
11776
12235
  "filename": "src/tasks.ts",
11777
- "line": 47
12236
+ "line": 49
11778
12237
  },
11779
12238
  "name": "addTask",
11780
12239
  "parameters": [
@@ -11812,7 +12271,7 @@
11812
12271
  },
11813
12272
  "locationInModule": {
11814
12273
  "filename": "src/tasks.ts",
11815
- "line": 65
12274
+ "line": 67
11816
12275
  },
11817
12276
  "name": "removeTask",
11818
12277
  "parameters": [
@@ -11839,7 +12298,7 @@
11839
12298
  },
11840
12299
  "locationInModule": {
11841
12300
  "filename": "src/tasks.ts",
11842
- "line": 145
12301
+ "line": 164
11843
12302
  },
11844
12303
  "name": "resolveTasksManifest",
11845
12304
  "parameters": [
@@ -11863,7 +12322,7 @@
11863
12322
  },
11864
12323
  "locationInModule": {
11865
12324
  "filename": "src/tasks.ts",
11866
- "line": 117
12325
+ "line": 136
11867
12326
  },
11868
12327
  "name": "runTask",
11869
12328
  "parameters": [
@@ -11909,7 +12368,7 @@
11909
12368
  },
11910
12369
  "locationInModule": {
11911
12370
  "filename": "src/tasks.ts",
11912
- "line": 125
12371
+ "line": 144
11913
12372
  },
11914
12373
  "name": "synthesize",
11915
12374
  "overrides": "projen.Component"
@@ -11922,7 +12381,7 @@
11922
12381
  },
11923
12382
  "locationInModule": {
11924
12383
  "filename": "src/tasks.ts",
11925
- "line": 107
12384
+ "line": 126
11926
12385
  },
11927
12386
  "name": "tryFind",
11928
12387
  "parameters": [
@@ -11954,7 +12413,7 @@
11954
12413
  "immutable": true,
11955
12414
  "locationInModule": {
11956
12415
  "filename": "src/tasks.ts",
11957
- "line": 38
12416
+ "line": 40
11958
12417
  },
11959
12418
  "name": "all",
11960
12419
  "type": {
@@ -11974,7 +12433,7 @@
11974
12433
  "immutable": true,
11975
12434
  "locationInModule": {
11976
12435
  "filename": "src/tasks.ts",
11977
- "line": 97
12436
+ "line": 99
11978
12437
  },
11979
12438
  "name": "env",
11980
12439
  "type": {
@@ -11985,6 +12444,23 @@
11985
12444
  "kind": "map"
11986
12445
  }
11987
12446
  }
12447
+ },
12448
+ {
12449
+ "docs": {
12450
+ "remarks": "Individual tasks and steps can\noverride this.\nSets the default shell used to run all task commands.",
12451
+ "see": "{@link TaskCommonOptions.shell }",
12452
+ "stability": "experimental",
12453
+ "summary": "The default shell used to run all task commands, or `undefined` for the built-in cross-platform projen shell."
12454
+ },
12455
+ "locationInModule": {
12456
+ "filename": "src/tasks.ts",
12457
+ "line": 111
12458
+ },
12459
+ "name": "shell",
12460
+ "optional": true,
12461
+ "type": {
12462
+ "fqn": "projen.TaskShell"
12463
+ }
11988
12464
  }
11989
12465
  ],
11990
12466
  "symbolId": "src/tasks:Tasks"
@@ -12000,7 +12476,7 @@
12000
12476
  "kind": "interface",
12001
12477
  "locationInModule": {
12002
12478
  "filename": "src/task-model.ts",
12003
- "line": 4
12479
+ "line": 6
12004
12480
  },
12005
12481
  "name": "TasksManifest",
12006
12482
  "properties": [
@@ -12013,7 +12489,7 @@
12013
12489
  "immutable": true,
12014
12490
  "locationInModule": {
12015
12491
  "filename": "src/task-model.ts",
12016
- "line": 24
12492
+ "line": 26
12017
12493
  },
12018
12494
  "name": "env",
12019
12495
  "optional": true,
@@ -12037,7 +12513,7 @@
12037
12513
  "immutable": true,
12038
12514
  "locationInModule": {
12039
12515
  "filename": "src/task-model.ts",
12040
- "line": 14
12516
+ "line": 16
12041
12517
  },
12042
12518
  "name": "manifestVersion",
12043
12519
  "optional": true,
@@ -12045,6 +12521,37 @@
12045
12521
  "primitive": "number"
12046
12522
  }
12047
12523
  },
12524
+ {
12525
+ "abstract": true,
12526
+ "docs": {
12527
+ "stability": "experimental",
12528
+ "summary": "The default task shell, in `tasks.json` form: a keyword (`\"projen\"` or `\"system\"`) or an invocation argument list. See {@link TaskCommonOptions.shell}."
12529
+ },
12530
+ "immutable": true,
12531
+ "locationInModule": {
12532
+ "filename": "src/task-model.ts",
12533
+ "line": 33
12534
+ },
12535
+ "name": "shell",
12536
+ "optional": true,
12537
+ "type": {
12538
+ "union": {
12539
+ "types": [
12540
+ {
12541
+ "primitive": "string"
12542
+ },
12543
+ {
12544
+ "collection": {
12545
+ "elementtype": {
12546
+ "primitive": "string"
12547
+ },
12548
+ "kind": "array"
12549
+ }
12550
+ }
12551
+ ]
12552
+ }
12553
+ }
12554
+ },
12048
12555
  {
12049
12556
  "abstract": true,
12050
12557
  "docs": {
@@ -12054,7 +12561,7 @@
12054
12561
  "immutable": true,
12055
12562
  "locationInModule": {
12056
12563
  "filename": "src/task-model.ts",
12057
- "line": 19
12564
+ "line": 21
12058
12565
  },
12059
12566
  "name": "tasks",
12060
12567
  "optional": true,
@@ -44934,7 +45441,7 @@
44934
45441
  "kind": "interface",
44935
45442
  "locationInModule": {
44936
45443
  "filename": "src/javascript/jest.ts",
44937
- "line": 598
45444
+ "line": 686
44938
45445
  },
44939
45446
  "name": "CoverageThreshold",
44940
45447
  "namespace": "javascript",
@@ -44947,7 +45454,7 @@
44947
45454
  "immutable": true,
44948
45455
  "locationInModule": {
44949
45456
  "filename": "src/javascript/jest.ts",
44950
- "line": 599
45457
+ "line": 687
44951
45458
  },
44952
45459
  "name": "branches",
44953
45460
  "optional": true,
@@ -44963,7 +45470,7 @@
44963
45470
  "immutable": true,
44964
45471
  "locationInModule": {
44965
45472
  "filename": "src/javascript/jest.ts",
44966
- "line": 600
45473
+ "line": 688
44967
45474
  },
44968
45475
  "name": "functions",
44969
45476
  "optional": true,
@@ -44979,7 +45486,7 @@
44979
45486
  "immutable": true,
44980
45487
  "locationInModule": {
44981
45488
  "filename": "src/javascript/jest.ts",
44982
- "line": 601
45489
+ "line": 689
44983
45490
  },
44984
45491
  "name": "lines",
44985
45492
  "optional": true,
@@ -44995,7 +45502,7 @@
44995
45502
  "immutable": true,
44996
45503
  "locationInModule": {
44997
45504
  "filename": "src/javascript/jest.ts",
44998
- "line": 602
45505
+ "line": 690
44999
45506
  },
45000
45507
  "name": "statements",
45001
45508
  "optional": true,
@@ -46188,6 +46695,149 @@
46188
46695
  ],
46189
46696
  "symbolId": "src/javascript/eslint:EslintOverride"
46190
46697
  },
46698
+ "projen.javascript.FakeTimers": {
46699
+ "assembly": "projen",
46700
+ "datatype": true,
46701
+ "docs": {
46702
+ "see": "https://jestjs.io/docs/configuration#faketimers-object",
46703
+ "stability": "experimental",
46704
+ "summary": "The default configuration of fake timers for all tests."
46705
+ },
46706
+ "fqn": "projen.javascript.FakeTimers",
46707
+ "kind": "interface",
46708
+ "locationInModule": {
46709
+ "filename": "src/javascript/jest.ts",
46710
+ "line": 718
46711
+ },
46712
+ "name": "FakeTimers",
46713
+ "namespace": "javascript",
46714
+ "properties": [
46715
+ {
46716
+ "abstract": true,
46717
+ "docs": {
46718
+ "default": "- false",
46719
+ "remarks": "A custom time delta may be provided by passing a number.",
46720
+ "stability": "experimental",
46721
+ "summary": "If set to `true` all timers will be advanced automatically by 20 milliseconds every 20 milliseconds."
46722
+ },
46723
+ "immutable": true,
46724
+ "locationInModule": {
46725
+ "filename": "src/javascript/jest.ts",
46726
+ "line": 724
46727
+ },
46728
+ "name": "advanceTimers",
46729
+ "optional": true,
46730
+ "type": {
46731
+ "union": {
46732
+ "types": [
46733
+ {
46734
+ "primitive": "number"
46735
+ },
46736
+ {
46737
+ "primitive": "boolean"
46738
+ }
46739
+ ]
46740
+ }
46741
+ }
46742
+ },
46743
+ {
46744
+ "abstract": true,
46745
+ "docs": {
46746
+ "default": "- [] (all APIs are faked)",
46747
+ "stability": "experimental",
46748
+ "summary": "List of names of APIs (e.g. `Date`, `nextTick`, `setTimeout`) that should not be faked."
46749
+ },
46750
+ "immutable": true,
46751
+ "locationInModule": {
46752
+ "filename": "src/javascript/jest.ts",
46753
+ "line": 730
46754
+ },
46755
+ "name": "doNotFake",
46756
+ "optional": true,
46757
+ "type": {
46758
+ "collection": {
46759
+ "elementtype": {
46760
+ "primitive": "string"
46761
+ },
46762
+ "kind": "array"
46763
+ }
46764
+ }
46765
+ },
46766
+ {
46767
+ "abstract": true,
46768
+ "docs": {
46769
+ "default": "- false",
46770
+ "stability": "experimental",
46771
+ "summary": "Whether fake timers should be enabled for all test files."
46772
+ },
46773
+ "immutable": true,
46774
+ "locationInModule": {
46775
+ "filename": "src/javascript/jest.ts",
46776
+ "line": 736
46777
+ },
46778
+ "name": "enableGlobally",
46779
+ "optional": true,
46780
+ "type": {
46781
+ "primitive": "boolean"
46782
+ }
46783
+ },
46784
+ {
46785
+ "abstract": true,
46786
+ "docs": {
46787
+ "default": "- false",
46788
+ "stability": "experimental",
46789
+ "summary": "Use the old fake timers implementation instead of one backed by `@sinonjs/fake-timers`."
46790
+ },
46791
+ "immutable": true,
46792
+ "locationInModule": {
46793
+ "filename": "src/javascript/jest.ts",
46794
+ "line": 742
46795
+ },
46796
+ "name": "legacyFakeTimers",
46797
+ "optional": true,
46798
+ "type": {
46799
+ "primitive": "boolean"
46800
+ }
46801
+ },
46802
+ {
46803
+ "abstract": true,
46804
+ "docs": {
46805
+ "default": "- Date.now()",
46806
+ "stability": "experimental",
46807
+ "summary": "Sets current system time to be used by fake timers, in milliseconds."
46808
+ },
46809
+ "immutable": true,
46810
+ "locationInModule": {
46811
+ "filename": "src/javascript/jest.ts",
46812
+ "line": 748
46813
+ },
46814
+ "name": "now",
46815
+ "optional": true,
46816
+ "type": {
46817
+ "primitive": "number"
46818
+ }
46819
+ },
46820
+ {
46821
+ "abstract": true,
46822
+ "docs": {
46823
+ "default": "- 100000",
46824
+ "stability": "experimental",
46825
+ "summary": "Maximum number of recursive timers that will be run."
46826
+ },
46827
+ "immutable": true,
46828
+ "locationInModule": {
46829
+ "filename": "src/javascript/jest.ts",
46830
+ "line": 754
46831
+ },
46832
+ "name": "timerLimit",
46833
+ "optional": true,
46834
+ "type": {
46835
+ "primitive": "number"
46836
+ }
46837
+ }
46838
+ ],
46839
+ "symbolId": "src/javascript/jest:FakeTimers"
46840
+ },
46191
46841
  "projen.javascript.HTMLWhitespaceSensitivity": {
46192
46842
  "assembly": "projen",
46193
46843
  "docs": {
@@ -46236,7 +46886,7 @@
46236
46886
  "kind": "interface",
46237
46887
  "locationInModule": {
46238
46888
  "filename": "src/javascript/jest.ts",
46239
- "line": 617
46889
+ "line": 705
46240
46890
  },
46241
46891
  "name": "HasteConfig",
46242
46892
  "namespace": "javascript",
@@ -46249,7 +46899,7 @@
46249
46899
  "immutable": true,
46250
46900
  "locationInModule": {
46251
46901
  "filename": "src/javascript/jest.ts",
46252
- "line": 618
46902
+ "line": 706
46253
46903
  },
46254
46904
  "name": "computeSha1",
46255
46905
  "optional": true,
@@ -46265,7 +46915,7 @@
46265
46915
  "immutable": true,
46266
46916
  "locationInModule": {
46267
46917
  "filename": "src/javascript/jest.ts",
46268
- "line": 619
46918
+ "line": 707
46269
46919
  },
46270
46920
  "name": "defaultPlatform",
46271
46921
  "optional": true,
@@ -46281,7 +46931,7 @@
46281
46931
  "immutable": true,
46282
46932
  "locationInModule": {
46283
46933
  "filename": "src/javascript/jest.ts",
46284
- "line": 620
46934
+ "line": 708
46285
46935
  },
46286
46936
  "name": "hasteImplModulePath",
46287
46937
  "optional": true,
@@ -46297,7 +46947,7 @@
46297
46947
  "immutable": true,
46298
46948
  "locationInModule": {
46299
46949
  "filename": "src/javascript/jest.ts",
46300
- "line": 621
46950
+ "line": 709
46301
46951
  },
46302
46952
  "name": "platforms",
46303
46953
  "optional": true,
@@ -46318,7 +46968,7 @@
46318
46968
  "immutable": true,
46319
46969
  "locationInModule": {
46320
46970
  "filename": "src/javascript/jest.ts",
46321
- "line": 622
46971
+ "line": 710
46322
46972
  },
46323
46973
  "name": "throwOnModuleCollision",
46324
46974
  "optional": true,
@@ -46463,7 +47113,7 @@
46463
47113
  },
46464
47114
  "locationInModule": {
46465
47115
  "filename": "src/javascript/jest.ts",
46466
- "line": 690
47116
+ "line": 890
46467
47117
  },
46468
47118
  "parameters": [
46469
47119
  {
@@ -46484,7 +47134,7 @@
46484
47134
  "kind": "class",
46485
47135
  "locationInModule": {
46486
47136
  "filename": "src/javascript/jest.ts",
46487
- "line": 651
47137
+ "line": 851
46488
47138
  },
46489
47139
  "methods": [
46490
47140
  {
@@ -46494,7 +47144,7 @@
46494
47144
  },
46495
47145
  "locationInModule": {
46496
47146
  "filename": "src/javascript/jest.ts",
46497
- "line": 655
47147
+ "line": 855
46498
47148
  },
46499
47149
  "name": "of",
46500
47150
  "parameters": [
@@ -46519,7 +47169,7 @@
46519
47169
  },
46520
47170
  "locationInModule": {
46521
47171
  "filename": "src/javascript/jest.ts",
46522
- "line": 869
47172
+ "line": 1069
46523
47173
  },
46524
47174
  "name": "addIgnorePattern",
46525
47175
  "parameters": [
@@ -46539,7 +47189,7 @@
46539
47189
  },
46540
47190
  "locationInModule": {
46541
47191
  "filename": "src/javascript/jest.ts",
46542
- "line": 911
47192
+ "line": 1111
46543
47193
  },
46544
47194
  "name": "addModuleNameMappers",
46545
47195
  "parameters": [
@@ -46580,7 +47230,7 @@
46580
47230
  },
46581
47231
  "locationInModule": {
46582
47232
  "filename": "src/javascript/jest.ts",
46583
- "line": 926
47233
+ "line": 1126
46584
47234
  },
46585
47235
  "name": "addModulePaths",
46586
47236
  "parameters": [
@@ -46603,7 +47253,7 @@
46603
47253
  },
46604
47254
  "locationInModule": {
46605
47255
  "filename": "src/javascript/jest.ts",
46606
- "line": 873
47256
+ "line": 1073
46607
47257
  },
46608
47258
  "name": "addReporter",
46609
47259
  "parameters": [
@@ -46622,7 +47272,7 @@
46622
47272
  },
46623
47273
  "locationInModule": {
46624
47274
  "filename": "src/javascript/jest.ts",
46625
- "line": 938
47275
+ "line": 1138
46626
47276
  },
46627
47277
  "name": "addRoots",
46628
47278
  "parameters": [
@@ -46646,7 +47296,7 @@
46646
47296
  },
46647
47297
  "locationInModule": {
46648
47298
  "filename": "src/javascript/jest.ts",
46649
- "line": 881
47299
+ "line": 1081
46650
47300
  },
46651
47301
  "name": "addSetupFile",
46652
47302
  "parameters": [
@@ -46668,7 +47318,7 @@
46668
47318
  },
46669
47319
  "locationInModule": {
46670
47320
  "filename": "src/javascript/jest.ts",
46671
- "line": 892
47321
+ "line": 1092
46672
47322
  },
46673
47323
  "name": "addSetupFileAfterEnv",
46674
47324
  "parameters": [
@@ -46689,7 +47339,7 @@
46689
47339
  },
46690
47340
  "locationInModule": {
46691
47341
  "filename": "src/javascript/jest.ts",
46692
- "line": 899
47342
+ "line": 1099
46693
47343
  },
46694
47344
  "name": "addSnapshotResolver",
46695
47345
  "parameters": [
@@ -46708,7 +47358,7 @@
46708
47358
  },
46709
47359
  "locationInModule": {
46710
47360
  "filename": "src/javascript/jest.ts",
46711
- "line": 822
47361
+ "line": 1022
46712
47362
  },
46713
47363
  "name": "addTestMatch",
46714
47364
  "parameters": [
@@ -46730,7 +47380,7 @@
46730
47380
  },
46731
47381
  "locationInModule": {
46732
47382
  "filename": "src/javascript/jest.ts",
46733
- "line": 865
47383
+ "line": 1065
46734
47384
  },
46735
47385
  "name": "addWatchIgnorePattern",
46736
47386
  "parameters": [
@@ -46752,7 +47402,7 @@
46752
47402
  },
46753
47403
  "locationInModule": {
46754
47404
  "filename": "src/javascript/jest.ts",
46755
- "line": 831
47405
+ "line": 1031
46756
47406
  },
46757
47407
  "name": "discoverTestMatchPatternsForDirs",
46758
47408
  "parameters": [
@@ -46795,7 +47445,7 @@
46795
47445
  "immutable": true,
46796
47446
  "locationInModule": {
46797
47447
  "filename": "src/javascript/jest.ts",
46798
- "line": 665
47448
+ "line": 865
46799
47449
  },
46800
47450
  "name": "config",
46801
47451
  "type": {
@@ -46810,7 +47460,7 @@
46810
47460
  "immutable": true,
46811
47461
  "locationInModule": {
46812
47462
  "filename": "src/javascript/jest.ts",
46813
- "line": 670
47463
+ "line": 870
46814
47464
  },
46815
47465
  "name": "jestVersion",
46816
47466
  "type": {
@@ -46824,7 +47474,7 @@
46824
47474
  "immutable": true,
46825
47475
  "locationInModule": {
46826
47476
  "filename": "src/javascript/jest.ts",
46827
- "line": 660
47477
+ "line": 860
46828
47478
  },
46829
47479
  "name": "project",
46830
47480
  "overrides": "projen.Component",
@@ -46841,7 +47491,7 @@
46841
47491
  "immutable": true,
46842
47492
  "locationInModule": {
46843
47493
  "filename": "src/javascript/jest.ts",
46844
- "line": 675
47494
+ "line": 875
46845
47495
  },
46846
47496
  "name": "file",
46847
47497
  "optional": true,
@@ -46876,7 +47526,7 @@
46876
47526
  "immutable": true,
46877
47527
  "locationInModule": {
46878
47528
  "filename": "src/javascript/jest.ts",
46879
- "line": 481
47529
+ "line": 569
46880
47530
  },
46881
47531
  "name": "additionalOptions",
46882
47532
  "optional": true,
@@ -47079,7 +47729,7 @@
47079
47729
  {
47080
47730
  "abstract": true,
47081
47731
  "docs": {
47082
- "default": "- [\"json\", \"lcov\", \"text\", \"clover\", \"cobertura\"]",
47732
+ "default": "- [\"json\", \"lcov\", \"clover\", \"cobertura\", \"text\"]",
47083
47733
  "remarks": "Any istanbul reporter can be used",
47084
47734
  "stability": "experimental",
47085
47735
  "summary": "A list of reporter names that Jest uses when writing coverage reports."
@@ -47178,14 +47828,38 @@
47178
47828
  {
47179
47829
  "abstract": true,
47180
47830
  "docs": {
47181
- "default": "- undefined",
47831
+ "default": "- []",
47182
47832
  "stability": "experimental",
47833
+ "summary": "Jest will run `.mjs` and `.js` files with nearest package.json's `type` field set to `module` as ECMAScript Modules. If you have any other files that should run with native ESM, you need to specify their file extension here."
47834
+ },
47835
+ "immutable": true,
47836
+ "locationInModule": {
47837
+ "filename": "src/javascript/jest.ts",
47838
+ "line": 116
47839
+ },
47840
+ "name": "extensionsToTreatAsEsm",
47841
+ "optional": true,
47842
+ "type": {
47843
+ "collection": {
47844
+ "elementtype": {
47845
+ "primitive": "string"
47846
+ },
47847
+ "kind": "array"
47848
+ }
47849
+ }
47850
+ },
47851
+ {
47852
+ "abstract": true,
47853
+ "docs": {
47854
+ "default": "- undefined",
47855
+ "deprecated": "Renamed to `sandboxInjectedGlobals` in Jest 28. Use `sandboxInjectedGlobals` instead.",
47856
+ "stability": "deprecated",
47183
47857
  "summary": "Test files run inside a vm, which slows calls to global context properties (e.g. Math). With this option you can specify extra properties to be defined inside the vm for faster lookups."
47184
47858
  },
47185
47859
  "immutable": true,
47186
47860
  "locationInModule": {
47187
47861
  "filename": "src/javascript/jest.ts",
47188
- "line": 115
47862
+ "line": 124
47189
47863
  },
47190
47864
  "name": "extraGlobals",
47191
47865
  "optional": true,
@@ -47198,6 +47872,25 @@
47198
47872
  }
47199
47873
  }
47200
47874
  },
47875
+ {
47876
+ "abstract": true,
47877
+ "docs": {
47878
+ "default": "- {}",
47879
+ "remarks": "This option provides the default configuration of fake timers for all tests.",
47880
+ "stability": "experimental",
47881
+ "summary": "The fake timers may be useful when a piece of code sets a long timeout that we don't want to wait for in a test."
47882
+ },
47883
+ "immutable": true,
47884
+ "locationInModule": {
47885
+ "filename": "src/javascript/jest.ts",
47886
+ "line": 131
47887
+ },
47888
+ "name": "fakeTimers",
47889
+ "optional": true,
47890
+ "type": {
47891
+ "fqn": "projen.javascript.FakeTimers"
47892
+ }
47893
+ },
47201
47894
  {
47202
47895
  "abstract": true,
47203
47896
  "docs": {
@@ -47209,7 +47902,7 @@
47209
47902
  "immutable": true,
47210
47903
  "locationInModule": {
47211
47904
  "filename": "src/javascript/jest.ts",
47212
- "line": 122
47905
+ "line": 138
47213
47906
  },
47214
47907
  "name": "forceCoverageMatch",
47215
47908
  "optional": true,
@@ -47232,7 +47925,7 @@
47232
47925
  "immutable": true,
47233
47926
  "locationInModule": {
47234
47927
  "filename": "src/javascript/jest.ts",
47235
- "line": 128
47928
+ "line": 144
47236
47929
  },
47237
47930
  "name": "globals",
47238
47931
  "optional": true,
@@ -47251,7 +47944,7 @@
47251
47944
  "immutable": true,
47252
47945
  "locationInModule": {
47253
47946
  "filename": "src/javascript/jest.ts",
47254
- "line": 135
47947
+ "line": 151
47255
47948
  },
47256
47949
  "name": "globalSetup",
47257
47950
  "optional": true,
@@ -47270,7 +47963,7 @@
47270
47963
  "immutable": true,
47271
47964
  "locationInModule": {
47272
47965
  "filename": "src/javascript/jest.ts",
47273
- "line": 142
47966
+ "line": 158
47274
47967
  },
47275
47968
  "name": "globalTeardown",
47276
47969
  "optional": true,
@@ -47288,7 +47981,7 @@
47288
47981
  "immutable": true,
47289
47982
  "locationInModule": {
47290
47983
  "filename": "src/javascript/jest.ts",
47291
- "line": 148
47984
+ "line": 164
47292
47985
  },
47293
47986
  "name": "haste",
47294
47987
  "optional": true,
@@ -47309,7 +48002,7 @@
47309
48002
  "immutable": true,
47310
48003
  "locationInModule": {
47311
48004
  "filename": "src/javascript/jest.ts",
47312
- "line": 155
48005
+ "line": 171
47313
48006
  },
47314
48007
  "name": "injectGlobals",
47315
48008
  "optional": true,
@@ -47327,7 +48020,7 @@
47327
48020
  "immutable": true,
47328
48021
  "locationInModule": {
47329
48022
  "filename": "src/javascript/jest.ts",
47330
- "line": 162
48023
+ "line": 178
47331
48024
  },
47332
48025
  "name": "maxConcurrency",
47333
48026
  "optional": true,
@@ -47346,7 +48039,7 @@
47346
48039
  "immutable": true,
47347
48040
  "locationInModule": {
47348
48041
  "filename": "src/javascript/jest.ts",
47349
- "line": 171
48042
+ "line": 187
47350
48043
  },
47351
48044
  "name": "maxWorkers",
47352
48045
  "optional": true,
@@ -47374,7 +48067,7 @@
47374
48067
  "immutable": true,
47375
48068
  "locationInModule": {
47376
48069
  "filename": "src/javascript/jest.ts",
47377
- "line": 179
48070
+ "line": 195
47378
48071
  },
47379
48072
  "name": "moduleDirectories",
47380
48073
  "optional": true,
@@ -47398,7 +48091,7 @@
47398
48091
  "immutable": true,
47399
48092
  "locationInModule": {
47400
48093
  "filename": "src/javascript/jest.ts",
47401
- "line": 186
48094
+ "line": 202
47402
48095
  },
47403
48096
  "name": "moduleFileExtensions",
47404
48097
  "optional": true,
@@ -47421,7 +48114,7 @@
47421
48114
  "immutable": true,
47422
48115
  "locationInModule": {
47423
48116
  "filename": "src/javascript/jest.ts",
47424
- "line": 193
48117
+ "line": 209
47425
48118
  },
47426
48119
  "name": "moduleNameMapper",
47427
48120
  "optional": true,
@@ -47459,7 +48152,7 @@
47459
48152
  "immutable": true,
47460
48153
  "locationInModule": {
47461
48154
  "filename": "src/javascript/jest.ts",
47462
- "line": 201
48155
+ "line": 217
47463
48156
  },
47464
48157
  "name": "modulePathIgnorePatterns",
47465
48158
  "optional": true,
@@ -47483,7 +48176,7 @@
47483
48176
  "immutable": true,
47484
48177
  "locationInModule": {
47485
48178
  "filename": "src/javascript/jest.ts",
47486
- "line": 209
48179
+ "line": 225
47487
48180
  },
47488
48181
  "name": "modulePaths",
47489
48182
  "optional": true,
@@ -47506,7 +48199,7 @@
47506
48199
  "immutable": true,
47507
48200
  "locationInModule": {
47508
48201
  "filename": "src/javascript/jest.ts",
47509
- "line": 215
48202
+ "line": 231
47510
48203
  },
47511
48204
  "name": "notify",
47512
48205
  "optional": true,
@@ -47525,7 +48218,7 @@
47525
48218
  "immutable": true,
47526
48219
  "locationInModule": {
47527
48220
  "filename": "src/javascript/jest.ts",
47528
- "line": 221
48221
+ "line": 237
47529
48222
  },
47530
48223
  "name": "notifyMode",
47531
48224
  "optional": true,
@@ -47533,6 +48226,25 @@
47533
48226
  "primitive": "string"
47534
48227
  }
47535
48228
  },
48229
+ {
48230
+ "abstract": true,
48231
+ "docs": {
48232
+ "default": "- 1000",
48233
+ "remarks": "Use `0` to disable the warning.",
48234
+ "stability": "experimental",
48235
+ "summary": "Print a warning indicating that there are probable open handles if Jest does not exit cleanly this number of milliseconds after it completes."
48236
+ },
48237
+ "immutable": true,
48238
+ "locationInModule": {
48239
+ "filename": "src/javascript/jest.ts",
48240
+ "line": 250
48241
+ },
48242
+ "name": "openHandlesTimeout",
48243
+ "optional": true,
48244
+ "type": {
48245
+ "primitive": "number"
48246
+ }
48247
+ },
47536
48248
  {
47537
48249
  "abstract": true,
47538
48250
  "docs": {
@@ -47544,7 +48256,7 @@
47544
48256
  "immutable": true,
47545
48257
  "locationInModule": {
47546
48258
  "filename": "src/javascript/jest.ts",
47547
- "line": 234
48259
+ "line": 257
47548
48260
  },
47549
48261
  "name": "preset",
47550
48262
  "optional": true,
@@ -47562,7 +48274,7 @@
47562
48274
  "immutable": true,
47563
48275
  "locationInModule": {
47564
48276
  "filename": "src/javascript/jest.ts",
47565
- "line": 240
48277
+ "line": 263
47566
48278
  },
47567
48279
  "name": "prettierPath",
47568
48280
  "optional": true,
@@ -47581,7 +48293,7 @@
47581
48293
  "immutable": true,
47582
48294
  "locationInModule": {
47583
48295
  "filename": "src/javascript/jest.ts",
47584
- "line": 248
48296
+ "line": 271
47585
48297
  },
47586
48298
  "name": "projects",
47587
48299
  "optional": true,
@@ -47608,6 +48320,24 @@
47608
48320
  }
47609
48321
  }
47610
48322
  },
48323
+ {
48324
+ "abstract": true,
48325
+ "docs": {
48326
+ "default": "- false",
48327
+ "stability": "experimental",
48328
+ "summary": "The equivalent of the `--randomize` flag to randomize the order of the tests in a file."
48329
+ },
48330
+ "immutable": true,
48331
+ "locationInModule": {
48332
+ "filename": "src/javascript/jest.ts",
48333
+ "line": 277
48334
+ },
48335
+ "name": "randomize",
48336
+ "optional": true,
48337
+ "type": {
48338
+ "primitive": "boolean"
48339
+ }
48340
+ },
47611
48341
  {
47612
48342
  "abstract": true,
47613
48343
  "docs": {
@@ -47619,7 +48349,7 @@
47619
48349
  "immutable": true,
47620
48350
  "locationInModule": {
47621
48351
  "filename": "src/javascript/jest.ts",
47622
- "line": 256
48352
+ "line": 285
47623
48353
  },
47624
48354
  "name": "reporters",
47625
48355
  "optional": true,
@@ -47643,7 +48373,7 @@
47643
48373
  "immutable": true,
47644
48374
  "locationInModule": {
47645
48375
  "filename": "src/javascript/jest.ts",
47646
- "line": 264
48376
+ "line": 293
47647
48377
  },
47648
48378
  "name": "resetMocks",
47649
48379
  "optional": true,
@@ -47662,7 +48392,7 @@
47662
48392
  "immutable": true,
47663
48393
  "locationInModule": {
47664
48394
  "filename": "src/javascript/jest.ts",
47665
- "line": 271
48395
+ "line": 300
47666
48396
  },
47667
48397
  "name": "resetModules",
47668
48398
  "optional": true,
@@ -47681,7 +48411,7 @@
47681
48411
  "immutable": true,
47682
48412
  "locationInModule": {
47683
48413
  "filename": "src/javascript/jest.ts",
47684
- "line": 278
48414
+ "line": 307
47685
48415
  },
47686
48416
  "name": "resolver",
47687
48417
  "optional": true,
@@ -47700,7 +48430,7 @@
47700
48430
  "immutable": true,
47701
48431
  "locationInModule": {
47702
48432
  "filename": "src/javascript/jest.ts",
47703
- "line": 286
48433
+ "line": 315
47704
48434
  },
47705
48435
  "name": "restoreMocks",
47706
48436
  "optional": true,
@@ -47719,7 +48449,7 @@
47719
48449
  "immutable": true,
47720
48450
  "locationInModule": {
47721
48451
  "filename": "src/javascript/jest.ts",
47722
- "line": 294
48452
+ "line": 323
47723
48453
  },
47724
48454
  "name": "rootDir",
47725
48455
  "optional": true,
@@ -47737,7 +48467,7 @@
47737
48467
  "immutable": true,
47738
48468
  "locationInModule": {
47739
48469
  "filename": "src/javascript/jest.ts",
47740
- "line": 300
48470
+ "line": 329
47741
48471
  },
47742
48472
  "name": "roots",
47743
48473
  "optional": true,
@@ -47760,7 +48490,7 @@
47760
48490
  "immutable": true,
47761
48491
  "locationInModule": {
47762
48492
  "filename": "src/javascript/jest.ts",
47763
- "line": 306
48493
+ "line": 342
47764
48494
  },
47765
48495
  "name": "runner",
47766
48496
  "optional": true,
@@ -47768,6 +48498,48 @@
47768
48498
  "primitive": "string"
47769
48499
  }
47770
48500
  },
48501
+ {
48502
+ "abstract": true,
48503
+ "docs": {
48504
+ "default": "- \"jest-runtime\"",
48505
+ "remarks": "A custom runtime can be\nprovided by specifying a path to a runtime implementation.",
48506
+ "stability": "experimental",
48507
+ "summary": "This option allows the use of a custom runtime to execute test files."
48508
+ },
48509
+ "immutable": true,
48510
+ "locationInModule": {
48511
+ "filename": "src/javascript/jest.ts",
48512
+ "line": 336
48513
+ },
48514
+ "name": "runtime",
48515
+ "optional": true,
48516
+ "type": {
48517
+ "primitive": "string"
48518
+ }
48519
+ },
48520
+ {
48521
+ "abstract": true,
48522
+ "docs": {
48523
+ "default": "- undefined",
48524
+ "stability": "experimental",
48525
+ "summary": "Test files run inside a vm, which slows calls to global context properties (e.g. Math). With this option you can specify extra properties to be defined inside the vm for faster lookups."
48526
+ },
48527
+ "immutable": true,
48528
+ "locationInModule": {
48529
+ "filename": "src/javascript/jest.ts",
48530
+ "line": 349
48531
+ },
48532
+ "name": "sandboxInjectedGlobals",
48533
+ "optional": true,
48534
+ "type": {
48535
+ "collection": {
48536
+ "elementtype": {
48537
+ "primitive": "string"
48538
+ },
48539
+ "kind": "array"
48540
+ }
48541
+ }
48542
+ },
47771
48543
  {
47772
48544
  "abstract": true,
47773
48545
  "docs": {
@@ -47779,7 +48551,7 @@
47779
48551
  "immutable": true,
47780
48552
  "locationInModule": {
47781
48553
  "filename": "src/javascript/jest.ts",
47782
- "line": 315
48554
+ "line": 358
47783
48555
  },
47784
48556
  "name": "setupFiles",
47785
48557
  "optional": true,
@@ -47803,7 +48575,7 @@
47803
48575
  "immutable": true,
47804
48576
  "locationInModule": {
47805
48577
  "filename": "src/javascript/jest.ts",
47806
- "line": 324
48578
+ "line": 367
47807
48579
  },
47808
48580
  "name": "setupFilesAfterEnv",
47809
48581
  "optional": true,
@@ -47816,6 +48588,24 @@
47816
48588
  }
47817
48589
  }
47818
48590
  },
48591
+ {
48592
+ "abstract": true,
48593
+ "docs": {
48594
+ "default": "- false",
48595
+ "stability": "experimental",
48596
+ "summary": "The equivalent of the `--showSeed` flag to print the seed in the test report summary."
48597
+ },
48598
+ "immutable": true,
48599
+ "locationInModule": {
48600
+ "filename": "src/javascript/jest.ts",
48601
+ "line": 373
48602
+ },
48603
+ "name": "showSeed",
48604
+ "optional": true,
48605
+ "type": {
48606
+ "primitive": "boolean"
48607
+ }
48608
+ },
47819
48609
  {
47820
48610
  "abstract": true,
47821
48611
  "docs": {
@@ -47826,7 +48616,7 @@
47826
48616
  "immutable": true,
47827
48617
  "locationInModule": {
47828
48618
  "filename": "src/javascript/jest.ts",
47829
- "line": 330
48619
+ "line": 379
47830
48620
  },
47831
48621
  "name": "slowTestThreshold",
47832
48622
  "optional": true,
@@ -47834,6 +48624,24 @@
47834
48624
  "primitive": "number"
47835
48625
  }
47836
48626
  },
48627
+ {
48628
+ "abstract": true,
48629
+ "docs": {
48630
+ "default": "- {escapeString: false, printBasicPrototype: false}",
48631
+ "stability": "experimental",
48632
+ "summary": "Allows overriding specific snapshot formatting options documented in the pretty-format readme, with the exceptions of `compareKeys` and `plugins`."
48633
+ },
48634
+ "immutable": true,
48635
+ "locationInModule": {
48636
+ "filename": "src/javascript/jest.ts",
48637
+ "line": 386
48638
+ },
48639
+ "name": "snapshotFormat",
48640
+ "optional": true,
48641
+ "type": {
48642
+ "fqn": "projen.javascript.SnapshotFormatOptions"
48643
+ }
48644
+ },
47837
48645
  {
47838
48646
  "abstract": true,
47839
48647
  "docs": {
@@ -47845,7 +48653,7 @@
47845
48653
  "immutable": true,
47846
48654
  "locationInModule": {
47847
48655
  "filename": "src/javascript/jest.ts",
47848
- "line": 337
48656
+ "line": 393
47849
48657
  },
47850
48658
  "name": "snapshotResolver",
47851
48659
  "optional": true,
@@ -47863,7 +48671,7 @@
47863
48671
  "immutable": true,
47864
48672
  "locationInModule": {
47865
48673
  "filename": "src/javascript/jest.ts",
47866
- "line": 343
48674
+ "line": 399
47867
48675
  },
47868
48676
  "name": "snapshotSerializers",
47869
48677
  "optional": true,
@@ -47879,15 +48687,15 @@
47879
48687
  {
47880
48688
  "abstract": true,
47881
48689
  "docs": {
47882
- "default": "- \"jsdom\"",
47883
- "remarks": "The default environment in Jest is a\nbrowser-like environment through jsdom. If you are building a node service, you can use the node\noption to use a node-like environment instead.",
48690
+ "default": "- \"node\"",
48691
+ "remarks": "The default environment in Jest is a\nNode.js environment. If you are building a web app, you can use a browser-like environment\nthrough jsdom instead.",
47884
48692
  "stability": "experimental",
47885
48693
  "summary": "The test environment that will be used for testing."
47886
48694
  },
47887
48695
  "immutable": true,
47888
48696
  "locationInModule": {
47889
48697
  "filename": "src/javascript/jest.ts",
47890
- "line": 351
48698
+ "line": 407
47891
48699
  },
47892
48700
  "name": "testEnvironment",
47893
48701
  "optional": true,
@@ -47906,7 +48714,7 @@
47906
48714
  "immutable": true,
47907
48715
  "locationInModule": {
47908
48716
  "filename": "src/javascript/jest.ts",
47909
- "line": 358
48717
+ "line": 414
47910
48718
  },
47911
48719
  "name": "testEnvironmentOptions",
47912
48720
  "optional": true,
@@ -47924,7 +48732,7 @@
47924
48732
  "immutable": true,
47925
48733
  "locationInModule": {
47926
48734
  "filename": "src/javascript/jest.ts",
47927
- "line": 364
48735
+ "line": 420
47928
48736
  },
47929
48737
  "name": "testFailureExitCode",
47930
48738
  "optional": true,
@@ -47943,7 +48751,7 @@
47943
48751
  "immutable": true,
47944
48752
  "locationInModule": {
47945
48753
  "filename": "src/javascript/jest.ts",
47946
- "line": 372
48754
+ "line": 428
47947
48755
  },
47948
48756
  "name": "testMatch",
47949
48757
  "optional": true,
@@ -47967,7 +48775,7 @@
47967
48775
  "immutable": true,
47968
48776
  "locationInModule": {
47969
48777
  "filename": "src/javascript/jest.ts",
47970
- "line": 379
48778
+ "line": 435
47971
48779
  },
47972
48780
  "name": "testPathIgnorePatterns",
47973
48781
  "optional": true,
@@ -47991,7 +48799,7 @@
47991
48799
  "immutable": true,
47992
48800
  "locationInModule": {
47993
48801
  "filename": "src/javascript/jest.ts",
47994
- "line": 387
48802
+ "line": 443
47995
48803
  },
47996
48804
  "name": "testRegex",
47997
48805
  "optional": true,
@@ -48023,7 +48831,7 @@
48023
48831
  "immutable": true,
48024
48832
  "locationInModule": {
48025
48833
  "filename": "src/javascript/jest.ts",
48026
- "line": 393
48834
+ "line": 449
48027
48835
  },
48028
48836
  "name": "testResultsProcessor",
48029
48837
  "optional": true,
@@ -48034,15 +48842,15 @@
48034
48842
  {
48035
48843
  "abstract": true,
48036
48844
  "docs": {
48037
- "default": "- \"jasmine2\"",
48038
- "remarks": "The default is jasmine2. A custom test runner\ncan be provided by specifying a path to a test runner implementation.",
48845
+ "default": "- \"jest-circus/runner\"",
48846
+ "remarks": "The default is jest-circus. A custom test runner\ncan be provided by specifying a path to a test runner implementation.",
48039
48847
  "stability": "experimental",
48040
48848
  "summary": "This option allows the use of a custom test runner."
48041
48849
  },
48042
48850
  "immutable": true,
48043
48851
  "locationInModule": {
48044
48852
  "filename": "src/javascript/jest.ts",
48045
- "line": 400
48853
+ "line": 456
48046
48854
  },
48047
48855
  "name": "testRunner",
48048
48856
  "optional": true,
@@ -48061,7 +48869,7 @@
48061
48869
  "immutable": true,
48062
48870
  "locationInModule": {
48063
48871
  "filename": "src/javascript/jest.ts",
48064
- "line": 407
48872
+ "line": 463
48065
48873
  },
48066
48874
  "name": "testSequencer",
48067
48875
  "optional": true,
@@ -48079,7 +48887,7 @@
48079
48887
  "immutable": true,
48080
48888
  "locationInModule": {
48081
48889
  "filename": "src/javascript/jest.ts",
48082
- "line": 413
48890
+ "line": 469
48083
48891
  },
48084
48892
  "name": "testTimeout",
48085
48893
  "optional": true,
@@ -48091,14 +48899,15 @@
48091
48899
  "abstract": true,
48092
48900
  "docs": {
48093
48901
  "default": "- \"http://localhost\"",
48902
+ "deprecated": "Removed in Jest 28. Use `testEnvironmentOptions.url` instead.",
48094
48903
  "remarks": "It is reflected in properties such as location.href.",
48095
- "stability": "experimental",
48904
+ "stability": "deprecated",
48096
48905
  "summary": "This option sets the URL for the jsdom environment."
48097
48906
  },
48098
48907
  "immutable": true,
48099
48908
  "locationInModule": {
48100
48909
  "filename": "src/javascript/jest.ts",
48101
- "line": 419
48910
+ "line": 476
48102
48911
  },
48103
48912
  "name": "testURL",
48104
48913
  "optional": true,
@@ -48110,14 +48919,15 @@
48110
48919
  "abstract": true,
48111
48920
  "docs": {
48112
48921
  "default": "- \"real\"",
48922
+ "deprecated": "Renamed to `fakeTimers` in Jest 27. Use `fakeTimers` instead.",
48113
48923
  "remarks": "Fake timers are useful when a piece of code sets a long timeout that we don't want to wait for in a test.",
48114
- "stability": "experimental",
48924
+ "stability": "deprecated",
48115
48925
  "summary": "Setting this value to legacy or fake allows the use of fake timers for functions such as setTimeout."
48116
48926
  },
48117
48927
  "immutable": true,
48118
48928
  "locationInModule": {
48119
48929
  "filename": "src/javascript/jest.ts",
48120
- "line": 426
48930
+ "line": 484
48121
48931
  },
48122
48932
  "name": "timers",
48123
48933
  "optional": true,
@@ -48136,7 +48946,7 @@
48136
48946
  "immutable": true,
48137
48947
  "locationInModule": {
48138
48948
  "filename": "src/javascript/jest.ts",
48139
- "line": 433
48949
+ "line": 491
48140
48950
  },
48141
48951
  "name": "transform",
48142
48952
  "optional": true,
@@ -48160,7 +48970,7 @@
48160
48970
  "immutable": true,
48161
48971
  "locationInModule": {
48162
48972
  "filename": "src/javascript/jest.ts",
48163
- "line": 440
48973
+ "line": 498
48164
48974
  },
48165
48975
  "name": "transformIgnorePatterns",
48166
48976
  "optional": true,
@@ -48184,7 +48994,7 @@
48184
48994
  "immutable": true,
48185
48995
  "locationInModule": {
48186
48996
  "filename": "src/javascript/jest.ts",
48187
- "line": 448
48997
+ "line": 506
48188
48998
  },
48189
48999
  "name": "unmockedModulePathPatterns",
48190
49000
  "optional": true,
@@ -48208,7 +49018,7 @@
48208
49018
  "immutable": true,
48209
49019
  "locationInModule": {
48210
49020
  "filename": "src/javascript/jest.ts",
48211
- "line": 456
49021
+ "line": 514
48212
49022
  },
48213
49023
  "name": "verbose",
48214
49024
  "optional": true,
@@ -48216,6 +49026,25 @@
48216
49026
  "primitive": "boolean"
48217
49027
  }
48218
49028
  },
49029
+ {
49030
+ "abstract": true,
49031
+ "docs": {
49032
+ "default": "- false",
49033
+ "remarks": "Without this flag Jest may report false-positive errors or fail to report actually unhandled rejections.\nThis option may add a noticeable overhead for fast test suites.",
49034
+ "stability": "experimental",
49035
+ "summary": "Gives one event loop turn to handle `rejectionHandled`, `uncaughtException` or `unhandledRejection`."
49036
+ },
49037
+ "immutable": true,
49038
+ "locationInModule": {
49039
+ "filename": "src/javascript/jest.ts",
49040
+ "line": 522
49041
+ },
49042
+ "name": "waitForUnhandledRejections",
49043
+ "optional": true,
49044
+ "type": {
49045
+ "primitive": "boolean"
49046
+ }
49047
+ },
48219
49048
  {
48220
49049
  "abstract": true,
48221
49050
  "docs": {
@@ -48226,7 +49055,7 @@
48226
49055
  "immutable": true,
48227
49056
  "locationInModule": {
48228
49057
  "filename": "src/javascript/jest.ts",
48229
- "line": 476
49058
+ "line": 542
48230
49059
  },
48231
49060
  "name": "watchman",
48232
49061
  "optional": true,
@@ -48237,7 +49066,7 @@
48237
49066
  {
48238
49067
  "abstract": true,
48239
49068
  "docs": {
48240
- "default": "- []",
49069
+ "default": "- [\"/node_modules/\"]",
48241
49070
  "remarks": "If the file path matches any of the patterns, when it is updated, it will not trigger\na re-run of tests.",
48242
49071
  "stability": "experimental",
48243
49072
  "summary": "An array of RegExp patterns that are matched against all source file paths before re-running tests in watch mode."
@@ -48245,7 +49074,7 @@
48245
49074
  "immutable": true,
48246
49075
  "locationInModule": {
48247
49076
  "filename": "src/javascript/jest.ts",
48248
- "line": 464
49077
+ "line": 530
48249
49078
  },
48250
49079
  "name": "watchPathIgnorePatterns",
48251
49080
  "optional": true,
@@ -48267,7 +49096,7 @@
48267
49096
  "immutable": true,
48268
49097
  "locationInModule": {
48269
49098
  "filename": "src/javascript/jest.ts",
48270
- "line": 470
49099
+ "line": 536
48271
49100
  },
48272
49101
  "name": "watchPlugins",
48273
49102
  "optional": true,
@@ -48279,6 +49108,72 @@
48279
49108
  "kind": "array"
48280
49109
  }
48281
49110
  }
49111
+ },
49112
+ {
49113
+ "abstract": true,
49114
+ "docs": {
49115
+ "default": "- 500",
49116
+ "remarks": "If a worker does not exit within this timeout, it is force-killed.",
49117
+ "stability": "experimental",
49118
+ "summary": "Timeout in milliseconds for a worker process to exit gracefully after all tests have completed."
49119
+ },
49120
+ "immutable": true,
49121
+ "locationInModule": {
49122
+ "filename": "src/javascript/jest.ts",
49123
+ "line": 549
49124
+ },
49125
+ "name": "workerGracefulExitTimeout",
49126
+ "optional": true,
49127
+ "type": {
49128
+ "primitive": "number"
49129
+ }
49130
+ },
49131
+ {
49132
+ "abstract": true,
49133
+ "docs": {
49134
+ "default": "- undefined",
49135
+ "remarks": "The limit can be specified as a percentage of system memory (e.g. `0.5` or `\"50%\"`)\nor as a fixed byte value (e.g. `\"512MB\"`).",
49136
+ "stability": "experimental",
49137
+ "summary": "Specifies the memory limit for workers before they are recycled and is primarily a work-around for memory leaks."
49138
+ },
49139
+ "immutable": true,
49140
+ "locationInModule": {
49141
+ "filename": "src/javascript/jest.ts",
49142
+ "line": 557
49143
+ },
49144
+ "name": "workerIdleMemoryLimit",
49145
+ "optional": true,
49146
+ "type": {
49147
+ "union": {
49148
+ "types": [
49149
+ {
49150
+ "primitive": "string"
49151
+ },
49152
+ {
49153
+ "primitive": "number"
49154
+ }
49155
+ ]
49156
+ }
49157
+ }
49158
+ },
49159
+ {
49160
+ "abstract": true,
49161
+ "docs": {
49162
+ "default": "- false",
49163
+ "remarks": "Child processes are used by default.\nUsing worker threads may help to improve performance.",
49164
+ "stability": "experimental",
49165
+ "summary": "Whether to use worker threads for parallelization."
49166
+ },
49167
+ "immutable": true,
49168
+ "locationInModule": {
49169
+ "filename": "src/javascript/jest.ts",
49170
+ "line": 564
49171
+ },
49172
+ "name": "workerThreads",
49173
+ "optional": true,
49174
+ "type": {
49175
+ "primitive": "boolean"
49176
+ }
48282
49177
  }
48283
49178
  ],
48284
49179
  "symbolId": "src/javascript/jest:JestConfigOptions"
@@ -48294,7 +49189,7 @@
48294
49189
  "kind": "interface",
48295
49190
  "locationInModule": {
48296
49191
  "filename": "src/javascript/jest.ts",
48297
- "line": 487
49192
+ "line": 575
48298
49193
  },
48299
49194
  "name": "JestDiscoverTestMatchPatternsForDirsOptions",
48300
49195
  "namespace": "javascript",
@@ -48309,7 +49204,7 @@
48309
49204
  "immutable": true,
48310
49205
  "locationInModule": {
48311
49206
  "filename": "src/javascript/jest.ts",
48312
- "line": 489
49207
+ "line": 577
48313
49208
  },
48314
49209
  "name": "fileExtensionPattern",
48315
49210
  "optional": true,
@@ -48330,7 +49225,7 @@
48330
49225
  "kind": "interface",
48331
49226
  "locationInModule": {
48332
49227
  "filename": "src/javascript/jest.ts",
48333
- "line": 528
49228
+ "line": 616
48334
49229
  },
48335
49230
  "name": "JestOptions",
48336
49231
  "namespace": "javascript",
@@ -48345,7 +49240,7 @@
48345
49240
  "immutable": true,
48346
49241
  "locationInModule": {
48347
49242
  "filename": "src/javascript/jest.ts",
48348
- "line": 577
49243
+ "line": 665
48349
49244
  },
48350
49245
  "name": "configFilePath",
48351
49246
  "optional": true,
@@ -48363,7 +49258,7 @@
48363
49258
  "immutable": true,
48364
49259
  "locationInModule": {
48365
49260
  "filename": "src/javascript/jest.ts",
48366
- "line": 535
49261
+ "line": 623
48367
49262
  },
48368
49263
  "name": "coverageText",
48369
49264
  "optional": true,
@@ -48381,7 +49276,7 @@
48381
49276
  "immutable": true,
48382
49277
  "locationInModule": {
48383
49278
  "filename": "src/javascript/jest.ts",
48384
- "line": 589
49279
+ "line": 677
48385
49280
  },
48386
49281
  "name": "extraCliOptions",
48387
49282
  "optional": true,
@@ -48404,7 +49299,7 @@
48404
49299
  "immutable": true,
48405
49300
  "locationInModule": {
48406
49301
  "filename": "src/javascript/jest.ts",
48407
- "line": 583
49302
+ "line": 671
48408
49303
  },
48409
49304
  "name": "jestConfig",
48410
49305
  "optional": true,
@@ -48423,7 +49318,7 @@
48423
49318
  "immutable": true,
48424
49319
  "locationInModule": {
48425
49320
  "filename": "src/javascript/jest.ts",
48426
- "line": 570
49321
+ "line": 658
48427
49322
  },
48428
49323
  "name": "jestVersion",
48429
49324
  "optional": true,
@@ -48442,7 +49337,7 @@
48442
49337
  "immutable": true,
48443
49338
  "locationInModule": {
48444
49339
  "filename": "src/javascript/jest.ts",
48445
- "line": 544
49340
+ "line": 632
48446
49341
  },
48447
49342
  "name": "junitReporting",
48448
49343
  "optional": true,
@@ -48460,7 +49355,7 @@
48460
49355
  "immutable": true,
48461
49356
  "locationInModule": {
48462
49357
  "filename": "src/javascript/jest.ts",
48463
- "line": 595
49358
+ "line": 683
48464
49359
  },
48465
49360
  "name": "passWithNoTests",
48466
49361
  "optional": true,
@@ -48478,7 +49373,7 @@
48478
49373
  "immutable": true,
48479
49374
  "locationInModule": {
48480
49375
  "filename": "src/javascript/jest.ts",
48481
- "line": 551
49376
+ "line": 639
48482
49377
  },
48483
49378
  "name": "preserveDefaultReporters",
48484
49379
  "optional": true,
@@ -48496,7 +49391,7 @@
48496
49391
  "immutable": true,
48497
49392
  "locationInModule": {
48498
49393
  "filename": "src/javascript/jest.ts",
48499
- "line": 559
49394
+ "line": 647
48500
49395
  },
48501
49396
  "name": "updateSnapshot",
48502
49397
  "optional": true,
@@ -48519,7 +49414,7 @@
48519
49414
  },
48520
49415
  "locationInModule": {
48521
49416
  "filename": "src/javascript/jest.ts",
48522
- "line": 626
49417
+ "line": 826
48523
49418
  },
48524
49419
  "parameters": [
48525
49420
  {
@@ -48545,7 +49440,7 @@
48545
49440
  "kind": "class",
48546
49441
  "locationInModule": {
48547
49442
  "filename": "src/javascript/jest.ts",
48548
- "line": 625
49443
+ "line": 825
48549
49444
  },
48550
49445
  "name": "JestReporter",
48551
49446
  "namespace": "javascript",
@@ -53344,6 +54239,207 @@
53344
54239
  ],
53345
54240
  "symbolId": "src/javascript/node-package:ScopedPackagesOptions"
53346
54241
  },
54242
+ "projen.javascript.SnapshotFormatOptions": {
54243
+ "assembly": "projen",
54244
+ "datatype": true,
54245
+ "docs": {
54246
+ "remarks": "Mirrors the pretty-format options, with the exceptions of\n`compareKeys` and `plugins`.",
54247
+ "see": "https://jestjs.io/docs/configuration#snapshotformat-object",
54248
+ "stability": "experimental",
54249
+ "summary": "Snapshot formatting options."
54250
+ },
54251
+ "fqn": "projen.javascript.SnapshotFormatOptions",
54252
+ "kind": "interface",
54253
+ "locationInModule": {
54254
+ "filename": "src/javascript/jest.ts",
54255
+ "line": 763
54256
+ },
54257
+ "name": "SnapshotFormatOptions",
54258
+ "namespace": "javascript",
54259
+ "properties": [
54260
+ {
54261
+ "abstract": true,
54262
+ "docs": {
54263
+ "default": "- true",
54264
+ "stability": "experimental",
54265
+ "summary": "Calls `toJSON` on objects that have such a method."
54266
+ },
54267
+ "immutable": true,
54268
+ "locationInModule": {
54269
+ "filename": "src/javascript/jest.ts",
54270
+ "line": 768
54271
+ },
54272
+ "name": "callToJSON",
54273
+ "optional": true,
54274
+ "type": {
54275
+ "primitive": "boolean"
54276
+ }
54277
+ },
54278
+ {
54279
+ "abstract": true,
54280
+ "docs": {
54281
+ "default": "- false",
54282
+ "stability": "experimental",
54283
+ "summary": "Escapes special characters in regular expressions."
54284
+ },
54285
+ "immutable": true,
54286
+ "locationInModule": {
54287
+ "filename": "src/javascript/jest.ts",
54288
+ "line": 774
54289
+ },
54290
+ "name": "escapeRegex",
54291
+ "optional": true,
54292
+ "type": {
54293
+ "primitive": "boolean"
54294
+ }
54295
+ },
54296
+ {
54297
+ "abstract": true,
54298
+ "docs": {
54299
+ "default": "- false",
54300
+ "stability": "experimental",
54301
+ "summary": "Escapes quotes in strings."
54302
+ },
54303
+ "immutable": true,
54304
+ "locationInModule": {
54305
+ "filename": "src/javascript/jest.ts",
54306
+ "line": 780
54307
+ },
54308
+ "name": "escapeString",
54309
+ "optional": true,
54310
+ "type": {
54311
+ "primitive": "boolean"
54312
+ }
54313
+ },
54314
+ {
54315
+ "abstract": true,
54316
+ "docs": {
54317
+ "default": "- false",
54318
+ "stability": "experimental",
54319
+ "summary": "Highlights syntax with colors in terminal (some plugins)."
54320
+ },
54321
+ "immutable": true,
54322
+ "locationInModule": {
54323
+ "filename": "src/javascript/jest.ts",
54324
+ "line": 786
54325
+ },
54326
+ "name": "highlight",
54327
+ "optional": true,
54328
+ "type": {
54329
+ "primitive": "boolean"
54330
+ }
54331
+ },
54332
+ {
54333
+ "abstract": true,
54334
+ "docs": {
54335
+ "default": "- 2",
54336
+ "stability": "experimental",
54337
+ "summary": "Spaces of indentation between levels of nesting."
54338
+ },
54339
+ "immutable": true,
54340
+ "locationInModule": {
54341
+ "filename": "src/javascript/jest.ts",
54342
+ "line": 792
54343
+ },
54344
+ "name": "indent",
54345
+ "optional": true,
54346
+ "type": {
54347
+ "primitive": "number"
54348
+ }
54349
+ },
54350
+ {
54351
+ "abstract": true,
54352
+ "docs": {
54353
+ "default": "- Infinity",
54354
+ "stability": "experimental",
54355
+ "summary": "Maximum number of levels to print."
54356
+ },
54357
+ "immutable": true,
54358
+ "locationInModule": {
54359
+ "filename": "src/javascript/jest.ts",
54360
+ "line": 798
54361
+ },
54362
+ "name": "maxDepth",
54363
+ "optional": true,
54364
+ "type": {
54365
+ "primitive": "number"
54366
+ }
54367
+ },
54368
+ {
54369
+ "abstract": true,
54370
+ "docs": {
54371
+ "default": "- Infinity",
54372
+ "stability": "experimental",
54373
+ "summary": "Maximum number of elements to print at a given level."
54374
+ },
54375
+ "immutable": true,
54376
+ "locationInModule": {
54377
+ "filename": "src/javascript/jest.ts",
54378
+ "line": 804
54379
+ },
54380
+ "name": "maxWidth",
54381
+ "optional": true,
54382
+ "type": {
54383
+ "primitive": "number"
54384
+ }
54385
+ },
54386
+ {
54387
+ "abstract": true,
54388
+ "docs": {
54389
+ "default": "- false",
54390
+ "stability": "experimental",
54391
+ "summary": "Prints objects on a single line when `true`."
54392
+ },
54393
+ "immutable": true,
54394
+ "locationInModule": {
54395
+ "filename": "src/javascript/jest.ts",
54396
+ "line": 810
54397
+ },
54398
+ "name": "min",
54399
+ "optional": true,
54400
+ "type": {
54401
+ "primitive": "boolean"
54402
+ }
54403
+ },
54404
+ {
54405
+ "abstract": true,
54406
+ "docs": {
54407
+ "default": "- false",
54408
+ "stability": "experimental",
54409
+ "summary": "Prints the prototype for basic objects and arrays."
54410
+ },
54411
+ "immutable": true,
54412
+ "locationInModule": {
54413
+ "filename": "src/javascript/jest.ts",
54414
+ "line": 816
54415
+ },
54416
+ "name": "printBasicPrototype",
54417
+ "optional": true,
54418
+ "type": {
54419
+ "primitive": "boolean"
54420
+ }
54421
+ },
54422
+ {
54423
+ "abstract": true,
54424
+ "docs": {
54425
+ "default": "- true",
54426
+ "stability": "experimental",
54427
+ "summary": "Prints the name of functions."
54428
+ },
54429
+ "immutable": true,
54430
+ "locationInModule": {
54431
+ "filename": "src/javascript/jest.ts",
54432
+ "line": 822
54433
+ },
54434
+ "name": "printFunctionName",
54435
+ "optional": true,
54436
+ "type": {
54437
+ "primitive": "boolean"
54438
+ }
54439
+ }
54440
+ ],
54441
+ "symbolId": "src/javascript/jest:SnapshotFormatOptions"
54442
+ },
53347
54443
  "projen.javascript.SourceMapMode": {
53348
54444
  "assembly": "projen",
53349
54445
  "docs": {
@@ -53441,7 +54537,7 @@
53441
54537
  },
53442
54538
  "locationInModule": {
53443
54539
  "filename": "src/javascript/jest.ts",
53444
- "line": 493
54540
+ "line": 581
53445
54541
  },
53446
54542
  "parameters": [
53447
54543
  {
@@ -53462,7 +54558,7 @@
53462
54558
  "kind": "class",
53463
54559
  "locationInModule": {
53464
54560
  "filename": "src/javascript/jest.ts",
53465
- "line": 492
54561
+ "line": 580
53466
54562
  },
53467
54563
  "name": "Transform",
53468
54564
  "namespace": "javascript",
@@ -55409,7 +56505,7 @@
55409
56505
  "kind": "enum",
55410
56506
  "locationInModule": {
55411
56507
  "filename": "src/javascript/jest.ts",
55412
- "line": 605
56508
+ "line": 693
55413
56509
  },
55414
56510
  "members": [
55415
56511
  {
@@ -56276,7 +57372,7 @@
56276
57372
  },
56277
57373
  "locationInModule": {
56278
57374
  "filename": "src/javascript/jest.ts",
56279
- "line": 511
57375
+ "line": 599
56280
57376
  },
56281
57377
  "parameters": [
56282
57378
  {
@@ -56297,7 +57393,7 @@
56297
57393
  "kind": "class",
56298
57394
  "locationInModule": {
56299
57395
  "filename": "src/javascript/jest.ts",
56300
- "line": 510
57396
+ "line": 598
56301
57397
  },
56302
57398
  "name": "WatchPlugin",
56303
57399
  "namespace": "javascript",
@@ -82317,6 +83413,6 @@
82317
83413
  "usedFeatures": [
82318
83414
  "class-covariant-overrides"
82319
83415
  ],
82320
- "version": "0.100.7",
82321
- "fingerprint": "dOi6JcK8AnWZhGPP66lf133THWYYINUK+iww8kM+ptA="
83416
+ "version": "0.101.1",
83417
+ "fingerprint": "poLrF+ixHBTm74Yqq8AASdgG3CRK0y+odoIOt6z6kwk="
82322
83418
  }