Releases: ArkForgeLabs/Astra
Releases Β· ArkForgeLabs/Astra
v0.29.3 - more Astra windows path fixes
0.29.3 - 2025-10-03
Bug Fixes
- further fixes to Astra on windows having path issues - (4d3e7cb)
Full Changelog: v0.29.2...v0.29.3
v0.29.2 - teal windows fix
v0.29.1 - teal loading fix
0.29.1 - 2025-09-22
This release fixes bugs related to #106
Bug Fixes
- exports now correctly to the appropriate folder - (388ff2f)
- teal loading stdlib modules on runtime checks - (145242b)
Full Changelog: v0.29.0...v0.29.1
v0.29.0 - Teal support
0.29.0 - 2025-09-14
Bug Fixes
- loading stdlib and globals without exported local folder - (ec622d3)
Documentation
- updatd documentation for the new import api - (87396b8)
Features
- teal code can now be loaded and even mixed with normal lua code without additional steps - (6bf04c4)
- [breaking] removed import as require is now working safely - (bf3feac)
- teal can now run directly, and script paths are now known during runtime, and debug and jit libraries are now available - (a9edfba)
- better file IO error delegation from Rust to Lua - (c83c918)
- now importing for teal and lua works wonderfully with the standard library folder as well - (46f7043)
- added Teal types - (69bd843)
- runtime teal checks before runs - (71e76ba)
- added ability to turn off teal compile checks when running astra - (e2573e3)
- added teal examples and fixed bugs - (1b7b3fa)
Refactoring
- moved all the type definition files to their own space - (bfa7fa2)
- moved teal from global to behind Astra table - (b49be8c)
- added primitive global Astra function types - (2db0d51)
- delegated error check of globals, and cleaned up code elsewhere - (e4deeaf)
- now exports teal libraries too and the export folder standardized - (546d28f)
- renamed
astra_stdlibtoastra- (6b34330) - moved away from Astra global namespace in favor of importing needed functionality. - (1c54ce2)
Astra.dotenv_loadmoved to globaldotenv_load- (1c54ce2)Astra.regexmoved to globalregex- (1c54ce2)Astra.cryptomoved to libastra.lua.crypto- (1c54ce2)Astra.jsonmoved to libastra.lua.serializer- (1c54ce2)Astra.database_connectmoved to libastra.lua.databaseanddatabase_connectrenamed toconnect- (1c54ce2)Astra.datetimemoved to libastra.lua.datetime- (1c54ce2)Astra.httpmoved to libastra.lua.http- (1c54ce2)Astra.iomoved to libastra.lua.io- (1c54ce2)Astra.pubsubandAstra.observablemoved to libastra.lua.stores- (1c54ce2)Astra.new_templating_enginemoved to libastra.lua.jinja2andnew_templating_enginerenamed tonew_engine- (1c54ce2)Astra.validate_tablemoved to libastra.lua.validate_table- (1c54ce2)- moved the examples to the new api - (da95232)
- renamed
validate_tabletovalidationas there is plans for more validation options in the future - (da95232) - separated the teal type check from teal loader - (f42a72a)
- consistent api for jinja and database - (fb3733f)
PRs
- Teal support by @ElhamAryanpur in #104
Full Changelog: v0.28.1...v0.29.0
v0.28.1 - getenv fix
0.28.1 - 2025-09-03
Bug Fixes
- return empty string when no reason provided for
send_close- (73271d1) - #13 - (73271d1)
- getenv not returning - (58571c9)
Documentation
- proper documentation for websockets - (5a3fcf6)
- #13 - (5a3fcf6)
- updated minor issue with websockets docs - (8488733)
Features
- send_code({1000})` - (4091039)
- can send a reasonless close frame without wrapping it in braces - (4091039)
- #13 - (4091039)
What's Changed
- WebSocket documentation updates by @khushmmehta in #103
Full Changelog: v0.28.0...v0.28.1
v0.28.0
0.28.0 - 2025-09-02
Bug Fixes
- link to middleware.lua in middleware.md (#87) - (2a70d97)
- prelude registeration not loading the packed libs correctly - (6145502)
- prelude error when the dependency for the module has not yet been loaded - (a5df91f)
- websocket route not being recognized - (ebe4074)
- barebones websocket lua api (needs more fixing) - (3f28d3b)
- #13, #98 - (3f28d3b)
- get rid of all unwrap and extracts - (6519e66)
- #13, #98 - (6519e66)
- issues fixed with bytes and normal send structure - (5ac6273)
- returns an empty string when reason not given - (146b454)
- #13, #98 - (146b454)
Documentation
- updated middleware and sql driver - (8cf1f5a)
Features
- Middleware system documentation - (258b332)
- type detection and definition for HTTP Request params - (4d9c6e8)
- URL parameters parsing (#85) - (04be222)
- datetime format function for custom formatting - (b9d154e)
- websocket implementation (doesn't work) - (f96893d)
- #13 - (f96893d)
- broken websocket api - (e04ca74)
- #13 #98 - (e04ca74)
- the websocket recv now returns type and value - (32280f2)
- mlua functions for sending websocket messages - (75fd957)
- #13, 98 - (75fd957)
Fix
Refactoring
- minor cleanups done to the middleware example - (1874c90)
- less bloated version - (d8a0d12)
- clamped libs together and moved middleware to http - (31dff80)
- export now removes previously exported content - (3b3a842)
- update command now recommends reexporting the type definitions - (f1a5327)
- unnecessary error messages - (e06bf1a)
- renamed binary to bytes - (097e8ce)
- updated the datetime test and its formatting - (4721d6e)
Pull Requests Merged
- POC middleware system by @0riginaln0 in #74
- feat: URL parameters parsing by @0riginaln0 in #85
- fix: link to middleware.lua in middleware.md by @0riginaln0 in #87
- Update sql_driver.md by @0riginaln0 in #90
- Update astra_build.lua by @0riginaln0 in #94
- Modules load fix by @0riginaln0 in #95
- Issue #51: datetime testing added (lust) by @supawitgolf in #96
- issue #89: datetime format update (to ISO 8601) by @supawitgolf in #97
- Add Schema Validation Tests by @supawitgolf in #99
- HTTP server testing added by @supawitgolf in #101
- Websockets by @khushmmehta in #98
New Contributors
- @supawitgolf made their first contribution in #96
Full Changelog: v0.27.0...v0.28.0
v0.27.0 - Datetime improvements
Features
- [breaking] multiple of datetime creation methods was replaced by
Astra.datetime.new- (25e9c21)
Full Changelog: v0.26.0...v0.27.0
v0.26.0 - Observable and PubSub stores
What's Changed
- Data stores by @khushmmehta in #82
This update introduces Observable and PubSub stores to Astra. You can use these amazing utilities to introduce reactivity to your software with ease!
Bug Fixes
- delegate subcounter and enforce type preference - (6b98b67)
Documentation
Features
- implement observer pattern - (14141a4)
Miscellaneous Chores
- prefer function type for publish - (ad6e812)
Performance
- hashed tables for observee-subscriber sets #26 - (3a7ae14)
- use a hash table to store subscribers - (75f10be)
Full Changelog: v0.25.1...v0.26.0
v0.25.1 - fix: exported library loading
Bug Fixes
- exported modules aren't interpreted - (4c052d8)
Refactoring
- always checks for .astra folder first - (756d768)
Full Changelog: v0.25.0...v0.25.1
v0.25.0 - PubSub stores and exported module loading
What's Changed
- feat: implement pubsub stores by @khushmmehta in #75
- Load Exported Modules by @ElhamAryanpur in #77
Features
- implement pubsub stores #26 - (ec958c9)
- implement pubsub stores (#75) - (cf1089b)
- the runtime now prioritizes loading the locally exported modules instead of bundled modules - (64b0869)
Miscellaneous Chores
- read the default folder or loaded folder from .luarc.json - (6761d5b)
Refactoring
Full Changelog: v0.24.1...v0.25.0