Skip to content

Releases: mpusz/mp-units

0.5.0

17 May 09:24
Compare
Choose a tag to compare
0.5.0 Pre-release
Pre-release
  • Major refactoring and rewrite of the library
  • Units are now independent from dimensions
  • Dimensions now depend on units (base or coherent units are provided in a class template)
  • Quantity gets a Dimension template parameter again (as unit does not provide information about
    its dimension anymore)
  • Spaceship operator support added
  • Added official CGS system support
  • Added official data information system support
  • Repository file tree cleanup
  • ratio refactored to contain Exp template parameter (thanks a lot @oschonrock!)
  • SI fundamental constants added
  • q_ prefix applied to all the UDLs (thanks @kwikius)
  • unknown_unit renamed to unknown_coherent_unit
  • Project documentation greatly extended and switched to Sphinx
  • A few more usage examples added
  • ASCII-only output support added (thanks @yasamoka)
  • Representation values formatting extended (thanks @rbrugo)
  • Output streams formatting support added
  • Linear algebra from std::experimental::math support added
  • Named SI units and their dimensions added (thanks @rbrugo
  • libfmt updated to 6.2.0
  • Added absolute functions and epsilon to math.h (thanks @mikeford3)
  • Added a lot of prefixes to named units and introduced alias_unit (thanks @yasamoka)
  • Linking with Conan targets only when they exists (#98)
  • All physical dimensions and units put into physical namespace
  • CMake improvements
  • Velocity renamed to speed

Many thanks to GitHub users @oschonrock, @kwikius, and @i-ky for their support in drafting a new library design.

0.4.0

17 Nov 06:46
Compare
Choose a tag to compare
0.4.0 Pre-release
Pre-release
  • Support for derived dimensions in exp added
  • Added pow() and sqrt() operations on quantities
  • units removed from a std::experimental namespace
  • Downcasting facility refactored so the user does not have to write the boilerplate code anymore
  • From now on base dimensions should inherit from base_dimension class template
  • Added unit symbols definitions to base_dimension and derived units
  • Added support for operator<< on quantity
  • fmt support added
  • Derived unit factory helpers refactored
  • Refactored the way prefixed units are defined

0.3.1

18 Sep 17:06
Compare
Choose a tag to compare
0.3.1 Pre-release
Pre-release
  • cmcstl2 dependency changed to range-v3 0.9.1

CppCon 2019 design

17 Sep 12:56
Compare
Choose a tag to compare
CppCon 2019 design Pre-release
Pre-release
  • The design as described on CppCon 2019 talk (https://youtu.be/0YW6yxkdhlU)
  • Applied the feedback from the Cologne evening session
    • upcasting_traits renamed to downcasting_traits
    • Dimension template parameter removed from quantity
  • units moved to a std::experimental namespace
  • Leading underscore prefix removed from UDLs
  • Added a few more derived dimensions
  • meter renamed to metre
  • Missing operator* added
  • Predefined dimensions moved to a dedicated directory
  • dimension_ prefix removed from names of derived dimensions
  • cmcstl2 library updated to 2019.09.19
  • base_dimension is a value provided as const& to the exp type
  • integrated with Compiler Explorer
  • gsl-lite dependency removed
  • Fractional dimension exponents support added
  • QuantityOf concept introduced
  • quantity_cast<U, Rep>() support added

C++Now 2019 design

17 Sep 12:58
Compare
Choose a tag to compare
C++Now 2019 design Pre-release
Pre-release
  • The design as described on C++Now 2019 talk (https://youtu.be/wKchCktZPHU)
  • Added C++20 features supported by gcc-9.1 (std::remove_cvref_t, down with typename, std::type_identity)
  • Compile-time performance optimizations (type_list, common_ratio, ratio, conditional_t)

0.1.0

17 Sep 13:03
Compare
Choose a tag to compare
0.1.0 Pre-release
Pre-release
  • Initial library release
  • Begin semantic versioning
  • The last version to work with gcc-8