The sanitization can be turned off by default by setting an environment variable,
set NUMEXPR_SANITIZE=0
Improved behavior of the blacklist to avoid triggering on private variables
and scientific notation numbers.
Changes from 2.8.4 to 2.8.5
A validate function has been added. This function checks the inputs, returning
None on success or raising an exception on invalid inputs. This function was
added as numerous projects seem to be using NumExpr for parsing user inputs.
re_evaluate may be called directly following validate.
As an addendum to the use of NumExpr for parsing user inputs, is that NumExpr
calls eval on the inputs. A regular expression is now applied to help sanitize
the input expression string, forbidding '__', ':', and ';'. Attribute access
is also banned except for '.r' for real and '.i' for imag.
Thanks to timbrist for a fix to behavior of NumExpr with integers to negative
powers. NumExpr was pre-checking integer powers for negative values, which
was both inefficient and caused parsing errors in some situations. Now NumExpr
will simply return 0 as a result for such cases. While NumExpr generally tries
to follow NumPy behavior, performance is also critical.
Thanks to peadar for some fixes to how NumExpr launches threads for embedded
applications.
Thanks to de11n for making parsing of the site.cfg for MKL consistent among
all shared platforms.
Changes from 2.8.3 to 2.8.4
Support for Python 3.11 has been added.
Thanks to Tobias Hangleiter for an improved accuracy complex expm1 function.
While it is 25 % slower, it is significantly more accurate for the real component
over a range of values and matches NumPy outputs much more closely.
Thanks to Kirill Kouzoubov for a range of fixes to constants parsing that was
resulting in duplicated constants of the same value.
Thanks to Mark Harfouche for noticing that we no longer need numpy version
checks. packaging is no longer a requirement as a result.
Changes from 2.8.1 to 2.8.3
2.8.2 was skipped due to an error in uploading to PyPi.
Support for Python 3.6 has been dropped due to the need to substitute the flag
NPY_ARRAY_WRITEBACKIFCOPY for NPY_ARRAY_UPDATEIFCOPY. This flag change was
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/gvoysey/corti/network/alerts).
Bumps numexpr from 2.7.3 to 2.8.5.
Changelog
Sourced from numexpr's changelog.
... (truncated)
Commits
298134a
Getting ready for release 2.8.51c6bce1
Merge branch 'master' of https://github.com/pydata/numexpr00b035c
Make more difficult sanitize of the expression string before eval67a1221
Merge pull request #443 from de11n/fix-libraries-parsingc2dd659
Fix setup.py to respect numpy's parsing of libraries in site.cfg4b2d89c
Add in protections against call toeval(expression)
74d5973
Adding tests forvalidate
and noticed thatre_evaluate
tests using `local...0032150
Apparentlysphinx_rtd_theme
is only compatible with Sphinx < 7.06b6fd1d
Also pinsphinx-rtd-theme
0c22ea7
Try and pin Sphinx version for ReadtheDocsDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show