Skip to content

Releases: moonsharp-devs/moonsharp

0.9.6

22 May 10:11
Compare
Choose a tag to compare
  • Support for registration of generic type definitions (e.g. List<>)
  • Support for registration of generic extension methods (beware using this on iOS)
  • Support for registered multidimensional arrays
  • Support for user-defined member descriptors
  • Support for calling members with __call metamethod through a Script.Call method
  • Revised support for registered array types (was breaking on some Mono versions)
  • Fixed: indexers not working on multiple base type dispatch

0.9.4

20 May 16:57
Compare
Choose a tag to compare
  • Interop with enums
  • Async methods on .NET 4.x (normal and PCL) supporting async/await
  • Revised standard descriptors architecture for better extensibility
  • Improved support for nested types
  • Improved error messages when an invalid member access is made
  • Interop support improvements for value types passed as userdata
  • Interop support for events (with limitations)
  • Interop support for varargs (ParamArray) functions
  • Improved interop with const and readonly fields
  • Improved interop with mixed access properties
  • DynValue.ToDynamic method for easier use on .NET 4.x (normal and PCL)
  • Extended support for iterating over coroutines with a for..each loop
  • Adjusted constructors visibily for StandardUserDataPropertyDescriptor and StandardUserDataFieldDescriptor
  • Partial support to directly use a Lua coroutine as a Unity3D coroutine
  • ScriptLoaderBase and all its child can optionally ignore the LUA_PATH global
  • The REPL interpreter and ReplInterpreterScriptLoader now consider the LUA_PATH_5_2 environment variable
  • Fixed a bug on Unity3D where UnityAssetsScriptLoader was not available on WSA apps
  • Fixed a bug where using AutoRegistration break automatic delegates interop
  • Fixed some issues on explicitely registered collections (See github issue #88)
  • Fixed documentation issues
  • Workaround a Unity3D bug where optimized access on a const field crashed the editor

0.9.2

31 Mar 15:21
Compare
Choose a tag to compare
  • Support for lambda style anonymous function as done by metalua (|x,y| x*y for function(x,y) return x*y end)
  • Support for interop with overloaded methods (see note 1 below)
  • Support for interop with fields (see note 2 below)
  • Support for interop with methods having ref/out parameters (see note 2 below)
  • Support for interop with C# indexers (incl. language extension)
  • Support for interop with overloaded operators and metamethods on userdata
  • Proper REPL interpreter and facilities implemented
  • FIXED: % operator was calling the __div metamethod instead of __mod

Note 1: overloaded methods add computational complexity at every call to dispatch to the correct method.
While caching exists to improve performance, please try to avoid that.

Note 2: setting a field and methods with ref/out paramenters at the moment always use reflection, whatever
the InteropAccessMode is. Use properties and/or methods returning DynValue tuples for faster access.

0.9.0

24 Mar 10:50
Compare
Choose a tag to compare
  • Removed ANTLR dependencies
  • Improved performances at load methods
  • string.dump implemented
  • Bytecode serialization supported
  • Goto statements supported
  • Hex floats support
  • Tail call optimization support
  • Invalid comparison functions in table.sort now correctly report errors
  • Better coverage of error messages at the lexer level
  • I/O streams are now customizable.
  • Support for conversions to List, IList, T[], Dictionary<K,V> and other generic collection types
  • Support for customizable type converters
  • Constructors can be called on userdata (by calling a fictitious __new method on a static userdata)
  • tonumber() supports all bases between 2 and 10 (thanks jerneik)
  • Fixed a bug where the debugger connected to the wrong hostname [Flash security is perverted]
  • Fixed a potential memory leak and other hypotetical issues when a deep nested break is executed
  • Compatibility with mono --full-aot (which should include iOS support on Unity / Xamarin)
  • Test suite fixed for an issue where the wrong optimization mode on userdata is chosen
  • A lot of reordered things in code.. a lot of easily repairable breaking changes, sorry
  • Extended XML help coverage
  • Version for portable.NET 4.x and .NET 4.x frameworks
  • Tested on Windows Store Apps (win8/8.1)
  • Tested on Windows Phone 8.1
  • Tested on Silverlight 5
  • Tested on iOS (minor issues still to be solved)

0.8.5.1

13 Jan 17:33
Compare
Choose a tag to compare
  • Vastly improved type descriptors - #39
  • Fixed: Varargs not supported on main chunk - #46
  • Fixed: pcall returns only the first return value - #47
  • Fixed: Threading check not working properly - #42
  • Fixed: Exception ctor overloads revised for potential obscure bugs - #40
  • Fixed: String patterns do not support \0 characters - %z must be used instead. - #29

MoonSharp 0.5.5

08 Oct 17:05
Compare
Choose a tag to compare
  • Optimized parsing stage
  • Performance statistics for diagnostics

MoonSharp 0.5.0

29 Sep 17:18
Compare
Choose a tag to compare

This is the first release on Moon#.

Changes from v0.2 are too many to list exactly, but include:

  • Suport for metatables
  • pcall
  • Standard library
  • Coroutines
  • Marshalling of C# objects as userdata