sol2 v3.2.3 Release Notes

Release Date: 2020-10-15 // about 1 year ago

Previous changes from v3.2.2

  • 🚀 This release is a patch update. It adds a new feature but because that feature is gated behind a macro definition, the minor nor major versions are changed. New code should be unaffected!

    • 🆕 New feature: function pointer retrieval! It is not on by default!
    • 🛠 A UBSan error for null pointer arithmetic was fixed up, resulting in UB-free codegen (It hadn't become a problem yet, but it was probably going to! #1017)
    • load_result and friends are not copyable. They were never supposed to be, and since I only ever used them transiently it almost never came up until now (#995)
    • An API for accessing and messing with the garbage collector has been added (#997)
    • 👍 MoonJIT is totally supported. The author was very nice to us! (#967)
    • 📚 Recently, documentation was improved around certain configuration macros (https://sol2.readthedocs.io/en/latest/safety.html):
      • SOL_CONTAINERS_START
      • SOL_NO_THREAD_LOCAL
      • SOL_ID_SIZE
    • 🔧 Configuration has been reworked through the library:
      • The user-facing definitions are, however, the same, and cleaned up a little bit.
      • You can place a folder and a in some directly that follows the convention <sol/config.hpp> and put your macro definitions in there to make it easier to manage your library-specific defines. This makes it easier to keep all your definitions together.
    • 🏁 Build issues on all systems from Mac OSX with Apple Clang to Windows with VC++ should be resolved now! (#1021 #1031 #1034)
    • 🚀 Issues with certain constant definitions in the Lua 5.4 release should not happen.
    • Fixed some bugs in the use of is_lvalue_reference (thanks, #1028 !)