Anton Gilgur e8f59ef485
fix: don't error out while catching a buildStart error (#422)
- per in-line comment, if an error occurs during `buildStart` initialization, then the `cache` may not exist yet during `buildDone`
  - since we now use `context.error` instead of `throw` during initialization (from the `options` -> `buildStart` change), `buildEnd` will run during initialization
    - and the `cache` var is initialized in `buildStart` as well, so if an error occurs before then, the `cache` won't exist
      - we should gracefully handle this in all cases, since it's possible that even creating the `cache` could throw an error

- this error was hiding the underlying error, which was problematic for DX as well as bug reports (see my issue follow-up)

- add an integration test for `tsconfig` to make sure this code works
  - while this is similar to the previous `tsconfig` integration tests (that were moved to unit tests), this covers all cases of `buildStart` errors, and is not specific to the different `tsconfig` errors (unlike the unit tests)
  - this test will fail without the source code changes in this commit
2022-09-20 09:47:04 -06:00
..
2018-02-08 11:15:26 -07:00