{"id":20795529,"url":"https://github.com/lmfit/asteval","last_synced_at":"2025-05-14T16:11:20.430Z","repository":{"id":2882208,"uuid":"3888766","full_name":"lmfit/asteval","owner":"lmfit","description":"minimalistic evaluator of python expression using ast module","archived":false,"fork":false,"pushed_at":"2025-02-21T04:22:27.000Z","size":8744,"stargazers_count":191,"open_issues_count":0,"forks_count":42,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-04-14T22:07:47.620Z","etag":null,"topics":["ast","eval","python"],"latest_commit_sha":null,"homepage":"https://lmfit.github.io/asteval","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lmfit.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2012-03-31T22:10:33.000Z","updated_at":"2025-04-11T22:00:24.000Z","dependencies_parsed_at":"2023-10-02T01:37:52.359Z","dependency_job_id":"340ddec5-09ef-4f89-8dfa-bfa8ec582590","html_url":"https://github.com/lmfit/asteval","commit_stats":{"total_commits":502,"total_committers":23,"mean_commits":21.82608695652174,"dds":"0.14541832669322707","last_synced_commit":"b9a9b64c11c8364ba31083f75f46f9fad95f2670"},"previous_names":["lmfit/asteval"],"tags_count":42,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmfit%2Fasteval","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmfit%2Fasteval/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmfit%2Fasteval/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lmfit%2Fasteval/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lmfit","download_url":"https://codeload.github.com/lmfit/asteval/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248968914,"owners_count":21191162,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ast","eval","python"],"created_at":"2024-11-17T16:22:13.916Z","updated_at":"2025-04-14T22:08:06.424Z","avatar_url":"https://github.com/lmfit.png","language":"Python","readme":"ASTEVAL\n=======\n\n.. image:: https://github.com/lmfit/asteval/actions/workflows/ubuntu_numpy.yml/badge.svg\n   :target: https://github.com/lmfit/asteval/actions/workflows/ubuntu_numpy.yml\n\n.. image:: https://github.com/lmfit/asteval/actions/workflows/ubuntu_nonumpy.yml/badge.svg\n   :target: https://github.com/lmfit/asteval/actions/workflows/ubuntu_nonumpy.yml\n\n.. image:: https://github.com/lmfit/asteval/actions/workflows/macos_numpy.yml/badge.svg\n   :target: https://github.com/lmfit/asteval/actions/workflows/macos_numpy.yml\n\n.. image:: https://github.com/lmfit/asteval/actions/workflows/windows_numpy.yml/badge.svg\n   :target: https://github.com/lmfit/asteval/actions/workflows/windows_numpy.yml\n\n.. image:: https://codecov.io/gh/lmfit/asteval/branch/master/graph/badge.svg\n   :target: https://codecov.io/gh/lmfit/asteval\n\n.. image:: https://img.shields.io/pypi/v/asteval.svg\n   :target: https://pypi.org/project/asteval\n\n.. image:: https://img.shields.io/pypi/dm/asteval.svg\n   :target: https://pypi.org/project/asteval\n\n.. image:: https://img.shields.io/badge/docs-read-brightgreen\n   :target: https://lmfit.github.io/asteval/\n\n.. image:: https://zenodo.org/badge/4185/newville/asteval.svg\n   :target: https://zenodo.org/badge/latestdoi/4185/newville/asteval\n\n\nLinks\n-----\n\n* Documentation: https://lmfit.github.io/asteval/\n* PyPI installation: https://pypi.org/project/asteval/\n* Development Code: https://github.com/lmfit/asteval\n* Issue Tracker: https://github.com/lmfit/asteval/issues\n\nInstallation\n------------\n\nUse ``pip install asteval`` to install the asteval library.\n\nAsteval requires Python 3.8 or higher.  If installed, many functions and\nconstants from Numpy will be used by default.\n\nAbout ASTEVAL\n--------------\n\nASTEVAL is a safe(ish) evaluator of Python expressions and statements,\nusing Python's ast module.  The idea is to provide a simple, safe, and\nrobust miniature mathematical language that can handle user input.  The\nemphasis here is on mathematical expressions so that many functions from\n``numpy`` are imported and used if available.\n\nMany Python language constructs are supported by default, These include\nslicing, subscripting, list comprehension, conditionals (if-elif-else\nblocks and if expressions), flow control (for loops, while loops, and\ntry-except-finally blocks). All data are Python objects and built-in data\nstructures (dictionaries, tuples, lists, Numpy arrays, strings) are fully\nsupported by default.\n\nMany of the standard built-in Python functions are available, as are all\nmathematical functions from the math module.  If the Numpy module is\ninstalled, many of its functions will also be available.  Users can define\nand run their own functions within the confines of the limitations of\nAsteval.\n\nThere are several absences and differences with Python, and Asteval is by\nno means an attempt to reproduce Python with its own ast module.  Some of\nthe most important differences and absences are:\n\n 1. Variable and function symbol names are held in a simple symbol\n    table (a single dictionary), giving a flat namespace.\n 2. creating classes is not supported.\n 3. importing modules is not supported by default - it can be enabled.\n 4. function decorators, yield, lambda, exec, and eval are not supported.\n 5. files can only be opened in read-only mode.\n\nIn addition, accessing many internal methods and classes of objects is\nforbidden in order to strengthen Asteval against malicious user code.\n\n\nMatt Newville \u003cnewville@cars.uchicago.edu\u003e\nLast Update:  30-June-2024\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flmfit%2Fasteval","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flmfit%2Fasteval","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flmfit%2Fasteval/lists"}