numpy 2.3.2__cp312-cp312-win32.whl → 2.3.3__cp312-cp312-win32.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of numpy might be problematic. Click here for more details.
- numpy/__config__.py +4 -4
- numpy/__init__.pyi +189 -29
- numpy/_core/_multiarray_tests.cp312-win32.lib +0 -0
- numpy/_core/_multiarray_tests.cp312-win32.pyd +0 -0
- numpy/_core/_multiarray_umath.cp312-win32.lib +0 -0
- numpy/_core/_multiarray_umath.cp312-win32.pyd +0 -0
- numpy/_core/_operand_flag_tests.cp312-win32.lib +0 -0
- numpy/_core/_operand_flag_tests.cp312-win32.pyd +0 -0
- numpy/_core/_rational_tests.cp312-win32.lib +0 -0
- numpy/_core/_rational_tests.cp312-win32.pyd +0 -0
- numpy/_core/_simd.cp312-win32.lib +0 -0
- numpy/_core/_simd.cp312-win32.pyd +0 -0
- numpy/_core/_struct_ufunc_tests.cp312-win32.lib +0 -0
- numpy/_core/_struct_ufunc_tests.cp312-win32.pyd +0 -0
- numpy/_core/_umath_tests.cp312-win32.lib +0 -0
- numpy/_core/_umath_tests.cp312-win32.pyd +0 -0
- numpy/_core/lib/npymath.lib +0 -0
- numpy/_core/lib/pkgconfig/numpy.pc +1 -1
- numpy/_core/tests/test_datetime.py +24 -0
- numpy/_core/tests/test_stringdtype.py +7 -0
- numpy/_typing/_callable.pyi +4 -91
- numpy/fft/_pocketfft_umath.cp312-win32.lib +0 -0
- numpy/fft/_pocketfft_umath.cp312-win32.pyd +0 -0
- numpy/lib/_arraysetops_impl.pyi +24 -0
- numpy/linalg/_linalg.py +1 -0
- numpy/linalg/_umath_linalg.cp312-win32.lib +0 -0
- numpy/linalg/_umath_linalg.cp312-win32.pyd +0 -0
- numpy/linalg/lapack_lite.cp312-win32.lib +0 -0
- numpy/linalg/lapack_lite.cp312-win32.pyd +0 -0
- numpy/linalg/tests/test_linalg.py +14 -1
- numpy/random/_bounded_integers.cp312-win32.lib +0 -0
- numpy/random/_bounded_integers.cp312-win32.pyd +0 -0
- numpy/random/_common.cp312-win32.lib +0 -0
- numpy/random/_common.cp312-win32.pyd +0 -0
- numpy/random/_generator.cp312-win32.lib +0 -0
- numpy/random/_generator.cp312-win32.pyd +0 -0
- numpy/random/_mt19937.cp312-win32.lib +0 -0
- numpy/random/_mt19937.cp312-win32.pyd +0 -0
- numpy/random/_pcg64.cp312-win32.lib +0 -0
- numpy/random/_pcg64.cp312-win32.pyd +0 -0
- numpy/random/_philox.cp312-win32.lib +0 -0
- numpy/random/_philox.cp312-win32.pyd +0 -0
- numpy/random/_sfc64.cp312-win32.lib +0 -0
- numpy/random/_sfc64.cp312-win32.pyd +0 -0
- numpy/random/bit_generator.cp312-win32.lib +0 -0
- numpy/random/bit_generator.cp312-win32.pyd +0 -0
- numpy/random/lib/npyrandom.lib +0 -0
- numpy/random/mtrand.cp312-win32.lib +0 -0
- numpy/random/mtrand.cp312-win32.pyd +0 -0
- numpy/tests/test_configtool.py +1 -1
- numpy/typing/tests/data/fail/arithmetic.pyi +1 -1
- numpy/typing/tests/data/fail/bitwise_ops.pyi +1 -1
- numpy/version.py +2 -2
- {numpy-2.3.2.dist-info → numpy-2.3.3.dist-info}/LICENSE.txt +881 -881
- {numpy-2.3.2.dist-info → numpy-2.3.3.dist-info}/METADATA +1 -1
- {numpy-2.3.2.dist-info → numpy-2.3.3.dist-info}/RECORD +58 -58
- {numpy-2.3.2.dist-info → numpy-2.3.3.dist-info}/WHEEL +0 -0
- {numpy-2.3.2.dist-info → numpy-2.3.3.dist-info}/entry_points.txt +0 -0
numpy/lib/_arraysetops_impl.pyi
CHANGED
|
@@ -102,6 +102,7 @@ def unique(
|
|
|
102
102
|
axis: SupportsIndex | None = None,
|
|
103
103
|
*,
|
|
104
104
|
equal_nan: bool = True,
|
|
105
|
+
sorted: bool = True,
|
|
105
106
|
) -> NDArray[_ScalarT]: ...
|
|
106
107
|
@overload # unknown scalar-type, FFF
|
|
107
108
|
def unique(
|
|
@@ -112,6 +113,7 @@ def unique(
|
|
|
112
113
|
axis: SupportsIndex | None = None,
|
|
113
114
|
*,
|
|
114
115
|
equal_nan: bool = True,
|
|
116
|
+
sorted: bool = True,
|
|
115
117
|
) -> _AnyArray: ...
|
|
116
118
|
@overload # known scalar-type, TFF
|
|
117
119
|
def unique(
|
|
@@ -122,6 +124,7 @@ def unique(
|
|
|
122
124
|
axis: SupportsIndex | None = None,
|
|
123
125
|
*,
|
|
124
126
|
equal_nan: bool = True,
|
|
127
|
+
sorted: bool = True,
|
|
125
128
|
) -> tuple[NDArray[_ScalarT], _IntArray]: ...
|
|
126
129
|
@overload # unknown scalar-type, TFF
|
|
127
130
|
def unique(
|
|
@@ -132,6 +135,7 @@ def unique(
|
|
|
132
135
|
axis: SupportsIndex | None = None,
|
|
133
136
|
*,
|
|
134
137
|
equal_nan: bool = True,
|
|
138
|
+
sorted: bool = True,
|
|
135
139
|
) -> tuple[_AnyArray, _IntArray]: ...
|
|
136
140
|
@overload # known scalar-type, FTF (positional)
|
|
137
141
|
def unique(
|
|
@@ -142,6 +146,7 @@ def unique(
|
|
|
142
146
|
axis: SupportsIndex | None = None,
|
|
143
147
|
*,
|
|
144
148
|
equal_nan: bool = True,
|
|
149
|
+
sorted: bool = True,
|
|
145
150
|
) -> tuple[NDArray[_ScalarT], _IntArray]: ...
|
|
146
151
|
@overload # known scalar-type, FTF (keyword)
|
|
147
152
|
def unique(
|
|
@@ -152,6 +157,7 @@ def unique(
|
|
|
152
157
|
return_counts: L[False] = False,
|
|
153
158
|
axis: SupportsIndex | None = None,
|
|
154
159
|
equal_nan: bool = True,
|
|
160
|
+
sorted: bool = True,
|
|
155
161
|
) -> tuple[NDArray[_ScalarT], _IntArray]: ...
|
|
156
162
|
@overload # unknown scalar-type, FTF (positional)
|
|
157
163
|
def unique(
|
|
@@ -162,6 +168,7 @@ def unique(
|
|
|
162
168
|
axis: SupportsIndex | None = None,
|
|
163
169
|
*,
|
|
164
170
|
equal_nan: bool = True,
|
|
171
|
+
sorted: bool = True,
|
|
165
172
|
) -> tuple[_AnyArray, _IntArray]: ...
|
|
166
173
|
@overload # unknown scalar-type, FTF (keyword)
|
|
167
174
|
def unique(
|
|
@@ -172,6 +179,7 @@ def unique(
|
|
|
172
179
|
return_counts: L[False] = False,
|
|
173
180
|
axis: SupportsIndex | None = None,
|
|
174
181
|
equal_nan: bool = True,
|
|
182
|
+
sorted: bool = True,
|
|
175
183
|
) -> tuple[_AnyArray, _IntArray]: ...
|
|
176
184
|
@overload # known scalar-type, FFT (positional)
|
|
177
185
|
def unique(
|
|
@@ -182,6 +190,7 @@ def unique(
|
|
|
182
190
|
axis: SupportsIndex | None = None,
|
|
183
191
|
*,
|
|
184
192
|
equal_nan: bool = True,
|
|
193
|
+
sorted: bool = True,
|
|
185
194
|
) -> tuple[NDArray[_ScalarT], _IntArray]: ...
|
|
186
195
|
@overload # known scalar-type, FFT (keyword)
|
|
187
196
|
def unique(
|
|
@@ -192,6 +201,7 @@ def unique(
|
|
|
192
201
|
return_counts: L[True],
|
|
193
202
|
axis: SupportsIndex | None = None,
|
|
194
203
|
equal_nan: bool = True,
|
|
204
|
+
sorted: bool = True,
|
|
195
205
|
) -> tuple[NDArray[_ScalarT], _IntArray]: ...
|
|
196
206
|
@overload # unknown scalar-type, FFT (positional)
|
|
197
207
|
def unique(
|
|
@@ -202,6 +212,7 @@ def unique(
|
|
|
202
212
|
axis: SupportsIndex | None = None,
|
|
203
213
|
*,
|
|
204
214
|
equal_nan: bool = True,
|
|
215
|
+
sorted: bool = True,
|
|
205
216
|
) -> tuple[_AnyArray, _IntArray]: ...
|
|
206
217
|
@overload # unknown scalar-type, FFT (keyword)
|
|
207
218
|
def unique(
|
|
@@ -212,6 +223,7 @@ def unique(
|
|
|
212
223
|
return_counts: L[True],
|
|
213
224
|
axis: SupportsIndex | None = None,
|
|
214
225
|
equal_nan: bool = True,
|
|
226
|
+
sorted: bool = True,
|
|
215
227
|
) -> tuple[_AnyArray, _IntArray]: ...
|
|
216
228
|
@overload # known scalar-type, TTF
|
|
217
229
|
def unique(
|
|
@@ -222,6 +234,7 @@ def unique(
|
|
|
222
234
|
axis: SupportsIndex | None = None,
|
|
223
235
|
*,
|
|
224
236
|
equal_nan: bool = True,
|
|
237
|
+
sorted: bool = True,
|
|
225
238
|
) -> tuple[NDArray[_ScalarT], _IntArray, _IntArray]: ...
|
|
226
239
|
@overload # unknown scalar-type, TTF
|
|
227
240
|
def unique(
|
|
@@ -232,6 +245,7 @@ def unique(
|
|
|
232
245
|
axis: SupportsIndex | None = None,
|
|
233
246
|
*,
|
|
234
247
|
equal_nan: bool = True,
|
|
248
|
+
sorted: bool = True,
|
|
235
249
|
) -> tuple[_AnyArray, _IntArray, _IntArray]: ...
|
|
236
250
|
@overload # known scalar-type, TFT (positional)
|
|
237
251
|
def unique(
|
|
@@ -242,6 +256,7 @@ def unique(
|
|
|
242
256
|
axis: SupportsIndex | None = None,
|
|
243
257
|
*,
|
|
244
258
|
equal_nan: bool = True,
|
|
259
|
+
sorted: bool = True,
|
|
245
260
|
) -> tuple[NDArray[_ScalarT], _IntArray, _IntArray]: ...
|
|
246
261
|
@overload # known scalar-type, TFT (keyword)
|
|
247
262
|
def unique(
|
|
@@ -252,6 +267,7 @@ def unique(
|
|
|
252
267
|
return_counts: L[True],
|
|
253
268
|
axis: SupportsIndex | None = None,
|
|
254
269
|
equal_nan: bool = True,
|
|
270
|
+
sorted: bool = True,
|
|
255
271
|
) -> tuple[NDArray[_ScalarT], _IntArray, _IntArray]: ...
|
|
256
272
|
@overload # unknown scalar-type, TFT (positional)
|
|
257
273
|
def unique(
|
|
@@ -262,6 +278,7 @@ def unique(
|
|
|
262
278
|
axis: SupportsIndex | None = None,
|
|
263
279
|
*,
|
|
264
280
|
equal_nan: bool = True,
|
|
281
|
+
sorted: bool = True,
|
|
265
282
|
) -> tuple[_AnyArray, _IntArray, _IntArray]: ...
|
|
266
283
|
@overload # unknown scalar-type, TFT (keyword)
|
|
267
284
|
def unique(
|
|
@@ -272,6 +289,7 @@ def unique(
|
|
|
272
289
|
return_counts: L[True],
|
|
273
290
|
axis: SupportsIndex | None = None,
|
|
274
291
|
equal_nan: bool = True,
|
|
292
|
+
sorted: bool = True,
|
|
275
293
|
) -> tuple[_AnyArray, _IntArray, _IntArray]: ...
|
|
276
294
|
@overload # known scalar-type, FTT (positional)
|
|
277
295
|
def unique(
|
|
@@ -282,6 +300,7 @@ def unique(
|
|
|
282
300
|
axis: SupportsIndex | None = None,
|
|
283
301
|
*,
|
|
284
302
|
equal_nan: bool = True,
|
|
303
|
+
sorted: bool = True,
|
|
285
304
|
) -> tuple[NDArray[_ScalarT], _IntArray, _IntArray]: ...
|
|
286
305
|
@overload # known scalar-type, FTT (keyword)
|
|
287
306
|
def unique(
|
|
@@ -292,6 +311,7 @@ def unique(
|
|
|
292
311
|
return_counts: L[True],
|
|
293
312
|
axis: SupportsIndex | None = None,
|
|
294
313
|
equal_nan: bool = True,
|
|
314
|
+
sorted: bool = True,
|
|
295
315
|
) -> tuple[NDArray[_ScalarT], _IntArray, _IntArray]: ...
|
|
296
316
|
@overload # unknown scalar-type, FTT (positional)
|
|
297
317
|
def unique(
|
|
@@ -302,6 +322,7 @@ def unique(
|
|
|
302
322
|
axis: SupportsIndex | None = None,
|
|
303
323
|
*,
|
|
304
324
|
equal_nan: bool = True,
|
|
325
|
+
sorted: bool = True,
|
|
305
326
|
) -> tuple[_AnyArray, _IntArray, _IntArray]: ...
|
|
306
327
|
@overload # unknown scalar-type, FTT (keyword)
|
|
307
328
|
def unique(
|
|
@@ -312,6 +333,7 @@ def unique(
|
|
|
312
333
|
return_counts: L[True],
|
|
313
334
|
axis: SupportsIndex | None = None,
|
|
314
335
|
equal_nan: bool = True,
|
|
336
|
+
sorted: bool = True,
|
|
315
337
|
) -> tuple[_AnyArray, _IntArray, _IntArray]: ...
|
|
316
338
|
@overload # known scalar-type, TTT
|
|
317
339
|
def unique(
|
|
@@ -322,6 +344,7 @@ def unique(
|
|
|
322
344
|
axis: SupportsIndex | None = None,
|
|
323
345
|
*,
|
|
324
346
|
equal_nan: bool = True,
|
|
347
|
+
sorted: bool = True,
|
|
325
348
|
) -> tuple[NDArray[_ScalarT], _IntArray, _IntArray, _IntArray]: ...
|
|
326
349
|
@overload # unknown scalar-type, TTT
|
|
327
350
|
def unique(
|
|
@@ -332,6 +355,7 @@ def unique(
|
|
|
332
355
|
axis: SupportsIndex | None = None,
|
|
333
356
|
*,
|
|
334
357
|
equal_nan: bool = True,
|
|
358
|
+
sorted: bool = True,
|
|
335
359
|
) -> tuple[_AnyArray, _IntArray, _IntArray, _IntArray]: ...
|
|
336
360
|
|
|
337
361
|
#
|
numpy/linalg/_linalg.py
CHANGED
|
@@ -2029,6 +2029,7 @@ def cond(x, p=None):
|
|
|
2029
2029
|
# contain nans in the entries where inversion failed.
|
|
2030
2030
|
_assert_stacked_square(x)
|
|
2031
2031
|
t, result_t = _commonType(x)
|
|
2032
|
+
result_t = _realType(result_t) # condition number is always real
|
|
2032
2033
|
signature = 'D->D' if isComplexType(t) else 'd->d'
|
|
2033
2034
|
with errstate(all='ignore'):
|
|
2034
2035
|
invx = _umath_linalg.inv(x, signature=signature)
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -793,15 +793,28 @@ class CondCases(LinalgSquareTestCase, LinalgGeneralizedSquareTestCase):
|
|
|
793
793
|
|
|
794
794
|
|
|
795
795
|
class TestCond(CondCases):
|
|
796
|
-
|
|
796
|
+
@pytest.mark.parametrize('is_complex', [False, True])
|
|
797
|
+
def test_basic_nonsvd(self, is_complex):
|
|
797
798
|
# Smoketest the non-svd norms
|
|
798
799
|
A = array([[1., 0, 1], [0, -2., 0], [0, 0, 3.]])
|
|
800
|
+
if is_complex:
|
|
801
|
+
# Since A is linearly scaled, the condition number should not change
|
|
802
|
+
A = A * (1 + 1j)
|
|
799
803
|
assert_almost_equal(linalg.cond(A, inf), 4)
|
|
800
804
|
assert_almost_equal(linalg.cond(A, -inf), 2 / 3)
|
|
801
805
|
assert_almost_equal(linalg.cond(A, 1), 4)
|
|
802
806
|
assert_almost_equal(linalg.cond(A, -1), 0.5)
|
|
803
807
|
assert_almost_equal(linalg.cond(A, 'fro'), np.sqrt(265 / 12))
|
|
804
808
|
|
|
809
|
+
@pytest.mark.parametrize('dtype', [single, double, csingle, cdouble])
|
|
810
|
+
@pytest.mark.parametrize('norm_ord', [1, -1, 2, -2, 'fro', np.inf, -np.inf])
|
|
811
|
+
def test_cond_dtypes(self, dtype, norm_ord):
|
|
812
|
+
# Check that the condition number is computed in the same dtype
|
|
813
|
+
# as the input matrix
|
|
814
|
+
A = array([[1., 0, 1], [0, -2., 0], [0, 0, 3.]], dtype=dtype)
|
|
815
|
+
out_type = get_real_dtype(dtype)
|
|
816
|
+
assert_equal(linalg.cond(A, p=norm_ord).dtype, out_type)
|
|
817
|
+
|
|
805
818
|
def test_singular(self):
|
|
806
819
|
# Singular matrices have infinite condition number for
|
|
807
820
|
# positive norms, and negative norms shouldn't raise
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
numpy/random/lib/npyrandom.lib
CHANGED
|
Binary file
|
|
Binary file
|
|
Binary file
|
numpy/tests/test_configtool.py
CHANGED
|
@@ -33,7 +33,7 @@ class TestNumpyConfig:
|
|
|
33
33
|
|
|
34
34
|
def test_configtool_pkgconfigdir(self):
|
|
35
35
|
stdout = self.check_numpyconfig('--pkgconfigdir')
|
|
36
|
-
assert pathlib.Path(stdout) == PKG_CONFIG_DIR
|
|
36
|
+
assert pathlib.Path(stdout) == PKG_CONFIG_DIR.resolve()
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
@pytest.mark.skipif(not IS_INSTALLED, reason="numpy must be installed to check its entrypoints")
|
numpy/version.py
CHANGED
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
"""
|
|
3
3
|
Module to expose more detailed version info for the installed `numpy`
|
|
4
4
|
"""
|
|
5
|
-
version = "2.3.
|
|
5
|
+
version = "2.3.3"
|
|
6
6
|
__version__ = version
|
|
7
7
|
full_version = version
|
|
8
8
|
|
|
9
|
-
git_revision = "
|
|
9
|
+
git_revision = "f2a77a76e08719556527e0819182073fe9b5f1c3"
|
|
10
10
|
release = 'dev' not in version and '+' not in version
|
|
11
11
|
short_version = version.split("+")[0]
|