Skip to content

Releases: LLNL/units

v0.12.3: Add dimension (#366)

04 Mar 15:56
fa2977b
Compare
Choose a tag to compare
* update license version numbers

* update nanobind versions

* skip pypy3.11 build on mac

* add dimensions class and some commodity conversion maps to actually use

* update version numbers

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* fix compatibility

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* update runners

* remove old cmake tests

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

v0.12.1: [pre-commit.ci] pre-commit autoupdate (#358)

13 Jan 14:31
aa0f2e7
Compare
Choose a tag to compare
updates:
- [github.com/pre-commit/mirrors-clang-format: v19.1.5 → v19.1.6](https://github.com/pre-commit/mirrors-clang-format/compare/v19.1.5...v19.1.6)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

v0.12.0: update the python interface, (#357)

05 Jan 23:02
9d91e0d
Compare
Choose a tag to compare
- Updated the Python interface, cleaned up the code, added dunder methods, and implemented mod operation for measurements.
- Added floor division in Python.
- Enhanced README with new shields and more documentation updates.
- Updated version and documentation; improved bool conversion in Python with tests.
- Applied auto fixes from pre-commit.com hooks.

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>

v0.11.0

26 Dec 16:06
7914fd1
Compare
Choose a tag to compare

Python package release, documentation update, continued addition of new units and other updates and fixes

Changed

  • Updated cmake and other dependencies #342
  • Updated copyright date to 2024 #351
  • updated the r20 units to be mostly operational #314
  • Updated third party libraries, and some new CI builders #335,#336

Fixed

  • fixed some issues with windows.h header conflicts #345
  • fixed an issue using CMAKE_CXX_STANDARD #339
  • fixed some missing test coverage to 100% #316,#317,#318

Added

  • Added Python Library #349,#350
  • Added some additional equation units and tests #315
  • Added a number of additional units string #322,#331
  • added unary operation to measurement classes #327

v0.10.2

21 Dec 20:31
a713814
Compare
Choose a tag to compare

Test release for python package

v0.9.1

02 Sep 01:53
7917f5f
Compare
Choose a tag to compare

Fix some string output issues related to units with various prefixes of meters and seconds, and add a UNITS_CMAKE_PROJECT_NAME variable to cmake to allow the CMAKE project name to be customized.

Fixed

  • fixed an issue with string output related to mm/s outputting as mHz*m and mm/s^2 outputting as Gy/km #308

Added

  • Added a CMAKE variable to change the project name, to resolve some packaging conflicts. UNITS_CMAKE_PROJECT_NAME #310

v0.9.0

11 Aug 17:00
5a8a85e
Compare
Choose a tag to compare

A few user suggested tweaks, and support additional unit string conversions supported by the google unit converter. Cleaner output for Hz and prioritization of SI base units in the to_string operation.

Changed

  • Modified the eflag to work a little differently than the iflag and moved a couple units to use the eflag instead to support things like sqrt(degC.pow(2))=degC #275
  • Updated copyright date to 2023 #266
  • Updated to new version of google test and added some additional units and test from the google unit conversion #283
  • Fixed and corrected some documentation to match the latest code #284
  • Altered the match_flags to 64 bits and corresponding updates to the flag constants#294
  • adjusting the partitioning algorithms to have a minimum size and have some controlling flags #294,#297
  • split the non-english units into a separate array that can be controlled independently in the build #296

Fixed

  • fix fuzzing issue with arb. unit #275
  • Format arb.unit nicely and fix a hardcoded namespace #272
  • Fix quad unit, and clean up some unit conversion strings involving Hz #265
  • Update clang tidy and fix resulting issues #267
  • Fixed an issue where scalar unit values in measurements using to_string could cause a crash #289
  • Fixed some issues with prioritization of base units in the string generation #303

Added

  • Added multiplies and divides operations which take into account perunit operations #299
  • Added application notes on strain #299
  • Added support for addition in unit string, the units on both sides must have the same units #298
  • Updated coverage to hit 100% again #291
  • Added several unit strings and cleaned up the typography units #282
  • Added a dependabot configuration for updating the actions #274
  • Added removeUserDefinedUnit method #273
  • Added `addUserDefinedOutput method to specify an output string for a unit #270
  • Added support for robi and qubi prefixes

v0.7.0

18 Dec 02:01
12cb78d
Compare
Choose a tag to compare

Added several math operations for units, restored coverage to 100%, added uncertain constants and cleaner string generation and interpretation around the use of '.' and uncertain measurements, and added support for new SI prefixes.

Changed

  • Changed the interpretation of '.' in some unit strings to allow more consistent use as abbreviation #250
  • Made the string generation for uncertain measurements obey rules for significant figures more closely #249

Fixed

  • Get code coverage back to 100% #256, #254, #253, #252
  • Fixed hard coded namespaces in unit_conversion maps #241
  • Fixed a bug found by fuzzing #240

Added

  • math operations from the standard library including: trunc, ceil, floor, round, fmod, sin, cos, tan. #235
  • added support for new SI prefixes: rotta, quetta, ronto, quecto. #255
  • Added a number of uncertain constants #248

v0.6.0

16 May 14:26
eb8d59b
Compare
Choose a tag to compare

This release has a number of fixes for specific unit strings, adds some other units and a new unit_conversion_maps structure to reduce stack usage.

Changed

  • Convert default branch to "main"
  • The string maps are new defined in a constexpr array in units_conversion_maps.hpp this reduces the stack usage significantly and clears up some warnings about that on some compilers [#217][],#226
  • The country specific codes for China and Canada were changed from "ch" and can to cn and ca to match country top level domains #229

Fixed

  • The "hartree" string produced an incorrect value #163
  • Fixed an issue with inverse multipliers for inverse conversions #166
  • changed the string conversions to better align with SI recommendations #173
  • Fix an issue with the string "0.2" #188
  • Fix asterisk operator typo #194
  • Update the docker images to use more recent base images #206,#212
  • User defined units were not being used in the string conversion operations properly #213
  • Update third party library links #216
  • Clean up some if constexpr warnings on some platforms #227
  • Fix an issue of misinterpreting short strings with spaces such as kg m #224

Added

  • Added a series of constants to make the available constants match the Nist Common Constants list #163
  • added "Eh" as a valid string value for "hartree" #163
  • Added support for larger power factors in units when using larger base #184
  • Added support for some climate related units #210,#179
  • Added mass to weight conversions #229
  • added domains to allow some domain specific units that might mean different things in different contexts #173

v0.5.0

17 Aug 13:12
052f57a
Compare
Choose a tag to compare

This release includes some changes to the CMake builds and Targets. Also includes support for 64 bit base types for units with expanded power support, and support for a custom namespace for better integration with other applications. And additional units for natural gas and particle physics.

Changed

  • update the physical constants to latest values and updated related documentation on Physical constants [#56][]
  • CMake targets units::units and units::header_only are the only two public targets [#155][]
  • Updated code checks [#85][]

Fixed

  • Fixed -Wshadow warnings for GCC 4.9 and earlier [#66][]
  • Documentation Fixes and updates [#152][], [#146][], [#111][], [#82][]
  • Fixed pow_overflows not handling 0 correctly [#139][], [#134][]
  • Fixed a few issues with the output strings and some SI units [#130][]
  • Some cleanup for multiplier string generation [#93][]
  • Fixed an issue with plural two character units like lb, oz [#91][]
  • Fix identified Fuzzing issue [#84][]
  • Fixed some shadow warnings on some compilers [#72][]
  • Fixed some issues with std::abs usage [#70][]

Added

  • Added version output to converter app and the correct version info on the webserver [#54][]
  • Added markdown linter to pre-commit [#64][]
  • CMake format check to pre-commit [#65][]
  • Added tests for the shared library build [#155][]
  • Added support for 64 bit base unit [#150][], [#142][]
  • CMake Variable for manipulating output namespace [#136][], [#141][]
  • Added some support for compiling with C++20 [#125][]
  • Added some additional units for supporting particle physics [#120][],[#115][], [#112][], [#109][]
  • Added support for exposing the main unit maps for string conversions [#113][]
  • Added support for natural gas related units [#74][]

Removed

  • Travis-CI builds have been migrated to Azure and Circle-CI [#159][]
  • removed units::units-static, and units::units-shared CMake targets[#155][]
  • Removed Becquerel from the generated unit strings as it was producing some very odd units at times [#82][]