# build_failed

> The local build found problems; the output lists each one with its own code.

| | |
| --- | --- |
| Kind | `disko` command error |
| `disko` exit code | 1 (problems) |

`disko publish` (with or without `--dry-run`) builds and checks the project
before anything is uploaded. When the build finds problems, the command fails
with `build_failed`, exits with code 1 and lists every problem. Each problem
has its own `code`, `path`, `line`, `column`, a `message` that states the fix
and a `docs` link to its page.

```json
{
  "ok": false,
  "command": "publish",
  "error": "build_failed",
  "message": "the build found 1 problem(s); fix them and run again",
  "problems": [
    {
      "code": "import_unresolved",
      "path": "src/main.ts",
      "line": 1,
      "column": 27,
      "message": "…",
      "docs": "https://docs.disko.ooo/errors/import_unresolved"
    }
  ]
}
```

## Fix

Fix each listed problem, starting with the first, then run
`disko publish --dry-run` again. Nothing was uploaded, so no version was used
up.

## See also

- [Error codes](/errors)
- [Publish a release](/get-started/publish)
