library builder: in watch mode, editing a Sass partial doesn't re-emit components that import it via @use

Abierto
#34,124 1 comentario 0 reacciones 1 asignado Ver en GitHub

@alan-agius4 ya está trabajando en esto.

Desde el 18/9/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

angular/build:library area: @angular/build gemini-triaged
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

Found while tesing #34106 cc @alan-agius4

In --watch changing a partial that component stylesheet reaches through @use logs a successful rebuild, but component's CSS in FESM stays old. Editing component's own .scss or .html works (what watch_spec covers)

Non watch builds are fine

Minimal Reproduction
  1. widget.scss: @use './styles/shared' as s; .my-widget { @include s.paint; };
  2. _shared.scss: @mixin paint { color: rgb(1,1,1); }
  3. ng build mylib --watch then change mixin to rgb(2,2,2);
  4. rebuild logs success, FESM still has #010101. Touching widget.ts flushes it and #020202 appears
Exception or Error

Your Environment
@angular/build built from #34106 (e1fa5796) with the repo's own bazel build

Angular CLI 22.1.8, 
Angular 22.1.7, 
Node 24.16.0, 
pnpm 11, 
macOS 25.6, 
14 cores, 
24 GB
Anything else relevant?

sass itself is re-bundled correctly. component never enters affectedFiles because only the direct styleUrl is a known resource dependency. application builder expands modified files with FileReferenceTracker (compiler-plugin.ts); the library pipeline doesn't use it.

On ngwr every component stylesheet @uses the theme partials, so any token or mixin edit in watch is stale.

Lenguaje dominante
TypeScript
Estrellas
27k
Forks
11.8k
Merge medio
16 h 21 min
PR fusionados (30 d)
170

Guía de contribución

Abrir la guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de angular/angular-cli

Todos los issues de angular/angular-cli

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.