Skip to content

MetaCall v0.1.39 [2020-03-16]

Compare
Choose a tag to compare
@viferga viferga released this 16 Mar 13:20
· 27 commits to 570e4cbfbc23bab1b9cc0c1fe415a75800cffca0 since this release
  • Improve callback support in node and python, still not working properly with @trgwii tests.
  • Add more complex tests cases for callbacks.
  • Implement currying in node port for callbacks, solve more memory leaks.
  • Solve memory leak with return values related to functions, now instead of deleting the return value (which forces to delete the lambda callback when it is anonymous as it does not have references to any handle) we created a finalizer (for old NodeJS versions and newer ones) which deletes the value when it is garbage collected instead of inmedietly after the return.
  • Add some extra tests, solve some memory leaks in python loader, add more use cases for callbacks.
  • Add base implementation for returning callbacks in node port.
  • Solve minor bugs and properly implemented callbacks in node port (return still not implemented).
  • Add base for supporting callbacks in node port. Refactor of many functionality from reflect function and signature in order to support it, this should not be done in this way, the correct way should be moving all ports to the loaders and merge both with the proper abstraction. Exposing metacall internals should not be the way to go. Meanwhile with this patch we can have callbacks temporally until we solve these design errors.
  • Add support for returning lambdas in python.
  • Implement handle reference counting for function objects in order to allow automatic deletion for anonymous functions and deletion of functions in handles only when all handles referencing the function are deleted.
  • Implemented callbacks successfully as a function parameter for python loader.
  • Add base for callbacks in python loader.
  • Implemented new API with MonkeyPatch of require for NodeJS, fully functional but it is not the most optimized way of doing it.
  • Bump puma from 4.3.1 to 4.3.3 in /source/scripts/ruby/blog/source
  • Add a base for metacall bindings for crystal, and basic implementation of crystal loader impl struct.
  • Add a TODO in GC.init for the cr_loader.
  • Add base implementation of cr_plugin in crystal code.
  • Bump nokogiri from 1.10.5 to 1.10.8 in /source/scripts/ruby/blog/source
  • Update documentation, add crystal to loaders and updated versions.
  • Add base for crystal loader with c/c++ interface.
  • Add base for crystal loader.
  • Solve typo in HTML related to README image.
  • Add test for event loop (stdout not working properly but event loop does).
  • Add benchmarks to multiple languages.
  • Solve bug related to potential uninitialized variables.