Releases: ThrowTheSwitch/CMock
Releases · ThrowTheSwitch/CMock
Release list
v2.7.0
New Features:
- Significant improvements to array and pointer handling:
- Arrays are now passed as arrays. Yes, even multidimensional ones. (Fixes #69, #119, #213, #422)
- Array plugin now supports comparing
char*(string) arguments as byte arrays via_ExpectWithArray, while still treating them as strings via_Expect(Fixes #262 and #177) - Improved automatic detection of pointer/length argument pairs (Fixes #520)
- When a pointer is auto-paired with a size argument,
_ExpectWithArrayExtendedis also generated as a fallback to allow explicit depth override (Fixes #476) void*arguments now default to pointer comparison without the array plugin, and to byte-by-byte comparison when the array plugin is active (Fixes #400)- Handles simple preprocessor features like #if 1 and #if 0 (Fixes #163)
- Ignores static assertions of various types (Fixes #128)
- Added option to trace all mock setup and mocked calls (Implements #403)
- Significant improvements to header parsing speed
Significant Bugfixes:
- Fixed matching of pointer/len argument pairs in reverse order (Fixes #479)
- Fixed handling of array of pointers or a pointer to an array (Fixes #450)
- Fixed const and pointer order handling issues (Fixes #484 and #485)
- Fixed handling of skeleton paths (Fixes #488)
- Fixed handling of memory alignment issues (Fixes #178)
- Fixed handling of failures in teardown (#67)
- Improved handling of function-looking structs (Fixes #513 and #334)
- Improved handling of function-looking macros (Fixes #502)
- Improved handling of volatiles (Fixes #110 and #135)
- Improved handling of stub and callback counters (Fixes #132)
- Improved handling and testing of Windows (Fixes #435)
Other:
- Added verification that memory errors are reported and stop tests (Verifies #463)
- Added verification that CMock features pass Valgrind (Verifies #506)
- Documented custom type support (#124)
Major Code/Doc Contributors
These individuals contributed significant features, bugfixes, and improvements.
- Mark VanderVoord
- Roland Stahn
- bal-stan
Also, thanks for your contributions!
Matt Sullivan, Peter Backeman, ml-physec, yi chen
v2.6.0
New Features:
- Reintroduced option to run CMock without setjmp (slightly limited)
- Significant speed improvements to parsing
Significant Bugfixes:
- Make return-thru-pointer calls const
- Fix handling of static inlines
- Fix some situations where parenthetical statements were misinterpreted as functions
- Fix error in skeleton creation
- Improvements towards making generated code fully C-compliant and warning free
Other:
- Improve error message wording where possible
- Improve documentation
- Updated to Ruby 3.0 - 3.3
- Reintroduce matrix testing across multiple Ruby versions
v2.5.3
v2.5.2
This release adds:
- StopIgnore feature (with Ignore plugin)
- Some rudimentary C++ parsing and mocking (nowhere close to complete)
- Documentation Fixes
v2.5.1
Releasing CMock 2.5.1 officially (even though it has been released since November in Ceedling. whoops)
v.2.5.0
A huge number of bugfixes, particularly around parsing completeness and plugins interacting with one another.
CMock v2.4.6
- Handle pointer to constant types more consistently
- Remove push and pop pragmas for older versions of GCC
- Fix many ruby warnings and minitest deprecation issues
- Handle realloc failures in CMock when dynamic memory enabled
- Updates to Documentation
CMock v2.4.5
- significant updates to the create_makefile option
- fixed race conditions when requiring plugins when using ruby multitasking support
- fixed result file extensions to support scripts again
- ignore mock_ files from coverage analysis
- add pragma push and pop to gcc version of autogenerated test files
- reintroduce ruby 1.9.3 support (it just doesn't get the improved brace matching)
- lots of improvements for handling const
- documentation cleanup
CMock v2.4.4
- Added new naming convention and coding standard
- Started to refactor to conform to new standard
- Avoid undefined behavior in a couple specific situations
- Guess memory alignment if not specified based on int length
- Update to markdown documentation instead of pdf
- Bugfixes to some plugins, particularly return through pointer
CMock v2.4.3
Pull in latest libraries and boost version information