- Fixes broken wren-essentials Wren -> C compile glitch.
- Upgrades
wren-essentials
tov0.2.1
- Upgrades
Sorry about that, everyone.
Thanks to Camilo, Glenn Jackman, and Bruce Axtens for their contributions!
- (enh) ctrl-H / backspace handling (#19)
- (enh) add
Process.chdir
- (fix) use absolute paths for module directory resolution
- (enh) add
Runtime.assertVersion
- (env) add
Ensure
module for argument validation (#13)Ensure.string(_,_)
,Ensure.num(_,_)
, etc.
- (fix) Path normalize
./../
works corretly now (#14) - (enh)
File.dirname
andFile.basename
(#16) - (enh) add
Runtime.hasCapability
- better capability detection via - (enh) Improvements from newer
wren-essentials
- add
json
module for JSON encode/decode - additional
Strings
utility functions upcase
/downcase
now support Unicode strings
- add
- (enh) much nicer errors if the resolver VM throw a runtime error
- (enh) easily compile additional modules into the executable
- (enh) add
wren-package
as a built-in module
- (enh)
wren_modules
are searched until a matching library is found- this means you can now use both
$HOME/wren_modules
(global modules) - as well a local
./wren_modules
for individual projects - the "closest" match wins, allowing local to win out over global
- this is technically a breaking change from
wren-cli
which stops at the firstwren_modules
it finds
- this means you can now use both
- (fix) absolute script paths work on Windows now
- (fix) mode test
- (fix) cwd test on windows
- (fix) pid test on Windows
- (fix) memory allocation/slot allocation issues
- (fix) freeing stdinStream memory too early
- (enh) Add CI and build artifacts with Linux, Windows, and Mac
- (chore) Auto-build and test binary releases for Windows, Mac, Linux platforms on tagged versions
- (enh) Integrate
Mirror
functionality for stack trace introspection (via wren-essentials) - (fix) Stdin.readByte now propery removes single bytes from buffer
- (enh) support scripts at absolute paths
- (enh) controlled crashes should not include CLI script in stack trace
- (enh) Add
Runtime
API for getting information about the runtime - (enh) Add
Process.exit()
andProcess.exit(code)
- (enh) Add
Stderr.write(_)
andStderr.print(_)
- (fix)
Process.exit()
should actually work properly now - (enh) Add
Process.exec(command, [arguments, [workingDirectory, [environment]]])
- includes Wren Core 0.4
- rewrite a good portion of CLI codebase in pure Wren code (as much as possible)
- module resolution and loading is now brokered by Wren code
- flush stdout before quitting wren-lang#77
- add
-e
flag for code evaluation wren-lang#11 - add
-h
and-v
flags wren-lang#88 - add
-
flag for read script from stdin wren-lang#55 (comment) - add experimental native binary module/library loading support wren-lang#52
- see https://github.com/joshgoebel/wren-essentials for how to build a sample binary library
import "wren_essentials:essentials"
loads the library fromwren_modules/libwren_essentials.dylib
and then imports theessentials
module from that library
- based on wren-cli codebase (9c6b6933722)