Skip to content

Releases: BastianBlokland/novus

v0.8.0

31 Jan 18:55
Compare
Choose a tag to compare

Changes:

  • Support optional arguments (#168)
  • vm: Fix occasional crash due to race condition in executor teardown (#170)
  • build: Run tests in parrallel (#169)
  • frontend/parse: Convert failfast into a intrinsic (#167)
  • novdiag-prog: Filter out intrinsic funcs
  • frontend: Remove implicit bool return for actions

v0.7.0

17 Jan 14:04
Compare
Choose a tag to compare

Changes:

  • Support more kinds of root calls (#166)
  • Lazy actions (#165)
  • novstd: Add warmup to benchAverage
  • rt: Fix flush failing on EAGAIN
  • build: Fix incompability with cmake before 3.19
  • Support running a subset of the compiler tests (#164)
  • CI: Only run on master and pull-requests to master
  • Frontend: Support intrinsic calls
  • Examples: Webserver: Print url at startup

v0.6.2

06 Jan 19:56
Compare
Choose a tag to compare

Changes:

  • CI: Add basic fuzzing for the lexer and parser using LibFuzzer.
  • CI: Collect test-coverage data on CodeCov.io.
  • CI: Add debug build + test run for Ubuntu Clang and Windows MSVC.
  • CI: Add support for running the clang-cl toolset on Windows using VisualStudio.
  • CI: Instrument Ubuntu Clang tests with an assortment of llvm analyzers(address,alignment,bool,builtin,bounds,enum,function,integer-divide-by-zero,object-size,return,unreachable).
  • General: Additional tests to improve code-coverage in various places.
  • Runtime: Fix use after free crash in RefFuture.
  • Runtime: Fix ExecutorRegistory touching aborted executors.
  • Runtime: Fix an edgecase where an executor is started while the registry is trying to pause the executors.
  • Runtime: Fix a crash when starting a process with an empty cmd-line string.
  • Parser: Limit the max recursion depth of expressions (an provide a user-friendly error).

v0.6.1

23 Dec 02:18
Compare
Choose a tag to compare

Changes:

  • Use <climits> header instead of <linux/limits.h> (more portable).

v0.6.0

23 Dec 02:02
Compare
Choose a tag to compare

Changes:

  • Shutdown server socket on cancellation
  • Update tcp-server api
  • Add std/ip.nov library
  • Add hex writer
  • Add bit writer and parsers to std/bits.nov
  • Add long to char explicit conversion
  • Long to float conversion is now explicit
  • Add long bitwise and / or / xor / inverse ops
  • Add bit shift operations for long values
  • Add a platform call to get the native endianness
  • Add construct function to std/func.nov
  • Add tcp receive timeout
  • Fix optimizer crashing on precompute div-by-zero
  • Update parallelFor to run in constant stack space
  • Refactor console library
  • Support more then 256 constants in one scope
  • Update the fail action to be typed
  • Rename std/parser.nov unwrap functions to map
  • Rename std/parse.nov to std/parser.nov
  • Update the file library in std/file.nov
  • Add new path library
  • Add api to get the path of the runtime executable
  • Add api to get the current working directory
  • Add getProgramPath api to rt.nov
  • Add implicit conv in func templ type inference
  • Send signals to entire child process group
  • Add platform api to rt.nov library
  • Add api to get the current platform code

v0.5.1

05 Dec 12:21
Compare
Choose a tag to compare

Changes:

  • Add 'getRuntimeVersion', 'getCompilerVersion' apis.
  • Cleanup inconsistent env arg api naming.

v0.5.0

04 Dec 22:53
Compare
Choose a tag to compare

Changes:

  • Rename 'stream' to 'sys_stream'.
  • Add 'invoke()' functions in the func library.
  • Fix inliner generating duplicate const id's.
  • Tune the optimizer to more aggressively inline.
  • Add interuptResetRequested api.
  • win32: do not handle CTRL_CLOSE_EVENT ctrl events.
  • Add mapOrErr utility to parse.nov.
  • Add support for optional parsers.
  • Add optional writer support to writer.nov.
  • Add version.nov std file.
  • Fix the optimizer failing to precompute char ops.
  • Improve func template parameter type inference.
  • Add trim apis to text.nov.
  • Fix allParser returning a truncated string.
  • Add error aggregation support to error.nov.
  • Add until-parser.
  • Add trim parse-modifier.
  • Refactor 'optional' bool to a bit flags enum.
  • Add char to long conversion.
  • Add support for parsing longs.
  • Add unix time parser.
  • Add support for user-overloading binary ! operator.
  • Add support for user-overloading binary !! operator.
  • Add support for user-overloading unary ? operator.
  • Add count utility to text.nov.
  • Add line and column numbers to parse errors.
  • Add support for starting system processes.

v0.4.0

25 Oct 20:41
Compare
Choose a tag to compare

Changes:

  • Fix deadlock on vm shutdown with unresolved future.
  • Intercept os interrupts (ctrl-c).
  • Enable VirtualTerminalProcessing on windows.