{"categories":[{"label":"Software Development","url":"https://skillfed.io/packages/category/software-development/2"}],"enrichment":{"capability":"Parses and evaluates Google Common Expression Language (CEL) expressions in Python, enabling secure policy evaluation and cross-platform expression interoperability without requiring full Python execution.","skillfed_tags":["expression-language","policy-engine","sandboxed-evaluation"],"use_cases":["Embed security policy filters in infrastructure-as-code systems to evaluate compliance rules without executing arbitrary Python code.","Evaluate access control expressions in API gateways or authorization systems where policies must be portable across languages.","Validate or transform JSON data from stdin using CEL expressions, similar to jq but with CEL's type system and semantics.","Define and check complex business rules (e.g., account overdraft protection logic) in a sandboxed, language-neutral format.","Build policy-as-code systems where non-developers can write safe, auditable expressions for infrastructure or application decisions."],"what_it_does":"cel-python is a pure Python runtime for Google's Common Expression Language, a domain-specific language designed for secure, portable expression evaluation across systems without exposing the full power of Python. It compiles CEL source code into an abstract syntax tree, then into an executable program that can be evaluated against provided context data. The package is intended for use cases where you need to safely evaluate user-supplied or policy-defined expressions\u2014such as security filters, access control rules, or data validation\u2014without the risks of arbitrary code execution.\n\nThe implementation follows the Go CEL reference closely, with six core dependencies (google-re2, jmespath, lark, pendulum, pyyaml, tomli) that handle regex matching, JSON path queries, parsing, date/time operations, and configuration. It can be used as a library within Python applications or invoked from the command line as a calculator-like tool or JSON filter. Type semantics differ from Python's native types; division truncates toward zero rather than toward negative infinity, and type coercion is minimal.","worth_installing":"Yes, if you need to evaluate untrusted or policy-defined expressions safely without exposing Python's full execution model. The low install friction and lack of known vulnerabilities are positives. However, the aging maintenance status (195 days since last release) and unclear license require verification before production use. Suitable for embedded policy evaluation; less suitable if you need active upstream support."},"id":"cel-python","links":{"html":"https://skillfed.io/packages/cel-python","md":"https://skillfed.io/packages/cel-python.md","pypi":"https://pypi.org/project/cel-python/"},"maintenance":{"status":"aging"},"meta":{"latest_release":"2026-01-31","license_spdx":null,"license_treatment":"unclear","name":"cel-python","python_support":"supports_current","summary":"Pure Python implementation of Google Common Expression Language"},"popularity":{"monthly_downloads":6706378,"position":1867,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"0.5.0"}
