Error Pages
Overview
As developers, half of our time is spent in an error state, so THT tries to make errors as easy to debug as possible.
Error messages are written in a clear and direct style, and are presented in a full error page so you can focus on the information you need.
Example compiler error:
Contextual Help
Runtime errors will include a formatted stack strace, including a summary of function arguments.
Suggestions and links to relevant documentation are also included, if available.
Security
Limited Access
Error pages are only displayed if any of the following is true:
- The app is running in
testServer
mode - When accessing the page from
adminIp
, defined insettings/app.jcon
- It has been less than 10 minutes since your app code was last updated
Othwerwise, THT will display a general error message and log the error information to data/files/app.log
.
Paths
To limit the exposure of sensitive directory paths, and also improve readability, THT makes all paths relative to the app root.
// Example path: /home/users/secretUserName/app/pages/home.tht // Converted to: pages/home.tht
Debugging
For basic troubleshooting, output from any print
statements will be appended to the bottom of the error page.
Telemetry
If sendErrors
is set to true
in your settings/app.jcon
, anonymous error information will be sent to tht-lang.org
.
This will help the THT developers fix bugs and find patterns that can further improve the usability of the language.