dts: declaration maps (.d.ts.map) are not updated after Ivy members are injected
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 48/100
- Type d'issue
- Bug
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- rust, typescript
- Domaine
- build-system, developer-experience
Piste de recherche
Start by tracing injectDtsDeclarations and dts_inject, then inspect the dts plugin's generateBundle hook and how Rolldown handles declaration map assets and renderChunk maps. Reproduce with tsdown and rolldown-plugin-dts using declaration sourcemaps. Done means injected declaration members have correct source mappings and hashed .d.ts chunk names stay in sync.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Found while reviewing #683.
The dts plugin rewrites .d.ts text in generateBundle (adds import * as i0 … and the static ɵ… members) but leaves the declaration map alone. In rolldown, the written .d.mts.map is a separate asset that is already in the bundle at that point, so it keeps the old line numbers.
tsdown / rolldown-plugin-dts with dts sourcemap: .d.mts.map is byte-identical with and without the members
line 1 is now `import * as i0 …`, so the first mapping (meant for HelloComponent) points at the import,
and every later class is off by 1 + (number of added member lines)
→ go-to-definition in a consumer's IDE opens the wrong line of the source .ts
The asset path has the same gap. A fix needs the injection points: injectDtsDeclarations only returns the new string, and it doesn't always add whole lines (it splits declare class X {} before the }). Options: have dts_inject return its splices and shift the map (mappings groups per line), or inject from a renderChunk (order: 'post') hook that returns a map. Reviewers checked that rolldown chains such a map, and it also keeps the [hash] of hashed .d.ts chunks in sync.
- Langage dominant
- Rust
- Étoiles
- 245
- Forks
- 26
- Merge moyen
- 1 j 42 min
- PR mergées (30 j)
- 83
Préparer son environnement
Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de voidzero-dev/oxc-angular-compiler
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
voidzero-dev/oxc-angular-compiler#686 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
voidzero-dev/oxc-angular-compiler#694 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 48/100
voidzero-dev/oxc-angular-compiler#692 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 4/5 3-5 jours Accessibilité débutants 43/100
voidzero-dev/oxc-angular-compiler#691 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 3/5 1-2 jours Accessibilité débutants 72/100
voidzero-dev/oxc-angular-compiler#690 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de voidzero-dev/oxc-angular-compiler
Issues similaires
-
bug good first issue help wanted linux macos testing
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
Les mainteneurs répondent en général sous 1 jour
-
area: app type: test
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
bug priority: medium
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
storytold/photocraft#12706 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 68/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 85/100
IngvarConsulting/unica#2822 ·
Les mainteneurs répondent en général sous 1 jour