Skip to main content

Python bindings for the Common Expression Language (CEL)

Project description

Python CEL - Common Expression Language

Documentation PyPI version Python 3.11+

Fast, Safe, and Expressive evaluation of Google's Common Expression Language (CEL) in Python, powered by Rust.

The Common Expression Language (CEL) is a non-Turing complete language designed for simplicity, speed, and safety. This Python package wraps the Rust implementation cel-interpreter v0.10.0, providing microsecond-level expression evaluation with seamless Python integration.

🚀 Use Cases

  • 🛡️ Policy Enforcement: Define access control rules that can be updated without code changes
  • ⚙️ Configuration Validation: Validate complex settings with declarative rules
  • 🔄 Data Transformation: Transform and filter data with safe, portable expressions
  • 📋 Business Rules: Implement decision logic that business users can understand
  • 🔍 Query Filtering: Build dynamic filters for databases and APIs
  • 🎯 Feature Flags: Create sophisticated feature toggle conditions

Installation

pip install common-expression-language

Or using uv:

uv add common-expression-language

After installation, both the Python library and the cel command-line tool will be available.

📖 Full Documentation: https://python-common-expression-language.readthedocs.io/

Quick Start

Python API

from cel import evaluate

# Simple expressions
result = evaluate("1 + 2")  # 3
result = evaluate("'Hello ' + 'World'")  # "Hello World"
result = evaluate("age >= 18", {"age": 25})  # True

# Complex expressions with context
result = evaluate(
    'user.role == "admin" && "write" in permissions',
    {
        "user": {"role": "admin"},
        "permissions": ["read", "write", "delete"]
    }
)  # True

Command Line Interface

# Simple evaluation
cel '1 + 2'  # 3

# With context
cel 'age >= 18' --context '{"age": 25}'  # true

# Interactive REPL
cel --interactive

Pre-compilation for Performance

When evaluating the same expression multiple times with different contexts, use compile() for better performance:

import cel

# Compile once
program = cel.compile("price * quantity > threshold")

# Execute many times - much faster than repeated evaluate() calls
result1 = program.execute({"price": 10, "quantity": 5, "threshold": 40})  # True
result2 = program.execute({"price": 5, "quantity": 3, "threshold": 20})   # False

Custom Functions

from cel import Context, evaluate

def calculate_discount(price, rate):
    return price * rate

context = Context()
context.add_function("calculate_discount", calculate_discount)
context.add_variable("price", 100)

result = evaluate("price - calculate_discount(price, 0.1)", context)  # 90.0

Real-World Example

from cel import evaluate, Context

# Access control policy
policy = """
user.role == "admin" || 
(resource.owner == user.id && current_hour >= 9 && current_hour <= 17)
"""

context = Context()
context.update({
    "user": {"id": "alice", "role": "user"},
    "resource": {"owner": "alice"},
    "current_hour": 14  # 2 PM
})

access_granted = evaluate(policy, context)  # True

Features

  • Fast Evaluation: Microsecond-level expression evaluation via Rust
  • Rich Type System: Integers, floats, strings, lists, maps, timestamps, durations
  • Python Integration: Seamless type conversion and custom function support
  • CLI Tools: Interactive REPL and batch processing capabilities
  • Safety First: Non-Turing complete, safe for untrusted expressions

Documentation

📚 Complete documentation available at: https://python-common-expression-language.readthedocs.io/

Building Documentation Locally

To build and serve the documentation locally:

# Install documentation dependencies
uv sync --group docs

# Build the documentation
uv run --group docs mkdocs build

# Serve locally with live reload
uv run --group docs mkdocs serve

The documentation will be available at http://localhost:8000

Development

Testing

# Run all tests
uv run pytest

# Run with coverage
uv run pytest --cov=cel

# Test all documentation examples (embedded code + standalone files)
uv run --group docs pytest tests/test_docs.py -v

Building from Source

# Install development dependencies
uv sync --dev

# Build the package
uv run maturin develop

# Run tests
uv run pytest

Contributing

Contributions are welcome! Please see our documentation for:

License

This project is licensed under the same terms as the original cel-interpreter crate.

Resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

common_expression_language-0.5.6.tar.gz (161.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.9 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ s390x

common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.0 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ppc64le

common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.7 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARMv7l

common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64

common_expression_language-0.5.6-cp314-cp314-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.14Windows x86-64

common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64

common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.9 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ s390x

common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.0 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ppc64le

common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.7 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARMv7l

common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64

common_expression_language-0.5.6-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 3.14manylinux: glibc 2.5+ i686

common_expression_language-0.5.6-cp314-cp314-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

common_expression_language-0.5.6-cp314-cp314-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.14macOS 10.12+ x86-64

common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.9 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ s390x

common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.0 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ppc64le

common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.7 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARMv7l

common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.13tmanylinux: glibc 2.17+ ARM64

common_expression_language-0.5.6-cp313-cp313-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.13Windows x86-64

common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.9 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ s390x

common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.0 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ppc64le

common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARMv7l

common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

common_expression_language-0.5.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.5+ i686

common_expression_language-0.5.6-cp313-cp313-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

common_expression_language-0.5.6-cp313-cp313-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

common_expression_language-0.5.6-cp312-cp312-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.12Windows x86-64

common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.9 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ s390x

common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.0 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ppc64le

common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARMv7l

common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

common_expression_language-0.5.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.5+ i686

common_expression_language-0.5.6-cp312-cp312-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

common_expression_language-0.5.6-cp312-cp312-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

common_expression_language-0.5.6-cp311-cp311-win_amd64.whl (1.4 MB view details)

Uploaded CPython 3.11Windows x86-64

common_expression_language-0.5.6-cp311-cp311-win32.whl (1.2 MB view details)

Uploaded CPython 3.11Windows x86

common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl (1.9 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ s390x

common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl (2.0 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ppc64le

common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (1.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARMv7l

common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

common_expression_language-0.5.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl (1.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.5+ i686

common_expression_language-0.5.6-cp311-cp311-macosx_11_0_arm64.whl (1.5 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

common_expression_language-0.5.6-cp311-cp311-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

File details

Details for the file common_expression_language-0.5.6.tar.gz.

File metadata

File hashes

Hashes for common_expression_language-0.5.6.tar.gz
Algorithm Hash digest
SHA256 7286433de9418b10088e112913c4c2fc67e56067165c49d3bf152184ca61def4
MD5 c05f4fe8dc6bf368d65e7a0a35f6b194
BLAKE2b-256 5607223e74662165acf74c38880a952887ed7ebf1fbf440a5d12cd29bd0cf883

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 bd638ef8c195e229548d5ade00d739b3d5c03e8f758a7619d0dd2c3b05979dea
MD5 3d5d145d34a10739ee60a19e2b8de68e
BLAKE2b-256 1cacc1de22b298292338624d563512c64028747bbb1cc7c77167f972790b8ada

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 a0190f2b5cb91b735b61c6f1b76dab6e4cdafeffdb84490dfb61289753179da5
MD5 7232d4ac56a9d72c4f9258d62dc8d050
BLAKE2b-256 d32c63e2286c9d34ba90284cf3a42a2d1a286e6e3f4dba6d8d58b2e9be8de320

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 2ed85099073d8e4d78af2fde2df1e812c23bff952e553c0577a133d8796f096f
MD5 b123ebb2f30dcf4d4a32dac354ac0b70
BLAKE2b-256 d7c733f5d5d9939352a9ade70ceb58ab9106afa896a0472bcc4f0e4a0f189624

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 dda6993475b06fd5017a4ff695474cadbfff13a7369d7f3a71c94d186c1794c1
MD5 18ddea4d43fe57c1489da1644be7ef69
BLAKE2b-256 dccf29eccd9cbbaaee3454fbd38a14852db336a2e6988352aad9549b7fad2d5a

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f25b91d784123f4994f91dbb5830e221fbde480f3af11f7ee9ebdab829390afa
MD5 cdd5b724e633e801dec57f61ca0a289b
BLAKE2b-256 7d394a83234d616b9046a41493483fe70d3b3fafe3428adca96af857a1c1a3c3

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-pp311-pypy311_pp73-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 4a996aeb656a723494cc9adf83f91364ddadf5b8eb9eccbec8fc00c46d4ace9d
MD5 80bebab409143f80855321c32284a458
BLAKE2b-256 342537d1915873503e1553aa43ae98561da109f1a9c2a22e5abc56d33d9642b2

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 4f91d399159838637e52084186ed69d1991d7fb445ff50930676c74d6c1d16ff
MD5 9d1dcdb40071989c9f30acc7f7b5bc26
BLAKE2b-256 0a40b6d98f1316050b2bd85f0c06c1b88f69851ca4a3c9d91d399d07f5311d50

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 c8e405d0defdf41d1f3866ace8c9efe92b0c499c8f282298c03324d6ebbcc06a
MD5 3d10a6b7cd0e1b5d5d810903712c80f3
BLAKE2b-256 0940a97748426063b5df8e8ead0fc30dc262e856c292a46f16e2589a0a05f0d5

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 d6c868f80e7068d8117ffa371e6df13e39e8fe9bfbe7f9588e792723f9ef5eb1
MD5 c5fc915a044996c657668eb691d63890
BLAKE2b-256 4896e500529a24e0cd9383728f0046613c85b10c30a7b0255748a9ade7e31a61

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 3b18899bda26d84bc905261e852fa975f01c3c27b3b547aa9a820fc812eb9076
MD5 cef6a5e015c9c225d0ec43c1ae1fed54
BLAKE2b-256 a2a0cd997119ece32571a942d65883c915c807e06bbd61695e9620b1f57f4226

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-win_amd64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e34cc0be2a2e6f1ec9aba333d3652b65e9068722df6e0caf2ef0781fb3bfb6e3
MD5 70972994564f6d5bc224263bd7671240
BLAKE2b-256 7f65b1fd9cd3e937e2e075fc1305b172c2f9e9df4bf3847311e2f24c85b74f13

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 020c4ad047d48f92de8e9c86cf6c964c0e8dfcd95153efb32fa2d684ffde21c5
MD5 471305132d629a58c0551fca583ce53f
BLAKE2b-256 f882aee0a8fc735de80d81028c4da3f7f3f70e50701a382ab803f28d876f5324

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 a1cc6441bdd75d615c9c08715b24e5edfd9c68b9195b96bf58beeb38c4b34358
MD5 328a25b0a50b7beb52d6b762fd81c986
BLAKE2b-256 4769312962b89a32861c2ecbd30b69520a7d1f38f4bc10fd853e8379e506e629

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 62a8065284d9dfa83f3e9a89144c0904f82ca96143428cb94c59c6035aa61b97
MD5 177229c96f33345c46e5356853be7939
BLAKE2b-256 b760fbae6d7814278ffe69c0e31f714cdf7142465f39c1524cf21c7670306f3f

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 09a2dd727d01591f328ee670b800e65c071389728582183f8e301c9170428d53
MD5 12dcb41284f1c6425aae46385622f7d1
BLAKE2b-256 8b0377a921e728699afcf91ecaacb4324afa2ae4a29aba3436f8df0c8c1bc16f

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f17a64ca7934cc1223285a3252adb673ccd2c163919cbe298b509af800f5faff
MD5 d853d11e8526d637305a53a52f5d4986
BLAKE2b-256 210e90c11799b055931c0fce9070fd766657e96d74eebc1f691ca7e5d69decae

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 99a30aff68c9b06ede6ea18ed4cc621a50f74a681d833b92db0828af3e2b83ff
MD5 ff3d86f5217589cce365afd650ad8ece
BLAKE2b-256 d3da82f62a6e0e8666ccb14ee46a04950cac036e12489e311ebc35bbde7d3c20

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f3a41a36fc34bc5ff3a7f7a8ebc2c8eba10b08d081b8a848b9daa37b21150201
MD5 89999a01b678b121fb6338c1d9276643
BLAKE2b-256 0628d7776ec742718beac911607ed7257597de05dc4f52937cee7f5f343bacbf

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp314-cp314-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp314-cp314-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 8124f01e330e0cdd4fb08d0614ce1554378aee353f559b969fe55fd1d13e1972
MD5 5b9d75563353d36288fe65b1d31895ec
BLAKE2b-256 47b02fc23076967ab19f69f94838c53eca60f86510a76a3dd928634421d5773a

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 356a1da6350548be6750a46ec2a0f9cd8dd668b11e85e050e1bbaea5ebaac144
MD5 6b063a6d2104a3a4f9b3dd0f7c1ed3db
BLAKE2b-256 696f028543261933873f6d9d715078fc3100cc798ee1378ea4065490ee5624cf

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 0a2eb44c14b1a9b0ac24f37ffdec7160fb8c1b0b9f325601071b01f09e7b8cc3
MD5 87db0cab6466d5b30efae46042a26a88
BLAKE2b-256 27362d06be7844bd0990712bf20f725c437a08912224042e5c3e8c77669c7097

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9f9d16c67d6be3ad0f75552760818cff7c6f1e4c7f69368d42e4c0a72fb97b8a
MD5 eb5b130184b9bdd7b1015cd4da91a295
BLAKE2b-256 3db95b3d9f6003b67dc6837d3198f538fe4d1f884b997c63453188ce628cbf43

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 0113fed33e6f27f0a7b22a93edd4cb1612399e941d0736572d3c74d15ead7613
MD5 925815d29da4ac9f219187bb6724fc5c
BLAKE2b-256 49abb2c9ea451b745a5c349d20c8e328bb5f0cf85c9f5ea982e8d963395b97db

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 b98357954cc2797eba1318a220b1cc798753a8157fd454d9c1c20399af940c80
MD5 3ce73a7d09412474a27b4fc16962c04a
BLAKE2b-256 57ab2deed39174aeca5a9f2d2a0aaa02413b9a033cef8096d949282d9b06f304

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a16bab612fa97b453d789efd424e45e29f07e50da7035989ad729ce178dd697c
MD5 9bb114435caebea9823f0b248671fd6b
BLAKE2b-256 a3af0089c6e999e5d6ad4537d3f1890f16bef328ae99f77f29005a76f40c345d

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 d690625fc6906ae49b6e14656c16846eaaa177846075c59d8d7cf3475838de10
MD5 ff5b92d68d1b25c2145c199ed4a39fcf
BLAKE2b-256 ac2095f0fe5a6feecafa0c95a96b916e89943a35e7a08c10ef4231d6a5e0d552

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 74c7789a128ac34d285f795cb54c12de65e3b6855270d5be33c6346d6d2bd3f8
MD5 e57ea9fdca375bb6c30423616ba2d7c4
BLAKE2b-256 bc372d665ba3035c6062615de87cad64399d6a535eced2a0c8048fd22eacbd23

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 e459dc944b03f7b962fd1f84475fbe3adcca930fcf6a14d9945d2ad029705a63
MD5 115b4c42fa804fc000c01ce0d84ea704
BLAKE2b-256 a3915a831a2e64d1248414fee9e0f2565759e565301b7a3d8e65637aebe84e02

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 2d55e65f6e14865963453bbb729c83cd5ebdbec3b37391286ccbcdb6cfa94dfb
MD5 bc430fb62166d2088ac636eadb73accb
BLAKE2b-256 80edada6279b55d2689700beec40b452263feec372c928c55d73baaaaa58b1ca

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 6c28a4853c3461d14a9040a0c67551a1372047a094a44915a1cf384a1c8027e2
MD5 3b180961d0b00c16f95e4752c395f946
BLAKE2b-256 e9739ad4b5e7e2e1e1cb9ad55c6e0b8c328e6bd8bb96ccdc4f8bd4159e4a8c70

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 fa559ab2d734160348919516f163197ea495a38cb9a2e1433a412d34bcbc1180
MD5 44ff4fedd791cbcc1c1013b196b3f973
BLAKE2b-256 4c787291f8661c2b18d4e60e56b43fce9aee7ef53e6247431e9187d3ae4a9986

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a7753aa1040ad3b389c6136f894b4239034f801be2f7736cb45b1c02b5d427db
MD5 2777d91ef08c8df493ee02a7309f12a2
BLAKE2b-256 2ef171e5c84bc13e5f9143f74e9568c3c192b92d71e85f841db0cc9210622d72

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 b4bcbe8eb5c40a7e07ba738f38496e6c0d629c894ade2db87e03878ed714b08b
MD5 6b1329459b984db65ad17a4bf743116c
BLAKE2b-256 1a62e250feb4e22efb0cabb237e55dee223e55f9a81913bc0e3258b102eb5ab4

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d3fcab791f3b0627ae1ef5e8c8cbafb5fb54c399258c26ae4258363f63387686
MD5 ac8db290625d3f5ec22b9524178f0965
BLAKE2b-256 1fddc45b21f3169b65140ab0d534d29a0b0d8d4baa2acabe3fcf0a0b7e80dda9

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 23ff92256f801ae1c16e61fe41b7df60553241581b16220922e13c689ee86653
MD5 fa6a5db62fd82484fa44a51ee3dff352
BLAKE2b-256 42ad7f2fef6d8dd8245a9b42da6f4b209d52f3cd956c69a8e16b9fce6fd29bb3

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 be15788994d3c7bc64cba010154e0fd12b25175c35a43f608dbe41bc7b4ea6a6
MD5 fd2df761876894bbea50627b409c9010
BLAKE2b-256 b2ef85a26c22326d69a87e9d144cd4c16f9142a9075b3644f56624e28b898503

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 1271e5fb08d9925aa01e91b25c8cff974f14752538defcef613c31a2f10cd71b
MD5 e0d07041fd84b483e247c35351d6459e
BLAKE2b-256 584b681554692205ec4beb02fdd399a9e592715bf59b62a7d01ee45565fb0f63

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 112c2a1865c2769f40d336752390e0e779afbd4717b332645808166c1f1c94a6
MD5 2d9046284c4ba1b9d8769a516e7312bc
BLAKE2b-256 6230467a66348180320971777e443ef0a4ebb5ebfd3fd36dbace562cb2b61ab0

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 efe8babdb3c61acb6ade673667c09d3b9f80dd84247e5452c257b23dfa2974c9
MD5 b48d2fb01056eef34ee0ebe40476fd3c
BLAKE2b-256 5824e584cebe3c7e6f8da6c1551b5c0f5b9fef437cd99096376736f8032ff8c3

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 acf71b07dfbbffa2175a6dc2594ae3bd4a2b38eb6f2bce2d0bcf0ef80daa5083
MD5 c765b49afc0b63f969ecf2200f744884
BLAKE2b-256 409ab82ac14d54d7758ccb09949d633cb49c1756f99c94e1e85d82126c8b72f5

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d7fa2be3ef704a27ada7cd6c90144d97967f3ef035b09e5748b5b8466fc95db3
MD5 af0ba10f4ff5e48643de1f3dc60f0c30
BLAKE2b-256 8fb119492645c0e1abea080810d08b985ecc1da79429e99ecd4dc01684d02b4f

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 926b3b4c114f287b31387bcb37ba9e772dabf445a783a2348b166beccddce38b
MD5 be95c1f9c2ea478ea573165c8ef0ebe0
BLAKE2b-256 4487f9b27275e479c6a21dd261c0ac560b9cfe6f0b3118b440bce31ed440d832

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-win32.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 68b7b807b4d30469ac616a5fff6ec66d222a1df3267491e89c0d649278ea6192
MD5 be2308f543e64d0f34cc7040d4b1971e
BLAKE2b-256 d54d62f5b90c048a6d78cc57c7c2638613086aec985ea33e2d060912162e97a2

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 713e994c1a08fe1920c050d31ac72f1db3a8cd265c0e3b4e5ebeb78ab1cc84a8
MD5 d24350910d250a72c592b2b0c563f57a
BLAKE2b-256 bd1f449c3af65ef2438dc12490bef2debdd70b79694b76d096a6029b18c9b083

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl
Algorithm Hash digest
SHA256 fea2a0a197f963e086975d84ac0139b09066dc7431559c56416eba78e4108177
MD5 5d190316fb0607b3883339cece20d94e
BLAKE2b-256 3bac416d77f7182aec36df3c3fcc2f41625bb9177f982dedcf100de94b373c62

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl
Algorithm Hash digest
SHA256 264108f28626ca8afd8b48dd5ee9e96b2953a5bf9ec4edb8e0dce55b71ad60ae
MD5 7446dca3e1ae1df6b4506a4264603163
BLAKE2b-256 449d22420e613cc14691418ec13ec8eb58c4b3ce62d8e02e5c708043b6c63bbb

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 9d0438930d6221c980efb951c907587a8c0c220e4772c7dec532b21fd06c1892
MD5 a9f71f7e8564eb1b408c1b0184bdf7eb
BLAKE2b-256 52ddeb5fdc8af7721aab83368340c4dc4b79faca8b180050d5c7f588c79dbf6f

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 614197bf6ae6c18181654ec356083bf92901067d58f241f8dd58a15daea285e6
MD5 c48046537891e2aa44cee11c0e3dac77
BLAKE2b-256 b3643b395d23fd417a013b04173567c755ef41b92570977da6d4c26c5fb4b8cf

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.whl
Algorithm Hash digest
SHA256 0d6076beb2d754d278672f15070c954f39e249ed3cb29458dbb39b2dc37152d8
MD5 553278d449247a4a3c32d79d080ae70f
BLAKE2b-256 0f9b7def012007076f0bef4fdc07a9369ca2be0edc9361643f31b8450774cf1d

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 6d2d5682754c896687d58846b8384bb48318664771000527d623cd04c370b6cd
MD5 49efcdca640c6e27c9fd082446eda6ae
BLAKE2b-256 8324990b8e8670a9559ccdc88aba753ca4d5b750f3493307aec641efa81c7fbc

See more details on using hashes here.

File details

Details for the file common_expression_language-0.5.6-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for common_expression_language-0.5.6-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 91d2c4c9851152b84c9afd2f48a7710ea8afb8036c6039a14cee375a5e578552
MD5 0e90c785a655ed6e1d46edd9e6b97b02
BLAKE2b-256 a393568e79bd5588a066c5413962bbbef0bad6d8bc740bb3b55510f1818ae2d4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page