Units v0.4.0 Release Notes
Release Date: 2020-03-30 // about 4 years ago-
Add a converter command line application and fix a few slow conversion issues and some other fuzz issues that came up recently, add isnormal operation for measurements, better test coverage for fixed_precise_measurement, some additional tests and static analysis checks.
🔄 Changed
- ➕ Added several tests run under Azure to remove deprecated image and add some new tests #40
- ⚠ clears up several warnings from clang-tidy #41
- the fuzzer now uses fuzz_measurement #42
- ⚡️ update clang format to limit line length to 80 and allow reflowing comments #43
- ➕ add clang-tidy checks for the tests and fix a few issues. #47
🛠 Fixed
- A few timeouts on the fuzzer- the fix was to generalize the multiplier insertion after ^ to accept multiple digits after the ^ instead of just ignoring it after more than one. #34
- An asymmetry was observed in the unit equality from on the fuzzers, this resulted in some modifications of the
cround_equal
andcround_precice_equals
functions. Also noted that the functions weren't aborting on exact floating point equality so were doing quite a bit of extra calculations. #34 - ⏱ A timeout issue from fuzzing having to do with not injecting multiplies after
[]
in some circumstances. The fix was to be a little more refined as to which point to not inject the*
and to do it in multiple stages so as to not rely on the partitioner so much. #35 - 🛠
fixed_measurement
andfixed_precise_measurement
had incorrect subtraction operation in a few overloads. #39 - 🛠 fixed a few initial issues from fuzz_measurement #42
- Some more fuzzing generated issues with cascading powers #45
- ⚠ A number of additional clang-tidy checks were added and the resulting warnings fixed #46
- An issue from the fuzzer dealing with equation type units #51
➕ Added
- ➕ added a converter command line application that can convert units on the command line #35
- ➕ Added a file operation that can load user defined units from a file #36
- ➕ Added
is_valid
methods for all measurement types #36 - ➕ Added addUserDefinedInputUnit to add user defined units only on the input #36
- The webserver gained a
to_string
option to use the internal to_string operations to simplify the measurement and units #37 - The webserver and the converter gained an ability to handle
*
and<base>
as the input unit to convert the measurement to base units. #37 - Added
to_string
operation for uncertain_measurements #38 - ➕ Added
isnormal
operation for measurement types #39 - Added
UNITS_CLANG_TIDY
option to run tests with Clang tidy #41 - ✅ Added fuzz_measurement fuzzer to test measurement_from_string #42
- ➕ Added cpplint test to azure #43
- ➕ Added a number of additional units from UDunits #44
- ➕ Added several CI checks including CPPlint, and a series of CMAKE checks, and formatting checks #48,#49
- ➕ Added a series of additional tests for coverage #50