Work in progress
You can always find the latest version of AngelScript in the SVN on SourceForge.net. There you can browse the repository online and download a tarball with all the code for revision of choice.If you prefer to use an SVN client to download the code, point your client to the following address:
http://svn.code.sf.net/p/angelscript/code/trunk
I recommend TortoiseSVN as the SVN client if you're using Windows, otherwise the original SVN is the best alternative.
Mirror repository
For those of you who prefer github, codecat has created an automatically updated mirror there: https://github.com/codecat/angelscript-mirrorVersion 2.37.0 WIP - 2024/03/13
- Bug fixes
- thiscall method with multiple inheritances was not working properly with composite offset (Thanks Denis Naumov)
- Fixed compiling the library with AS_NO_CLASS_METHODS (Thanks gris)
- Fixed exception handling not restoring stack pointer in some cases, leading to buffer overflow and crashes after repetition (Thanks Miss)
- Fixed problem with parsing non-terminated heredoc strings (Thanks Jason Goepel)
- Fixed assert failure on invalid expression with assignment (Thanks xertrov)
- Fixed assert failure on warning in function argument with ternary operator (Thanks xertrov)
- Fixed crash in asIScriptContext::GetArgsOnStackCount when using unsafe references (Thanks glcolor)
- Fixed bug in IsVarInScope that wouldn't identify an object variable declared just after a } as being in scope (Thanks Jason Goepel)
- Fixed problem with funtion overload between Obj@ and const Obj@ (Thanks Patrick Jeeves)
- Fixed bug in compiler that allowed passing string literal to function as non-const references with unsafe references turned on (Thanks Raphtaliyah)
- Fixed bug in native calling convention for arm64 with ?& arguments (Thanks Alexander Orefkov)
- Fixed crash if passing negative value to GetTypeInfoById
- asCDataType::GetSizeInMemoryBytes was not returning the correct size of handles (Thanks Rob McDonald)
- Fixed crash when attempting to use init list with enum type (Thanks Miss)
- Fixed assert failure on passing anonymous init list to function argument expecting a handle (Thanks xertrov)
- Library
- Added configuration to support native calling conventions on Android with 64bit x86 CPU (Thanks 1vanK)
- Added engine property to disable garbage collection for script classes (Thanks 1vanK)
- Improved runtime performance by reducing overhead in script function calls (Thanks Denis Naumov)
- It is now possible to register factory functions receiving an auxiliary pointer with asCALL_CDECL_OBJLAST/OBJFIRST (Thanks Salvage)
- Improved runtime performance with gnuc or clang compilers by using computed goto extension (Thanks Patrick Jeeves)
- as_config.h now has configuration to detect Linux with RISC-V 64bit CPU (Thanks Vixea 0)
- asEP_ALWAYS_IMPL_DEFAULT_COPY can be set to 1 to tell compiler to always implement default copy even if other opAssign is declared
- asEP_ALWAYS_IMPL_DEFAULT_COPY_CONSTRUCT can be set to 1 to tell compiler not to always implement default copy constructor even if other copy constructor is declared
- asEP_ALWAYS_IMPL_DEFAULT_CONSTRUCT, DEFAULT_COPY, and DEFAULT_COPY_CONSTRUCT can now be set to 2 to tell compiler never to implement these
- Library interface
- Added GetLastFunctionId to the engine, so it is possible to iterate over all functions with GetFunctionById
- Introduced a new JIT compiler interface asIJITCompilerV2, use asEP_JIT_INTERFACE_VERSION to set which should be used (Thanks Denis Naumov)
- The new JIT compiler interface can use SetJITFunction to set the JIT compiled function at a later time, to allow better optimizations (Thanks Denis Naumov)
- Added asIScriptFunction::GetDeclaredAt
- Script language
- A default copy opAssign method is provided for script classes if none has been explicitly defined
- A default copy constructor is provided for script classes unless another copy constructor is explicitly defined (Thanks Patrick Jeeves)
- An implicit conversion to primitive of same type by different size takes precedent over change in sign in function matching
- It is now possible to explicitly delete auto generated constructor, copy constructor, and copy operator if they are not wanted
- Add-ons & Samples
- Added thread safety for creating the string factory singleton (Thanks Igor Green)
- filesystem now replaces backslashes for forward slashes in the file path
- Fixed compiler warnings in script array with MinGW (Thanks Jordon Moss)
- Added auto wrappers WRAP_MFN_GLOBAL(_PR) for class methods that will be used as global functions (Thanks a-k-)
- Project
- Added files for initial support for native calling convention on Linux with Risc-V 64bit CPU
- Added support for native calling conventions on Apple OS's with M1/M2 CPUs (Thanks Sam Tupy)
Changes planned for later versions
You're always welcome to send me your comments on current and/or upcoming features. Your feedback is very important for my planning and prioritization of already planned feature.
The complete list of planned changes can be found in the link below:
AngelScript To-Do List on Google Docs