Changelog History
-
v3.0.0.alpha Changes
June 22, 2018๐ Many new features of v3.x implemeneted, including first-class support for integer units
-
v2.3.1 Changes
April 22, 2018๐ New in v2.3.1
๐ This version removes support for the Visual Studio 2013 compiler.
๐ Features:
- units now include constexpr
name()
andabbreviation()
member functions, which do not really on string/iostream. - ๐ Builds with VS2017 Ninja generator out of the box
- string conversions are now locale aware
- โ added unary incremement and decremement operators (
++
,--
), as well as unary+
operator.
๐ Bug fixs:
- ๐ fixed compilation error when iostream was disabled
- units now include constexpr
-
v2.3.0 Changes
September 16, 2017๐ features:
- 5x compile time improvement on MSVC.
- 1.5x compile time improvement on GCC.
- 0๏ธโฃ Even more dramatic reductions in compile time can be acheived if you opt-in to specific unit definitions instead of using all the library-defined types (which is the default value). Check out Enabling a subset of units to improve compilation time for instructions.
- โ Adds std::cout support for units with no defined abbreviation (they show up as a combination of SI base units)
- ๐ Support for
std::numeric_limits
of unit types. - Assignment operators for unit types:
-=
,+=
,/=
,*=
. - โ Added
min
andmax
overloads for units types inunits::math
. โ Added
to_string
function andabbreviation
functions:auto len = 3.5_m;auto str = units::length::to_string(len);auto abv = units::length::abbreviation(len); std::cout << str; // prints "3.5 m"std::cout << abv; // prints "m"
Added units of data and data transfer:
bits
,bytes
,bits_per_second
, andbytes_per_second
.โ Adds
value()
member for accessing underlying type.Adds
value_type
trait, as a synonym forunderlying_type
.โ Adds definitions for Julian and Gregorian years.
๐ฆ Thanks to @dinocore1,
units
now supports cmake install andfind_packages
. From the pull request:To have cmake install units library to a local 'install' directory:mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX="install" .. cmake --build . --target install# The units library can then be used in some other cmake project using # the standard 'find_package' command. Like so:find_package(units)
๐ Bug fixes:
- ๐ Fixed singualr name of
siemen
to besiemens
(Thanks @Oxyd) - ๐ Fixed bug with
cubrt
operation (Thanks @PearCoding) - ๐ fixed constexpr relational operators bug
- ๐ fixed exponential temperature conversions (Thanks @guarndt)
-
v2.3.0.RC2 Changes
February 23, 2017๐ Improvements:
- 512% compile time improvement on MSVC.
- 165% compile time improvement on GCC.
๐ Bug fixes:
- ๐ fixed constexpr relational operators bug (#63)
Notes:
- ๐ Retains VS2013 support
- ๐ No documentation updates are provided in this release candidate.
-
v2.3.0.RC1 Changes
February 13, 2017๐ Release Candidate 1 for v2.3.0
- โ Adds data units (bits/bytes) and data transfer units as first-class citizens
- โ Adds
std::cout
support for units with no defined abbreviation (they show up as a combination of SI base units) - โ Adds compound assignment operators:
+=
,-=
,/=
,*=
. - โ Adds
value()
member for accessing underlying type. - Adds
value_type
trait, as a synonym forunderlying_type
. - โ Adds definitions for Julian and Gregorian years.
Notes:
- ๐ Provisionally removes compiler support for MSVC2013.
- ๐ No documentation updates are included in this candidate.
-
v2.2.0 Changes
February 09, 2017๐ New Features:
- Unit types and member functions are now
constexpr
andnoexcept
wherever possible. - โ Added
cpow<..>()
, aconstexpr
power function. - โ Added
make_unit
factory function. - โ Added cmath
hypot()
function. - โ Added optional definition to disable IOStream in embedded applications.
๐ Improvements:
- ๐ New and improved
pi
constant units::time
andstd::chrono
are now interoperable- โ eliminated warnings on gcc when using
-Wall -Wextra -pedantic
- Unit types and member functions are now
-
v2.1.3 Changes
October 09, 2016๐ New features:
- โ Added a CMake
interface
project so thatunits
can be more easily included as a git submodule or CMake subdirectory. - โ Added options to disable building unit tests and documentation.
๐ Improvements:
- โ Removed all GNU dependencies
- โก๏ธ Updated google test to version 1.8.0 and simplified the build process
- ๐ improved overall units compile time.
- โ Added a CMake
-
v2.1.2 Changes
September 29, 2016๐ Bug fixes:
- in-lined the decibel unit literals to prevent multiple definitions.
- ๐ changed inch abbreviation from
inch
toin
-
v2.1.1 Changes
September 28, 2016โจ Enhancements
- โ Adds clang support and testing (on linux).