Skip to content

0.507

Compare
Choose a tag to compare
@zeux zeux released this 10 Dec 23:27
· 854 commits to master since this release
f2e6a8f

Analysis changes

  • Type ascription (::) now permits casts between related types in both directions, allowing to refine or loosen the type (RFC #56)
  • Fix type definition for tonumber to return number? since the input string isn't guaranteed to contain a valid number
  • Fix type refinements for field access via []
  • Many stability fixes for type checker
  • Provide extra information in error messages for type mismatches in more cases
  • Improve performance of type checking for large unions when union members are string literals

Runtime changes

  • Fix some C APIs like lua_equal or lua_getfield triggering GC assertions in presence of metatables
  • Add lua_getcoverage API for code coverage collection
  • Improve performance of truthiness checks in some cases, particularly on Apple M1, resulting in 10-25% perf gains on qsort benchmark depending on the CPU/compiler
  • Fix support for little-endian systems; IBM s390x here we go!

CLI changes

  • Add coverage reporting support to Repl (--coverage command line argument)
  • Add shebang support by @Rerumu in #149
  • Work around code signing issues during Makefile builds on macOS

Community contributions