Downloading and Installation¶
Requirements¶
Asteval is a pure Python module. For Python 3.8 and higher, there are no required dependencies outside of the standard library. If numpy and numpy_financial are available, Asteval will make use of these libraries. The test suite requires the pytest and coverage modules, and building the documentation requires sphinx.
The latest stable version of asteval is 0.9.31.
Versions 0.9.30 and later support Python 3.8 through 3.11 and are and are automatically tested with these on Windows, MacOS, and Linux, with and without numpy installed. Python versions have generally been supported by asteval until they are well past the end of security fixes - there are no immediate plans to drop support for Python 3.7, though we are no longer test with it. Support for new versions of the Python 3 series is not guaranteed until some time after the official release of that version, as we may not start testing until late in the “beta” period of development. Historically, the delay has not been too long, though asteval may not support newly introduced language features.
At this writing (Asteval 0.9.31, July, 2023), minimal testing has been done with Python 3.12-beta4, without numpy installed. All tests pass, which suggests that there no changes needed to the way asteval works with the AST generated by Python.
Download and Installation¶
The latest stable version of asteval is 0.9.31 and is available at PyPI or as a conda package. You should be able to install asteval with:
pip install asteval
It may also be available on some conda channels, including conda-forge, but as it is a pure Python package with no dependencies or OS-specific extensions, using pip should be the preferred method on all platforms and environments.
Development Version¶
The latest development version can be found at the github repository, and cloned with:
git clone https://github.com/newville/asteval.git
Installation¶
Installation from source on any platform is:
pip install .
License¶
The ASTEVAL code is distribution under the following license:
The MIT License
Copyright (c) 2023 Matthew Newville, The University of Chicago
Permission is hereby granted, free of charge, to any person obtaining a copy of
this software and associated documentation files (the "Software"), to deal in
the Software without restriction, including without limitation the rights to
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
of the Software, and to permit persons to whom the Software is furnished to do
so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.