Chip Hogg

Results 50 issues of Chip Hogg

The overflow safety surface is pretty useful, but it's also just a heuristic. It can be too restrictive in some cases, and even perhaps too permissive in a few. In...

:file_folder: kind: enhancement
:muscle: effort: medium
:arrow_down: affects: code (interfaces)

In some sense, we can already do this. ```cpp constexpr auto RAD = radians(1); ``` However, this brings `int` into the equation, via the `1`. This could affect the arithmetic...

:file_folder: kind: enhancement
:muscle: effort: medium
:arrow_down: affects: code (interfaces)

Right now, the result of a Quantity computation whose unit is equivalent to 1 is a raw number, rather than a Quantity equivalent to `unos`. I made this decision because...

:file_folder: kind: enhancement
:muscle: effort: large
:arrow_down: affects: code (interfaces)

This was mentioned in [our CppCon 2021 talk](https://www.youtube.com/watch?v=5dhFtSu3wCo), but it hasn't yet actually made its way to the library. This is likely to be frustrating for many who found the...

:file_folder: kind: enhancement
:muscle: effort: epic
:arrow_down: affects: code (interfaces)

I have always conflated these ideas, probably because `static_cast` does both. But it could be nice to be able to write, say, `inches(50).force_as(feet)`: we wouldn't need to repeat the `Rep`,...

:file_folder: kind: enhancement
:muscle: effort: large
:arrow_down: affects: code (interfaces)

We have a formatter internal to Aurora, which was pretty easy to write. However, I don't think it was that smart about taking the unit label length into account. Maybe...

:file_folder: kind: enhancement
:muscle: effort: medium
:arrow_down: affects: code (implementation)

This is a follow-on to #32. These have been deprecated for long enough that it's definitely safe to delete them. Since this should force a minor version bump, we'll save...

:file_folder: kind: cleanup
:muscle: effort: tiny
:arrow_down: affects: code (implementation)

Right now, the unit resulting from scaling a unit by a magnitude gets the default label, `[UNLABELED_UNIT]`. It's important that it _not_ have the same label as the unscaled unit....

:file_folder: kind: enhancement
:muscle: effort: medium
:arrow_down: affects: code (implementation)

A core part of Au's philosophy is "no preferred units". So when we subtract, say, MPH from KPH, the result is labeled as essentially "the common unit of MPH and...

:file_folder: kind: enhancement
:muscle: effort: small
:arrow_down: affects: code (implementation)
:memo: status: blocked

As with most every other mature units library, we've realized that angles should be included as first class participants in dimensional analysis. This conflicts with the widely held assumption that...

:arrow_down: affects: documentation
:file_folder: kind: enhancement
:muscle: effort: large