5.0.0
Freundlich's C++ toolkit
Loading...
Searching...
No Matches
Changes

5.0.0

fcppt now uses C++-23.

  • Cleaned up clang-21 warnings.
  • Replaced various components with C++-20 ranges.

Added functionality

Changed functionality

Removed functionality

  • fcppt.algorithm

    • Removed fcppt::algorithm::contains. Use std::ranges::contains.
    • Removed fcppt::algorithm::equal. Use std::ranges::equal.
    • Removed fcppt::algorithm::equal_range. Use std::ranges::equal_range.
    • Removed fcppt::algorithm::range_value_type. Use std::ranges::range_value_t.

  • fcppt.concepts

    • Removed fcppt::concepts::invocable. Use std::invocable.
    • Removed fcppt::concepts::range. Use one of the range concepts from std::ranges.

  • fcppt.iterator

    • Removed fcppt::iterator::range. Use std::ranges::subrange.

  • fcppt.preprocessor

    • Removed FCPPT_PP_PURE and FCPPT_PP_CONST.
    • Removed FCPPT_PP_WARNING. Use #warning from C++-23.

  • fcppt.range

    • Removed fcppt::range::empty. Use std::ranges::empty.
    • Removed fcppt::range::begin. Use std::ranges::begin.
    • Removed fcppt::range::end. Use std::ranges::end.

  • fcppt.various

    • Removed fcppt::args_range.

Bugfixes

4.6.1

  • Cleaned up clang-20 warnings.

Bugfixes

4.6.0

  • Cleaned up clang-19 warnings.

Added functionality

Changed functionality

Removed functionality

Bugfixes

  • Fixed compilation with clang-19.

4.5.0

  • Cleaned up clang-18 warnings.
  • Added MSVC and MacOS CI/CD on Github.
  • Overhauled and documented CMake files, using cmake-format and cmake-lint.
  • Added the ability to also compile header files using misc-include-cleaner from clang-tidy and cleaned up all includes in header files as a result.

Added functionality

Changed functionality

Removed functionality

Bugfixes

  • fcppt.enum

    • Fixed enum size types for small enums.

4.4.1

  • Cleaned up clang-17 warnings.
  • Added Include-What-You-Use pragmas.

Added functionality

4.4.0

  • Added a workaround for Apple Clang.
  • Cleaned up clang-16 and gcc-13 warnings.

Changed functionality

Removed functionality

  • fcpptassert

    • Removed most of the library.

Bugfixes

4.3.0

  • Switched from Catch-2 to Catch-3 for unit tests.
  • Fixed some warnings related to clang-15.
  • Support for VC++-14.34 (Visual Studio 2022 Version 17.4).

Added functionality

Removed functionality

Bugfixes

4.2.1

Support for VC++-14.32 (Visual Studio 2022 Version 17.2).

4.2.0

Added functionality

This release fixes some warnings related to clang-14.

Removed functionality

  • fcppt.filesystem

    • Removed fcppt::filesystem::replace_extension. Use std::filesystem::path::replace_extension.
    • Removed fcppt::filesystem::strip_prefix. Use std::filesystem::relative.
    • Removed fcppt::filesystem::num_subpaths.
    • Removed fcppt::filesystem::normalize.
    • Removed fcppt::filesystem::stem. Use std::filesystem::path::stem.

4.1.0

This release fixes some warnings related to clang-13.

Added functionality

Changed functionality

4.0.0

fcppt now uses C++-20. Some functions were updated to use concepts, but this is still a work in progress.

Metal is no longer required.

Added functionality

Changed functionality

Removed functionality

  • fcppt.assert

    • Removed FCPPT_ASSERT_UNIMPLEMENTED_MESSAGE.
    • Removed FCPPT_ASSERT_PRE and FCPPT_ASSERT_PRE_MESSAGE.

  • fcppt.container

    • Removed fcppt::container::contains. In C++20, maps have a contains member function.

  • fcppt.endianness

    • Removed fcppt::endianness::format, fcppt::endianness::is_big_endian, fcppt::endianness::is_little_endian and fcppt::endianness::host_format. Use std::endian instead.

  • fcppt.math

    • Removed fcppt::math::pi and fcppt::math::twopi. Use std::numbers::pi_v instead.

  • fcpptmetal

    This has been removed in favor of fcppt.mpl.

  • fcppt.optional

    • Removed fcppt::optional::const_cast_, fcppt::optional::dynamic_cast_ and fcppt::optional::static_cast_.

  • fcppt.type_traits

    • Removed fcppt::type_traits::remove_cv_ref_t. Use std::remove_cvref_t.
    • Removed fcppt::type_traits::function_result.
    • Removed fcppt::type_traits::is_float_or_double.

Bugfixes