Releases: joelesko/tht
Releases · joelesko/tht
v0.8.1 - Minor bugfixes & enhancements
v0.8.0 - Major Refactor, Error Page Re-design
This release contains a ton of refactoring and code changes.
Admittedly this was all solo development done locally, so the diffs aren't going to be very helpful.
- Now requires PHP 8.3
- Refactored and added unit tests (now 2,000+ tests)
- File module converted to
file
anddir
TypeStrings - Re-designed error pages
- Errors pages now do fuzzy matching to suggest methods, keys, etc.
- Error pages show contextual lines above and below source of error
- Added support for
null
keyword - tht.dev website design refreshed
- A lot of bug fixes
v0.7.1 - PHP 8.1 Compatibility
- Fix all warnings and compatibility errors related to PHP 8.1
- Require PHP 8.1
- Misc minor bug fixes
v0.7.0 - Mega Update
This update includes hundreds of changes and bug fixes made during quarantine.
Core
- Streamlined syntax (e.g. no semicolons, outer parens, etc)
- Keyword maps
- Empty lists/maps are falsey
- Support for maps as option arguments.
- Self-assignment. e.g. $str = .upperCase()
- Closures capture all outer variables
- Added OOP
Modules
- Added Email
- Added Form
- Added Page
- Litemark feature flags
Framework
- CSS & JS minification and timestamp tagging
- Image optimization
Error Pages
- Improved documentation links in error pages
- Improved layout of stack trace arguments
Misc
- Now 1500+ unit tests
- Redesign of website, new domain
... and probably a lot more I am forgetting.
v0.6.1 - PHP sideloading, improved error handling
- Allow PHP apps to call THT app code
- Update ErrorHandler to more consistently catch exceptions
- Deep copy Map and Lists via
copy
method - Misc bug fixes
v0.6.0 - PHP-like syntax, one-liners, match, file uploads
Syntax
- Shifted syntax closer to PHP: sigil vars (
$foo
), nolet
,foreach
- No parens needed in control structures
- Added one-liner colon syntax. e.g.
if $foo > 0: print($foo);
- Added lambda/expression functions:
x{ ... }
- Added versatile
match
statement - Added
loop
statement instead of barefor
Major
- Require PHP 7.1+
- Variable scope checked at compile-time
- Prevent standalone expressions/literals
- Added secure uploads to
Input
module - Added
info
command line option - Added
fix
command line option to update file permissions, etc.
Misc
- More robust error handling
- Over 1000 unit tests total
- Numerous minor fixes and updates
v0.5.1 - Change template code lines to `--`
- Changed code lines from
::
to--
for readability
v0.5.0 - Function types, Input Validation, Url TypeStrings
New Language Features
- Optional argument type declarations
- Splat
…
for argument unpacking - Spaceship operator
<=>
@@
alias for current module- Hex
0xabc
and binary digits0b101
- Bitwise operators: e.g.
+&
+|
(like Perl 6)
Framework Features
- Page auto-functions
- Telemetry for error pages
- Doc links in error pages
- Update Perf Panel UI for more auditing
- CSRF token and nonce automatically added to HTML templates
- HSTS headers
New Modules & Classes
- Url
- UrlQuery
- Response
- Request
- Settings
- Input (and validation rules)
- Password
Fixes
v0.2.0 - OOP, Session, Cache
Major
- Added basic OOP support
- Added Session module
- Added Cache module
- Added Net module
Minor
- Added syntax highlighting to error page
- Support
[...]
and{...}
as argument defaults - Added argument type-checking for standard lib
- Added
port
argument fortht server
- Move internal sensitive calls to Security module for easier auditing
- 20+ bug fixes
v0.1.4 - Self-Contained Apps
Major
- Each app now contains a relative copy of the THT runtime to make deployment easier.
- Updated File sandboxing
Minor
- Updated CSS and JS minifiers
- Misc bugfixes and refactoring