forked from mpusz/mp-units
We had some fun exploring the STD UDLs for potential collisions, we have learnt our lesson and know how to proceed. Now is high time to start behaving and obeying C++ rules.
5.0 KiB
5.0 KiB
Release notes
-
0.6.0 WIP
- gcc-9 is no longer supported (at least gcc-10 is required)
- Visual Studio 16.7 support added
- linear_algebra updated to 0.7.0/stable
- fmt updated to 7.0.3
- range-v3 updated to 0.11.0
- catch2 updated to 2.13.0
- doxygen updated to 1.8.18
- ms-gsl 3.1.0 dependency added
- Added angle as SI base dimension (thanks @kwikius)
- Added STL random number distribution wrappers (thanks @yasamoka)
math.hfunction signatures refactored to use aQuantityconcept (thanks @kwikius)- FPS system added (thanks @mikeford3)
quantity_pointsupport added (thanks @johelegp)ratiochanged to the NTTP kindexpandExprenamed toexponentandExponent- Added support for
exp()mathematical support - Dimensionless quantities redesigned to be of
quantitytype Scalarconcept renamed toScalableNumberq_*UDL renamed to_q_*
-
0.5.0 May 17, 2020
- 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
ratiorefactored to containExptemplate parameter (thanks a lot @oschonrock!)- SI fundamental constants added
q_prefix applied to all the UDLs (thanks @kwikius)unknown_unitrenamed tounknown_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::mathsupport 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
physicalnamespace - 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 Nov 17, 2019
- Support for derived dimensions in
expadded - Added
pow()andsqrt()operations on quantities unitsremoved from astd::experimentalnamespace- Downcasting facility refactored so the user does not have to write the boilerplate code anymore
- From now on base dimensions should inherit from
base_dimensionclass template - Added unit symbols definitions to
base_dimensionand derived units - Added support for
operator<<onquantity fmtsupport added- Derived unit factory helpers refactored
- Refactored the way prefixed units are defined
- Support for derived dimensions in
-
0.3.1 Sep 18, 2019
- cmcstl2 dependency changed to range-v3 0.9.1
-
0.3.0 Sep 16, 2019 (CppCon 2019 design)
- The design as described on CppCon 2019 talk (https://youtu.be/0YW6yxkdhlU)
- Applied the feedback from the Cologne evening session
upcasting_traitsrenamed todowncasting_traitsDimensiontemplate parameter removed from quantity
unitsmoved to astd::experimentalnamespace- Leading underscore prefix removed from UDLs
- Added a few more derived dimensions
meterrenamed tometre- 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_dimensionis a value provided asconst&to theexptype- integrated with Compiler Explorer
- gsl-lite dependency removed
- Fractional dimension exponents support added
QuantityOfconcept introducedquantity_cast<U, Rep>()support added
-
0.2.0 July 18, 2019 (C++Now 2019 design)
- 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 May 18, 2019
- Initial library release
- Begin semantic versioning
- The last version to work with gcc-8