Releases: BastianBlokland/novus
Releases · BastianBlokland/novus
v0.18.0
Changes:
- nrm: Add basic 'rm' style application (#258)
- opt: Add rudimentary maximum optimize heuristics (#257)
- std: Library side equality (#256)
- Utilities: np4 - Perforce cli wrapper (#255)
- vm: Add support for detached processes (#254)
- vm: Fix failing to kill processes on linux (#253)
- std: Pass non-whitespace process arg verbatim (#252)
- std: Add support for backward path separators (#251)
- frontend: Fix '?' declaring consts in parent scope (#250)
- frontend: fix using mangled name in operator diags (#249)
- frontend: Fix crash when importing empty path (#248)
- nov-watch: Fix evaluate not working on windows (#247)
- vm: Fix a hanging child process (with piped streams) blocking the vm shutdown on win32 (#246)
- vm: Add OpenOrCreate file-mode (#245)
- vm: Fix 'read on non-read stream' corruption (#244)
- novc: Add 'deps' sub-command (#243)
v0.17.0
v0.16.0
v0.15.0
Changes:
- std: Normalize windows drive letters to upper case (#225)
- utilities: Reimplement watch_ns.sh in novus (#223)
- IO Watcher (#221)
- frontend: Allow duplicate values in enum (#222)
- vm: Support running non-piped child processes (#220)
- Utilities: Basic 'ls' style file listing application (#219)
- opt: Fix win32 float to string pre-compute result
- vm: Add support for specifying float format options (#218)
v0.14.0
v0.13.0
v0.12.0
Changes:
- Static reflection (#204)
- opt: Fix crash due to missing enum conversion (#203)
- std: Fix incorrect printBits overload for int (#200)
- frontend: Fix unchecked optional in typeinfer (#202)
- Fix diagnostics for misplaced commas (#199)
- frontend: Fix crash on duplicate type-param name (#198)
- Convert build-in operators to intrinsics (#197)
- Optimizer: Various new simplifications (#196)
- Move equality operators to library (#195)
- build: Upgrade to catch2 v2.13.4 (#194)
- User defined implicit conversions (#193)
- Std library restructuring (#192)
- nove: No longer run optimizations (#191)
- Structured assert library (#190)
- Type name (#189)
- SourceLoc (#188)
- frontend: SourceTable (#187)
v0.11.0
Changes:
- novrt: Windows installler (#185)
- vm: improve windows terminal processing (#186)
- novc: Produced '.nx' files have the owner exec bit set on unix.
- novc: Use '.nx' extension for output even if no extension was given.
- examples: Snake/Perlin fix cursor reappearing on window resize.
- examples: Snake/Perlin set custom window title.
v0.10.0
Changes:
- Novus source files now use the
.ns
extension (instead of.nov
) (#184). - Novus executable files now use the
.nx
extension (instead of.nova
) (#184). - Add
noinline
modifier you can apply to functions (#183). - backend: Add shebang to the novus executable format (#182).
- vm: Add api to check if stream is terminal (#181).
- novstd: Implement bit utliities for char and long (#180).
- vm,novstd: Implement process kill signal (#179).
- vm: Fix bit shift behaviour on negative longs (#177).
- vm,novstd: Remove char combine into string op (#176).
v0.9.0
Changes:
- vm: Clean stream api.
- Remove
StreamReadChar
, its a very inefficient api to read character for character from the kernel. - Remove
StreamWriteChar
, its a very inefficient api to write character for character to the kernel. - Remove
StreamFlush
, now that we no longer do buffering on the vm side flushing does nothing.
- Remove
- novstd: Refactor the tty library (#174)
- Add platform error codes (#172)
- vm: Implement thread starting using pthread (#173)