5.0 KiB
5.0 KiB
Notes:
Current Version: 5.4.0
Changes since 5.3.1
- Decreased compile time and build size
- Make "reflection" module built in (losing some of the time / build size gains)
- Add new "class" syntax for ChaiScript defined methods and attributes see: unittests/class.chai for examples
- Minor performance enhancements
- major to_string performance enhancements
- Provide API for retrieving registered type name #124
- Added strong reference to container to range object #132
Changes since 5.3.0
- Add automatic conversion of arithmetic return types, following the same rules as conversion of arithmetic types when passing parameters
- Add automatic casting up the inheritence hierarchy when possible.
- Enable travis.ci testing
- Allow users to add globals from within script
- Various static analysis fixes
- Code modernization to C++11
- Unofficial support for Haiku added
- Fix #121 - Inability to compile on cygwin
- Formatting fixes and spelling corrections
- Apply "include what you use" https://code.google.com/p/include-what-you-use/
- Apply clang-modernize
- Various threading fixes
- Performance improvements
Changes since 5.2.0
- Official support for MSVC with C++11. All major platforms and compilers are now support for C++11 release
Changes since 4.2.0
- Enhanced unit tests
- Add
continue
statement, fix various use cases forfor
loops - Fix use of suffixed numbers in vector initialization
- Code cleanups
- Eliminate global data, which makes code more portable and thread safe
- Fix issue #79
- Merge pretty_print fixes from @mgee #82
- Compiler warning fixes for latest compiler releases
- Fix threading problems
- Fix linking error on MacOS Mavericks #88
- Allow non-const globals
- Make sure user cannot name a variable with
::
in it #91 - Fix various string / map / vector
size
andcount
calls for compilers which have weird overloads for them. #90 #93 #95 - Make module search path relative to the currently running executable
- Build and work with wstring windows builds
- fix for some new line cases in the middle of a vector initialization from jespada
Changes since 5.1.0
- Add support for automatic conversion of arithmetic types when possible and when no ambiguous method dispatch exists.
Changes since 5.0.0
- Fix sizing of numeric constants to match that of the C++ standard
- Add support for u,ll,l,f suffixes for numeric constants
- Siginificant improvement in error reporting
Changes since 4.0.0
- Dropped boost in favor of C++11
- Separated out stdlib to make more options for compile time improvements
Changes since 3.1.0
- svenstaro: Unused variables and CMake consistency fixes
- Added support for returning pointers from functions (#13)
- Compile with -pedantic (#9)
- Fix issues with multiple ChaiScript object types having the same attribute name (#15)
- Prevent variable redeclaration in same scope (#22)
- mgee: Boxed_Number improvements (#27)
- Support switch statements (#34)
- Fix uint16 comparions (#26)
- Add ability to add const_var globals in Module objects (#14)
- Add support for ternary operators ?:
- Add headers to CMakeLists so they show up in IDEs
- Add ability to get vector of defined objects and vector of defined functions
- Fix memory leak in cyclical references
- Clean up static analysis issues discovered
- Fix vector construction to be consistent with map construction
- Increased unit tests to 161
- Performance enhancements
Changes since 3.0.0
- Numeric operations performance increased approximately 10x
- Looping operations performance increased up to 2x
- Engine start up time decreased
- Several parsing bugs related to index operators fixed
- Added full support for all C algebraic types: double, long double, float, int, long, char, uint8_t, uint16_t, uint32_t, uint64_t, int8_t, int16_t, int32_t, int64_t
- Enhanced support for capturing of exceptions thrown from ChaiScript in C++
Changes since 2.3.3
- Code simplifications
- Fully integrate documentation with source code in doxygen style comments
- Unit tests increased from 114 to 137
- Automatic conversion between boost::function objects and ChaiScript functions
- Many bug fixes
- Minor performance improvements
- Namespace reorganization to make end user code more accessible
- clang support
- VisualStudio 2010 Support
- Support for C++ base classes and automatic upcasting
- Remove __ reserved identifiers
- Better code organization to reduce #ifdefs
- clanmills: command line options for chai eval
- clanmills: parser cleanups and code reduction
- Function introspection and reflection
- Correct function dispatch order to account for base classes and provide a defined order of dispatch
- Predictable object lifetime that emulates C++ stack lifetime
- emarcotte: pkgconfig support
- standardize on method/member naming and indentation
- 64bit Visual Studio support
- Better support for const objects
- Drastic reduction of runtime exceptions - making debug builds orders of magnitude faster
- Support for platforms with no loadable module support
- Add helper macro for registering class