Skip to content

0.6.4

Compare
Choose a tag to compare
@darwin darwin released this 25 Aug 16:15
· 2800 commits to master since this release
v0.6.4

Support for preloads

We have added support for :preloads compiler option. Read the docs here.

This release should also deliver more resilient Dirac DevTools thanks to new Chrome API detection system and better error reporting system.

Stealing API definitions from internal Chrome DevTools

Chrome DevTools (frontend) needs to talk to Chrome Browser (backend) via a debugger protocol. Previous Dirac versions had a definition of this protocol baked-in as a snapshot extracted from chromium repo at the point of release. That is why Dirac had to be used with matching Chrome Canary otherwise the protocol definition could be out-of-sync.

Since this version we try to "steal" protocol definitions from internal DevTools embedded in Chrome you happened to connect to - internal DevTools have always matching protocol definitions because they are bundled inside Chrome. This should relax rigidity of our DevTools fork and work with more Chrome versions. But still you should not diverge too far from recommended Chrome version.

Better error reporting system

When Dirac DevTools frontend throws an unhandled exception, the exception gets printed into Dirac DevTools's console which is normally hidden. We have implemented a system which additionally prints such exceptions into your app's page console as "Dirac Internal Errors". In v0.6.4 this system was extended to properly print unhandled promise rejections and console.error logs as well. Additionally printed internal errors newly contain an info line with Dirac version and various useful state information which should help reporting and troubleshooting possible issues.

image

Rolling DevTools

Embedded DevTools merged 469ec16...031c760.
Should work best with Chrome ~54.0.2840.0.

Notable commits

2b72880 implant: subscribe "unhandledrejection" to report failed promises
28995a0 implement a subsystem for loading backend API specs from user's browser
2b8c5db implant: review eval code
d673fbb fix incorrect ns forms (#33)
3285648 runtime: land support for :preloads
d853110 implant: capture internal error logs and expose them via reporter
4fd4714 implant: render dirac info line when reporting errors
907df32 allow user to specify custom url params for DevTools frontend
01b6364 allow disabling error reporter via an url param
5e88664 devtools: allow toggling debug flags via url params

All new work: v0.6.3...v0.6.4