Skip to main content

CEfC

A call-effect-commit schema for safe data management Python.

This a metaprogramming framework that enables the safe execution of Python code by tracking data modifications and commiting to them only after functions complete their runs without errors. You can create fast-failing services that can rerun with new inputs from the same uncorrupted state.

The framework also treats exceptions-as-values, meaning that you can check the validity of return arguments if you want, otherwise they are cascaded throughout service calls.

⚡ Quickstart

Install CEfC per pip install cefc. Then create and run the following code snippet:

from cefc import service

@service
def func(a: list, b: int):
    a[0] = 1
    a[0] /= b

@service
def outer_func(a: list, b:int):
    return func(a, b)

a = [1,2,3]
outer_func(a, b=0)
print(a)

You will see the following output, where a is unaffected by would-be modifications and there is a final warning about not having handled the division-by-zero error at any point.

Error example

🛠️ Safe types

This is a list of types whose safety is (planned to be) guaranteed when presented as service arguments. Note that the safety of global state is not guaranteed, but globals can be passed as preset arguments too.

  • list
  • dict
  • numpy array or GPU tensor
  • object

Metadata

Release files for cefc 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cefc 0.1.0
File Size Uploaded Provenance Actions
cefc-0.1.0.tar.gz 2.3 kB Without provenance Details for cefc-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for cefc 0.1.0
File Interpreter ABI Platform Actions
cefc-0.1.0-py3-none-any.whl Python 3 none any Details for cefc-0.1.0-py3-none-any.whl

Total release size: 4.5 kB

Release files / cefc-0.1.0.tar.gz

Download URL cefc-0.1.0.tar.gz
Size 2.3 kB
Tags Source
SHA-256 checksum
How to use checksums
cf9d3f4e2fb82195efc7c2e90fd618503511da197f6df67a6459f5b570dfc45b
BLAKE2b-256 checksum
How to use checksums
9a5f541f4972a7c6f6f4784335f4d67eded8444e60b0f2579ce52b89e3eee3e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Release files / cefc-0.1.0-py3-none-any.whl

Download URL cefc-0.1.0-py3-none-any.whl
Size 2.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
099a308052dbbbdc3cafa88dd3f3e9e582fd6b3a7a1f9c005dfb85f14fd1ba0f
BLAKE2b-256 checksum
How to use checksums
9456c932948cde5bfc12fef1fe34cf56e39a4a3fa8d3d03d240eac0e4e51d79a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.3

Security for cefc 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page