Skip to content

Commit fae8cf3

Browse files
ext: update all dependencies
1 parent cbaf024 commit fae8cf3

File tree

10 files changed

+886
-235
lines changed

10 files changed

+886
-235
lines changed

.gitmodules

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,4 +15,4 @@
1515
url = https://github.com/richgel999/miniz
1616
[submodule "ext/minizip-ng"]
1717
path = ext/minizip-ng
18-
url = https://github.com/zlib-ng/minizip-ng
18+
url = https://github.com/craftablescience/minizip-ng

ext/half/ChangeLog.txt

+222
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,222 @@
1+
Release Notes
2+
=============
3+
4+
2.2.1 release (2025-03-02):
5+
---------------------------
6+
7+
- Fixed error when converting minimum negative integer value to half.
8+
- Added more type conversions to remove warnings on some 64-bit platforms.
9+
- Removed potential naming conflicts of internal functions with C standard
10+
library functions.
11+
12+
13+
2.2.0 release (2021-06-12):
14+
---------------------------
15+
16+
- Added `rsqrt` function for inverse square root.
17+
- Improved performance of `pow` function.
18+
- Fixed bug that forgot to include `<immintrin.h>` for F16C intrinsics.
19+
20+
21+
2.1.0 release (2019-08-05):
22+
---------------------------
23+
24+
- Added detection of IEEE floating-point exceptions to operators and functions.
25+
- Added configuration options for automatic exception handling.
26+
- Added functions for explicitly managing floating-point exception flags.
27+
- Improved accuracy of `pow` and `atan2` functions.
28+
29+
30+
2.0.0 release (2019-07-23):
31+
---------------------------
32+
33+
- Made internal implementation independent from built-in floating point
34+
facilities for increased reliability and IEEE-conformance.
35+
- Changed default rounding mode to rounding to nearest.
36+
- Always round ties to even when rounding to nearest.
37+
- Extended `constexpr` support to comparison and classification functions.
38+
- Added support for F16C compiler intrinsics for conversions.
39+
- Enabled C++11 feature detection for Intel compilers.
40+
41+
42+
1.12.0 release (2017-03-06):
43+
----------------------------
44+
45+
- Changed behaviour of `half_cast` to perform conversions to/from `double`
46+
and `long double` directly according to specified rounding mode, without an
47+
intermediate `float` conversion.
48+
- Added `noexcept` specifiers to constructors.
49+
- Fixed minor portability problem with `logb` and `ilogb`.
50+
- Tested for *VC++ 2015*.
51+
52+
53+
1.11.0 release (2013-11-16):
54+
----------------------------
55+
56+
- Made tie-breaking behaviour in round to nearest configurable by
57+
`HALF_ROUND_TIES_TO_EVEN` macro.
58+
- Completed support for all C++11 mathematical functions even if single-
59+
precision versions from `<cmath>` are unsupported.
60+
- Fixed inability to disable support for C++11 mathematical functions on
61+
*VC++ 2013*.
62+
63+
64+
1.10.0 release (2013-11-09):
65+
----------------------------
66+
67+
- Made default rounding mode configurable by `HALF_ROUND_STYLE` macro.
68+
- Added support for non-IEEE single-precision implementations.
69+
- Added `HALF_ENABLE_CPP11_TYPE_TRAITS` preprocessor flag for checking
70+
support for C++11 type traits and TMP features.
71+
- Restricted `half_cast` to support built-in arithmetic types only.
72+
- Changed behaviour of `half_cast` to respect rounding mode when casting
73+
to/from integer types.
74+
75+
76+
1.9.2 release (2013-11-01):
77+
---------------------------
78+
79+
- Tested for *gcc 4.8*.
80+
- Tested and fixed for *VC++ 2013*.
81+
- Removed unnecessary warnings in *MSVC*.
82+
83+
84+
1.9.1 release (2013-08-08):
85+
---------------------------
86+
87+
- Fixed problems with older gcc and MSVC versions.
88+
- Small fix to non-C++11 implementations of `remainder` and `remquo`.
89+
90+
91+
1.9.0 release (2013-08-07):
92+
---------------------------
93+
94+
- Changed behaviour of `nearbyint`, `rint`, `lrint` and `llrint` to use
95+
rounding mode of half-precision implementation (which is
96+
truncating/indeterminate) instead of single-precision rounding mode.
97+
- Added support for more C++11 mathematical functions even if single-
98+
precision versions from `<cmath>` are unsupported, in particular
99+
`remainder`, `remquo` and `cbrt`.
100+
- Minor implementation changes.
101+
102+
103+
1.8.1 release (2013-01-22):
104+
---------------------------
105+
106+
- Fixed bug resulting in multiple definitions of the `nanh` function due to
107+
a missing `inline` specification.
108+
109+
110+
1.8.0 release (2013-01-19):
111+
---------------------------
112+
113+
- Added support for more C++11 mathematical functions even if single-
114+
precision versions from `<cmath>` are unsupported, in particular
115+
exponential and logarithm functions, hyperbolic area functions and the
116+
hypotenuse function.
117+
- Made `fma` function use default implementation if single-precision version
118+
from `<cmath>` is not faster and thus `FP_FAST_FMAH` to be defined always.
119+
- Fixed overload resolution issues when invoking certain mathematical
120+
functions by unqualified calls.
121+
122+
123+
1.7.0 release (2012-10-26):
124+
---------------------------
125+
126+
- Added support for C++11 `noexcept` specifiers.
127+
- Changed C++11 `long long` to be supported on *VC++ 2003* and up.
128+
129+
130+
1.6.1 release (2012-09-13):
131+
---------------------------
132+
133+
- Made `fma` and `fdim` functions available even if corresponding
134+
single-precision functions are not.
135+
136+
137+
1.6.0 release (2012-09-12):
138+
---------------------------
139+
140+
- Added `HALF_ENABLE_CPP11_LONG_LONG` to control support for `long long`
141+
integers and corresponding mathematical functions.
142+
- Fixed C++98 compatibility on non-VC compilers.
143+
144+
145+
1.5.1 release (2012-08-17):
146+
---------------------------
147+
148+
- Recorrected `std::numeric_limits::round_style` to always return
149+
`std::round_indeterminate`, due to overflow-handling deviating from
150+
correct round-toward-zero behaviour.
151+
152+
153+
1.5.0 release (2012-08-16):
154+
---------------------------
155+
156+
- Added `half_cast` for explicitly casting between half and any type
157+
convertible to/from `float` and allowing the explicit specification of
158+
the rounding mode to use.
159+
160+
161+
1.4.0 release (2012-08-12):
162+
---------------------------
163+
164+
- Added support for C++11 generalized constant expressions (`constexpr`).
165+
166+
167+
1.3.1 release (2012-08-11):
168+
---------------------------
169+
170+
- Fixed requirement for `std::signbit` and `std::isnan` (even if C++11
171+
`<cmath>` functions disabled) on non-VC compilers.
172+
173+
174+
1.3.0 release (2012-08-10):
175+
---------------------------
176+
177+
- Made requirement for `<cstdint>` and `static_assert` optional and thus
178+
made the library C++98-compatible.
179+
- Made support for C++11 features user-overridable through explicit
180+
definition of corresponding preprocessor symbols to either 0 or 1.
181+
- Renamed `HALF_ENABLE_HASH` to `HALF_ENABLE_CPP11_HASH` in correspondence
182+
with other C++11 preprocessor symbols.
183+
184+
185+
1.2.0 release (2012-08-07):
186+
---------------------------
187+
188+
- Added proper preprocessor definitions for `HUGE_VALH` and `FP_FAST_FMAH`
189+
in correspondence with their single-precision counterparts from `<cmath>`.
190+
- Fixed internal preprocessor macros to be properly undefined after use.
191+
192+
193+
1.1.2 release (2012-08-07):
194+
---------------------------
195+
196+
- Revised `std::numeric_limits::round_style` to return
197+
`std::round_toward_zero` if the `float` version also does and
198+
`std::round_indeterminate` otherwise.
199+
- Fixed `std::numeric_limits::round_error` to reflect worst-case round
200+
toward zero behaviour.
201+
202+
203+
1.1.1 release (2012-08-06):
204+
---------------------------
205+
206+
- Fixed `std::numeric_limits::min` to return smallest positive normal
207+
number, instead of subnormal number.
208+
- Fixed `std::numeric_limits::round_style` to return
209+
`std::round_indeterminate` due to mixture of separately rounded
210+
single-precision arithmetics with truncating single-to-half conversions.
211+
212+
213+
1.1.0 release (2012-08-06):
214+
---------------------------
215+
216+
- Added half-precision literals.
217+
218+
219+
1.0.0 release (2012-08-05):
220+
---------------------------
221+
222+
- First release.

ext/half/LICENSE renamed to ext/half/LICENSE.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
The MIT License
22

3-
Copyright (c) 2012-2021 Christian Rau
3+
Copyright (c) 2012-2025 Christian Rau
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

0 commit comments

Comments
 (0)