# `Forcola.Stream.Error`
[🔗](https://github.com/joshrotenberg/forcola/blob/v0.3.2/lib/forcola/stream.ex#L77)

Raised when a streamed run does not end with a clean zero exit.

Fields:

  * `:status` - exit code, `{:signal, n}` for death by signal, or
    `{:signal, :unconfirmed}` when the shim never confirmed death
  * `:timed_out` - whether the run hit the whole-run `:timeout_ms`
  * `:idle_timed_out` - whether the run hit `:idle_timeout_ms` (no
    output arrived within the idle interval); mutually exclusive with
    `:timed_out`
  * `:stderr` - stderr captured before termination (empty when
    `merge_stderr: true` routed it into the line stream)
  * `:reason` - spawn failure reason, `nil` for a run that started

# `t`

```elixir
@type t() :: %Forcola.Stream.Error{
  __exception__: true,
  idle_timed_out: boolean(),
  reason: String.t() | atom() | nil,
  status: non_neg_integer() | {:signal, atom() | non_neg_integer()} | nil,
  stderr: binary(),
  timed_out: boolean()
}
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
