Indexed source maps: allGeneratedPositionsFor only returns positions from the first section that contains the source
Les mainteneurs répondent en général sous 5 jours
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 30/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- À l'abandon
- Stack technique
- javascript
- Domaine
- devtools
Piste de recherche
Start at IndexedSourceMapConsumer.prototype.allGeneratedPositionsFor and compare how it searches sections with how eachMapping reports mappings from both. Reproduce the example with two sections listing shared.js, then check that the result contains positions from both sections: lines 1 and 3, with columns 0 and 4. An open pull request (#565) is already linked to this issue.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
IndexedSourceMapConsumer.prototype.allGeneratedPositionsFor looks up the first section whose map lists the requested source and returns positions from that section only. When the same original source appears in more than one section, for example a shared helper module that two concatenated chunks both include, positions in the later sections are missing from the result. Tools that use this method to set breakpoints on an original line miss those generated locations.
Steps to reproduce
const { SourceMapConsumer } = require("source-map");
(async () => {
const map = await new SourceMapConsumer({
version: 3,
file: "min.js",
sections: [
{
offset: { line: 0, column: 0 },
map: { version: 3, sources: ["shared.js"], names: [], mappings: "AAAA" },
},
{
offset: { line: 2, column: 4 },
map: { version: 3, sources: ["shared.js"], names: [], mappings: "AAAA" },
},
],
});
console.log(
map.allGeneratedPositionsFor({ source: "shared.js", line: 1, column: 0 })
);
map.destroy();
})();
Expected result
[ { line: 1, column: 0, lastColumn: null }, { line: 3, column: 4, lastColumn: null } ]
Actual result
[ { line: 1, column: 0, lastColumn: null } ]
map.sources lists shared.js twice, and eachMapping reports both mappings, so only allGeneratedPositionsFor drops the second one.
Reproduced on master at 8c668f3.
- Langage dominant
- JavaScript
- Étoiles
- 3.7k
- Forks
- 392
- Merge moyen
- 4 j 18 h
- PR mergées (30 j)
- 1
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
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 mozilla/source-map
-
SourceMapConsumer.fromSourceMap ignores its sourceMapUrl argumentPeut-être pris @sebxt l’a pris il y a 17 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
mozilla/source-map#544 ·
Les mainteneurs répondent en général sous 5 jours
-
Indexed source maps: lastColumn is not clamped to the next section when the section does not start on line 1Peut-être pris @sebxt l’a pris il y a 19 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
mozilla/source-map#542 ·
Les mainteneurs répondent en général sous 5 jours
-
Indexed column spans ignore section line offsets when clipping at the next sectionPeut-être pris @NUAAwqy l’a pris il y a 25 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
mozilla/source-map#539 ·
Les mainteneurs répondent en général sous 5 jours
-
wasm-mappings fail to build with Rust 1.96+Peut-être pris @MatrixNeoKozak l’a pris il y a 25 jours. Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
mozilla/source-map#530 ·
Les mainteneurs répondent en général sous 5 jours
-
allow wasm to be bundledPeut-être à nouveau libre Une pull request pour cette issue a été fermée sans être fusionnée. Ouverte
Difficulté 4/5 3-5 jours Accessibilité débutants 55/100
mozilla/source-map#527 ·
Les mainteneurs répondent en général sous 5 jours
Toutes les issues de mozilla/source-map
Issues similaires
-
binding:python bug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
Les mainteneurs répondent en général sous 1 jour
-
bug needs-triage potential-regression
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
aws/aws-sdk-js-v3#8408 ·
Les mainteneurs répondent en général sous 1 jour
-
[v3] KeyBindingManager calls (Add/Remove) are not converted into a case-insensitive accelerator.KeyOuverteBug
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
Les mainteneurs répondent en général sous 4 jours
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100