zed/crates/task/test_data/tasks-npm.json
Levin Rickert 1274a5dc25
task: Support path property on VS Code npm tasks (#62044)
# Objective

npm tasks in VS Code support a `path` property which works like
`options.cwd` but it's always relative to the workspace folder.

## Solution

`cwd` is being set based on `path` of npm tasks. If `options.cwd` is
also set, it wins over the `path` property. This matches the behavior of
VS Code.

## Testing

A new test case has been added, testing deserialization of `path` and
`options.cwd`.

## Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [ ] Unsafe blocks (if any) have justifying comments
- [ ] The content adheres to Zed's UI standards
([UX/UI](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
and
[icon](https://github.com/zed-industries/zed/blob/main/crates/icons/README.md)
guidelines)
- [x] Tests cover the new/changed behavior
- [ ] Performance impact has been considered and is acceptable

---

Release Notes:

- Added support for `path` property on VS Code npm tasks
2026-08-18 07:58:21 +00:00

38 lines
710 B
JSON

{
"version": "2.0.0",
"tasks": [
{
"label": "With env",
"type": "npm",
"script": "build",
"options": {
"env": {
"NODE_ENV": "production"
}
}
},
{
"label": "With path",
"type": "npm",
"script": "build",
"path": "packages/components"
},
{
"label": "With cwd",
"type": "npm",
"script": "build",
"options": {
"cwd": "${workspaceFolder}/packages/app"
}
},
{
"label": "With path and cwd",
"type": "npm",
"script": "build",
"path": "packages/components",
"options": {
"cwd": "${workspaceFolder}/packages/app"
}
}
]
}