chore(deps): update dependency numpy to v2 #1606
Closed
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
>=1.16.0,<1.24->>=2.1.2,<2.2Release Notes
numpy/numpy (numpy)
v2.1.2Compare Source
v2.1.1: 2.1.1 (Sep 3, 2024)Compare Source
NumPy 2.1.1 Release Notes
NumPy 2.1.1 is a maintenance release that fixes bugs and regressions
discovered after the 2.1.0 release.
The Python versions supported by this release are 3.10-3.13.
Contributors
A total of 7 people contributed to this release. People with a "+" by
their names contributed a patch for the first time.
Pull requests merged
A total of 10 pull requests were merged for this release.
Checksums
MD5
SHA256
v2.1.0Compare Source
v2.0.2: NumPy 2.0.2 release (Aug 26, 2024)Compare Source
NumPy 2.0.2 Release Notes
NumPy 2.0.2 is a maintenance release that fixes bugs and regressions
discovered after the 2.0.1 release.
The Python versions supported by this release are 3.9-3.12.
Contributors
A total of 13 people contributed to this release. People with a "+" by
their names contributed a patch for the first time.
Pull requests merged
A total of 19 pull requests were merged for this release.
alltrueandsometruenpyv_loadable_stride_functions for ldexp and...np.saveChecksums
MD5
SHA256
v2.0.1Compare Source
v2.0.0Compare Source
NumPy 2.0.0 Release Notes
NumPy 2.0.0 is the first major release since 2006. It is the result of
11 months of development since the last feature release and is the work
of 212 contributors spread over 1078 pull requests. It contains a large
number of exciting new features as well as changes to both the Python
and C APIs.
This major release includes breaking changes that could not happen in a
regular minor (feature) release - including an ABI break, changes to
type promotion rules, and API changes which may not have been emitting
deprecation warnings in 1.26.x. Key documents related to how to adapt to
changes in NumPy 2.0, in addition to these release notes, include:
Highlights
Highlights of this release include:
numpy.dtypes.StringDTypeand a newnumpy.stringsnamespace with performant ufuncs for string operations,float32andlongdoublein allnumpy.fftfunctions,numpynamespace.
sort,argsort,partition,argpartitionhave beenaccelerated through the use of the Intel x86-simd-sort and
Google Highway libraries, and may see large (hardware-specific)
speedups,
significant performance improvements for linear algebra
operations on macOS, and wheels that are about 3 times smaller,
numpy.charfixed-length string operations havebeen accelerated by implementing ufuncs that also support
numpy.dtypes.StringDTypein addition to thefixed-length string dtypes,
numpy.lib.introspect.opt_func_info, to determinewhich hardware-specific kernels are available and will be
dispatched to.
numpy.savenow uses pickle protocol version 4 for savingarrays with object dtype, which allows for pickle objects larger
than 4GB and improves saving speed by about 5% for large arrays.
structure and each public function now available in a single place.
should make it easier to learn and use NumPy. The number of
objects in the main namespace decreased by ~10% and in
numpy.libby ~80%.Canonical dtype names and a newnumpy.isdtype` introspectionfunction,
internals hidden to ease future extensibility,
PyArray_ImportNumPyAPIand
PyUFunc_ImportUFuncAPI.This fixes many user surprises about promotions which previously often
depended on data values of input arrays rather than only their dtypes.
Please see the NEP and the numpy-2-migration-guide for details as this
change can lead to changes in output dtypes and lower precision results
for mixed-dtype operations.
int64rather thanint32, matching the behavior on other platforms,there is now documentation on NumPy's
module structure,
Furthermore there are many changes to NumPy internals, including
continuing to migrate code from C to C++, that will make it easier to
improve and maintain NumPy in the future.
The "no free lunch" theorem dictates that there is a price to pay for
all these API and behavior improvements and better future extensibility.
This price is:
Backwards compatibility. There are a significant number of breaking
changes to both the Python and C APIs. In the majority of cases,
there are clear error messages that will inform the user how to
adapt their code. However, there are also changes in behavior for
which it was not possible to give such an error message - these
cases are all covered in the Deprecation and Compatibility sections
below, and in the numpy-2-migration-guide.
Note that there is a
ruffmode to auto-fix many things in Pythoncode.
Breaking changes to the NumPy ABI. As a result, binaries of packages
that use the NumPy C API and were built against a NumPy 1.xx release
will not work with NumPy 2.0. On import, such packages will see an
ImportErrorwith a message about binary incompatibility.It is possible to build binaries against NumPy 2.0 that will work at
runtime with both NumPy 2.0 and 1.x. See numpy-2-abi-handling for more
details.
All downstream packages that depend on the NumPy ABI are advised
to do a new release built against NumPy 2.0 and verify that that
release works with both 2.0 and 1.26 - ideally in the period between
2.0.0rc1 (which will be ABI-stable) and the final 2.0.0 release to
avoid problems for their users.
The Python versions supported by this release are 3.9-3.12.
NumPy 2.0 Python API removals
np.geterrobj,np.seterrobjand the related ufunc keywordargument
extobj=have been removed. The preferred replacement forall of these is using the context manager
with np.errstate():.(gh-23922)
np.casthas been removed. The literal replacement fornp.cast[dtype](arg)isnp.asarray(arg, dtype=dtype).np.sourcehas been removed. The preferred replacement isinspect.getsource.np.lookforhas been removed.(gh-24144)
numpy.whohas been removed. As an alternative for the removedfunctionality, one can use a variable explorer that is available in
IDEs such as Spyder or Jupyter Notebook.
(gh-24321)
Warnings and exceptions present in
numpy.exceptions,e.g,
numpy.exceptions.ComplexWarning,numpy.exceptions.VisibleDeprecationWarning, are nolonger exposed in the main namespace.
Multiple niche enums, expired members and functions have been
removed from the main namespace, such as:
ERR_*,SHIFT_*,np.fastCopyAndTranspose,np.kernel_version,np.numarray,np.oldnumericandnp.set_numeric_ops.(gh-24316)
Replaced
from ... import *in thenumpy/__init__.pywithexplicit imports. As a result, these main namespace members got
removed:
np.FLOATING_POINT_SUPPORT,np.FPE_*,np.NINF,np.PINF,np.NZERO,np.PZERO,np.CLIP,np.WRAP,np.WRAP,np.RAISE,np.BUFSIZE,np.UFUNC_BUFSIZE_DEFAULT,np.UFUNC_PYVALS_NAME,np.ALLOW_THREADS,np.MAXDIMS,np.MAY_SHARE_EXACT,np.MAY_SHARE_BOUNDS,add_newdoc,np.add_docstringandnp.add_newdoc_ufunc.(gh-24357)
Alias
np.float_has been removed. Usenp.float64instead.Alias
np.complex_has been removed. Usenp.complex128instead.Alias
np.longfloathas been removed. Usenp.longdoubleinstead.Alias
np.singlecomplexhas been removed. Usenp.complex64instead.
Alias
np.cfloathas been removed. Usenp.complex128instead.Alias
np.longcomplexhas been removed. Usenp.clongdoubleinstead.
Alias
np.clongfloathas been removed. Usenp.clongdoubleinstead.
Alias
np.string_has been removed. Usenp.bytes_instead.Alias
np.unicode_has been removed. Usenp.str_instead.Alias
np.Infhas been removed. Usenp.infinstead.Alias
np.Infinityhas been removed. Usenp.infinstead.Alias
np.NaNhas been removed. Usenp.naninstead.Alias
np.inftyhas been removed. Usenp.infinstead.Alias
np.mathas been removed. Usenp.asmatrixinstead.np.issubclass_has been removed. Use theissubclassbuiltininstead.
np.asfarrayhas been removed. Usenp.asarraywith a proper dtypeinstead.
np.set_string_functionhas been removed. Usenp.set_printoptionsinstead with a formatter for custom printing of NumPy objects.
np.tracemalloc_domainis now only available fromnp.lib.np.recfromcsvandrecfromtxtare now only available fromnp.lib.npyio.np.issctype,np.maximum_sctype,np.obj2sctype,np.sctype2char,np.sctypes,np.issubsctypewere all removedfrom the main namespace without replacement, as they where niche
members.
Deprecated
np.deprecateandnp.deprecate_with_dochas beenremoved from the main namespace. Use
DeprecationWarninginstead.Deprecated
np.safe_evalhas been removed from the main namespace.Use
ast.literal_evalinstead.(gh-24376)
np.find_common_typehas been removed. Usenumpy.promote_typesornumpy.result_typeinstead. To achieve semantics for thescalar_typesargument, usenumpy.result_typeand pass0,0.0, or0jas a Python scalar instead.np.round_has been removed. Usenp.roundinstead.np.nbyteshas been removed. Usenp.dtype(<dtype>).itemsizeinstead.
(gh-24477)
np.compare_chararrayshas been removed from the main namespace.Use
np.char.compare_chararraysinstead.The
charrarrayin the main namespace has been deprecated. It canbe imported without a deprecation warning from
np.char.chararrayfor now, but we are planning to fully deprecate and remove
chararrayin the future.np.format_parserhas been removed from the main namespace. Usenp.rec.format_parserinstead.(gh-24587)
Support for seven data type string aliases has been removed from
np.dtype:int0,uint0,void0,object0,str0,bytes0and
bool8.(gh-24807)
The experimental
numpy.array_apisubmodule has been removed. Usethe main
numpynamespace for regular usage instead, or theseparate
array-api-strictpackage for the compliance testing usecase for which
numpy.array_apiwas mostly used.(gh-25911)
__array_prepare__is removedUFuncs called
__array_prepare__before running computations for normalufunc calls (not generalized ufuncs, reductions, etc.). The function was
also called instead of
__array_wrap__on the results of some linearalgebra functions.
It is now removed. If you use it, migrate to
__array_ufunc__or relyon
__array_wrap__which is called with a context in all cases,although only after the result array is filled. In those code paths,
__array_wrap__will now be passed a base class, rather than a subclassarray.
(gh-25105)
Deprecations
np.compathas been deprecated, as Python 2 is no longer supported.numpy.int8and similar classes will no longer support conversionof out of bounds python integers to integer arrays. For example,
conversion of 255 to int8 will not return -1.
numpy.iinfo(dtype)can be used to check the machine limits for data types. For example,
np.iinfo(np.uint16)returns min = 0 and max = 65535.np.array(value).astype(dtype)will give the desired result.np.safe_evalhas been deprecated.ast.literal_evalshould beused instead.
(gh-23830)
np.recfromcsv,np.recfromtxt,np.disp,np.get_array_wrap,np.maximum_sctype,np.deprecateandnp.deprecate_with_dochavebeen deprecated.
(gh-24154)
np.trapzhas been deprecated. Usenp.trapezoidor ascipy.integratefunction instead.np.in1dhas been deprecated. Usenp.isininstead.Alias
np.row_stackhas been deprecated. Usenp.vstackdirectly.(gh-24445)
__array_wrap__is now passedarr, context, return_scalarandsupport for implementations not accepting all three are deprecated.
Its signature should be
__array_wrap__(self, arr, context=None, return_scalar=False)(gh-25409)
Arrays of 2-dimensional vectors for
np.crosshave been deprecated.Use arrays of 3-dimensional vectors instead.
(gh-24818)
np.dtype("a")alias fornp.dtype(np.bytes_)was deprecated. Usenp.dtype("S")alias instead.(gh-24854)
Use of keyword arguments
xandywith functionsassert_array_equalandassert_array_almost_equalhas beendeprecated. Pass the first two arguments as positional arguments
instead.
(gh-24978)
numpy.fftdeprecations for n-D transforms with None values in argumentsUsing
fftn,ifftn,rfftn,irfftn,fft2,ifft2,rfft2orirfft2with thesparameter set to a value that is notNoneandthe
axesparameter set toNonehas been deprecated, in line with thearray API standard. To retain current behaviour, pass a sequence [0,
..., k-1] to
axesfor an array of dimension k.Furthermore, passing an array to
swhich containsNonevalues isdeprecated as the parameter is documented to accept a sequence of
integers in both the NumPy docs and the array API specification. To use
the default behaviour of the corresponding 1-D transform, pass the value
matching the default for its
nparameter. To use the default behaviourfor every axis, the
sargument can be omitted.(gh-25495)
np.linalg.lstsqnow defaults to a newrcondvaluenumpy.linalg.lstsqnow uses the new rcond value of themachine precision times
max(M, N). Previously, the machine precisionwas used but a FutureWarning was given to notify that this change will
happen eventually. That old behavior can still be achieved by passing
rcond=-1.(gh-25721)
Expired deprecations
The
np.core.umath_testssubmodule has been removed from the publicAPI. (Deprecated in NumPy 1.15)
(gh-23809)
The
PyDataMem_SetEventHookdeprecation has expired and it isremoved. Use
tracemallocand thenp.lib.tracemalloc_domaindomain. (Deprecated in NumPy 1.23)
(gh-23921)
The deprecation of
set_numeric_opsand the C functionsPyArray_SetNumericOpsandPyArray_GetNumericOpshas been expiredand the functions removed. (Deprecated in NumPy 1.16)
(gh-23998)
The
fasttake,fastclip, andfastputmaskArrFuncsdeprecationis now finalized.
The deprecated function
fastCopyAndTransposeand its C counterpartare now removed.
The deprecation of
PyArray_ScalarFromObjectis now finalized.(gh-24312)
np.msorthas been removed. For a replacement,np.sort(a, axis=0)should be used instead.
(gh-24494)
np.dtype(("f8", 1)will now return a shape 1 subarray dtype ratherthan a non-subarray one.
(gh-25761)
Assigning to the
.dataattribute of an ndarray is disallowed andwill raise.
np.binary_repr(a, width)will raise if width is too small.Using
NPY_CHARinPyArray_DescrFromType()will raise, useNPY_STRINGNPY_UNICODE, orNPY_VSTRINGinstead.(gh-25794)
Compatibility notes
loadtxtandgenfromtxtdefault encoding changedloadtxtandgenfromtxtnow both default toencoding=Nonewhich maymainly modify how
converterswork. These will now be passedstrrather than
bytes. Pass the encoding explicitly to always get the newor old behavior. For
genfromtxtthe change also means that returnedvalues will now be unicode strings rather than bytes.
(gh-25158)
f2pycompatibility notesf2pywill no longer accept ambiguous-mand.pyfCLIcombinations. When more than one
.pyffile is passed, an error israised. When both
-mand a.pyfis passed, a warning is emittedand the
-mprovided name is ignored.(gh-25181)
The
f2py.compile()helper has been removed because it leakedmemory, has been marked as experimental for several years now, and
was implemented as a thin
subprocess.runwrapper. It was also oneof the test bottlenecks. See
gh-25122 for the full
rationale. It also used several
np.distutilsfeatures which aretoo fragile to be ported to work with
meson.Users are urged to replace calls to
f2py.compilewith calls tosubprocess.run("python", "-m", "numpy.f2py",...instead, and touse environment variables to interact with
meson. Nativefiles are also an
option.
(gh-25193)
Minor changes in behavior of sorting functions
Due to algorithmic changes and use of SIMD code, sorting functions with
methods that aren't stable may return slightly different results in
2.0.0 compared to 1.26.x. This includes the default method of
numpy.argsortandnumpy.argpartition.Removed ambiguity when broadcasting in
np.solveThe broadcasting rules for
np.solve(a, b)were ambiguous whenbhad1 fewer dimensions than
a. This has been resolved in abackward-incompatible way and is now compliant with the Array API. The
old behaviour can be reconstructed by using
np.solve(a, b[..., None])[..., 0].(gh-25914)
Modified representation for
PolynomialThe representation method for
numpy.polynomial.polynomial.Polynomialwas updated toinclude the domain in the representation. The plain text and latex
representations are now consistent. For example the output of
str(np.polynomial.Polynomial([1, 1], domain=[.1, .2]))used to be1.0 + 1.0 x, but now is1.0 + 1.0 (-3.0000000000000004 + 20.0 x).(gh-21760)
C API changes
The
PyArray_CGT,PyArray_CLT,PyArray_CGE,PyArray_CLE,PyArray_CEQ,PyArray_CNEmacros have been removed.PyArray_MINandPyArray_MAXhave been moved fromndarraytypes.htonpy_math.h.(gh-24258)
A C API for working with
numpy.dtypes.StringDTypearrays has been exposed. This includes functions for acquiring and
releasing mutexes which lock access to the string data, as well as
packing and unpacking UTF-8 bytestreams from array entries.
NPY_NTYPEShas been renamed toNPY_NTYPES_LEGACYas it does notinclude new NumPy built-in DTypes. In particular the new string
DType will likely not work correctly with code that handles legacy
DTypes.
(gh-25347)
The C-API now only exports the static inline function versions of
the array accessors (previously this depended on using "deprecated
API"). While we discourage it, the struct fields can still be used
directly.
(gh-25789)
NumPy now defines
PyArray_Packto set an individual memory address.Unlike
PyArray_SETITEMthis function is equivalent to setting anindividual array item and does not require a NumPy array input.
(gh-25954)
The
->fslot has been removed fromPyArray_Descr. If you use this slot,replace accessing it with
PyDataType_GetArrFuncs(see its documentationand the
numpy-2-migration-guide). In some cases using other functionslike
PyArray_GETITEMmay be an alternatives.PyArray_GETITEMandPyArray_SETITEMnow require the import ofthe NumPy API table to be used and are no longer defined in
ndarraytypes.h.(gh-25812)
Due to runtime dependencies, the definition for functionality
accessing the dtype flags was moved from
numpy/ndarraytypes.handis only available after including
numpy/ndarrayobject.has itrequires
import_array(). This includesPyDataType_FLAGCHK,PyDataType_REFCHKandNPY_BEGIN_THREADS_DESCR.The dtype flags on
PyArray_Descrmust now be accessed through thePyDataType_FLAGSinline function to be compatible with both 1.xand 2.x. This function is defined in
npy_2_compat.hto allowbackporting. Most or all users should use
PyDataType_FLAGCHKwhichis available on 1.x and does not require backporting. Cython users
should use Cython 3. Otherwise access will go through Python unless
they use
PyDataType_FLAGCHKinstead.(gh-25816)
Datetime functionality exposed in the C API and Cython bindings
The functions
NpyDatetime_ConvertDatetime64ToDatetimeStruct,NpyDatetime_ConvertDatetimeStructToDatetime64,NpyDatetime_ConvertPyDateTimeToDatetimeStruct,NpyDatetime_GetDatetimeISO8601StrLen,NpyDatetime_MakeISO8601Datetime, andNpyDatetime_ParseISO8601Datetimehave been added to the C API tofacilitate converting between strings, Python datetimes, and NumPy
datetimes in external libraries.
(gh-21199)
Const correctness for the generalized ufunc C API
The NumPy C API's functions for constructing generalized ufuncs
(
PyUFunc_FromFuncAndData,PyUFunc_FromFuncAndDataAndSignature,PyUFunc_FromFuncAndDataAndSignatureAndIdentity) taketypesanddataarguments that are not modified by NumPy's internals. Like thenameanddocarguments, third-party Python extension modules arelikely to supply these arguments from static constants. The
typesanddataarguments are now const-correct: they are declared asconst char *typesandvoid *const *data, respectively. C code shouldnot be affected, but C++ code may be.
(gh-23847)
Larger
NPY_MAXDIMSandNPY_MAXARGS,NPY_RAVEL_AXISintroducedNPY_MAXDIMSis now 64, you may want to review its use. This is usuallyused in a stack allocation, where the increase should be safe. However,
we do encourage generally to remove any use of
NPY_MAXDIMSandNPY_MAXARGSto eventually allow removing the constraint completely.For the conversion helper and C-API functions mirroring Python ones such as
take,NPY_MAXDIMSwas used to meanaxis=None. Such usage must be replacedwith
NPY_RAVEL_AXIS. See alsomigration_maxdims.(gh-25149)
NPY_MAXARGSnot constant andPyArrayMultiIterObjectsize changeSince
NPY_MAXARGSwas increased, it is now a runtime constant and notcompile-time constant anymore. We expect almost no users to notice this.
But if used for stack allocations it now must be replaced with a custom
constant using
NPY_MAXARGSas an additional runtime check.The
sizeof(PyArrayMultiIterObject)no longer includes the full size ofthe object. We expect nobody to notice this change. It was necessary to
avoid issues with Cython.
(gh-25271)
Required changes for custom legacy user dtypes
In order to improve our DTypes it is unfortunately necessary to break
the ABI, which requires some changes for dtypes registered with
PyArray_RegisterDataType. Please see the documentation ofPyArray_RegisterDataTypefor how to adapt your code and achievecompatibility with both 1.x and 2.x.
(gh-25792)
New Public DType API
The C implementation of the NEP 42 DType API is now public. While the
DType API has shipped in NumPy for a few versions, it was only usable in
sessions with a special environment variable set. It is now possible to
write custom DTypes outside of NumPy using the new DType API and the
normal
import_array()mechanism for importing the numpy C API.See
dtype-apifor more details about the API. As always with a new feature,please report any bugs you run into implementing or using a new DType. It is
likely that downstream C code that works with dtypes will need to be updated to
work correctly with new DTypes.
(gh-25754)
New C-API import functions
We have now added
PyArray_ImportNumPyAPIandPyUFunc_ImportUFuncAPIas static inline functions to import the NumPy C-API tables. The new
functions have two advantages over
import_arrayandimport_ufunc:light-weight if not, allowing to add them judiciously (although this
is not preferable in most cases).
a
returnstatement.The
PyArray_ImportNumPyAPI()function is included innpy_2_compat.hfor simpler backporting.
(gh-25866)
Structured dtype information access through functions
The dtype structures fields
c_metadata,names,fields, andsubarraymust now be accessed through new functions following the samenames, such as
PyDataType_NAMES. Direct access of the fields is notvalid as they do not exist for all
PyArray_Descrinstances. Themetadatafield is kept, but the macro version should also bepreferred.
(gh-25802)
Descriptor
elsizeandalignmentaccessUnless compiling only with NumPy 2 support, the
elsizeandaligmentfields must now be accessed via
PyDataType_ELSIZE,PyDataType_SET_ELSIZE, andPyDataType_ALIGNMENT. In cases where thedescriptor is attached to an array, we advise using
PyArray_ITEMSIZEas it exists on all NumPy versions. Please see
migration_c_descrfor more information.(gh-25943)
NumPy 2.0 C API removals
npy_interrupt.hand the corresponding macros likeNPY_SIGINT_ONhave been removed. We recommend querying
PyErr_CheckSignals()orPyOS_InterruptOccurred()periodically (these do currently requireholding the GIL though).
The
noprefix.hheader has been removed. Replace missing symbolswith their prefixed counterparts (usually an added
NPY_ornpy_).(gh-23919)
PyUFunc_GetPyVals,PyUFunc_handlefperr, andPyUFunc_checkfperrhave been removed. If needed, a new backwards compatible function to
raise floating point errors could be restored. Reason for removal:
there are no known users and the functions would have made
with np.errstate()fixes much more difficult).(gh-23922)
The
numpy/old_defines.hwhich was part of the API deprecated sinceNumPy 1.7 has been removed. This removes macros of the form
PyArray_CONSTANT. Thereplace_old_macros.sed
script may be useful to convert them to the
NPY_CONSTANTversion.(gh-24011)
The
legacy_inner_loop_selectormember of the ufunc struct isremoved to simplify improvements to the dispatching system. There
are no known users overriding or directly accessing this member.
(gh-24271)
NPY_INTPLTRhas been removed to avoid confusion (seeintpredefinition).
(gh-24888)
The advanced indexing
MapIterand related API has been removed.The (truly) public part of it was not well tested and had only one
known user (Theano). Making it private will simplify improvements to
speed up
ufunc.at, make advanced indexing more maintainable, andwas important for increasing the maximum number of dimensions of
arrays to 64. Please let us know if this API is important to you so
we can find a solution together.
(gh-25138)
The
NPY_MAX_ELSIZEmacro has been removed, as it only everreflected builtin numeric types and served no internal purpose.
(gh-25149)
PyArray_REFCNTandNPY_REFCOUNTare removed. UsePy_REFCNTinstead.
(gh-25156)
PyArrayFlags_TypeandPyArray_NewFlagsObjectas well asPyArrayFlagsObjectare private now. There is no known use-case;use the Python API if needed.
PyArray_MoveInto,PyArray_CastTo,PyArray_CastAnyToareremoved use
PyArray_CopyIntoand if absolutely neededPyArray_CopyAnyInto(the latter does a flat copy).PyArray_FillObjectArrayis removed, its only true use was forimplementing
np.empty. Create a new empty array or usePyArray_FillWithScalar()(decrefs existing objects).PyArray_CompareUCS4andPyArray_CompareStringare removed. Usethe standard C string comparison functions.
PyArray_ISPYTHONis removed as it is misleading, has no knownuse-cases, and is easy to replace.
PyArray_FieldNamesis removed, as it is unclear what it would beuseful for. It also has incorrect semantics in some possible
use-cases.
PyArray_TypestrConvertis removed, since it seems a misnomer andunlikely to be used
Configuration
📅 Schedule: Branch creation - "before 12pm every weekday" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.