Originally developed in 2009, source maps have become ubiquitous, consumed by all major browsers and generated by every bundler in the JavaScript ecosystem. While the support for them is widespread, the specification itself has remained largely unchanged since 2009. Because of this, feature development has been very difficult to navigate. Some browsers have added their own functionality, but without the ability to influence the tools generating source maps, support is limited.
In 2023, we formed a group specifically dedicated to the completion and modernization of source maps. We presented to TC39 in July and became an official TC39 Task Group. Since then, we’ve been hard at work rounding out the current specification, looking forward to new features and making sure everyone agrees on the existing features. This talk will be focused on the new and exciting features we’re bringing to the specification. We’re actively working on Debug IDs for easier identification in error monitoring tools, Scopes for improved and consistent variable name and scope information in debugging tools and Range Mappings for helping debuggers find more accurate places in source code.