Releases: HaxeFoundation/hxcpp
Releases · HaxeFoundation/hxcpp
Release 4.3.119
C++11 std mutex and condition variable (#1298) * Add new mutex and condition types * Update c functions to use new impl * recursive mutex * Update src/hx/thread/ConditionVariable.cpp Co-authored-by: Zeta <[email protected]> * Non recursive mutex for condition variable * Remove timed wait which isn't actually used anywhere * Revert "Remove timed wait which isn't actually used anywhere" This reverts commit 63ea8255737837d0bfb6323dcb1ada6f991939b8. * Use an atomic_int for the thread id * Update telemetry implementations to use std::mutex * std::mutex for __hxcpp_field_to_id * std::mutex for profiler * std::mutex for debugging * std::mutex for gc * try recursive mutex for telemetry * Revert "std::mutex for gc" This reverts commit 33ea04d8c6e689b7e0aca30571f304327897c56c. * std::mutex for finaliser and root protection * std::mutex for large object heap * recursive mutex for special object and state change locks * pointers to condition variables * Use wait overload instead of manual while loops * non recursive mutex for thread pool lock * non recursive mutex for special object lock * non recursive mutex for state change lock * Remove function not used in haxe --------- Co-authored-by: Aidan Lee <[email protected]> Co-authored-by: Zeta <[email protected]>
Release 4.3.118
v4.3.118 build tool: support clang pch (#1299)
Release 4.3.117
v4.3.117 Add missing GCFreeZone calls for semaphores and condition variables. …
Release 4.3.116
Implement __GetHandle for AutoCallables (#1293) * Override getHandle for build in auto callables * Add handle for adapter callables * Recurse __GetHandle * Revert "Recurse __GetHandle" This reverts commit dc2ed5cc22b0e760086d6e4fec15f59339b00203. * Update GC tests to avoid same thread stack clearing clang now seems to be doing optimisations which breaks it --------- Co-authored-by: Aidan Lee <[email protected]>
Release 4.3.115
Callable object for typed functions (#1047) * Initial work for typed functions * Bit of cleanup to use typedefs * implicit conversion to T for use in wrapper functions * Remove extra callable subclass and MarkThis GC functions * Add null check operator * Throw when calling null object function or dynamic is not a function * Add closure mark and visit gc functions * Add instance of to base callable object * bump API level * Update macro template * revert temp changes * Use callable for create_var_args function * Use callables for Maths _dyn functions * Callables for string _dyn functions * Add __run functions to maths and string callables * Handle __Run variant in Callable_obj with some template magic * Add compare functions to maths and string callables * Experiments in not needing loads of manual __run overloads * Restore missing __Run function for varray dyn closures * reinterpret to hx::Object * Add back some __Run functions to work with templating changes * Cppia now compiles (but test suite still fails) * Make Ptr on callable public * Add a bunch of api level checks I got lazy about and didn't initial write * One more forgotten api level check * Could it be this? * Restore forgotten about dynamic call functions for strings * Fix broken array closure macro for dynamic runs * Split out array safe sorter * Array sort and filter functions use callables * Array map function uses callable (still somewhat dynamic) * Switch sorter away from fixed sized numerics * Revert "Switch sorter away from fixed sized numerics" This reverts commit 8400309e64e4363fccf4ca1400a0318cee35913f. * Include limits header * More header include order faff * Update cppia array implementation to work with callables * Only define callable at 500 api level * Templated array map function * Update cppia array support to work with templated map * Add forgotten about api level checks * avoid one if constexpr with a specialised template * Specialised callable ptr class to not need constexpr * C++11 index sequence * Remove constexpr if in dynamic call * Remove now unused extra level of indirection * Alternative to C++17 folds * Only require C++11 * callables for virtual array dyn closures * Add forgotten api level check * callables for array dyn closures * Fix some include issues * Reduce duplicated maths function macro * Reduce duplicated string function macro * Use HX_LOCAL_RUN in array function macros * help the compiler with nested template case * Allow creating a null callable from a null dynamic object * support pointer and struct wrapping for dynamic calls * c++11 version * Create new intermediate closure object to hide forward declaration issues * API level check * Add new closure header * add hx::Object* operator to dynamic for easier cffi and callable interop * Add callable constructor which accepts a cpp::Function of the same signature * Update cffi caller object to work with new __run and __Run * Apply null check to void callable specialisation to allow null callables * Allow null callables in the void return callable specialisation * turn cppia logging back off * Don't use a MemReference for objects * Do not place mistakenly place hx::Object*'s in cpp::Pointers as part of the automatic dynamic calls * Add forgotten about return and explicit template * Add some write barriers * typedef instead of using for < c++11 * Fix dodgy typedef * Another dodgy typedef * Callable for thread creation function * Slightly different conditional for mapping func * Cppia fixes related to the thread create callable update * Fix botched merge * remove __run * remove closure * get cppia working * api level guarding * fix dodgy cffi copy and paste job * More fixes * silence warning to see if there are actual errors * forward declaration to make clang happy * try removing the HXCPP_CLANG guard * strip const-ness of pointers before wrapping in cpp::Pointer for dynamic * Ensure callables are not reinterpreted when static casted needed to work around a cppia edge case * wrap in cppia define check * re-introduce intermediate object for haxe generated callables * Move to a traits based dynamic conversions for the invoker * Add native struct wrapping back * Update objective c helpers * Add missing api level check --------- Co-authored-by: Aidan Lee <[email protected]>
Release 4.3.114
Haxe friendly root api (#1292) * Root api * Null checking * Some tests --------- Co-authored-by: Aidan Lee <[email protected]>
Release 4.3.113
v4.3.113 [ci] Revert to release version of setup-haxe (#1291)
Release 4.3.112
[tests] Fix cppia inheritance test (#1272) * [ci] Update to haxe 4.3.7 * [tests] Ensure HostExtendedRoot is in cppia host
Release 4.3.111
v4.3.111 Fix undefined behaviour in View::tryCopyTo overlap (#1287)
Release 4.3.110
[ci] Switch to patched setup-haxe version (#1286) * [ci] Hardcode latest haxe version for setup-haxe This avoids the invalid url error caused by relative redirect of the "latest" file. * Apply Aidan's patch for encoding errors * Avoid warnings from string encoding code * [ci] Switch to patched setup-haxe version * Omit name for unusued null arguments