Today we're shipping a small but lovely upgrade to Flare: every query exception now comes with a SQL statement you can actually copy and run.
Here's what query exceptions used to look like:

Query exceptions in Flare have shown the executed SQL for years. Can you spot the problem? Those UUIDs are strings, so they need quotes. Paste this into your database client and you get a syntax error. Laravel builds the message that way on purpose (exception constructors have to stay cheap and safe), so the bindings go in raw.
We weren't happy with that. Flare is where you go to fix things fast, and a broken SQL string slows you down every time you hit one.
So we added a step in the newest laravel-flare client. Before the message is sent to Flare, we walk the bindings and format them properly:

Click, copy, paste, run. The way it should have always been.
Happy debugging!
Continue reading
Automatic breadcrumbs recording and GDPR consent
The latest JavaScript client can record breadcrumbs for you: the clicks, navigations, and HTTP requests a user made before an error, so you can retrace their steps. We also added a consent hook, so nothing is sent to Flare until a visitor accepts your cookie or GDPR banner.
Dries
Every exception has a backstory: introducing previous exceptions in Flare
Flare now shows previous exceptions. Navigate the whole chain and see the stack trace of the exception that actually caused the failure.
Ruben
Subscribe to Backtrace, our quarterly Flare newsletter
No spam, just news & product updates