Skip to content

Esbuild Web Worker Type Safety and Redundant tsconfig.worker.json #30676

Open
@RealOFF

Description

@RealOFF

Command

build

Is this a regression?

  • Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was

No response

Description

When using esbuild as the bundler for Angular projects, the support for web workers appears misleading in terms of type safety:

  • In the previous webpack-based build setup, web workers had proper TypeScript type checking at build time.

  • Currently, esbuild does not type-check web workers during build time. This is not documented or clearly communicated, leading to a false sense of correctness.

  • Additionally, creating a project with a web worker generates a tsconfig.worker.json, which seems redundant because esbuild doesn't use it for type-checking. Also builder contains the webWorkerTsConfig option in the schema, as I understand it, this doesn't affect anything. This can confuse developers into thinking their web worker code is properly validated.

Expected Behavior

Either esbuild-based builder should perform type checking on web worker files, or there should be clear documentation and/or warnings that type-checking is not performed on workers.

Current Behavior

  • No build-time type checking for worker code.

  • Misleading tsconfig.worker.json is generated, giving false confidence in type safety.

Minimal Reproduction

  1. Generate a new Angular project with esbuild (Angular CLI 18+).
  2. Add a web worker via ng generate web-worker.
  3. Introduce a type error in the worker file.
  4. Run ng build – no type error is reported.

Exception or Error


Your Environment

Any version with esbuild bundler.

Anything else relevant?

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions