Skip to content

Releases: MichaelTrikergiotis/mtl

2.0.0

19 Sep 09:31
a761cc2
Compare
Choose a tag to compare

Additions

  • Added mtl::is_std_tuple type trait.
  • Added mtl::is_std_tuple_v type trait.
  • Added const char* overload for mtl::to_num.
  • Added char overload for mtl::string::contains.

Improvements

  • Major performance improvement for mtl::string::replace with std::string/char/char arguments.
    • No longer performs any allocations.
  • Major performance improvement for mtl::string::contains with std::string/char arguments.
  • Improved mtl::console::print_color to support arguments that contain CRLF.
  • Improved mtl::console::println_color to support arguments that contain CRLF.
  • Improved performance for mtl::console::print_color.
  • Improved performance for mtl::console::println_color.
  • Improved mtl::for_each with std::pair.
  • Improved mtl::for_each with std::tuple.
  • Improved the clang-tidy configuration.
  • Improved type traits to be more robust.
  • Improved exception messages.
  • Improved error-detection and security.
  • Added multiple nullptr checks throughout the entire codebase.
  • Removed a division from mtl::string::pad.
  • Updated to fmt 8.0.1.

Fixes

  • Workaround for a clang-tidy bug.
  • Fixed a bug in mtl::keep_duplicates_preserve and all its variants.
    • Added tests to check that the bug never occurs again.
  • Fixed mtl::console::print_color from spilling color with char that is newline.
  • Fixed mtl::console::println_color from spilling color with char that is newline.
  • Fixed mtl::is_char type trait to match signed char.
  • Fixed mtl::is_char_v type trait to match signed char.

Other

  • A lot of code cleanup and refactoring.
  • Added a new check to the mtl-format script.
  • Improved the utility scripts.
  • Improved the documentation in various ways.
  • Improved a lot of variable names.
  • Improved a lot of comments.
  • Improved a lot of tests.
  • Added a ton of new tests.

1.2.2

07 Jun 08:59
dee2c6f
Compare
Choose a tag to compare
  • Improved argument names, documentation and comments.
  • Improved performance for mtl::console::print.
  • Improved performance for mtl::console::println.
  • Very minor performance improvement for mtl::console::print_all.
  • Removed an extraneous comparison from mtl::string::strip_front.
  • Removed many tests that were too similar.
  • Added, updated and renamed many tests.
  • Updated to doctest 2.4.6.

1.2.1

21 Jan 16:05
47d5ca9
Compare
Choose a tag to compare
  • Added links to a repository with detailed examples :
  • Fixed compilation errors with mtl::for_each when using const std::tuple.
    • Added tests to check the errors don't occur again.
  • Fixed compilation errors with mtl::for_each when using const std::pair.
    • Added tests to check the errors don't occur again.
  • Refactored some tests.
  • Added many more tests.

1.2.0

05 Jan 09:06
a3609e8
Compare
Choose a tag to compare
  • Increased performance for some functions :
    • Increased performance for mtl::string::split.
    • Increased performance for mtl::console::print_color.
    • Increased performance for mtl::console::println_color.
    • Increased performance for mtl::filesystem::read_all_lines.
  • Updated logo.
    • Now looks great on GitHub with dark theme.
  • Updated to doctest 2.4.4.
  • Fix for a mingw cross-compilation issue.
  • Fixed a redefinition error.
    • Added tests to check that redefinition errors will not occur again.
  • Fixed a bug in mtl::string::split with non-empty output containers.
    • Added tests to check the bug doesn't occur again.
  • Fixed a bug in mtl::filesystem::read_all_lines with non-empty output containers.
    • Added tests to check the bug doesn't occur again.
  • Added many more tests.

1.1.2

08 Dec 15:24
eead333
Compare
Choose a tag to compare
  • Fixed a bug in mtl::string::strip.
    • Added tests to make sure the bug doesn't occur again.
  • Fixed a bug in mtl::string::strip_front.
    • Added tests to make sure the bug doesn't occur again.

1.1.1

04 Dec 14:42
Compare
Choose a tag to compare
  • Added navigation menus to documentation.
  • Faster compilation by removing unused headers.
  • Better performance for mtl::filesystem::read_all_lines.
  • Fixed a Windows compilation issue involving the Windows.h header.
  • Fixed mtl::not_unique incorrect predicate usage.

1.1.0

26 Nov 11:03
5269005
Compare
Choose a tag to compare
  • Performance improvements in some cases.
  • Code cleanup and minor fixes.
  • Updated fmt to 7.1.3.
  • Updated doctest to 2.4.1.
  • Updated some utility scripts.
  • Updated and added documentation.
  • Documentation for all class member functions.
  • Added examples to readme.
  • Added more tests.

1.0.1

08 Nov 11:35
2376ec1
Compare
Choose a tag to compare
  • Increased performance for mtl::rng, mtl::random_choice, mtl::shuffle.
  • Added more tests for random algorithms and random number generators.
  • Fixed an bug that occurred from libstdc++ non-standard behavior.

1.0.0

01 Nov 12:55
aa6ee1b
Compare
Choose a tag to compare

The first public release of the Modern Template Library.