Skip to main content

doeff-vm

The Rust virtual machine that runs doeff programs.

This README is for Python developers who use doeff and want to know what doeff-vm does. After reading it you can tell whether you need to import it directly, install it, and use its low-level program nodes.

What it does

doeff-vm is a Python extension module written in Rust (PyO3). It executes doeff programs:

  • it keeps the stack of installed handlers,
  • it sends each performed effect to the innermost handler that accepts it,
  • it resumes the program through one-shot continuations (a continuation k can be resumed at most once).

The scheduler behind doeff's concurrency effects (Spawn, Gather, …) also runs on it.

Most users never import doeff_vm directly. doeff.run(...) drives this VM, and pip install doeff installs it for you.

How one effect is handled:

run(program)
   │
   ▼
doeff-vm steps through the program
   │  the program performs an effect
   ▼
innermost handler in scope ──Resume(k, value)──► the program continues with `value`
   │  Pass(effect, k)
   ▼
next handler outward … ──(no handler left)──► UnhandledEffect is raised

Installation

pip install doeff        # recommended: installs doeff-vm together with the Python API
pip install doeff-vm     # the VM alone

Requires Python 3.11 or newer. If pip finds no prebuilt wheel for your platform, it builds from the source distribution, which needs a Rust toolchain (cargo).

Minimal example

@do functions and handler installers build a tree of program nodes, and the VM evaluates that tree. You can also build the tree by hand with the node classes that doeff_vm exports:

from dataclasses import dataclass

import doeff_vm
from doeff import do, run


@dataclass(frozen=True)
class Double(doeff_vm.EffectBase):
    n: int


@do
def double_handler(effect, k):
    if isinstance(effect, Double):
        return (yield doeff_vm.Resume(k, effect.n * 2))
    yield doeff_vm.Pass(effect, k)  # not ours: hand it to the next handler outward


# The tree that `@do` code and handler installers normally build for you.
program = doeff_vm.WithHandler(double_handler, doeff_vm.Perform(Double(21)))
print(run(program))  # 42

What it exports

Name What it is
EffectBase Base class of every effect
Pure, Perform, WithHandler, Apply, Expand, Call Program nodes: a value, performing an effect, installing a handler, calls
Resume, Transfer, ResumeThrow, TransferThrow, Pass What a handler does with a continuation k: resume it, throw an exception into it, or pass the effect outward
K A one-shot continuation
Ok, Err Result values (for example the answer of Try)
UnhandledEffect Raised when no handler in scope accepts an effect
PyVM The VM object itself (PyVM().run(program)); doeff.run is the supported entry point

Type stubs ship with the package (py.typed).

How it fits with the other doeff packages

doeff is published as five core packages. pip install doeff installs the first three; the extra hy (pip install "doeff[hy]") adds doeff-hy and doeff-hy-pytest.

Package Role
doeff The Python API: @do, handler installers, run, the doeff CLI
doeff-vm This package: the Rust VM that executes programs
doeff-core-effects The standard effects and their handlers (state, reader, writer, concurrency, HTTP, SQL, files, processes, …)
doeff-hy Macros for writing doeff code in Hy, a Lisp that compiles to Python
doeff-hy-pytest pytest plugin for tests written with doeff-hy

Arrows point from a package to a package it depends on (the dotted one only with the extra hy):

doeff ──► doeff-vm
  │
  └─────► doeff-core-effects ┄┄► doeff-hy ──► doeff-hy-pytest

doeff-hy also depends on doeff and doeff-core-effects, so the five packages are released together with matching versions.

The VM core is the Rust crate doeff-vm-core. It is compiled into this extension and is not published separately.

Developing

Build and test from a clone of the repository:

git clone https://github.com/proboscis/doeff
cd doeff
make sync                         # builds the extension into the uv environment
uv run pytest packages/doeff-vm/tests

make sync rebuilds the extension whenever the Rust sources change. Do not run maturin develop directly; the build goes through tools/doeff_cargo_backend.py. Dispatch micro-benchmarks live in packages/doeff-vm-core/benches/ (see the root README).

License

MIT. See LICENSE.

Metadata

Release files for doeff-vm 0.6.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 doeff-vm 0.6.0
File Size Uploaded
doeff_vm-0.6.0.tar.gz 197.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for doeff-vm 0.6.0
File
doeff_vm-0.6.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
doeff_vm-0.6.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Details
doeff_vm-0.6.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64 Details
doeff_vm-0.6.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
doeff_vm-0.6.0-cp314-cp314t-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64 Details
doeff_vm-0.6.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
doeff_vm-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ x86-64 Details
doeff_vm-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64 Details
doeff_vm-0.6.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
doeff_vm-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.12+ x86-64 Details
doeff_vm-0.6.0-cp313-cp313t-win_amd64.whl CPython 3.13 CPython 3.13 free-threading Windows x86-64 Details
doeff_vm-0.6.0-cp313-cp313t-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 free-threading macOS 11.0+ ARM64 Details
doeff_vm-0.6.0-cp313-cp313t-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 free-threading macOS 10.12+ x86-64 Details
doeff_vm-0.6.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
doeff_vm-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64 Details
doeff_vm-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details
doeff_vm-0.6.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
doeff_vm-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.12+ x86-64 Details
doeff_vm-0.6.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
doeff_vm-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details
doeff_vm-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
doeff_vm-0.6.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
doeff_vm-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.12+ x86-64 Details
doeff_vm-0.6.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
doeff_vm-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details
doeff_vm-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
doeff_vm-0.6.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
doeff_vm-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.12+ x86-64 Details

Total release size: 17.4 MB

Release files / doeff_vm-0.6.0.tar.gz

Download URL doeff_vm-0.6.0.tar.gz
Size 197.4 kB
Tags Source
SHA-256 checksum
How to use checksums
c337e7bba3ec8e7221049a22182bb50878bccc4112c11870ecfdcd8d2b2a5470
BLAKE2b-256 checksum
How to use checksums
d3d9b406ccc06caa649ff19b44f31ea6d6282759c989d0fa3558ab512bb3307a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314t-win_amd64.whl

Download URL doeff_vm-0.6.0-cp314-cp314t-win_amd64.whl
Size 594.6 kB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
75b0413df8ef75d927d16c9e1787834e4d27738f61efe5595596133ff5c7093c
BLAKE2b-256 checksum
How to use checksums
969ce29a4802339bb32cc2eabdba24024522c96fc2d2386538486ec41f5cd443
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL doeff_vm-0.6.0-cp314-cp314t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 644.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
70fa01a6be8adf5f3c40a88ff7a16d5b786fe02e2fb1f2b4fa6f8c69925754d0
BLAKE2b-256 checksum
How to use checksums
1e32e842241309b82c811fa5ddd394162aedcddf1ab304ac9b3d20414bbd91fb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL doeff_vm-0.6.0-cp314-cp314t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 612.4 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
5b1ec4b940011fc6a17a07c4df052dfbc936aa4366c49b632ae998a148368ab1
BLAKE2b-256 checksum
How to use checksums
1a8277f9bf9bc3c90818ecc1176d7dc517bb93a397673aa04ba8c2b67b0c4ff3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL doeff_vm-0.6.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 584.1 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
cf2519e3c82ce266e9f1b98d160f724beefbe03bde2121760c9865a37586ab5b
BLAKE2b-256 checksum
How to use checksums
e28a25f4c1fa84795340fd187cf64ffd32054b5ba759aa0a25de8656b4f462a2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314t-macosx_10_12_x86_64.whl

Download URL doeff_vm-0.6.0-cp314-cp314t-macosx_10_12_x86_64.whl
Size 625.4 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
f3fbaf1b1442ea6b5ff3156e8e9aaee8e00f7ddb3cd3685c9947ff9e8864df6f
BLAKE2b-256 checksum
How to use checksums
6f4eb92c1900e4b212021d90b124d35a826b75e64ad402d93d65aff6b9f0b536
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314-win_amd64.whl

Download URL doeff_vm-0.6.0-cp314-cp314-win_amd64.whl
Size 595.8 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
66fe38f4714ac7e6b717d10609222ee2c4d2ae357ffbc99fa9a27e617c4c042b
BLAKE2b-256 checksum
How to use checksums
b2dadf797dcc5a076fc9cc3abdfea082c005488468cd56356acdcac0cecce449
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL doeff_vm-0.6.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 650.3 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
accb898b153696f0c55c89640504fe3ef0cf7de11db250aa6a7d6017a33f7f61
BLAKE2b-256 checksum
How to use checksums
5b8d96b9b8ec801f7529aad71f2b5c19b81a7084243b2883f5af5ea628eefe53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL doeff_vm-0.6.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 619.0 kB
Tags CPython 3.14 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
7031c46e3e9c27647ed507ea0408429def044a061a7b1c8ea0c71ce8b8905e9d
BLAKE2b-256 checksum
How to use checksums
a084cf9ceb7a3c7d052b19731956bea9597eff74c77d40389c440ceaab8fddf4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL doeff_vm-0.6.0-cp314-cp314-macosx_11_0_arm64.whl
Size 589.2 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
54c15a87873da2e29adcdd84c4a992877bae5da5627de90e9398bf37071ea475
BLAKE2b-256 checksum
How to use checksums
d8cb522264596615926e6e7d0a2f2851485e7e2cafa0b0b9596ed6100c9a55b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl

Download URL doeff_vm-0.6.0-cp314-cp314-macosx_10_12_x86_64.whl
Size 630.7 kB
Tags CPython 3.14 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
921e30f27bbc0f16787075a1bf9002473c930d8b3d0573f8335c6296d79b1c70
BLAKE2b-256 checksum
How to use checksums
d90864fe4403e9bfe6ff69f2749bfa1ea004cb05530475245e921eb7f89f4cc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313t-win_amd64.whl

Download URL doeff_vm-0.6.0-cp313-cp313t-win_amd64.whl
Size 594.1 kB
Tags CPython 3.13 CPython 3.13 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
b1453c23d9a6429425c2790e549d9c0aeb03c08779731ca519b57710f0c9b371
BLAKE2b-256 checksum
How to use checksums
92f3cd6d30c73a472e81d366088fdcdd54248b6a244ef02e126984343ac2becd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313t-macosx_11_0_arm64.whl

Download URL doeff_vm-0.6.0-cp313-cp313t-macosx_11_0_arm64.whl
Size 582.8 kB
Tags CPython 3.13 CPython 3.13 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6a019abb680adf10fd366918c4e4ac3c8584092136531d3b585462b2bc5f109f
BLAKE2b-256 checksum
How to use checksums
8fa973d40509629e7be7f6579ab18b58580b2a75f913d4fb1edf5b7b49433378
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313t-macosx_10_12_x86_64.whl

Download URL doeff_vm-0.6.0-cp313-cp313t-macosx_10_12_x86_64.whl
Size 624.4 kB
Tags CPython 3.13 CPython 3.13 free-threading macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
79a4662763953d8dcf97d2812b9a3c2d5b5a60c4219a5a849aff236fa14547a4
BLAKE2b-256 checksum
How to use checksums
e421a95282a9194e2e6fbfea73a6f55f20ab6898efb5fa19ab9ef7c79c05989f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313-win_amd64.whl

Download URL doeff_vm-0.6.0-cp313-cp313-win_amd64.whl
Size 594.9 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
61f7cd8a251efb49f30bc3674a601ba44e6a3ed63de206fbcddd28f94db05759
BLAKE2b-256 checksum
How to use checksums
a982802bbc64d13edb53ed1ca18d2acf21a73812fa4a0da5f47c597f3c58a7a3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL doeff_vm-0.6.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 650.1 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
43a75a5070429f4ab5f1356718c94a498b1ff76f720d6f8b8307f4c3e874297e
BLAKE2b-256 checksum
How to use checksums
93a69220a74d30a283dcc757f9c9192f62083ed9eac25838e7a81b44503f7bd4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL doeff_vm-0.6.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 618.8 kB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
e1dda529833d3cd31cc0d87fc6a1e0e6a91b65015a4a8c665858af356d91796b
BLAKE2b-256 checksum
How to use checksums
83e4a4b59d3547b20e91dc155db45cba9ac1df60b7a2fa379402bf6bd571dad2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL doeff_vm-0.6.0-cp313-cp313-macosx_11_0_arm64.whl
Size 589.2 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
558036b86d908a49e4793624eed67a72f8d01f86394a4f144f6544e6a7c4d7c8
BLAKE2b-256 checksum
How to use checksums
df073d782545d80df81b76768a930259837354850cbb53e546cd4a801410a2b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl

Download URL doeff_vm-0.6.0-cp313-cp313-macosx_10_12_x86_64.whl
Size 630.5 kB
Tags CPython 3.13 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
de337417e1abeae616ce2253e997969de62dbd34dc7157b45ae9b30fd81ee37d
BLAKE2b-256 checksum
How to use checksums
0b9a1e407be4a596f111a2ba82dfa061925193a8cc36de9792e903a7617a3071
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp312-cp312-win_amd64.whl

Download URL doeff_vm-0.6.0-cp312-cp312-win_amd64.whl
Size 595.6 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
02be4bffb3c15528fc6637f3ba82c27e024cd1bcb9732bf702be691593b5d1e8
BLAKE2b-256 checksum
How to use checksums
f2c9ddd2d7b705176166ccbc02c8c7258a798c7f4b60ced37a33c342bb9925de
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL doeff_vm-0.6.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 651.3 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
90509892842304a3e9f33e4f9bd1d71b40c5a94e13f668645e1533bf4bb35507
BLAKE2b-256 checksum
How to use checksums
779f719e2854eee78df11aef1590d69f3260f5ffef3ba8be799e76dc62d537cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL doeff_vm-0.6.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 620.3 kB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
ee45b994011fe0ed1b4241f196eeb933eb7dae1e6d5be9d71f0d00e2e814baa4
BLAKE2b-256 checksum
How to use checksums
24aaf0e412afe10dc588fec784750cc96c26b9a137ef3b90bc6a443579687f8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL doeff_vm-0.6.0-cp312-cp312-macosx_11_0_arm64.whl
Size 590.0 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
76e4a1e90953d4d24a25bcd201244048a3cb4cc4d177fc6a3c48a4b1f6020e95
BLAKE2b-256 checksum
How to use checksums
7de0555545e25ee8c748a8fe3ce6965d229c9aa5808ef55af5694064ff9f871a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl

Download URL doeff_vm-0.6.0-cp312-cp312-macosx_10_12_x86_64.whl
Size 631.3 kB
Tags CPython 3.12 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
10e3bb19f71a7f496860b655d0a1876a0b22e42fb9ec145c2fe041ccd6a12932
BLAKE2b-256 checksum
How to use checksums
dea48e190a18309a89b5902ff64a21ede21eedebb1ebb0bcb4b65f2293dc3b12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp311-cp311-win_amd64.whl

Download URL doeff_vm-0.6.0-cp311-cp311-win_amd64.whl
Size 588.4 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
90953b18c24b4ec95ec41109a201d89b2f64eabfc730ef0cfc22b80083fd3434
BLAKE2b-256 checksum
How to use checksums
b13ef92e958f9b6a63a40b36f3d21170a05567ef86ada775c63e2992bd297209
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL doeff_vm-0.6.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 639.4 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
5b68d3c956323c5d1f5a3c535ea126810697e7b0d1d2e171f786e36618bb3313
BLAKE2b-256 checksum
How to use checksums
5a699b810e2f00a18deee1cf2121bf11ae5190e20cec95e33b6c1ae2fcd658a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL doeff_vm-0.6.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 612.2 kB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
6b7160270e9cae8aece22968d23f7f030aae51f4be1f38b24ad5c13fd2116a3e
BLAKE2b-256 checksum
How to use checksums
0bbe2844373ef6f95a1475777bec3587aae3c52376a71769654d693ced2153c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL doeff_vm-0.6.0-cp311-cp311-macosx_11_0_arm64.whl
Size 586.1 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
841645a2f816f1838098030bce44a4356bfe475b572185a78c91a7f05ad27c26
BLAKE2b-256 checksum
How to use checksums
c428a7d41d08c9fb0f69994e4c633dc93d5fef4bc367131730e5e474eceec91c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / doeff_vm-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl

Download URL doeff_vm-0.6.0-cp311-cp311-macosx_10_12_x86_64.whl
Size 628.1 kB
Tags CPython 3.11 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
fcaaf0c01ccd749f436a002119ff0244ee89622f1708d7488da5481d88d678c4
BLAKE2b-256 checksum
How to use checksums
6b35c015e52295e18aedf161abf0f74279a65bfa32774a919a6ecf36526e1666
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

0.6.0 This release

29 release files

0.5.0

29 release files

0.2.0

36 release files

0.1.0

36 release files

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