Zax wrote: ↑Sat Sep 10, 2022 6:50 am
FourthWorld wrote: ↑Fri Sep 09, 2022 4:59 pm
I made my own error reporting stack that looks and behaves exactly as I like. Trap the errorDialog message to handle errors however you like.
Radical and effective solution, Richard.
Thank you.
Does it work with built-in
revmail, or do you prefer to use a custom mail engine mais tsNet?
I use a custom equivalent of revMail ("launch URL" with the "mailto:" service specifier), for two reasons:
1. As a user I like having my email in one place, and imagine at least some of my customers do too.
2. When sending info about a user's system I prefer to err on the side of transparency, allowing the user to see exactly what's being sent. Of course they won't understand all of it, but at least they can see I'm not including any personal info, file paths to personal files, or anything else that might compromise their privacy.
LC makes it easy to make dialog windows, and the errordialog message was created for error reporting, so it never struck me as unusual to use the tools provided to deliver the UX I'm looking for. Error handling just struck me as the same sort of thing as making an About box or anything other part of the app.
LC's option for this came along relatively late for me, and while I've used it in a few quickie things the absence of executionContexts (how does one debug without knowing the calling chain?) and system info (platform, version, screen size, disk space, other basics) made it a nonstarter for me.
I'm updating mine for an app I'm upgrading. It's self-contained so "start using" is all that's needed to let it do it's thing. Recipient address is currently a custom prop, but now that I have some clients where we route those to automated mail handling I'll add an init message to set recipient and possibly other details. When I get that done I can share it is it's useful.
But I'm not sure how many would use it. I see a great many messages in our community with raw error info provided, suggesting relatively few are even using LC's error dialog.
One of the reasons GBs of tooling on my HD haven't yet been shared is justifying the time for documentation and more thorough error checking. Like Steven McConnell says in "Code Complete":
The difference between a tool and a product is that with a tool it need only be necessary to use it correctly, but with a product it should be impossible to use it incorrectly.
I love LC but the audience is small. Donations for things like my
devolution toolkit are much appreciated and have covered a couple of dinners out, but haven't yet been enough to justify time away from client work to integrate some of the other tooling floating around my drives like project metrics (static analysis for identifying complexity using the McCabe Index algo adapted for xTalk characteristics, global var and general calling chain patterns, etc.), versioning (diff and merge for binary stack files), and template stacks (like error handing, About, list picker, basic dialog template, and other generic essentials).
But on the other hand, one upside to a small audience is that expectations for completeness are lower.

So I'll see if I can get that error dialog sharable when I can get back to it soon.