Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Releases: marovira/zeus

1.9.0

19 Nov 02:27

Choose a tag to compare

Breaking Changes

  • zeus::IntegralType and zeus::ArithmeticType have been renamed to zeus::Integral and zeus::Arithmetic respectively. See below for more details.

Feature Changes

  • Integral and Arithmetic concepts are now inline with STL naming conventions.
  • Adds zeus::UnsignedIntegral for detecting unsigned integral types.
  • Adds zeus::linspace as an alternative for zeus::Range on floating points. Follows the same API as numpy.

Bug Fixes

  • zeus::Range no longer accepts any type that isn't integral. This prevents bugs when using with floating point. Use zeus::linspace instead.
  • Removes tildes from C++ macros. This could cause compiler errors on certain platforms.

Full Changelog

1.8.0...1.9.0

1.8.0

09 Oct 21:00

Choose a tag to compare

Feature Changes

  • Adds a new wrapper to temporarily switch the working directory within a scope. See zeus::ChdirScope for details in the filesystem header.

1.7.0

04 Sep 00:50

Choose a tag to compare

Feature Changes

  • Adds a header to detect C++ versions.
  • Adds support for macOS.
  • Updates all dependencies.
  • Add clang-tidy and updates code to match.

Full Changelog

1.6.0...1.7.0

1.6.0

14 Mar 04:22

Choose a tag to compare

Maintenance Release

  • Updates package versions
  • Improvements to CI and dev setups.

Full Changelog

1.5.0...1.6.0

1.5.0

18 Sep 01:24

Choose a tag to compare

Feature Changes

  • Improved usability of the EnumBitfield class:
    • Allow the class to be created directly from the base type. This simplifies cases where the bitfield is serialised and then restored.
    • Allow the class to receive assignment from the base type. This is mostly for symmetry with the other assignment operator.
  • Removes unused headers to streamline inclusion and reduce build times.
  • Updates the ASSERT macro implementation to use std::array instead of C-style arrays for better safety.
  • Functors passed in to the string functions no longer use universal references. This is in conformance with the STL.
  • Update all SDKs to their latest released versions.

Full Changelog

1.4.0...1.5.0

1.4.0

02 Jan 21:55

Choose a tag to compare

Feature Changes

  • Adds a new header for container traits.
    • The goal of this header is to provide compile-time checks for certain traits that are defined by the standard and satisfied by the STL containers. Currently implements the ContiguousContainer trait.
  • Updates the ASSERT macro to use std::source_location. This also improves the output of the assert macro by providing file, line, column, and function names.
  • Updates all SDKs to their latest versions.

Full Changelog

1.3.0...1.4.0

1.3.0

22 Sep 20:12

Choose a tag to compare

Breaking Changes

  • The concepts header has been completely revamped. If you use any of the old concepts, please see below for the new versions.
  • check_flag has been removed from enum_bitfield.hpp. The function has been marked as deprecated for a while now and should be removed.

Feature Changes

  • Concepts have been significantly improved:
    • Concept names are now consistent with overall coding style.
    • Concepts now build on each other instead of re-defining the same checks.
    • Added a new concept for checking integral types (without bool)
  • The string header now provides a concept for the delimiter functor. This should provide better error messages from the compiler.
  • Updates all SDKs to their latest versions.

Bug Fixes

  • Concepts are now unit tested to ensure they work correctly.

Full Changelog

1.2.0...1.3.0

1.2.0

20 Jun 19:30

Choose a tag to compare

Breaking Changes

  • The floating point comparison functions have been completely revamped. If you use any of the old functions, see below for the new versions.
  • functional.hpp has been removed and replaced with the new Range class.

Feature Changes

  • Floating point functions have been significantly improved:
    • Epsilon values can now be passed in directly without need of going through the template arguments themselves.
    • Comparison against 0 is now distinct from the general comparison function.
    • Please note that the old functions are_equal, is_zero, leq, and geq have now been replaced with the following:
      • are_equal is now almost_equal to emphasize that they're not fully equal.
      • is_zero is now almost_zero for the same reasons
      • leq and geq have been removed as they were redundant.
  • Added a new class Range that emulates the behaviour of Python's range. This class supersedes the iota function held in functional.hpp so it has been removed.
  • Added a compile-time version of std::abs.

Bug Fixes

  • The Timer class is no longer marked constexpr as it is mostly intended for run-time operations.
  • The floating point comparison functions are now fully constexpr compatible.
  • The is_arithmetic concept now excludes bool.
  • All compile-time compatible functions and classes are now correctly checked at compile-time.

Full Changelog

1.1.0...1.2.0

1.1.0

10 Apr 19:45

Choose a tag to compare

Feature Changes

  • Improves the string operations so they are closer to Python. See #3
  • Adds a split lines function similar to Python. See #4
  • Removes ConfigParser.
  • Adds version macros for greater flexibility.

Fixes

  • Versioning is now more streamlined.
  • Fixes compatibility with newer versions of Zeus (#1)
  • When installing Zeus, ensure that the FetchLibrary script is also installed (#7)

Full Chagelog

1.0.1...1.1.0

1.0.1

10 Apr 19:38

Choose a tag to compare

Fixes

  • Fixes an issue where projects that used Zeus had to disable the tests for Zeus. Tests are now disabled by default.
  • Fixes the name of the installed config file so it matches the version file. This allows specific versions of Zeus to be found.

Full Changelog

1.0.0...1.0.1