SourceMapConsumer
. Read about it here:
http://fitzgeraldnick.com/2018/02/26/speed-without-wizardry.htmlSourceMapConsumer
now uses WebAssembly, and is much faster! Read about
it here:
https://hacks.mozilla.org/2018/01/oxidizing-source-maps-with-rust-and-webassembly/
Breaking change: new SourceMapConsumer
now returns a Promise
object
that resolves to the newly constructed SourceMapConsumer
instance, rather
than returning the new instance immediately.
Breaking change: when you’re done using a SourceMapConsumer
instance,
you must call SourceMapConsumer.prototype.destroy
on it. After calling
destroy
, you must not use the instance again.
Breaking change: SourceMapConsumer
used to be able to handle lines,
columns numbers and source and name indices up to 2^53 - 1
(aka
Number.MAX_SAFE_INTEGER
). It can now only handle them up to 2^32 - 1
.
Breaking change: The source-map
library now uses modern ECMAScript-isms:
let
, arrow functions, async
, etc. Use Babel to compile it down to
ECMAScript 5 if you need to support older JavaScript environments.
Breaking change: Drop support for Node < 8. If you want to support older versions of node, please use v0.6 or below.
Fix for regression when people were using numbers as names in source maps. See
Fix “regression” of unsupported, implementation behavior that half the world happens to have come to depend on. See #235.
Fix regression involving function hoisting in SpiderMonkey. See #233.
ef7006f8d1
.files
. See
issue #212.ff05274bec
.Node 0.8 is no longer supported.
Use webpack instead of dryice for bundling.
Big speedups serializing source maps. See pull request #203.
Fix a bug with SourceMapConsumer.prototype.sourceContentFor
and sources that
explicitly start with the source root. See issue #199.
Fix an issue where using a SourceMapGenerator
after having created a
SourceMapConsumer
from it via SourceMapConsumer.fromSourceMap
failed. See
issue #191.
Fix an issue with where SourceMapGenerator
would mistakenly consider
different mappings as duplicates of each other and avoid generating them. See
issue #192.
A very large number of performance improvements, particularly when parsing source maps. Collectively about 75% of time shaved off of the source map parsing benchmark!
Fix a bug in SourceMapConsumer.prototype.allGeneratedPositionsFor
and fuzzy
searching in the presence of a column option. See issue #177.
Fix a bug with joining a source and its source root when the source is above the root. See issue #182.
Add the SourceMapConsumer.prototype.hasContentsOfAllSources
method to
determine when all sources’ contents are inlined into the source map. See
issue #190.
Add an .npmignore
file so that the benchmarks aren’t pulled down by
dependent projects. Issue #169.
Add an optional column
argument to
SourceMapConsumer.prototype.allGeneratedPositionsFor
and better handle lines
with no mappings. Issues #172 and #173.
The default direction for fuzzy searching was changed back to its original direction. See #164.
There is now a bias
option you can supply to SourceMapConsumer
to control
the fuzzy searching direction. See #167.
About an 8% speed up in parsing source maps. See #159.
Added a benchmark for parsing and generating source maps.
Change the default direction that searching for positions fuzzes when there is not an exact match. See #154.
Support for environments using json2.js for JSON serialization. See #156.
SourceMapConsumer.prototype
methods.Performance improvements for SourceMapGenerator
and SourceNode
. See issue
SourceNode
s from different versions of the source-map
library couldn’t be used in conjunction with each other. See issue #142.Fix a bug with getting the source content of relative sources with a “./” prefix. See issue #145 and Bug 1090768.
Add the SourceMapConsumer.prototype.computeColumnSpans
method to compute the
column span of each mapping.
Add the SourceMapConsumer.prototype.allGeneratedPositionsFor
method to find
all generated positions associated with a given original source and line.
names
mapping property to be an empty string. Issue #121.A third optional parameter was added to SourceNode.fromStringWithSourceMap
to specify a path that relative sources in the second parameter should be
relative to. Issue #105.
If no file property is given to a SourceMapGenerator
, then the resulting
source map will no longer have a null
file property. The property will
simply not exist. Issue #104.
Fixed a bug where consecutive newlines were ignored in SourceNode
s.
Issue #116.
Make SourceNode
work with windows style (”\r\n”) newlines. Issue #103.
Fix bug involving source contents and the
SourceMapGenerator.prototype.applySourceMap
. Issue #100.
Fix some edge cases surrounding path joining and URL resolution.
Add a third parameter for relative path to
SourceMapGenerator.prototype.applySourceMap
.
Fix issues with mappings and EOLs.
Fixed a bug where SourceMapConsumer couldn’t handle negative relative columns (issue 92).
Fixed test runner to actually report number of failed tests as its process exit code.
Fixed a typo when reporting bad mappings (issue 87).
Delay parsing the mappings in SourceMapConsumer until queried for a source location.
Support Sass source maps (which at the time of writing deviate from the spec in small ways) in SourceMapConsumer.
Do not join source root with a source, when the source is a data URI.
Extend the test runner to allow running single specific test files at a time.
Performance improvements in SourceNode.prototype.walk
and
SourceMapConsumer.prototype.eachMapping
.
Source map browser builds will now work inside Workers.
Better error messages when attempting to add an invalid mapping to a
SourceMapGenerator
.
names
and sources
arrays of source maps
(usually from TypeScript) we are parsing. Fixes github issue 72.file
property is missing in SourceMapConsumer,
we don’t use it anyway.file://
URIs. See
https://bugzilla.mozilla.org/show_bug.cgi?id=885597Added missing documentation.
Fixed the generating of empty mappings in SourceNode.