Releases: ETLCPP/etl
Shared pools, emplace, rvalue reference API for deque
Added move algorithms and utility to 'alternate' STL.
Added rvalue reference API to etl::deque.
Added C++03/C++11 emplace for deque, priority_queue, queues, stack, variant & vector.
etl::forward_list supports shared pools.
Added 'don't care current state' transition entry option.
Added hash based random number generator
All header library
The ETL is now an 'all header' library.
New features, updates and fixes
Use deleter in etl::unique_ptr::reset(...)
Added permuted congruential random generator
Added etl::state_chart
algorithm.h : Exchange use of deprecated/removed std::bind1st for std::bind when c++11 is used
etl::io_port : Fixed unaligned access.
etl::debug_count : Removed typed += & -= operators and replaced with templates.
Fix clang warnings on etl::unordered_map, etl::unordered_multimap, and etl::unordered_set
Added alternate STL support to allow 'No STL' option.
Added bind1st & bind2nd to alternate STL implementations.
Added maths constants
Add semicolon to DEBUG_COUNT definitions to fix clang extra semicolon warnings
Fix string compare tests to be more compatible across compilers.
Shared pools for certain containers.
No STL option : Added missing find_n & transform
nullptr for ARM5 compiler
Added 'uul' to 64bit literals
Added CRC16 MODBUS
Removed push(void) push_back(void) and push_front(void) function for containers.
Use diagnostic push and pop when suppressing GCC warnings to prevent suppressions from impacting code outside of ETL
Removed repeated semicolon, this helps to compile etl without errors
Added etl::bit_stream
Various updates and fixes
Unit tests run on VS2017, GCC v8 (Windows & Linux)
Added 'memory model' selection for queues to allow more efficient implementations.
Maximum queue sizes:
MEMORY_MODEL_SMALL 255 (254 for queue_spsc_atomic)
MEMORY_MODEL_MEDIUM 65535
MEMORY_MODEL_LARGE 2147483647
MEMORY_MODEL_HUGE 9223372036854775807
Fixed syntax errors highlighted by GCC v8
Removed reference_flat_set & reference_flat_map reliance on equality.
Removed flat_set & flat_map reliance on equality.
Added tests for limited support for self insert for strings.
Added wipe_on_destruct template class for secure wiping of objects on destruction.
Updated unique_ptr API.
Protected destructor for some FSM classes.
Observer's remove_observer returns bool.
Fixed vector of pointer typedefs
Added specialisation for vector<const T*>
Remove SFINAE from array_view.
Added default etl::less compare type appropriate map and set classes.
Moved non-template code in pvoidvector to cpp file.
Made atomic load const for non STL versions
Renamed STATIC_ASSERT to ETL_STATIC_ASSERT
Removed non-conforming std::nullptr
Compatibility changes for Segger IDE, GCC & STLPort
Merged CMake branch
Fixed compile error when ETL_DEBUG_COUNT is not defined.
Fix Github issue #73 (Timers)
Added CRC32-C (Castagnoli)
Added binary_fill
Added has_zero_byte
Added has_byte_n
Modified header guards.
Added etl::type_select
Added etl::null_type
Added capacity() to etl::queue
Prefixed max_size() and capacity() with ETL_CONSTEXPR in all queue types.
Added etl::permutations and etl::combinations constant templates.
Added improved atomics.
Added mutex
Improved 64bit compatibility
Changes to the library and unit tests to improve 64bit compatibility.
std::initializer_list constructors
Added std::initializer_list constructors to containers if ETL_CPP11_SUPPORTED is set to 1
New directory layout
The directory layout has been modified to a more standard format, allowing easier partitioning of #include directives.
Header files etl/include/etl
Source files etl/src
Last Arduino compatible release
Last Arduino compatible release.
The directory structure will be changed in version 11 to a more standard layout, as used by Boost etc. This will be incompatible with the requirements of the Arduino library standards.
Many changes. Extra features and warnings cleanup
Too many changes to list. See logs for details.
Extra features, warnings cleanup, etc.
Array Wapper, new XOR checksum, constexpr support.
Added etl::array_wrapper to add a zero cost STL like interface to pre-declared C arrays.
https://www.etlcpp.com/array_wrapper.html
Added etl::xor_rotate checksum algorithm.
https://www.etlcpp.com/hash.html
Added definition of ETL_CONSTEXPR to support constexpr when available.
https://www.etlcpp.com/macros.html