@turbo/types 2.7.5-canary.0 → 2.7.5-canary.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/package.json +6 -4
- package/schemas/schema.json +516 -297
- package/schemas/schema.v1.json +19 -19
- package/schemas/schema.v2.json +32 -28
- package/src/types/config-v1.ts +17 -17
- package/src/types/config-v2.ts +37 -30
package/schemas/schema.v1.json
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"properties": {
|
|
18
18
|
"$schema": {
|
|
19
19
|
"type": "string",
|
|
20
|
-
"default": "https://turborepo.
|
|
20
|
+
"default": "https://turborepo.dev/schema.v1.json"
|
|
21
21
|
},
|
|
22
22
|
"pipeline": {
|
|
23
23
|
"type": "object",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"$ref": "#/definitions/PipelineV1",
|
|
26
26
|
"description": "The name of a task that can be executed by turbo. If turbo finds a workspace package with a package.json scripts object with a matching key, it will apply the pipeline task configuration to that npm script during execution."
|
|
27
27
|
},
|
|
28
|
-
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.
|
|
28
|
+
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#tasks",
|
|
29
29
|
"default": {}
|
|
30
30
|
},
|
|
31
31
|
"extends": {
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"items": {
|
|
49
49
|
"type": "string"
|
|
50
50
|
},
|
|
51
|
-
"description": "The list of tasks that this task depends on.\n\nPrefixing an item in dependsOn with a ^ prefix tells turbo that this task depends on the package's topological dependencies completing the task first. (e.g. \"A package's build tasks should only run once all of its workspace dependencies have completed their own build commands.\")\n\nItems in dependsOn without a ^ prefix express the relationships between tasks within the same package (e.g. \"A package's test and lint commands depend on its own build being completed first.\")\n\nDocumentation: https://turborepo.
|
|
51
|
+
"description": "The list of tasks that this task depends on.\n\nPrefixing an item in dependsOn with a ^ prefix tells turbo that this task depends on the package's topological dependencies completing the task first. (e.g. \"A package's build tasks should only run once all of its workspace dependencies have completed their own build commands.\")\n\nItems in dependsOn without a ^ prefix express the relationships between tasks within the same package (e.g. \"A package's test and lint commands depend on its own build being completed first.\")\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#dependson",
|
|
52
52
|
"default": []
|
|
53
53
|
},
|
|
54
54
|
"env": {
|
|
@@ -56,7 +56,7 @@
|
|
|
56
56
|
"items": {
|
|
57
57
|
"$ref": "#/definitions/EnvWildcardV1"
|
|
58
58
|
},
|
|
59
|
-
"description": "A list of environment variables that this task depends on.\n\nNote: If you are migrating from a turbo version 1.5 or below, you may be used to prefixing your variables with a $. You no longer need to use the $ prefix. (e.g. $GITHUB_TOKEN → GITHUB_TOKEN)\n\nDocumentation: https://turborepo.
|
|
59
|
+
"description": "A list of environment variables that this task depends on.\n\nNote: If you are migrating from a turbo version 1.5 or below, you may be used to prefixing your variables with a $. You no longer need to use the $ prefix. (e.g. $GITHUB_TOKEN → GITHUB_TOKEN)\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#env",
|
|
60
60
|
"default": []
|
|
61
61
|
},
|
|
62
62
|
"passThroughEnv": {
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
}
|
|
72
72
|
}
|
|
73
73
|
],
|
|
74
|
-
"description": "An allowlist of environment variables that should be made available in this task's environment, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.
|
|
74
|
+
"description": "An allowlist of environment variables that should be made available in this task's environment, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#passthroughenv",
|
|
75
75
|
"default": null
|
|
76
76
|
},
|
|
77
77
|
"dotEnv": {
|
|
@@ -94,12 +94,12 @@
|
|
|
94
94
|
"items": {
|
|
95
95
|
"type": "string"
|
|
96
96
|
},
|
|
97
|
-
"description": "The set of glob patterns indicating a task's cacheable filesystem outputs.\n\nTurborepo captures task logs for all tasks. This enables us to cache tasks whose runs produce no artifacts other than logs (such as linters). Logs are always treated as a cacheable artifact and never need to be specified.\n\nDocumentation: https://turborepo.
|
|
97
|
+
"description": "The set of glob patterns indicating a task's cacheable filesystem outputs.\n\nTurborepo captures task logs for all tasks. This enables us to cache tasks whose runs produce no artifacts other than logs (such as linters). Logs are always treated as a cacheable artifact and never need to be specified.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#outputs",
|
|
98
98
|
"default": []
|
|
99
99
|
},
|
|
100
100
|
"cache": {
|
|
101
101
|
"type": "boolean",
|
|
102
|
-
"description": "Whether or not to cache the outputs of the task.\n\nSetting cache to false is useful for long-running \"watch\" or development mode tasks.\n\nDocumentation: https://turborepo.
|
|
102
|
+
"description": "Whether or not to cache the outputs of the task.\n\nSetting cache to false is useful for long-running \"watch\" or development mode tasks.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#cache",
|
|
103
103
|
"default": true
|
|
104
104
|
},
|
|
105
105
|
"inputs": {
|
|
@@ -107,22 +107,22 @@
|
|
|
107
107
|
"items": {
|
|
108
108
|
"type": "string"
|
|
109
109
|
},
|
|
110
|
-
"description": "The set of glob patterns to consider as inputs to this task.\n\nChanges to files covered by these globs will cause a cache miss and the task will be rerun.\n\nIf a file has been changed that is **not** included in the set of globs, it will not cause a cache miss.\n\nIf omitted or empty, all files in the package are considered as inputs.\n\nDocumentation: https://turborepo.
|
|
110
|
+
"description": "The set of glob patterns to consider as inputs to this task.\n\nChanges to files covered by these globs will cause a cache miss and the task will be rerun.\n\nIf a file has been changed that is **not** included in the set of globs, it will not cause a cache miss.\n\nIf omitted or empty, all files in the package are considered as inputs.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#inputs",
|
|
111
111
|
"default": []
|
|
112
112
|
},
|
|
113
113
|
"outputMode": {
|
|
114
114
|
"$ref": "#/definitions/OutputModeV1",
|
|
115
|
-
"description": "Output mode for the task.\n\n\"full\": Displays all output\n\n\"hash-only\": Show only the hashes of the tasks\n\n\"new-only\": Only show output from cache misses\n\n\"errors-only\": Only show output from task failures\n\n\"none\": Hides all task output\n\nDocumentation: https://turborepo.
|
|
115
|
+
"description": "Output mode for the task.\n\n\"full\": Displays all output\n\n\"hash-only\": Show only the hashes of the tasks\n\n\"new-only\": Only show output from cache misses\n\n\"errors-only\": Only show output from task failures\n\n\"none\": Hides all task output\n\nDocumentation: https://turborepo.dev/docs/reference/run#--output-logs-option",
|
|
116
116
|
"default": "full"
|
|
117
117
|
},
|
|
118
118
|
"persistent": {
|
|
119
119
|
"type": "boolean",
|
|
120
|
-
"description": "Indicates whether the task exits or not. Setting `persistent` to `true` tells turbo that this is a long-running task and will ensure that other tasks cannot depend on it.\n\nDocumentation: https://turborepo.
|
|
120
|
+
"description": "Indicates whether the task exits or not. Setting `persistent` to `true` tells turbo that this is a long-running task and will ensure that other tasks cannot depend on it.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#persistent",
|
|
121
121
|
"default": false
|
|
122
122
|
},
|
|
123
123
|
"interactive": {
|
|
124
124
|
"type": "boolean",
|
|
125
|
-
"description": "Mark a task as interactive allowing it to receive input from stdin. Interactive tasks must be marked with \"cache\": false as the input they receive from stdin can change the outcome of the task.\n\nDocumentation: https://turborepo.
|
|
125
|
+
"description": "Mark a task as interactive allowing it to receive input from stdin. Interactive tasks must be marked with \"cache\": false as the input they receive from stdin can change the outcome of the task.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#interactive",
|
|
126
126
|
"default": false
|
|
127
127
|
}
|
|
128
128
|
},
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
"properties": {
|
|
144
144
|
"$schema": {
|
|
145
145
|
"type": "string",
|
|
146
|
-
"default": "https://turborepo.
|
|
146
|
+
"default": "https://turborepo.dev/schema.v1.json"
|
|
147
147
|
},
|
|
148
148
|
"pipeline": {
|
|
149
149
|
"type": "object",
|
|
@@ -151,7 +151,7 @@
|
|
|
151
151
|
"$ref": "#/definitions/PipelineV1",
|
|
152
152
|
"description": "The name of a task that can be executed by turbo. If turbo finds a workspace package with a package.json scripts object with a matching key, it will apply the pipeline task configuration to that npm script during execution."
|
|
153
153
|
},
|
|
154
|
-
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.
|
|
154
|
+
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#tasks",
|
|
155
155
|
"default": {}
|
|
156
156
|
},
|
|
157
157
|
"globalDependencies": {
|
|
@@ -159,7 +159,7 @@
|
|
|
159
159
|
"items": {
|
|
160
160
|
"type": "string"
|
|
161
161
|
},
|
|
162
|
-
"description": "A list of globs to include in the set of implicit global hash dependencies.\n\nThe contents of these files will be included in the global hashing algorithm and affect the hashes of all tasks.\n\nThis is useful for busting the cache based on:\n\n- .env files (not in Git)\n\n- any root level file that impacts package tasks that are not represented in the traditional dependency graph (e.g. a root tsconfig.json, jest.config.ts, .eslintrc, etc.)\n\nDocumentation: https://turborepo.
|
|
162
|
+
"description": "A list of globs to include in the set of implicit global hash dependencies.\n\nThe contents of these files will be included in the global hashing algorithm and affect the hashes of all tasks.\n\nThis is useful for busting the cache based on:\n\n- .env files (not in Git)\n\n- any root level file that impacts package tasks that are not represented in the traditional dependency graph (e.g. a root tsconfig.json, jest.config.ts, .eslintrc, etc.)\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#globaldependencies",
|
|
163
163
|
"default": []
|
|
164
164
|
},
|
|
165
165
|
"globalEnv": {
|
|
@@ -167,7 +167,7 @@
|
|
|
167
167
|
"items": {
|
|
168
168
|
"$ref": "#/definitions/EnvWildcardV1"
|
|
169
169
|
},
|
|
170
|
-
"description": "A list of environment variables for implicit global hash dependencies.\n\nThe variables included in this list will affect all task hashes.\n\nDocumentation: https://turborepo.
|
|
170
|
+
"description": "A list of environment variables for implicit global hash dependencies.\n\nThe variables included in this list will affect all task hashes.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#globalenv",
|
|
171
171
|
"default": []
|
|
172
172
|
},
|
|
173
173
|
"globalPassThroughEnv": {
|
|
@@ -182,7 +182,7 @@
|
|
|
182
182
|
}
|
|
183
183
|
}
|
|
184
184
|
],
|
|
185
|
-
"description": "An allowlist of environment variables that should be made to all tasks, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.
|
|
185
|
+
"description": "An allowlist of environment variables that should be made to all tasks, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#globalpassthroughenv",
|
|
186
186
|
"default": null
|
|
187
187
|
},
|
|
188
188
|
"globalDotEnv": {
|
|
@@ -202,12 +202,12 @@
|
|
|
202
202
|
},
|
|
203
203
|
"remoteCache": {
|
|
204
204
|
"$ref": "#/definitions/RemoteCacheV1",
|
|
205
|
-
"description": "Configuration options that control how turbo interfaces with the remote cache.\n\nDocumentation: https://turborepo.
|
|
205
|
+
"description": "Configuration options that control how turbo interfaces with the remote cache.\n\nDocumentation: https://turborepo.dev/docs/core-concepts/remote-caching",
|
|
206
206
|
"default": {}
|
|
207
207
|
},
|
|
208
208
|
"experimentalUI": {
|
|
209
209
|
"type": "boolean",
|
|
210
|
-
"description": "Enable use of the new UI for `turbo`\n\nDocumentation: https://turborepo.
|
|
210
|
+
"description": "Enable use of the new UI for `turbo`\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#ui",
|
|
211
211
|
"default": false
|
|
212
212
|
}
|
|
213
213
|
},
|
|
@@ -224,7 +224,7 @@
|
|
|
224
224
|
},
|
|
225
225
|
"enabled": {
|
|
226
226
|
"type": "boolean",
|
|
227
|
-
"description": "Indicates if the remote cache is enabled. When `false`, Turborepo will disable all remote cache operations, even if the repo has a valid token. If true, remote caching is enabled, but still requires the user to login and link their repo to a remote cache. Documentation: https://turborepo.
|
|
227
|
+
"description": "Indicates if the remote cache is enabled. When `false`, Turborepo will disable all remote cache operations, even if the repo has a valid token. If true, remote caching is enabled, but still requires the user to login and link their repo to a remote cache. Documentation: https://turborepo.dev/docs/core-concepts/remote-caching",
|
|
228
228
|
"default": true
|
|
229
229
|
}
|
|
230
230
|
},
|
package/schemas/schema.v2.json
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"properties": {
|
|
18
18
|
"$schema": {
|
|
19
19
|
"type": "string",
|
|
20
|
-
"default": "https://turborepo.
|
|
20
|
+
"default": "https://turborepo.dev/schema.v2.json"
|
|
21
21
|
},
|
|
22
22
|
"tasks": {
|
|
23
23
|
"type": "object",
|
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
"$ref": "#/definitions/Pipeline",
|
|
26
26
|
"description": "The name of a task that can be executed by turbo. If turbo finds a workspace package with a package.json scripts object with a matching key, it will apply the pipeline task configuration to that npm script during execution."
|
|
27
27
|
},
|
|
28
|
-
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.
|
|
28
|
+
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#tasks",
|
|
29
29
|
"default": {}
|
|
30
30
|
},
|
|
31
31
|
"globalDependencies": {
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"items": {
|
|
34
34
|
"type": "string"
|
|
35
35
|
},
|
|
36
|
-
"description": "A list of globs to include in the set of implicit global hash dependencies.\n\nThe contents of these files will be included in the global hashing algorithm and affect the hashes of all tasks.\n\nThis is useful for busting the cache based on:\n\n- .env files (not in Git)\n\n- any root level file that impacts package tasks that are not represented in the traditional dependency graph (e.g. a root tsconfig.json, jest.config.ts, .eslintrc, etc.)\n\nDocumentation: https://turborepo.
|
|
36
|
+
"description": "A list of globs to include in the set of implicit global hash dependencies.\n\nThe contents of these files will be included in the global hashing algorithm and affect the hashes of all tasks.\n\nThis is useful for busting the cache based on:\n\n- .env files (not in Git)\n\n- any root level file that impacts package tasks that are not represented in the traditional dependency graph (e.g. a root tsconfig.json, jest.config.ts, .eslintrc, etc.)\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#globaldependencies",
|
|
37
37
|
"default": []
|
|
38
38
|
},
|
|
39
39
|
"globalEnv": {
|
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
"items": {
|
|
42
42
|
"$ref": "#/definitions/EnvWildcard"
|
|
43
43
|
},
|
|
44
|
-
"description": "A list of environment variables for implicit global hash dependencies.\n\nThe variables included in this list will affect all task hashes.\n\nDocumentation: https://turborepo.
|
|
44
|
+
"description": "A list of environment variables for implicit global hash dependencies.\n\nThe variables included in this list will affect all task hashes.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#globalenv",
|
|
45
45
|
"default": []
|
|
46
46
|
},
|
|
47
47
|
"globalPassThroughEnv": {
|
|
@@ -56,22 +56,22 @@
|
|
|
56
56
|
}
|
|
57
57
|
}
|
|
58
58
|
],
|
|
59
|
-
"description": "An allowlist of environment variables that should be made to all tasks, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.
|
|
59
|
+
"description": "An allowlist of environment variables that should be made to all tasks, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#globalpassthroughenv",
|
|
60
60
|
"default": null
|
|
61
61
|
},
|
|
62
62
|
"remoteCache": {
|
|
63
63
|
"$ref": "#/definitions/RemoteCache",
|
|
64
|
-
"description": "Configuration options that control how turbo interfaces with the remote cache.\n\nDocumentation: https://turborepo.
|
|
64
|
+
"description": "Configuration options that control how turbo interfaces with the remote cache.\n\nDocumentation: https://turborepo.dev/docs/core-concepts/remote-caching",
|
|
65
65
|
"default": {}
|
|
66
66
|
},
|
|
67
67
|
"ui": {
|
|
68
68
|
"$ref": "#/definitions/UI",
|
|
69
|
-
"description": "Enable use of the UI for `turbo`.\n\nDocumentation: https://turborepo.
|
|
69
|
+
"description": "Enable use of the UI for `turbo`.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#ui",
|
|
70
70
|
"default": "stream"
|
|
71
71
|
},
|
|
72
72
|
"concurrency": {
|
|
73
73
|
"type": "string",
|
|
74
|
-
"description": "Set/limit the maximum concurrency for task execution. Must be an integer greater than or equal to `1` or a percentage value like `50%`.\n\n - Use `1` to force serial execution (one task at a time). - Use `100%` to use all available logical processors.\n\nDocumentation: https://turborepo.
|
|
74
|
+
"description": "Set/limit the maximum concurrency for task execution. Must be an integer greater than or equal to `1` or a percentage value like `50%`.\n\n - Use `1` to force serial execution (one task at a time). - Use `100%` to use all available logical processors.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#concurrency",
|
|
75
75
|
"default": "10"
|
|
76
76
|
},
|
|
77
77
|
"dangerouslyDisablePackageManagerCheck": {
|
|
@@ -81,17 +81,17 @@
|
|
|
81
81
|
},
|
|
82
82
|
"cacheDir": {
|
|
83
83
|
"$ref": "#/definitions/RelativeUnixPath",
|
|
84
|
-
"description": "Specify the filesystem cache directory.\n\nDocumentation: https://turborepo.
|
|
84
|
+
"description": "Specify the filesystem cache directory.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#cachedir",
|
|
85
85
|
"default": ".turbo/cache"
|
|
86
86
|
},
|
|
87
87
|
"daemon": {
|
|
88
88
|
"type": "boolean",
|
|
89
|
-
"description": "Turborepo runs a background process to pre-calculate some expensive operations. This standalone process (daemon) is a performance optimization, and not required for proper functioning of `turbo`.\n\nDocumentation: https://turborepo.
|
|
89
|
+
"description": "Turborepo runs a background process to pre-calculate some expensive operations. This standalone process (daemon) is a performance optimization, and not required for proper functioning of `turbo`.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#daemon",
|
|
90
90
|
"default": false
|
|
91
91
|
},
|
|
92
92
|
"envMode": {
|
|
93
93
|
"$ref": "#/definitions/EnvMode",
|
|
94
|
-
"description": "Turborepo's Environment Modes allow you to control which environment variables are available to a task at runtime:\n\n- `\"strict\"`: Filter environment variables to only those that are specified in the `env` and `globalEnv` keys in `turbo.json`.\n- `\"loose\"`: Allow all environment variables for the process to be available.\n\nDocumentation: https://turborepo.
|
|
94
|
+
"description": "Turborepo's Environment Modes allow you to control which environment variables are available to a task at runtime:\n\n- `\"strict\"`: Filter environment variables to only those that are specified in the `env` and `globalEnv` keys in `turbo.json`.\n- `\"loose\"`: Allow all environment variables for the process to be available.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#envmode",
|
|
95
95
|
"default": "strict"
|
|
96
96
|
},
|
|
97
97
|
"boundaries": {
|
|
@@ -100,7 +100,7 @@
|
|
|
100
100
|
},
|
|
101
101
|
"noUpdateNotifier": {
|
|
102
102
|
"type": "boolean",
|
|
103
|
-
"description": "When set to `true`, disables the update notification that appears when a new version of `turbo` is available.\n\nDocumentation: https://turborepo.
|
|
103
|
+
"description": "When set to `true`, disables the update notification that appears when a new version of `turbo` is available.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#noupdatenotifier",
|
|
104
104
|
"default": false
|
|
105
105
|
},
|
|
106
106
|
"futureFlags": {
|
|
@@ -116,12 +116,16 @@
|
|
|
116
116
|
"Pipeline": {
|
|
117
117
|
"type": "object",
|
|
118
118
|
"properties": {
|
|
119
|
+
"description": {
|
|
120
|
+
"type": "string",
|
|
121
|
+
"description": "A human-readable description of what this task does.\n\nThis field is for documentation purposes only and does not affect task execution or caching behavior."
|
|
122
|
+
},
|
|
119
123
|
"dependsOn": {
|
|
120
124
|
"type": "array",
|
|
121
125
|
"items": {
|
|
122
126
|
"type": "string"
|
|
123
127
|
},
|
|
124
|
-
"description": "The list of tasks that this task depends on.\n\nPrefixing an item in dependsOn with a ^ prefix tells turbo that this task depends on the package's topological dependencies completing the task first. (e.g. \"A package's build tasks should only run once all of its workspace dependencies have completed their own build commands.\")\n\nItems in dependsOn without a ^ prefix express the relationships between tasks within the same package (e.g. \"A package's test and lint commands depend on its own build being completed first.\")\n\nDocumentation: https://turborepo.
|
|
128
|
+
"description": "The list of tasks that this task depends on.\n\nPrefixing an item in dependsOn with a ^ prefix tells turbo that this task depends on the package's topological dependencies completing the task first. (e.g. \"A package's build tasks should only run once all of its workspace dependencies have completed their own build commands.\")\n\nItems in dependsOn without a ^ prefix express the relationships between tasks within the same package (e.g. \"A package's test and lint commands depend on its own build being completed first.\")\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#dependson",
|
|
125
129
|
"default": []
|
|
126
130
|
},
|
|
127
131
|
"env": {
|
|
@@ -129,7 +133,7 @@
|
|
|
129
133
|
"items": {
|
|
130
134
|
"$ref": "#/definitions/EnvWildcard"
|
|
131
135
|
},
|
|
132
|
-
"description": "A list of environment variables that this task depends on.\n\nNote: If you are migrating from a turbo version 1.5 or below, you may be used to prefixing your variables with a $. You no longer need to use the $ prefix. (e.g. $GITHUB_TOKEN → GITHUB_TOKEN)\n\nDocumentation: https://turborepo.
|
|
136
|
+
"description": "A list of environment variables that this task depends on.\n\nNote: If you are migrating from a turbo version 1.5 or below, you may be used to prefixing your variables with a $. You no longer need to use the $ prefix. (e.g. $GITHUB_TOKEN → GITHUB_TOKEN)\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#env",
|
|
133
137
|
"default": []
|
|
134
138
|
},
|
|
135
139
|
"passThroughEnv": {
|
|
@@ -144,7 +148,7 @@
|
|
|
144
148
|
}
|
|
145
149
|
}
|
|
146
150
|
],
|
|
147
|
-
"description": "An allowlist of environment variables that should be made available in this task's environment, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.
|
|
151
|
+
"description": "An allowlist of environment variables that should be made available in this task's environment, but should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#passthroughenv",
|
|
148
152
|
"default": null
|
|
149
153
|
},
|
|
150
154
|
"outputs": {
|
|
@@ -152,12 +156,12 @@
|
|
|
152
156
|
"items": {
|
|
153
157
|
"type": "string"
|
|
154
158
|
},
|
|
155
|
-
"description": "The set of glob patterns indicating a task's cacheable filesystem outputs.\n\nTurborepo captures task logs for all tasks. This enables us to cache tasks whose runs produce no artifacts other than logs (such as linters). Logs are always treated as a cacheable artifact and never need to be specified.\n\nDocumentation: https://turborepo.
|
|
159
|
+
"description": "The set of glob patterns indicating a task's cacheable filesystem outputs.\n\nTurborepo captures task logs for all tasks. This enables us to cache tasks whose runs produce no artifacts other than logs (such as linters). Logs are always treated as a cacheable artifact and never need to be specified.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#outputs",
|
|
156
160
|
"default": []
|
|
157
161
|
},
|
|
158
162
|
"cache": {
|
|
159
163
|
"type": "boolean",
|
|
160
|
-
"description": "Whether or not to cache the outputs of the task.\n\nSetting cache to false is useful for long-running \"watch\" or development mode tasks.\n\nDocumentation: https://turborepo.
|
|
164
|
+
"description": "Whether or not to cache the outputs of the task.\n\nSetting cache to false is useful for long-running \"watch\" or development mode tasks.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#cache",
|
|
161
165
|
"default": true
|
|
162
166
|
},
|
|
163
167
|
"inputs": {
|
|
@@ -165,27 +169,27 @@
|
|
|
165
169
|
"items": {
|
|
166
170
|
"type": "string"
|
|
167
171
|
},
|
|
168
|
-
"description": "The set of glob patterns to consider as inputs to this task.\n\nChanges to files covered by these globs will cause a cache miss and the task will be rerun.\n\nIf a file has been changed that is **not** included in the set of globs, it will not cause a cache miss.\n\nIf omitted or empty, all files in the package are considered as inputs.\n\nDocumentation: https://turborepo.
|
|
172
|
+
"description": "The set of glob patterns to consider as inputs to this task.\n\nChanges to files covered by these globs will cause a cache miss and the task will be rerun.\n\nIf a file has been changed that is **not** included in the set of globs, it will not cause a cache miss.\n\nIf omitted or empty, all files in the package are considered as inputs.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#inputs",
|
|
169
173
|
"default": []
|
|
170
174
|
},
|
|
171
175
|
"outputLogs": {
|
|
172
176
|
"$ref": "#/definitions/OutputLogs",
|
|
173
|
-
"description": "Output mode for the task.\n\n\"full\": Displays all output\n\n\"hash-only\": Show only the hashes of the tasks\n\n\"new-only\": Only show output from cache misses\n\n\"errors-only\": Only show output from task failures\n\n\"none\": Hides all task output\n\nDocumentation: https://turborepo.
|
|
177
|
+
"description": "Output mode for the task.\n\n\"full\": Displays all output\n\n\"hash-only\": Show only the hashes of the tasks\n\n\"new-only\": Only show output from cache misses\n\n\"errors-only\": Only show output from task failures\n\n\"none\": Hides all task output\n\nDocumentation: https://turborepo.dev/docs/reference/run#--output-logs-option",
|
|
174
178
|
"default": "full"
|
|
175
179
|
},
|
|
176
180
|
"persistent": {
|
|
177
181
|
"type": "boolean",
|
|
178
|
-
"description": "Indicates whether the task exits or not. Setting `persistent` to `true` tells turbo that this is a long-running task and will ensure that other tasks cannot depend on it.\n\nDocumentation: https://turborepo.
|
|
182
|
+
"description": "Indicates whether the task exits or not. Setting `persistent` to `true` tells turbo that this is a long-running task and will ensure that other tasks cannot depend on it.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#persistent",
|
|
179
183
|
"default": false
|
|
180
184
|
},
|
|
181
185
|
"interactive": {
|
|
182
186
|
"type": "boolean",
|
|
183
|
-
"description": "Mark a task as interactive allowing it to receive input from stdin. Interactive tasks must be marked with \"cache\": false as the input they receive from stdin can change the outcome of the task.\n\nDocumentation: https://turborepo.
|
|
187
|
+
"description": "Mark a task as interactive allowing it to receive input from stdin. Interactive tasks must be marked with \"cache\": false as the input they receive from stdin can change the outcome of the task.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#interactive",
|
|
184
188
|
"default": false
|
|
185
189
|
},
|
|
186
190
|
"interruptible": {
|
|
187
191
|
"type": "boolean",
|
|
188
|
-
"description": "Label a persistent task as interruptible to allow it to be restarted by `turbo watch`. `turbo watch` watches for changes to your packages and automatically restarts tasks that are affected. However, if a task is persistent, it will not be restarted by default. To enable restarting persistent tasks, set `interruptible` to true.\n\nDocumentation: https://turborepo.
|
|
192
|
+
"description": "Label a persistent task as interruptible to allow it to be restarted by `turbo watch`. `turbo watch` watches for changes to your packages and automatically restarts tasks that are affected. However, if a task is persistent, it will not be restarted by default. To enable restarting persistent tasks, set `interruptible` to true.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#interruptible",
|
|
189
193
|
"default": false
|
|
190
194
|
},
|
|
191
195
|
"with": {
|
|
@@ -193,7 +197,7 @@
|
|
|
193
197
|
"items": {
|
|
194
198
|
"type": "string"
|
|
195
199
|
},
|
|
196
|
-
"description": "A list of tasks that will run alongside this task.\n\nTasks in this list will not be run until completion before this task starts execution.\n\nDocumentation: https://turborepo.
|
|
200
|
+
"description": "A list of tasks that will run alongside this task.\n\nTasks in this list will not be run until completion before this task starts execution.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#with",
|
|
197
201
|
"default": []
|
|
198
202
|
}
|
|
199
203
|
},
|
|
@@ -216,7 +220,7 @@
|
|
|
216
220
|
},
|
|
217
221
|
"enabled": {
|
|
218
222
|
"type": "boolean",
|
|
219
|
-
"description": "Indicates if the remote cache is enabled. When `false`, Turborepo will disable all remote cache operations, even if the repo has a valid token. If true, remote caching is enabled, but still requires the user to login and link their repo to a remote cache. Documentation: https://turborepo.
|
|
223
|
+
"description": "Indicates if the remote cache is enabled. When `false`, Turborepo will disable all remote cache operations, even if the repo has a valid token. If true, remote caching is enabled, but still requires the user to login and link their repo to a remote cache. Documentation: https://turborepo.dev/docs/core-concepts/remote-caching",
|
|
220
224
|
"default": true
|
|
221
225
|
},
|
|
222
226
|
"preflight": {
|
|
@@ -226,12 +230,12 @@
|
|
|
226
230
|
},
|
|
227
231
|
"apiUrl": {
|
|
228
232
|
"type": "string",
|
|
229
|
-
"description": "Set endpoint for API calls to the remote cache. Documentation: https://turborepo.
|
|
233
|
+
"description": "Set endpoint for API calls to the remote cache. Documentation: https://turborepo.dev/docs/core-concepts/remote-caching#self-hosting",
|
|
230
234
|
"default": "https://vercel.com/api"
|
|
231
235
|
},
|
|
232
236
|
"loginUrl": {
|
|
233
237
|
"type": "string",
|
|
234
|
-
"description": "Set endpoint for requesting tokens during `turbo login`. Documentation: https://turborepo.
|
|
238
|
+
"description": "Set endpoint for requesting tokens during `turbo login`. Documentation: https://turborepo.dev/docs/core-concepts/remote-caching#self-hosting",
|
|
235
239
|
"default": "https://vercel.com"
|
|
236
240
|
},
|
|
237
241
|
"timeout": {
|
|
@@ -326,7 +330,7 @@
|
|
|
326
330
|
"properties": {
|
|
327
331
|
"$schema": {
|
|
328
332
|
"type": "string",
|
|
329
|
-
"default": "https://turborepo.
|
|
333
|
+
"default": "https://turborepo.dev/schema.v2.json"
|
|
330
334
|
},
|
|
331
335
|
"tasks": {
|
|
332
336
|
"type": "object",
|
|
@@ -334,7 +338,7 @@
|
|
|
334
338
|
"$ref": "#/definitions/Pipeline",
|
|
335
339
|
"description": "The name of a task that can be executed by turbo. If turbo finds a workspace package with a package.json scripts object with a matching key, it will apply the pipeline task configuration to that npm script during execution."
|
|
336
340
|
},
|
|
337
|
-
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.
|
|
341
|
+
"description": "An object representing the task dependency graph of your project. turbo interprets these conventions to schedule, execute, and cache the outputs of tasks in your project.\n\nDocumentation: https://turborepo.dev/docs/reference/configuration#tasks",
|
|
338
342
|
"default": {}
|
|
339
343
|
},
|
|
340
344
|
"extends": {
|
package/src/types/config-v1.ts
CHANGED
|
@@ -25,7 +25,7 @@ export interface PipelineV1 {
|
|
|
25
25
|
* same package (e.g. "A package's test and lint commands depend on its own build being
|
|
26
26
|
* completed first.")
|
|
27
27
|
*
|
|
28
|
-
* Documentation: https://turborepo.
|
|
28
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#dependson
|
|
29
29
|
*
|
|
30
30
|
* @defaultValue `[]`
|
|
31
31
|
*/
|
|
@@ -39,7 +39,7 @@ export interface PipelineV1 {
|
|
|
39
39
|
* You no longer need to use the $ prefix.
|
|
40
40
|
* (e.g. $GITHUB_TOKEN → GITHUB_TOKEN)
|
|
41
41
|
*
|
|
42
|
-
* Documentation: https://turborepo.
|
|
42
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#env
|
|
43
43
|
*
|
|
44
44
|
* @defaultValue `[]`
|
|
45
45
|
*/
|
|
@@ -50,7 +50,7 @@ export interface PipelineV1 {
|
|
|
50
50
|
* task's environment, but should not contribute to the task's cache key,
|
|
51
51
|
* e.g. `AWS_SECRET_KEY`.
|
|
52
52
|
*
|
|
53
|
-
* Documentation: https://turborepo.
|
|
53
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#passthroughenv
|
|
54
54
|
*
|
|
55
55
|
* @defaultValue `null`
|
|
56
56
|
*/
|
|
@@ -71,7 +71,7 @@ export interface PipelineV1 {
|
|
|
71
71
|
* produce no artifacts other than logs (such as linters). Logs are always treated as a
|
|
72
72
|
* cacheable artifact and never need to be specified.
|
|
73
73
|
*
|
|
74
|
-
* Documentation: https://turborepo.
|
|
74
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#outputs
|
|
75
75
|
*
|
|
76
76
|
* @defaultValue `[]`
|
|
77
77
|
*/
|
|
@@ -82,7 +82,7 @@ export interface PipelineV1 {
|
|
|
82
82
|
*
|
|
83
83
|
* Setting cache to false is useful for long-running "watch" or development mode tasks.
|
|
84
84
|
*
|
|
85
|
-
* Documentation: https://turborepo.
|
|
85
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#cache
|
|
86
86
|
*
|
|
87
87
|
* @defaultValue `true`
|
|
88
88
|
*/
|
|
@@ -99,7 +99,7 @@ export interface PipelineV1 {
|
|
|
99
99
|
*
|
|
100
100
|
* If omitted or empty, all files in the package are considered as inputs.
|
|
101
101
|
*
|
|
102
|
-
* Documentation: https://turborepo.
|
|
102
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#inputs
|
|
103
103
|
*
|
|
104
104
|
* @defaultValue `[]`
|
|
105
105
|
*/
|
|
@@ -118,7 +118,7 @@ export interface PipelineV1 {
|
|
|
118
118
|
*
|
|
119
119
|
* "none": Hides all task output
|
|
120
120
|
*
|
|
121
|
-
* Documentation: https://turborepo.
|
|
121
|
+
* Documentation: https://turborepo.dev/docs/reference/run#--output-logs-option
|
|
122
122
|
*
|
|
123
123
|
* @defaultValue `"full"`
|
|
124
124
|
*/
|
|
@@ -129,7 +129,7 @@ export interface PipelineV1 {
|
|
|
129
129
|
* turbo that this is a long-running task and will ensure that other tasks
|
|
130
130
|
* cannot depend on it.
|
|
131
131
|
*
|
|
132
|
-
* Documentation: https://turborepo.
|
|
132
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#persistent
|
|
133
133
|
*
|
|
134
134
|
* @defaultValue `false`
|
|
135
135
|
*/
|
|
@@ -140,7 +140,7 @@ export interface PipelineV1 {
|
|
|
140
140
|
* Interactive tasks must be marked with "cache": false as the input
|
|
141
141
|
* they receive from stdin can change the outcome of the task.
|
|
142
142
|
*
|
|
143
|
-
* Documentation: https://turborepo.
|
|
143
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#interactive
|
|
144
144
|
*
|
|
145
145
|
* @defaultValue `false`
|
|
146
146
|
*/
|
|
@@ -148,14 +148,14 @@ export interface PipelineV1 {
|
|
|
148
148
|
}
|
|
149
149
|
|
|
150
150
|
export interface BaseSchemaV1 {
|
|
151
|
-
/** @defaultValue `https://turborepo.
|
|
151
|
+
/** @defaultValue `https://turborepo.dev/schema.v1.json` */
|
|
152
152
|
$schema?: string;
|
|
153
153
|
/**
|
|
154
154
|
* An object representing the task dependency graph of your project. turbo interprets
|
|
155
155
|
* these conventions to schedule, execute, and cache the outputs of tasks in
|
|
156
156
|
* your project.
|
|
157
157
|
*
|
|
158
|
-
* Documentation: https://turborepo.
|
|
158
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#tasks
|
|
159
159
|
*
|
|
160
160
|
* @defaultValue `{}`
|
|
161
161
|
*/
|
|
@@ -201,7 +201,7 @@ export interface RemoteCacheV1 {
|
|
|
201
201
|
* Indicates if the remote cache is enabled. When `false`, Turborepo will disable
|
|
202
202
|
* all remote cache operations, even if the repo has a valid token. If true, remote caching
|
|
203
203
|
* is enabled, but still requires the user to login and link their repo to a remote cache.
|
|
204
|
-
* Documentation: https://turborepo.
|
|
204
|
+
* Documentation: https://turborepo.dev/docs/core-concepts/remote-caching
|
|
205
205
|
*
|
|
206
206
|
* @defaultValue `true`
|
|
207
207
|
*/
|
|
@@ -223,7 +223,7 @@ export interface RootSchemaV1 extends BaseSchemaV1 {
|
|
|
223
223
|
* that are not represented in the traditional dependency graph
|
|
224
224
|
* (e.g. a root tsconfig.json, jest.config.ts, .eslintrc, etc.)
|
|
225
225
|
*
|
|
226
|
-
* Documentation: https://turborepo.
|
|
226
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#globaldependencies
|
|
227
227
|
*
|
|
228
228
|
* @defaultValue `[]`
|
|
229
229
|
*/
|
|
@@ -234,7 +234,7 @@ export interface RootSchemaV1 extends BaseSchemaV1 {
|
|
|
234
234
|
*
|
|
235
235
|
* The variables included in this list will affect all task hashes.
|
|
236
236
|
*
|
|
237
|
-
* Documentation: https://turborepo.
|
|
237
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#globalenv
|
|
238
238
|
*
|
|
239
239
|
* @defaultValue `[]`
|
|
240
240
|
*/
|
|
@@ -244,7 +244,7 @@ export interface RootSchemaV1 extends BaseSchemaV1 {
|
|
|
244
244
|
* An allowlist of environment variables that should be made to all tasks, but
|
|
245
245
|
* should not contribute to the task's cache key, e.g. `AWS_SECRET_KEY`.
|
|
246
246
|
*
|
|
247
|
-
* Documentation: https://turborepo.
|
|
247
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#globalpassthroughenv
|
|
248
248
|
*
|
|
249
249
|
* @defaultValue `null`
|
|
250
250
|
*/
|
|
@@ -261,7 +261,7 @@ export interface RootSchemaV1 extends BaseSchemaV1 {
|
|
|
261
261
|
/**
|
|
262
262
|
* Configuration options that control how turbo interfaces with the remote cache.
|
|
263
263
|
*
|
|
264
|
-
* Documentation: https://turborepo.
|
|
264
|
+
* Documentation: https://turborepo.dev/docs/core-concepts/remote-caching
|
|
265
265
|
*
|
|
266
266
|
* @defaultValue `{}`
|
|
267
267
|
*/
|
|
@@ -270,7 +270,7 @@ export interface RootSchemaV1 extends BaseSchemaV1 {
|
|
|
270
270
|
/**
|
|
271
271
|
* Enable use of the new UI for `turbo`
|
|
272
272
|
*
|
|
273
|
-
* Documentation: https://turborepo.
|
|
273
|
+
* Documentation: https://turborepo.dev/docs/reference/configuration#ui
|
|
274
274
|
*
|
|
275
275
|
* @defaultValue `false`
|
|
276
276
|
*/
|