Releases: bmwcarit/capu
CAPU v0.24.0
Thanks for contributions from (in order of patches)
Martin Veith
Tobias Hammer
Stanislav Ionascu
Michael Wagner
Breaking changes
(-)
Bug Fixes
Fix Integrity-OS build concerning signals
DltLogAppenderBUildConfig.h now properly installed
Features
Method for getting strings from Error.h error codes
Tests
(-)
Refactoring
Unified cmake find and config file handling
Enabled compiler flag -Wnon-virtual-dtor and fixed all warnings
Reusability of ARCH_*/OS_ defines
DLT can be forcefully disabled even when available
CAPU v0.23.0
Thanks for contributions from (in order of patches)
Tobias Hammer
Serhat Eser Erdem
Jonathan Conrad
Alexander Irion
Peter Pedron
Martin Veith
Johannes Baeuerle
Stanislav Ionascu
Bernhard Kisslinger
Axel Kellermann
Elias Marquart
Breaking changes
pair: Initialize member variables in default constructor
vector: Fix operator[] constness
vector: implement exponential growth for all element adding operations
vector: Initialize empty
vector: Fix signedess of iterator operator+/- argument
Reimplement SmartPointer as shared_ptr
File: complete binary modes.
toolchain: all C and CXX flags should have Werror
Use os specific calls for getting single environment variables
vector: Rename Vector, Iterator, ConstIterator to exact stl spelling
Disable support for signals on INTEGRITY
Implement proper construction and destruction of keys and values in HashTable
Bug Fixes
Updated googletest and googlemock external repo urls
Use correct iterator-trait type when using 'distance'
put socket variable on stack
valgrind : exclude static file transfer context from context list
set terminal settings only if terminal is connected
Fixes for x86_64 integrity
Fix merge issue due to file renaming
Fixed very inaccurate time measuring in capu::Time for Windows.
Features
Add algorithm find
Add INTEGRITY X86 64 bit platform support
Added signal handler support to capu.
possibility to set file acces mode for binary output streams
Add File::seek method
Add File::getCurrentPosition method
Use ANSI codes for printing colors in Console::Print
Generate CapuConfig.cmake file on install
Implement swap for HashTable and HashSet
Tests
Reduce number of iterations in MapTest to a more reasonable number
AlgorithmRawTest: Give compared value a semantic name
Removed EXPECT_EQ and EXPECT_TRUE macro usage, which is only available with gtest.
Fix concurrent access on datastructures in socket checker test
Add missing BinaryOutputStream test
Add missing Guid test
Add missing StringOutputStream test
udptest: lock access to globally available cond variable
vector: Adapt test to use empty ctor
Add Guid tests to HashTable and HashSet
Cleanup HashSet performance measurement tests
Add error case for unrecognized architecture in ConfigTest
Refactoring
Make CondVar wait Mutex argument pass by reference
default initialize member variable in list
vector: internally only grow memory when necessary
ScopedPointer/ScopedArray: Improve+unify code
Fix comment in FileMode
Remove slash in comment
early exit from unregisterApplication call
remove nullcheck of pointer that has already been used in above code
move File::mHandle to generic (share from posix and windows)
Remove C-style casts in hash and network headers
Fix gcc sanitizer warnings
Fix variable shadowing errors
make File::getCurrentPosition const
Make list iterator derive from iterator base class
Extract Capu version to variables and autogenerate cmake version file
Improve error checking for console colors on posix
Improve readability of signal handler function pointer
Replace preprocessor defines in HashTable/Set with constants
CAPU v0.22.0
Thanks for contributions from (in order of patches)
Martin Veith
Tobias Hammer
Jonathan Conrad
Bernhard Kisslinger
Johannes Baeuerle
Breaking changes
vector: remove iterator implicit conversion operator to value
REGISTER_SYNC_CALL testutil macros have been replaced by a class
Bug Fixes
Remove race condition by refactoring of REGISTER_SYNC_CALL macros to simple class
Correct cleanup of DltAdapter
Collect and destory DltContext objects
Features
vector: allow comparison of ConstIterator and Iterator
vector: add difference operator for iterators
Add vector insert for iterator range
vector: add const version of operator->
vector: add back() method
Add distance to Iterator header
Add advance to iterator header
Extend Vector range insert to accept arbitrary input iterators
adding option to create a invalid Guid
Improve speed of copy & copy_backwards from algorithm for integral types
vector: add member swap and specialize swap free function
vector: add shrink_to_fit
Tests
Improved on vector and algorith tests
Refactoring
Added build instructions to readme
CAPU v0.21.0
Thanks for contributions from (in order of patches)
Jonathan Conrad
Tobias Hammer
Stanislav Ionascu
Breaking changes
Semantic change to Vector:
Vector constructor which takes one integer now not only reserves this space, but also allocates objects (analog to STL). Usages of this constructor will cause subtle behaviour change because there is no compile time error here. After using old constructor previous versions would "push_back" into vector[0], vector[1] etc. Now after calling constructor with size, these elements already exist, can be used right away, and size() will include the number of these objects. Please check all usages of vector against this semantic change.
Bug Fixes
capu_foreach limits scope of all introduced variables now
fix: vector::erase method would cause memory corruption when used in the middle of vector with complex type
Features
Add Vector::empty() method
Add Vector::pop_back() method
Add Vector::insert method (single value)
Add iterator tagging interfaces
Add generic algorithms (copy, fill, equal) for use in vector (later for more containers)
Tests
Vector tests now use parameterized tests in order to reuse tests with primitive and complex datatypes
Added some tests which show comparison of vector performance to STL (rudimentary)
Refactoring
Diverse improvements to vector implementation code
CAPU v0.20.0
Thanks for contributions from (in order of patches)
Martin Veith
Alexander Irion
Tobias Hammer
Stanislav Ionascu
hrabbit2000
Breaking changes
Set default stack size for thread on Integrity to 0x1000 bytes
config: use stdint.h when available instead of internal typedefs
Bug Fixes
Fix atomic operation implementation for Integrity
Set size of time_t appropriatly for Integrity
Update CMake find modules for Integrity 11
Fix no return value warning in Posix Thread::run
Set correct compile flags for Capu_Test on Integrity
Avoid accessing non-memory aligned addresses in BinaryOutputStreamTest
fixes: SmartPointerTest::getRefCount randomly fails
fixes: NonBlockSocketCheckerTest::AcceptALotOfClients hang
Features
Set default thread name for Integrity
Enable any Integrity task to start a new pthread task
Added map container class.
Port to MacOS: Changed dlopen parameters to support mac platform load.
cmake: enable visual_studio_pdb plugin when building with MSVC
Tests
Refactoring
acme2: sync with master
cmake: configure Config.h.in instead of reusing Config.h
config: store TARGET_* params which capu was configured with
CAPU v0.19.0
Thanks for contributions from (in order of patches)
Martin Veith
Tobias Hammer
Jonathan Conrad
Breaking changes
Removed default install path in cmake configuration
Bug Fixes
Correct folder for documentation generation
Features
Ability to specifiy number of digits on StringOutputStream when printing float values
Tests
Fixed UDP socket broadcast test
Refactoring
Foreach macro: move hidden end iterator to loop scope
CAPU v0.18.0
Thanks for contributions from (in order of patches)
Tobias Hammer
Bernhard Kißlinger
Johannes Baeuerle
Jonathan Conrad
Timo Lotterbach
Alexander Irion
Bug Fixes
correct recognition of automotive-dlt
specific case was wrongly handled as error in posix console
Substring constructor handles given 'end' parameter as maximum when searching for terminator
Features
ability to flush consoles
blocking calls to Console::readChar can be interrupted
readChar gives back error states
generation of CapiCondifVersion.cmake for determining capu version in cmake runs
String comparison operators (< >)
StringUtils::Strnlen function for safer usages
Tests
tests for DltAdapter
correct memory problems found via valgrind in several tests
Refactoring
make capu_foreach more robust
improved error handling in Dlt logging adapter
cancel method of runnables can be overridden
CAPU v0.17.1
Thanks for the contributions and the port of CAPU to iOS 8.x to Andreas Streuber.
Bug Fixes
Installation of headers for QNX and iOS works now properly
Features
CAPU is available now for iOS 8.x.
Support for older iOS toolchains using ARMV7S has been removed
Add Travis CI powered build of CAPU (see https://travis-ci.org/bmwcarit/capu)
CAPU v0.17.0
Thanks for contributions from (in order of patches)
Felix Zinkel
Alexander Irion
Johannes Baeuerle
Jonathan Conrad
Violin Yanev
Peter Pedron
Martin Veith
API breach
(none)
Bug Fixes
Wrong file flags in posix file handling fixed
Fix crash when requesting substring of length 0
Fixed uninitialized variable warning from Travis CI in a socket test
Features
Working directory manipulation
LogAppender available for logging via dlt (http://projects.genivi.org/diagnostic-log-trace/home)
String::replace function
Tests
Rudimentary test for log context's userdata
HashSet iterator removal tests
Refactoring
LogContext can now user specific data for implementation specifics
Rename ntoh 64 bit version which conflicted in newer OSX versions
Improve compiler flags for MacOSX
CAPU v0.16.0
Thanks for contributions from (in order of patches)
Jonathan Conrad
Timo Lotterbach
Sven von Beuningen
Violin Yanev
Martin Veith
Bernhard Kisslinger
API breach
StringUtils::Vsprintf now returns number of characters written
StringUtils::Sprintf now returns number of characters written
Bug Fixes
In some cases StringOutputStream::c_str did not append null terminator
In some cases a newly created StringOutputStream was not null terminated
Fix broken Array constructor
Vector::operator== compares elements instead of memcpy for non simple types
Features
Allow broadcast addresses in udpsocket
List iterator decrement operator
Add acme2 linux coverage plugin to buildsystem
Removed stdint.h dependency from Config.h
Add const versions of Delegate::operator
Add operator<< overload for char_t in StringOutputStream
Add String::endsWith method
Add toolchain files for clang/llvm based builds for 32/64 bit
Enabled generation of PkgConfig and CMake FindModule for packaging
Integrate newer version of ACME2 (cmake based build system)
Tests
Improve StringUtilsTest to use more specific test string
Removed test that depends on system setup (GetParentFile5)
Refactoring
Remove unnecessary address validity check in UdpSocket
Use std prefix when including cmath, removes clang (>3.5) warnings
Use std prefix for abs
Use more const in tcpsocket internals
Remove unnecessary mutex from TcpSocket
Remove dependency on shlwapi
Fixed Clang warnings on OSX
Improve comments on GetMicroseconds
Create possibility to specify integer return types (32 or 64 bit) explicitly for hash functions
Increase randomness of number generator by initializing with increased precision of time