Skip to content

Releases: ETLCPP/etl

Many new features + fixes

11 Jan 20:26

Choose a tag to compare

Issues:
#1184 Request: Adding a method to check whether a etl::callback_timer_atomic is currently running
#1189 Request: make useage of osMutexRobust in etl::mutex optional
#1207 Monadic Operations for etl::expected
#1240 Add redundant semicolon checks to CMakeLists.txt and fix issues
#1241 Add -pedantic-errors to unit test CMakeLists.txt and fix issues
#1242 Add begin() and end() to etl::optional

Pull requests:
#1204 Add etl::format
#1213 Added concepts.h and tests
#1232 Exception std based option
#1235 Bugfixes for compile errors in optimized tests
#1237 remove extra ;
#1238 Various cleanup
#1239 Indirect vector checks
#1244 Fix no check macros
#1245 Fix discrepancy with STL in max_element and minmax_element
#1246 Implement .begin() and .end() for etl::optional
#1251 Add etl::inplace_function
#1252 Add ThreadX mutex support
#1254 Make code base with tests compile under gcc-14
#1255 Fix syntax errors in base64 test
#1256 ivector swap

Various fixes

11 Dec 08:48

Choose a tag to compare

Updates:
Replaced locally defined logical_not_t with etl::negation

Fixes:
#1228 unused parameter 'secure'
#1224 Passing a const in optional::value_or() not compiling

Pull Requests:
#1210 Fixed span reinterpret_as should return fixed span
#1211 Change generators to reflect changes in fsm.h and type_traits.h
#1217 Add const specialization for etl::get_object_at
#1218 Cleanup platform.h includes, add missing test for unaligned_type
#1221 Add test for swap
#1222 Basic string checks
#1223 Fix is_truncated in basic_string
#1225 Fix value_or not taking const in optional
#1226 Add missing include to optional
#1229 variant_legacy.h: Rename template parameters
#1231 Issue 1212 span constructor

Updated etl::array and etl::delegate

19 Oct 18:18

Choose a tag to compare

Added perfect forwarding for alternative callback for etl::delegate::call_or()

Pull Requests:
#1208 array noexcept expr
Fixed ETL_NOEXCEPT_EXPR for etl::array
Added ETL_NOEXCEPT for zero sized etl::array specialisation.

Fixes and pull requests

15 Oct 08:05

Choose a tag to compare

Updates:
Added etl::type_list_has_duplicates_of and etl::type_list_count_of

Fixes:
#1186 Fix usage of noexcept
#1203 Potential issue with forwarding in etl::delegate
Improved forwarding of arguments to bound functions.
Added compile time checks for functors and lambdas argument compatibility.

Pull Requests:
#1012 Implement Signal
A signal/slot implementation.
#1155 Added callbacks when a timer is inserted or removed
#1175 Debug assert
Added ETL_DEBUG_ASSERT macro, which is a debug only assert.
Added extra assert enable/disable macros.
#1188 etl::array checks
#1190 Enforce semicolon after ETL_ASSERT
#1191 Introduce cast to void for condition of assert
Avoids compiler warnings for unused results of ETL_ASSERT and ETL_DEBUG_ASSERT
#1192 Allow easy creation of generic exceptions with just a text
#1195 Added conditional support of noexcept to fix IAR support
#1196 Added back in support for populating non 8 bit strings with 8 bit data
#1198 Add etl::is_constant_evaluated
#1199 Added support for transitions on state enter for HFSM
#1201 etl::span checks

Reverted some noexcept changes

13 Sep 08:32

Choose a tag to compare

#1185 Remove noexcept from delegate method stubs.

Removed ETL_NOEXCEPT from delegate operator(), call_if(), and call_or()
Removed ETL_NOEXCEPT from closure

Reverted some breaking changes

11 Sep 07:47

Choose a tag to compare

Pull Requests:
#1182 Fix etl::typed_storage by supporting omitted destructors
#1183 Regression fix: Support zero arguments emplace() in etl::optional

Multiple fixes

07 Sep 10:03

Choose a tag to compare

Updates:
Added automatic use of __builtin_memcpy, __builtin_memmove, __builtin_memset, __builtin_memcmp, and __builtin_memchr for GCC and Clang, if available.
#1170 Place a typed pointer instead of a bool into etl::typed_storage
Modified the storage used by etl::typed_storage to be a union, along the lines of etl::optional.
Added etl::typed_storage_ext to wrap external storage.

Fixes:
#1171 optional of a const arary can't be emplaced with gcc-15
#1176 Fix GCC __builtin_memcpy errors when compiling with -O2 optimisation
#1180 Duplicate definition of const_reference in etl::const_set_ext
#1181 Compilation errors on basic_string

Pull Requests:
#1169 Remove Unreachable Break Statements
#1172 Make call interfaces in etl::delegate and etl::closure conditionally noexcept
#1177 Fix .clang-format
#1179 Made all 'noexcept' statements use ETL_NOEXCEPT macro

Many updates and fixes

19 Aug 18:53

Choose a tag to compare

Updates:
Added 'emplace' constructor to etl::optional
Added etl::delegate_observable
Added return_type and argument_types to etl::delegate
Added etl::nontype_t<>
Added etl::not_null<>
#1054 Using #pragma once
#1159 etl::fsm helper to check states id sequence at compile time
#1160 Feature request: rounded division (similar to scaled rounding)
#1162 etl::fsm: Allow set_state(new_id) from the outer calls

Fixes:
Fix gamma tests (removed integral tests)
#1126 to_arithmetic does not compile on C++98
#1150 Bug in the void etl::unlink(first, last) for bidirectional links.
#1151 test failure in i386 in 20.42.1: test_replace_strings in test_string_utilities.c fails
#1152 Patch: use "python3 -m cogapp" instead of "cog" in generate.bat
#1153 ROM size increase after algorithm_exception introduction
#1156 Name conflict between template parameter and status register macro on MSP430 devices
#1158 Bug: Inverted logic in ! __has_include() check causes compilation failure on compilers without header

Pull Requests:
#955 Implements deferred callback timer with optional priority
#1147 Fix compile error in closure.h by using etl::forward

Fixes and additions

20 Jul 15:14

Choose a tag to compare

Updates:
Added etl::crc8_opensafety
Added etl::crc16_opensafety_a and etl::crc16_opensafety_b
Added etl::crc64_iso
Added etl::type_lists_are_convertible
Made etl::closure constexpr for C++14
Made invocation of delegate consrexpr for C++14
#1132 Request: Make type_def Methods Noexcept

Fixes:
Fix gamma tests (removed integral tests)
#1126 to_arithmetic does not compile on C++98
#1150 Bug in the void etl::unlink(first, last) for bidirectional links.
#1151 test failure in i386 in 20.42.1: test_replace_strings in test_string_utilities.c fails

Pull Requests:
#955 Implements deferred callback timer with optional priority
#1147 Fix compile error in closure.h by using etl::forward

#1147 Fix compile error in closure.h by using etl::forward

11 Jul 14:52

Choose a tag to compare

#1147 Fix compile error in closure.h by using etl::forward