ANN: numexpr 2.14.2 is out
Francesc Alted via NumPy-Discussion <[email protected]> Sat, 18 Jul 2026 12:54:47 +0200
| Newsgroups | gmane.comp.python.numeric.general |
|---|---|
| Message-ID | <CAFrp1vr8HDgK8-eYi5T1QDDLE6UEnYZD_qDYMju=xjiLFH-p6g@mail.gmail.com> |
--===============1020632944520985974== Content-Type: multipart/alternative; boundary="00000000000021cb350656e0817e" --00000000000021cb350656e0817e Content-Type: text/plain; charset="UTF-8" ========================= Announcing NumExpr 2.14.2 ========================= Hi everyone, NumExpr 2.14.2 is a maintenance release with several bug fixes, a new ``disable_cache`` option for ``evaluate()``, and updated build/CI support (Windows ARM64 wheels, dropped Python 3.10, no more free-threaded 3.13 wheels). Project documentation is available at: https://numexpr.readthedocs.io/ Changes from 2.14.1 to 2.14.2 ----------------------------- * Added a ``disable_cache`` parameter to ``evaluate()`` to bypass the internal expression cache. Thanks to 27rabbitlt. * Added Windows ARM64 wheel builds. * Dropped support for Python 3.10. * No longer build free-threaded Python 3.13 wheels, matching NumPy's own support. * Avoid keeping arrays passed as ``out=`` alive in the ``re_evaluate`` cache (#558). * Guarded out-of-range shift counts (shift amount >= bit width) in the integer ``<<``/``>>`` opcodes, which was undefined behavior in C and could return garbage results. Thanks to uwezkhan (#559). * Fixed ``run_interpreter()`` unconditionally returning success even when the VM engine failed, so execution errors are now correctly raised instead of silently discarded (#557). * Fixed a reference leak of ``constsig`` on the allocation-failure path in ``NumExpr_init()`` (#561). What's Numexpr? --------------- Numexpr is a fast numerical expression evaluator for NumPy. With it, expressions that operate on arrays (like "3*a+4*b") are accelerated and use less memory than doing the same calculation in Python. It has multi-threaded capabilities, as well as support for Intel's MKL (Math Kernel Library), which allows an extremely fast evaluation of transcendental functions (sin, cos, tan, exp, log...) while squeezing the last drop of performance out of your multi-core processors. Look here for a some benchmarks of numexpr using MKL: https://github.com/pydata/numexpr/wiki/NumexprMKL Its only dependency is NumPy (MKL is optional), so it works well as an easy-to-deploy, easy-to-use, computational engine for projects that don't want to adopt other solutions requiring more heavy dependencies. Where I can find Numexpr? ------------------------- The project is hosted at GitHub in: https://github.com/pydata/numexpr You can get the packages from PyPI as well (but not for RC releases): http://pypi.python.org/pypi/numexpr Documentation is hosted at: http://numexpr.readthedocs.io/en/latest/ Share your experience --------------------- Let us know of any bugs, suggestions, gripes, kudos, etc. you may have. Enjoy data! --00000000000021cb350656e0817e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable <div dir=3D"ltr">=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D<br>Announcing NumExpr 2.14.2<br>=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D<br><br>Hi everyone,<br>= <br>NumExpr 2.14.2 is a maintenance release with several bug fixes, a new<b= r>``disable_cache`` option for ``evaluate()``, and updated build/CI support= <br>(Windows ARM64 wheels, dropped Python 3.10, no more free-threaded 3.13<= br>wheels).<br><br>Project documentation is available at:<br><br><a href=3D= "https://numexpr.readthedocs.io/">https://numexpr.readthedocs.io/</a><br><b= r>Changes from 2.14.1 to 2.14.2<br>-----------------------------<br><br>* A= dded a ``disable_cache`` parameter to ``evaluate()`` to bypass the<br>=C2= =A0 internal expression cache. Thanks to 27rabbitlt.<br>* Added Windows ARM= 64 wheel builds.<br>* Dropped support for Python 3.10.<br>* No longer build= free-threaded Python 3.13 wheels, matching NumPy's own<br>=C2=A0 suppo= rt.<br>* Avoid keeping arrays passed as ``out=3D`` alive in the ``re_evalua= te`` cache<br>=C2=A0 (#558).<br>* Guarded out-of-range shift counts (shift = amount >=3D bit width) in the<br>=C2=A0 integer ``<<``/``>>`= ` opcodes, which was undefined behavior in C and could<br>=C2=A0 return gar= bage results. Thanks to uwezkhan (#559).<br>* Fixed ``run_interpreter()`` u= nconditionally returning success even when<br>=C2=A0 the VM engine failed, = so execution errors are now correctly raised<br>=C2=A0 instead of silently = discarded (#557).<br>* Fixed a reference leak of ``constsig`` on the alloca= tion-failure path in<br>=C2=A0 ``NumExpr_init()`` (#561).<br><br>What's= Numexpr?<br>---------------<br><br>Numexpr is a fast numerical expression = evaluator for NumPy.=C2=A0 With it,<br>expressions that operate on arrays (= like "3*a+4*b") are accelerated<br>and use less memory than doing= the same calculation in Python.<br><br>It has multi-threaded capabilities,= as well as support for Intel's<br>MKL (Math Kernel Library), which all= ows an extremely fast evaluation<br>of transcendental functions (sin, cos, = tan, exp, log...) while<br>squeezing the last drop of performance out of yo= ur multi-core<br>processors.=C2=A0 Look here for a some benchmarks of numex= pr using MKL:<br><br><a href=3D"https://github.com/pydata/numexpr/wiki/Nume= xprMKL">https://github.com/pydata/numexpr/wiki/NumexprMKL</a><br><br>Its on= ly dependency is NumPy (MKL is optional), so it works well as an<br>easy-to= -deploy, easy-to-use, computational engine for projects that<br>don't w= ant to adopt other solutions requiring more heavy dependencies.<br><br>Wher= e I can find Numexpr?<br>-------------------------<br><br>The project is ho= sted at GitHub in:<br><br><a href=3D"https://github.com/pydata/numexpr">htt= ps://github.com/pydata/numexpr</a><br><br>You can get the packages from PyP= I as well (but not for RC releases):<br><br><a href=3D"http://pypi.python.o= rg/pypi/numexpr">http://pypi.python.org/pypi/numexpr</a><br><br>Documentati= on is hosted at:<br><br><a href=3D"http://numexpr.readthedocs.io/en/latest/= ">http://numexpr.readthedocs.io/en/latest/</a><br><br>Share your experience= <br>---------------------<br><br>Let us know of any bugs, suggestions, grip= es, kudos, etc. you may<br>have.<br><br>Enjoy data!<br><div><br></div></div= > --00000000000021cb350656e0817e-- --===============1020632944520985974== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ NumPy-Discussion mailing list -- [email protected] To unsubscribe send an email to [email protected] https://mail.python.org/mailman3//lists/numpy-discussion.python.org Member address: [email protected] --===============1020632944520985974==--