| Port details |
- py-simpleeval Simple, safe single expression evaluator library
- 1.0.7 devel
=0 0.9.13Version of this port present on the latest quarterly branch. - Maintainer: sunpoet@FreeBSD.org
 - Port Added: 2016-04-23 20:48:58
- Last Update: 2026-05-05 13:56:59
- Commit Hash: 94b5434
- Also Listed In: python
- License: MIT
- WWW:
- https://github.com/danthedeckie/simpleeval
- Description:
- A single file library for easily adding evaluatable expressions into python
projects. Say you want to allow a user to set an alarm volume, which could
depend on the time of day, alarm level, how many previous alarms had gone off,
and if there is music playing at the time.
Or if you want to allow simple formulae in a web application, but don't want to
give full eval() access, or don't want to run in javascript on the client side.
It's deliberately trying to stay simple to use and not have millions of
features, pull it in from PyPI (pip or easy_install), or even just a single file
you can dump into a project.
Internally, it's using the amazing python ast module to parse the expression,
which allows very fine control of what is and isn't allowed. It should be
completely safe in terms of what operations can be performed by the expression.
The only issue I know to be aware of is that you can create an expression which
takes a long time to evaluate, or which evaluating requires an awful lot of
memory, which leaves the potential for DOS attacks. There is basic protection
against this, and you can lock it down further if you desire.
You should be aware of this when deploying in a public setting.
The defaults are pretty locked down and basic, and it's easy to add whatever
extra specific functionality you need (your own functions, variable/name lookup,
etc).
¦ ¦ ¦ ¦ 
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - There is no configure plist information for this port.
- USE_RC_SUBR (Service Scripts)
- no SUBR information found for this port
- Dependency lines:
-
- ${PYTHON_PKGNAMEPREFIX}simpleeval>0:devel/py-simpleeval@${PY_FLAVOR}
- To install the port:
- cd /usr/ports/devel/py-simpleeval/ && make install clean
- To add the package, run one of these commands:
- pkg install devel/py-simpleeval
- pkg install py311-simpleeval
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above. NOTE: This is a Python port. Instead of py311-simpleeval listed in the above command, you can pick from the names under the Packages section.- PKGNAME: py311-simpleeval
- Package flavors (<flavor>: <package>)
- distinfo:
- TIMESTAMP = 1777906405
SHA256 (simpleeval-1.0.7.tar.gz) = 1e10e5f9fec597814444e20c0892ed15162fa214c8a88f434b5b077cf2fef85b
SIZE (simpleeval-1.0.7.tar.gz) = 30250
Packages (timestamps in pop-ups are UTC):
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- py311-hatchling>=0 : devel/py-hatchling@py311
- python3.11 : lang/python311
- py311-build>=0 : devel/py-build@py311
- py311-installer>=0 : devel/py-installer@py311
- Test dependencies:
-
- python3.11 : lang/python311
- Runtime dependencies:
-
- python3.11 : lang/python311
- This port is required by:
- for Run
-
- devel/py-frictionless
- misc/comfyui
Configuration Options:
- No options to configure
- Options name:
- devel_py-simpleeval
- USES:
- python
- FreshPorts was unable to extract/find any pkg message
- Master Sites:
|
| Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
| Commit | Credits | Log message |
1.0.7 05 May 2026 13:56:59
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-simpleeval: Update to 1.0.7
- Update COMMENT
- Add LICENSE_FILE
- Update pkg-descr
Changes: https://github.com/danthedeckie/simpleeval/releases
PR: 294484
Reported by: yuri |
0.9.13 08 Apr 2024 06:46:37
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-simpleeval: Remove PY_SETUPTOOLS
py-setuptools should be used rather than PY_SETUPTOOLS |
0.9.13 18 Jul 2023 00:53:09
    |
Charlie Li (vishwin)  |
devel/py-setuptools: convert individual consumers to ${PY_SETUPTOOLS}
Currently a no-op, but in the future outputs the correct setuptools
port depending on whether USES_PYTHON=distutils is specified.
With hat: python
PR: 270510, 270358 |
0.9.13 27 Jun 2023 19:34:34
    |
Rene Ladan (rene)  |
all: remove explicit versions in USES=python for "3.x+"
The logic in USES=python will automatically convert this to 3.8+ by
itself.
Adjust two ports that only had Python 3.7 mentioned but build fine
on Python 3.8 too.
finance/quickfix: mark BROKEN with PYTHON
libtool: compile: c++ -DHAVE_CONFIG_H -I. -I../.. -I -I. -I.. -I../.. -I../C++
-DLIBICONV_PLUG -DPYTHON_MAJOR_VERSION=3 -Wno-unused-variable
-Wno-maybe-uninitialized -O2 -pipe -DLIBICONV_PLUG -fstack-protector-strong
-fno-strict-aliasing -DLIBICONV_PLUG -Wall -ansi
-Wno-unused-command-line-argument -Wpointer-arith -Wwrite-strings
-Wno-overloaded-virtual -Wno-deprecated-declarations -Wno-deprecated -std=c++0x
-MT _quickfix_la-QuickfixPython.lo -MD -MP -MF
.deps/_quickfix_la-QuickfixPython.Tpo -c QuickfixPython.cpp -fPIC -DPIC -o
.libs/_quickfix_la-QuickfixPython.o
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean
'-Wno-uninitialized'? [-Wunknown-warning-option]
QuickfixPython.cpp:175:11: fatal error: 'Python.h' file not found
^~~~~~~~~~
1 warning and 1 error generated.
Reviewed by: portmgr, vishwin, yuri
Differential Revision: <https://reviews.freebsd.org/D40568> |
0.9.13 05 Apr 2023 17:30:33
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-simpleeval: Update to 0.9.13
Changes: https://github.com/danthedeckie/simpleeval/releases |
0.9.12_2 04 Apr 2023 18:29:11
    |
Antoine Brodin (antoine)  |
USE_PYTHON=pep517: bump PORTREVISION |
0.9.12_1 21 Mar 2023 19:21:03
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-simpleeval: Convert to USE_PYTHON=pep517
- Bump PORTREVISION for dependency and package change |
0.9.12 11 Jan 2023 15:58:34
    |
Dmitry Marakasov (amdmi3)  |
*/*: rename CHEESESHOP to PYPI in MASTER_SITES
PR: 267994
Differential revision: D37518
Approved by: bapt |
07 Sep 2022 21:58:51
    |
Stefan Eßer (se)  |
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner) |
0.9.12 07 Sep 2022 21:10:59
    |
Stefan Eßer (se)  |
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above ) |
0.9.12 25 Jan 2022 19:50:21
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-simpleeval: Update to 0.9.12
Changes: https://github.com/danthedeckie/simpleeval/commits/master |
0.9.11 11 Jan 2022 18:44:34
    |
Po-Chuan Hsieh (sunpoet)  |
devel/py-simpleeval: Update to 0.9.11
- Take maintainership
Changes: https://github.com/danthedeckie/simpleeval/commits/master |
0.9.10 15 Nov 2021 17:37:50
    |
Joseph Mingrone (jrm)  |
devel/py-simpleeval: Release maintainership to ports@ |
0.9.10 07 Apr 2021 08:09:01
    |
Mathieu Arnold (mat)  |
One more small cleanup, forgotten yesterday.
Reported by: lwhsu |
0.9.10 06 Apr 2021 14:31:07
    |
Mathieu Arnold (mat)  |
Remove # $FreeBSD$ from Makefiles. |
0.9.10 11 Jan 2021 05:37:08
  |
jrm  |
devel/py-simpleeval: Update to version 0.9.10 |
0.9.8 28 Dec 2020 23:02:15
  |
antoine  |
Drop python 2.7 support from a few ports
With hat: portmgr |
0.9.8 20 Oct 2018 11:36:56
  |
jrm  |
devel/py-simpleeval: Update to version 0.9.8
Upstream changes: https://github.com/danthedeckie/simpleeval/commit/2789cf |
0.9.6 10 Aug 2018 19:21:24
  |
jrm  |
devel/simpleeval: Update to version 0.9.6 |
0.9.5 12 Feb 2017 14:08:21
  |
jrm  |
devel/py-simpleeval: Update to version 0.9.5.
Approved by: swills (mentor, implicit) |
0.9.3 25 Jan 2017 15:44:17
  |
jrm  |
devel/py-simpleeval: Update to version 0.9.3.
Upstream breaking change: StringTooLong exception is now
IterableTooLong. All iterables are caught now, not just str.
Approved by: swills (mentor)
Differential Revision: https://reviews.freebsd.org/D9329 |
0.9.2 23 Jan 2017 13:22:56
  |
jrm  |
devel/py-simpleeval: Update to version 0.9.2.
Approved by: swills (mentor)
Differential Revision: https://reviews.freebsd.org/D9289 |
0.9.1 11 Nov 2016 20:07:37
  |
jrm  |
devel/py-simpleeval: Update to version 0.9.1
Changelog:
- Fix GH issue #13: Expression does not give expected result
- Fix GH issue #15: Including non-builtin class in names allows end user
to snoop
- Fix GH issue #16: Multiple comparisons being short-circuited
Approved by: AMDmi3 (mentor)
Differential Revision: https://reviews.freebsd.org/D8493 |
0.8.7 23 Sep 2016 21:42:02
  |
jrm  |
Update email address to jrm@FreeBSD.org for ports that I maintain
Reviewed by: mat, swills (mentor)
Approved by: swills (mentor)
Differential Revision: https://reviews.freebsd.org/D7995 |
0.8.7 23 Apr 2016 17:45:30
  |
swills  |
devel/py-simpleeval: create port
simpleeval is a single-file library for easily adding evaluatable expressions
into python projects. It can allow a user to, for example, set an alarm volume,
which could depend on the time of day, alarm level, how many previous alarms had
gone off, and if there is music playing at the time.
WWW: https://github.com/danthedeckie/simpleeval
PR: 208688
Submitted by: Joseph Mingrone <jrm@ftfl.ca> |