source_map_stack_trace 1.1.4

  • Installing
  • Versions
  • 47

source_map_stack_trace is a package for converting stack traces generated by dart2js-compiled JavaScript code into readable native Dart stack traces using source maps. For example:

import 'package:source_map_stack_trace/source_map_stack_trace.dart';

void main() {
  var jsTrace = // Get a StackTrace generated by dart2js.
  var mapping = // Get a source map mapping the JS to the Dart source.

  // Convert jsTrace to refer to the Dart source instead.
  var dartTrace = mapStackTrace(jsTrace, sourceMap);

This can convert the following JavaScript trace:

expect_async_test.dart.browser_test.dart.js 2636:15   dart.wrapException
expect_async_test.dart.browser_test.dart.js 14661:15$0
expect_async_test.dart.browser_test.dart.js 18237:26$1
expect_async_test.dart.browser_test.dart.js 17905:23$0
expect_async_test.dart.browser_test.dart.js 17876:16  StackZoneSpecification._stack_zone_specification$_run$2
expect_async_test.dart.browser_test.dart.js 17899:26$1
expect_async_test.dart.browser_test.dart.js 6115:16   _rootRunUnary
expect_async_test.dart.browser_test.dart.js 8576:39   _CustomZone.runUnary$2
expect_async_test.dart.browser_test.dart.js 7135:57$0
expect_async_test.dart.browser_test.dart.js 7031:147  dart._Future.static._Future__propagateToListeners


dart:_internal/compiler/js_lib/js_helper.dart 1210:1          wrapException
test/frontend/expect_async_test.dart 24:5                     main.<fn>.<fn>
package:test/src/backend/declarer.dart 45:48                  Declarer.test.<fn>.<fn>
package:stack_trace/src/stack_zone_specification.dart 134:30  StackZoneSpecification.registerUnaryCallback.<fn>.<fn>
package:stack_trace/src/stack_zone_specification.dart 210:7   StackZoneSpecification._run
package:stack_trace/src/stack_zone_specification.dart 135:5   StackZoneSpecification.registerUnaryCallback.<fn>
dart:async/zone.dart 904:14                                   _rootRunUnary
dart:async/zone.dart 806:3                                    _CustomZone.runUnary
dart:async/future_impl.dart 486:13                            _Future._propagateToListeners.handleValueCallback
dart:async/future_impl.dart 567:32                            _Future._propagateToListeners


  • Support source maps that depend on the uri of the location to resolve spans correctly.


  • Add a missing dependency on path.


  • Fix a typo in the previous fix.


  • Don't crash if the SyncPackageResolver has no package information at all.


  • mapStackTrace() now uses a SyncPackageResolver object from the package_resolver package to recreate package: URIs.

  • Deprecation: the packageRoot parameter to mapStackTrace is deprecated in favor of the packageInfo parameter described above. It will be removed in a future release.


  • Add compatibility for member names that include named arguments.


  • Add compatibility for Dart 1.10-style name munging.


  • Prefer "dart:" URLs to "package:" URLs.


  • Fix an off-by-one bug that was causing line numbers to be slightly off.


  • Don't crash when mapping stack chains.


  • Initial release.

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:

  source_map_stack_trace: ^1.1.4

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:source_map_stack_trace/source_map_stack_trace.dart';
Version Uploaded Documentation Archive
1.1.5 Jul 19, 2018 Go to the documentation of source_map_stack_trace 1.1.5 Download source_map_stack_trace 1.1.5 archive
1.1.4 Dec 14, 2016 Go to the documentation of source_map_stack_trace 1.1.4 Download source_map_stack_trace 1.1.4 archive
1.1.3 Aug 11, 2016 Go to the documentation of source_map_stack_trace 1.1.3 Download source_map_stack_trace 1.1.3 archive
1.1.2 Jul 27, 2016 Go to the documentation of source_map_stack_trace 1.1.2 Download source_map_stack_trace 1.1.2 archive
1.1.1 Jul 27, 2016 Go to the documentation of source_map_stack_trace 1.1.1 Download source_map_stack_trace 1.1.1 archive
1.1.0 Jul 26, 2016 Go to the documentation of source_map_stack_trace 1.1.0 Download source_map_stack_trace 1.1.0 archive
1.0.4 May 5, 2015 Go to the documentation of source_map_stack_trace 1.0.4 Download source_map_stack_trace 1.0.4 archive
1.0.3 May 4, 2015 Go to the documentation of source_map_stack_trace 1.0.3 Download source_map_stack_trace 1.0.3 archive
1.0.2 Apr 29, 2015 Go to the documentation of source_map_stack_trace 1.0.2 Download source_map_stack_trace 1.0.2 archive
1.0.1 Apr 29, 2015 Go to the documentation of source_map_stack_trace 1.0.1 Download source_map_stack_trace 1.0.1 archive

All 11 versions...

Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.

Analysis issues and suggestions

Support Dart 2 in pubspec.yaml.

The SDK constraint in pubspec.yaml doesn't allow the Dart 2.0.0 release. For information about upgrading it to be Dart 2 compatible, please see

Maintenance issues and suggestions

Running dartdoc failed. (-10 points)

Make sure dartdoc runs without any issues.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.8.0 <2.0.0