Releases: ETLCPP/etl-arduino
Sync to ETL 20.11.4
===============================================================================
20.11.4
Fixed etl::circular_buffer copy and move assignment bug where the destination
buffer was not cleared before assignment.
===============================================================================
20.11.3
Define missing macro when cross compiling with clang for AVR
===============================================================================
20.11.2
etl::basic_string::copy is now const and does not affect truncation flags.
===============================================================================
20.11.1
Fixed ambiguous function call in etl::mem_cast for clang.
===============================================================================
20.11.0
Added etl::mem_cast, etl::mem_cast_ptr & etl::mem_cast_types for reinterpretion of memory blocks.
State tables in etl::debounce are now constexpr in C++11 or above.
===============================================================================
20.10.6
Updated QueuedMessageRouter and QueuedFSM examples to use current message frameworks.
===============================================================================
20.10.5
Added container_type to etl::stack, etl::queue and etl::priority_queue.
===============================================================================
20.10.4
Fixed cross compiler compatibility for etl::circular_buffer.
===============================================================================
20.10.3
Fixed etl::fsm generator for non-default number of message types.
===============================================================================
20.10.2
Fixed misspelled histogram class.
===============================================================================
20.10.1
Fixed incorrect histogram end() and cend() return values.
===============================================================================
20.10.0
Added Hierarchical Finite State Machine (etl::hfsm) derived from etl::fsm
===============================================================================
20.9.3
Fixed misspelt DBL_MAX macro.
===============================================================================
20.9.2
Fixed ETL_ASSERT for non-class types in etl::pool.
===============================================================================
20.9.1
Replaced std::distance with etl::distance in erase() and erase_if() for vector.h
===============================================================================
20.9.0
Fixed #362 'etl::fsm::receive() partial override'.
Fixed #363 'circular_buffer operator [] takes integer rather than size_type'.
Fixed occasional incorrect string length for etl::make_string.
Added macros for compilers that don't support HUGE_VAL.
Added etl::accumulate, etl::clamp, etl::erase, etl::erase_if, etl::remove, etl::remove_if.
Added maths algorithms and functors.
etl::correlation
etl::covariance
etl::gamma_encode
etl:;gamma_decode
etl::histogram
etl::sparce_histogram
etl::mean
etl::invert
etl::threshold
etl::quantize
etl::limiter
etl::rescale
etl::rms
etl::standard_deviation
etl::variance
===============================================================================
20.8.0
Added more CRCs, generalised table creation.
Options for table sizes of 4, 16 and 256.
Removed unnecessary non-const versions of iterators for containers.
===============================================================================
20.7.0
Added etl::selection_sort.
etl::delegate accepts moveable parameters.
Fixed the return type of const iterators for containers from const_iterator to iterator.
Changed many instances of 'static const' to 'static ETL_CONSTANT'.
===============================================================================
20.6.3
Updates to unit test CMake files.
Added missing include for string_utilities.h
===============================================================================
20.6.2
C++98/03 compatibility fixes.
Added 'sanity check' tests for checking for 98/03/11/14/17 issues.
===============================================================================
20.6.1
Added missing etl::atomic from gcc & clang implementations.
Changed nullptr to ETL_NULLPTR in buffer_descriptors and multi_range.
Fixed header includes in state_chart.h
===============================================================================
20.6.0
Added etl::message_router_registry.
Changed etl::flat_multimap & etl::flat_multiset to iterate in insertion order, as per C++11 map and set.
Added ETL_CONSTEXPR to etl::array.
C++98 compatibility fixes.
Remove unnecessary template keyword to destroy() call in etl::pool.
Abstracted unit test framework header.
===============================================================================
20.5.2
Fixed template aliases when using STL and below C++14
===============================================================================
20.5.1
Fixed ambiguous template error for etl::extent.
===============================================================================
20.5.0
Added specialisation of etl::state_chart to allow a parameter to be passed along
with the event.
Issue #339 - Fix extent type conversion warning
Issue #340 - Export headers as system includes
===============================================================================
20.4.1
Updates to etl::shared_message example application.
===============================================================================
20.4.0
Added uninitialized_resize() to etl::vector and etl::basic_string.
===============================================================================
20.3.1
Added ETL_CONSTANT to numeric_limits member functions.
===============================================================================
20.3.0
Added initialize_free_space(), trim_to_terminator() and data_end() functions to
strings for easier integration with C APIs.
===============================================================================
20.2.3
Fixed indexing error in find_next() for etl::bitset.
Sync to ETL 20.2.2
Added non-const get_message() member funtions in shared message framework.
Modified reference_counted_message_pool::allocate() return type.
Changed from etl::ireference_counted_message* to etl::reference_counted_message<TMessage, TCounter>*
Allow default constructed messages for shared messages.
Changed template aliases so they are available for C++11 rather than C++14.
Removed source 'etl::imessage_router&' parameter from the message framework 'receive'
and 'on_receive' member functions.
Added move constructor and move assignment operator to etl::shared_message.
Fixed rollover error for etl::queue_spsc_atomic
Added 'required_alignment' parameter to 'allocate' for etl::imemeory_block_allocator.
Updated QueuedMessageRouter example.
Exclude integral types from being considered for iterator range container constructors.
Added shared messages to the messaging framework + supporting allocator classes.
Some refactoring of the messaging framework internals.
Added example application for shared messages.
Added a lockable queue with locks implemented as pure virtuals.
Refeactored the other queues.
Fixed missing virtual destructor for C++11 observer.
Added etl::successor class for consistant 'chain of responsibilty' pattern generation.
Added missing constructors to unique_ptr.
Added nullptr check to unique_ptr destructor.
Fixed VS2019 warning for etl::deque iterators.
Added a virtual on_task_added callback to the scheduler.
Added a runtime multi range nested loop class.
Added etl::for_each.
Added is_random_access_iterator and deprecated is_random_iterator.
Added VS2019 Delegate function interrupt service example.
Added nullptr check to unique_ptr destructor.
Fixed VS2019 warning for etl::deque iterators.
Added constructors with deleters for unique_ptr.
Added virtual function 'void on_task_added()' that is called when a task is added to a scheduler.
Fixed LGT8F macro name clash
The LGT8F defined macros that clashed with ETL template parameter names.
Unknown board type is no longer an error
19.3.7 Unknown board is nor an error
Improved Arduino compatibility
19.3.6 Updated compatibility
Initial Arduino compatible version of ETL 19.3.5
An Arduino compatible version of the ETL taken from https://github.com/ETLCPP/etl.git