Skip to main content

Verlex

One line of Python. Every cloud's best GPU price.

Verlex reads any Python function, picks the hardware it needs, prices it live across 11 VM clouds, and runs it on the cheapest one. If a provider fails or stocks out, the job restarts on the next cheapest, automatically. Four additional serverless lanes handle eligible short jobs. No hardware picking or cloud-account setup.

The provider's GPU price passes through at cost. Verlex adds a fixed service fee per GPU-hour, prorated per second. That is the whole model: no percentage markup, no hidden margin.

Installation

pip install verlex

Requires Python 3.10, 3.11, 3.12, or 3.13. Grab your API key from the dashboard.

Quick Start

import verlex

# Define your function
def train_model():
    import torch
    model = torch.nn.Linear(100, 10)
    # Your training code here...
    return {"accuracy": 0.95}

# Run it on a cloud GPU - that's it!
result = verlex.cloud(train_model, gpu="A100", api_key="gw_your_key")
print(result)

Basic Usage

Pass your API key

Every function accepts api_key directly, no context manager needed. Set VERLEX_API_KEY in your environment to omit it entirely.

import verlex

result = verlex.cloud(my_function, api_key="gw_your_key")

Passing inputs

args= holds your function's inputs and kwargs= its keyword arguments. Every other keyword configures the job and never reaches your function, so a function parameter called timeout or memory can never be mistaken for a job option.

# No inputs
verlex.cloud(train_model)

# Positional inputs
verlex.cloud(square, args=[5])
verlex.cloud(train, args=[dataset, epochs])

# Keyword arguments for your function
verlex.cloud(train, args=[dataset], kwargs={"epochs": 5})

# One input that is itself a list
verlex.cloud(total, args=[[1, 2, 3]])

Inputs are checked against your function's signature before anything is uploaded or billed. The older form verlex.cloud(train, [dataset]) still works when unambiguous and warns with the exact rewrite. Each run prints its job id at submit and a summary line at the end; verlex.last_job() returns the job id, status, cost, provider, GPU, duration and downloaded outputs.

Specifying resources

Every hardware field is optional, and only the fields you set are pinned. Whatever you leave out is sized from your code and chosen for cost and availability. Asking for a GPU and nothing else is the normal case.

def fit(data):
    ...

# One GPU pinned; cpu, memory and provider are chosen for you
result = verlex.cloud(fit, args=[data], gpu="A100")

# Pin more when you need it; each field is independent
result = verlex.cloud(fit, args=[data], gpu="H100", gpu_count=8)
result = verlex.cloud(fit, args=[data], cpu=4, memory="16 GB")

gpu= takes one GPU name; leave it unset and Verlex picks one for you. gpu_count above 1 puts that many GPUs (up to 8) on one machine and needs the Performance plan; your code uses them itself, for example with torch.nn.DataParallel.

Values are checked in your process, before anything is provisioned: a misspelled option answers did you mean gpu=?, and gpu="64 GB" tells you it belongs in memory=.

The full set of job options:

result = verlex.cloud(
    fit,
    args=[data],
    gpu="A100",        # GPU type
    cpu=8,             # vCPU cores
    memory="64GB",     # memory
    provider="aws",    # pin to a cloud (omit to let Verlex pick the cheapest)
    spot=True,         # interruptible capacity
    timeout=7200,      # total seconds from submit to result
    pip_packages=["numpy==1.26.4"],  # extra packages, always installed
    python_version="3.11",  # match your local Python
)

Every option, default and environment variable is listed in the configuration reference.

Execution Modes

One flag controls your price-speed tradeoff.

Mode Flag Behavior
Performance fast=True Fastest start, at a higher per-GPU-hour fee. Best for time-sensitive workloads.
Standard fast=False (default) Picks the cheapest qualified machine. Best for batch jobs and cost-sensitive work.
# Performance mode, fastest start
result = verlex.cloud(my_function, api_key="gw_your_key", fast=True)

# Standard mode (default), lowest price
result = verlex.cloud(my_function, api_key="gw_your_key")

Performance mode (fast=True) requires the Performance plan ($10/mo). Standard mode is available on every plan. Both modes share one queue; Performance speeds up machine selection and launch, not queue position. verlex.estimate_cost(..., fast=True) prices it before you run.

Pricing & Billing

Two parts: a monthly plan, then a per-job cost. Verlex passes the provider's live hardware price through at cost and adds a fixed service fee per GPU-hour, prorated per second. There is no percentage markup on the hardware.

The service-fee tier is derived from the hardware's FP16 tensor performance (TFLOPS):

Tier Example hardware Standard (fast=False) Performance (fast=True)
CPU (CPU-only jobs) No GPU $0.02/hr $0.02/hr
Small (<185 TFLOPS) T4, L4, A10, RTX 3090 $0.10/GPU-hr $0.20/GPU-hr
Mid (<600 TFLOPS) A100, L40S, RTX 4090 $0.30/GPU-hr $0.45/GPU-hr
Large (<1500 TFLOPS) H100, H200, MI300X $0.40/GPU-hr $0.60/GPU-hr
Flagship (≥1500 TFLOPS) B200, B300, GB200 $0.50/GPU-hr $0.75/GPU-hr

The service fee is charged per GPU-hour, so an 8-GPU job pays it 8 times. There is no cold-start surcharge; a cold machine and a warm one cost the same.

  • Per-second billing, 1 second minimum. Both the provider cost and the service fee are prorated to the second. You pay only for the time your job actually runs.
  • Prepaid credits. Buy credits in the dashboard (minimum top-up $10). Each job places a hold and settles the exact amount when it finishes.
  • Auto top-up (opt-in). Adds credits with your saved card when the balance runs low (default: $50 added when it drops below $10).
  • Funds-based execution. There is no maximum job runtime. A job runs until your credits are exhausted, it stops making progress for 30 minutes, or it finishes. The optional timeout argument is the total time from submit to result, including queueing and provisioning; when it passes, the SDK cancels the job.

Plans

Plan Price Includes
Standard $0/mo, free forever Standard mode, prepaid credits, per-second billing, 25 GB storage
Performance $10/mo Everything in Standard, plus fast mode (fast=True) and 300 GB storage
Enterprise Custom Organization teams with a shared credit pool, 1 TB+ storage

Per-second billing, no credit card required to join.

Providers, Failover & Serverless

Every job is priced across 11 VM clouds (AWS, GCP, Azure, Verda, RunPod, Vast.ai, JarvisLabs, Hyperstack, TensorDock, Lyceum, Lambda Labs) plus four serverless container lanes (Beam, Northflank, Novita, Cerebrium), and routed to the cheapest machine that fits. Capacity and maintenance state change, so GET https://api.verlex.dev/v1/providers is the live source of truth.

import verlex

# Default: priced across 11 VM clouds, routed to the cheapest machine that fits
result = verlex.cloud(train_model, gpu="A100", api_key="gw_your_key")

# Provider list: cost comparison and failover stay inside your subset
result = verlex.cloud(
    train_model,
    gpu="A100",
    provider=["runpod", "gcp", "verda"],
    api_key="gw_your_key",
)

# Hard pin: one provider, no cross-provider failover if it is out of stock
result = verlex.cloud(train_model, gpu="A100", provider="aws", api_key="gw_your_key")
  • Automatic failover. If a launch fails or a region is out of stock, Verlex fails over: nearby regions first, then other providers, then substitute GPUs, always cheapest first. Your job does not fail because one cloud ran out of capacity.
  • Pinning. A single provider pins hard with no failover. Prefer a provider list, which keeps cost comparison and failover inside your chosen subset.
  • Serverless. Small jobs route to serverless container lanes (billed per second) when that is cheaper than a VM. This happens automatically; nothing to configure.

Files & Workspace Sync

Send local files up to the VM before your job runs and bring generated files back when it finishes. Pass a Workspace to any cloud call. Auto mode mirrors your project root (respecting .gitignore) and returns whatever your code creates or changes; or list explicit Upload and Output specs for full control.

import verlex
from verlex import Workspace

def train():
    from pathlib import Path
    Path("runs").mkdir(exist_ok=True)
    Path("runs/loss.json").write_text('{"loss": 0.42}')
    Path("model.pt").write_text("weights")
    return {"status": "done"}

# Auto mode mirrors your project root up to the VM, then returns
# new and changed files to the same paths locally
result = verlex.cloud(train, workspace=Workspace(), gpu="A100", api_key="gw_your_key")

# ./runs/loss.json and ./model.pt now exist locally

Your function runs inside the synced workspace, so relative paths like open("data/train.csv") work unchanged. Import Workspace, Upload, and Output from the top-level verlex package.

Dependencies

Verlex scans your function's source, pins the versions of imported packages installed locally, and bundles local .py modules automatically. When you need certainty, pass pip_packages: those packages are authoritative, always installed, and a failed install fails the job loudly instead of continuing silently.

result = verlex.cloud(
    train,
    api_key="gw_your_key",
    pip_packages=["torch==2.3.1", "numpy==1.26.4"],
    python_version="3.11",  # 3.10, 3.11, 3.12, or 3.13
)

Pre-warming

Kill the cold start before it happens. verlex.prewarm(fn) analyzes your function, boots the right hardware, and hands you back a handle once the machine is ready. Calling the handle runs your function with no provisioning wait, and the machine stays attached between calls, so every call is warm.

import verlex

def train(batch):
    import torch
    ...

wf = verlex.prewarm(train, gpu="A100", api_key="gw_your_key")  # A100 starts booting NOW

data = load_and_clean()      # local preprocessing runs meanwhile

result = wf(data)            # runs train(data) on the warm machine
more = wf(other_data)        # still warm, the VM stays attached

wf.release()                 # or use `with verlex.prewarm(train, gpu="A100") as wf:`

Automatic Cloud Offloading (experimental)

This API is experimental. Don't want to manage when code runs in the cloud? Let Verlex decide. verlex.overflow() watches CPU, memory, and GPU. When usage exceeds 85%, heavy functions are transparently offloaded to the cheapest cloud provider; everything else keeps running locally.

import verlex

verlex.overflow(api_key="gw_your_key")

# Your code runs normally.
# When CPU, memory, or GPU exceeds 85%, functions go to the cloud.
data = load_data()
result = train_model(data)   # system overloaded? → cloud
evaluate(result)             # resources free → runs locally

Install the monitoring dependency with pip install 'verlex[overflow]'.

Interactive Sessions

verlex.session() keeps one VM and model process warm across turns. The handler loads once, replies stream token by token, and the machine stops when the context exits or the idle timeout expires.

import verlex
from verlex import serve_loop

def serve():
    model = load_model()

    def reply(prompt, history):
        return model.stream(prompt)

    serve_loop(reply)

with verlex.session(serve, gpu="T4") as session:
    for token in session.send("Explain gradient checkpointing"):
        print(token, end="", flush=True)

This API is experimental. Use verlex chat for the equivalent CLI workflow.

AI Assistants (MCP)

Install verlex[mcp] and run verlex mcp serve to connect an MCP-compatible assistant. The connector supports jobs and logs, live pricing and billing, held GPU nodes, file transfer, output artifacts, inference endpoints, and opt-in team tools. See the MCP guide for client configuration and safety limits.

Inference Endpoints

Deploy a Hugging Face model or a prior Verlex job output as an always-on endpoint from Python, the CLI (verlex deploy create MODEL), MCP or the dashboard. Decoder language models expose an OpenAI-compatible API; other supported tasks expose /predict and a self-describing /schema. Endpoints are billed per GPU-second until stopped, not per token, so set idle_timeout or call stop().

import verlex

endpoint = verlex.deploy("Qwen/Qwen2.5-0.5B-Instruct", idle_timeout=1800)
reply = endpoint.chat("Hello!")
print(reply["choices"][0]["message"]["content"])
endpoint.stop()

Checkpoints & Spot Recovery

Spot capacity is 60-80% cheaper than on-demand, but the provider can reclaim it at any time. Anything your job writes into the checkpoint directory (its path is in the GATEWAY_CHECKPOINT_DIR environment variable on the machine) syncs to object storage while it runs. When a spot instance is reclaimed, the job is re-enqueued on the next cheapest capacity, the checkpoint directory is restored before your code runs again, and the reclaimed time is not billed. HuggingFace Trainer, PyTorch Lightning, and Keras jobs resume with no code changes.

Available GPUs

Request a GPU by name (gpu="A100"). Verlex finds the cheapest available instance across all 11 VM clouds. Common catalog types include T4, L4, A10, V100, A100, L40, L40S, H100, H200, and B200; additional types appear as providers expose stock. If you don't specify a GPU, Verlex auto-detects your code's needs and picks the best option. GET https://api.verlex.dev/v1/hardware/gpu-types returns the currently schedulable public catalog.

Authentication

import verlex

# Pass api_key directly to any function
result = verlex.cloud(my_function, api_key="gw_your_key")

# Or use the environment variable (VERLEX_API_KEY)
result = verlex.cloud(my_function)  # picks up from env

The key is looked up in this order: api_key=, verlex.auth(), VERLEX_API_KEY, GATEWAY_API_KEY, then the key saved by verlex login.

Both gw_live_ and gw_test_ prefixes only name the key type; every key runs against the live service with live billing.

Error Handling

Verlex raises specific exceptions so you can handle failures gracefully:

from verlex import (
    VerlexError,              # Base class for all Verlex errors
    ConfigurationError,       # Bad input or option (also a ValueError), raised before submit
    AuthenticationError,      # Missing, invalid, frozen or paused credentials
    InsufficientCreditsError, # Not enough credits, or no payment method
    PlanUpgradeRequiredError, # Feature needs the Performance plan
    GPUUnavailableError,      # Pinned hardware has no capacity (alternatives are printed)
    ProviderMaintenanceError, # Pinned provider is under maintenance
    JobFailedError,           # Your code or the platform failed the job
    JobCancelledError,        # The job was cancelled elsewhere
    JobTimeoutError,          # Your timeout passed
    OutputDownloadError,      # A required output could not be downloaded
    SerializationError,       # Function or result could not be (de)serialized
    NetworkError,             # Connection to Verlex API failed
    RateLimitError,           # Too many requests
)

An exception raised by your function keeps its type:

try:
    verlex.cloud(train, args=[data])
except ValueError as e:        # a ValueError raised on the machine
    print(e.remote_type, e.job_id)

Every error, its cause and its fix are listed in the errors guide.

Contact

License

Apache 2.0

Metadata

Release files for verlex 0.24.0

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

Built distributions (wheels)

Table of built distributions (wheels) for verlex 0.24.0
File
verlex-0.24.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
verlex-0.24.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
verlex-0.24.0-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details
verlex-0.24.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
verlex-0.24.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64 Details
verlex-0.24.0-cp313-cp313-macosx_10_13_universal2.whl CPython 3.13 CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64) Details
verlex-0.24.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
verlex-0.24.0-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
verlex-0.24.0-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details
verlex-0.24.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
verlex-0.24.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ ARM64 Details
verlex-0.24.0-cp312-cp312-macosx_10_13_universal2.whl CPython 3.12 CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64) Details
verlex-0.24.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
verlex-0.24.0-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
verlex-0.24.0-cp311-cp311-musllinux_1_2_aarch64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ ARM64 Details
verlex-0.24.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
verlex-0.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ ARM64 Details
verlex-0.24.0-cp311-cp311-macosx_10_9_universal2.whl CPython 3.11 CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64) Details
verlex-0.24.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
verlex-0.24.0-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
verlex-0.24.0-cp310-cp310-musllinux_1_2_aarch64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ ARM64 Details
verlex-0.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details
verlex-0.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64 Details
verlex-0.24.0-cp310-cp310-macosx_10_9_universal2.whl CPython 3.10 CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64) Details

Total release size: 244.5 MB

Release files / verlex-0.24.0-cp313-cp313-win_amd64.whl

Download URL verlex-0.24.0-cp313-cp313-win_amd64.whl
Size 1.6 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
a4265d4600a846d9ac78335996528b077e9ceec6acec06987acb10f5d08c2f7f
BLAKE2b-256 checksum
How to use checksums
0f414b7ddd0b2c520070a64c4eb3a27c4daa6027794e49aa550004e1f2fdf1f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL verlex-0.24.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 13.8 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
61f4b4056585665f3dfcf69ced650176c6517ad069386090c1acc220f245daf2
BLAKE2b-256 checksum
How to use checksums
aba05f5e748a9537b73a27d1e62644d3106f466cce2d591c6b01476860648db7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL verlex-0.24.0-cp313-cp313-musllinux_1_2_aarch64.whl
Size 13.0 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
361875705ad0830b6b81dcc2fa02e2c3ab40cbddbbac4920f5be4223a41f4903
BLAKE2b-256 checksum
How to use checksums
6192afc2e1be930684c60ddbba303db6edf39965727e865cd85fb9088b6ffdf4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL verlex-0.24.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 13.7 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
7c6b10f536ebd0d026a1796b943d242eca0333588b189d72dbe4b1342d458696
BLAKE2b-256 checksum
How to use checksums
f5ec42b7aa083be14f731b73d17b2daa11a8636113237af63336884fe6fee103
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL verlex-0.24.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 13.4 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
c3892cfa4c7ba1668d86e17c48ac6c0c5de445a0811dca82ea76706bd96d75ba
BLAKE2b-256 checksum
How to use checksums
46007bd535aa8f5b919cfe8c35b043da4c8ce112f44ddbd60397a44e49cee91b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp313-cp313-macosx_10_13_universal2.whl

Download URL verlex-0.24.0-cp313-cp313-macosx_10_13_universal2.whl
Size 4.0 MB
Tags CPython 3.13 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
852b743cd5e1f37f5c8f9293e0bf89945262d0b48eede761f2474ce8195c9ec7
BLAKE2b-256 checksum
How to use checksums
4f513fb369835b0148c66582374e70f0e165018ed8516227ff8a08c10467a7f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp312-cp312-win_amd64.whl

Download URL verlex-0.24.0-cp312-cp312-win_amd64.whl
Size 1.6 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
5ec284baf085649516994a45df4bf1b55b01a448f33455b174af1fe0ddfd349a
BLAKE2b-256 checksum
How to use checksums
89220a39849b1122f4c2562564698c144fbd920a963bfb3abb904b1b9f55e119
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL verlex-0.24.0-cp312-cp312-musllinux_1_2_x86_64.whl
Size 13.8 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
51fd0ec3bb3d4770275b9ffd458c93616c8fca1e18c424f80eab4a116d49e7ee
BLAKE2b-256 checksum
How to use checksums
800a23d5e92eb287ebfd36efbbd355080a8c740f44915f3ae6fac3af2f1fa5ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL verlex-0.24.0-cp312-cp312-musllinux_1_2_aarch64.whl
Size 13.0 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
621a8ec806a98d6dfcb8706b89adf3314822723b75e947a1452c1984517691db
BLAKE2b-256 checksum
How to use checksums
aee82ac3ccb6b8c4aa2f90fc48897917c3e4cb3df39ec5ef832a96182cf45640
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL verlex-0.24.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 13.7 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
cd694c0a5234d1f916bc8af4540d5728de7fbdfbf57e766009b0db889cf6d818
BLAKE2b-256 checksum
How to use checksums
8fd83cb3a9d724ff00b1b8d9cee35cc5922e868d872578cfb487c2d5e13c52d6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL verlex-0.24.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 13.4 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
2e2160671b868f41dde1a2bc3c1544e53db2363a1e40303668c675fa89471913
BLAKE2b-256 checksum
How to use checksums
8764fc495e4f2b5179d01940d1d8104fd2394420aa550f84272c7025c10ba24e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp312-cp312-macosx_10_13_universal2.whl

Download URL verlex-0.24.0-cp312-cp312-macosx_10_13_universal2.whl
Size 4.0 MB
Tags CPython 3.12 macOS 10.13+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
a79d1d18dc4d995c8753b02fd7e3f07d67c49bd2230048cf6580b5e22c2531c4
BLAKE2b-256 checksum
How to use checksums
92d08f0be7bc35ea363b886f551a29b2855670f4da5018f9efd0f67736d5efe4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp311-cp311-win_amd64.whl

Download URL verlex-0.24.0-cp311-cp311-win_amd64.whl
Size 1.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
bc52ca98b57f6d972ad7d74085bc6a273ce7fc854a6ca55724ed2dcd3c0298dd
BLAKE2b-256 checksum
How to use checksums
3a54b16cbbb83429e8d76db4977e79cc588adf38fa959f7c283cf3598c51782f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL verlex-0.24.0-cp311-cp311-musllinux_1_2_x86_64.whl
Size 15.0 MB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
f3a0d47d4082f5c0520c54e3c7623d5c112eaf992c04abbe119210eec0902e2b
BLAKE2b-256 checksum
How to use checksums
c317966af87ec0cc464eeeb24f58fc3e7d0fbd8385fb3b0261f45e04153a2799
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp311-cp311-musllinux_1_2_aarch64.whl

Download URL verlex-0.24.0-cp311-cp311-musllinux_1_2_aarch64.whl
Size 14.3 MB
Tags CPython 3.11 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
2444076e13555b6062a57e21444af9f8c98b083d9550cc9f534778dd5d8ff91a
BLAKE2b-256 checksum
How to use checksums
7ee2a18660ae2c1e03ee9785d854967f9dce31f8cb0e97d77feb9f29d5d8a8bd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL verlex-0.24.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 14.7 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
88e9a846a8f90541a9dc84125864cf69dcb8df89b88d5c9549760b2d4d59dd83
BLAKE2b-256 checksum
How to use checksums
ee79034b5430516301663847bdcff2e2fc1aa28b9de7d87e72c1ddf382a6a346
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL verlex-0.24.0-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 14.5 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
29f6370a681c447fa536e7e0daa6c3337959d3e4b26abd88ca2f36bc33830f07
BLAKE2b-256 checksum
How to use checksums
b9820ad780734fd49e93ea2a2996974ad0a1d5a609b8b809196fc9099a06e4cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp311-cp311-macosx_10_9_universal2.whl

Download URL verlex-0.24.0-cp311-cp311-macosx_10_9_universal2.whl
Size 4.0 MB
Tags CPython 3.11 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
0b5d3003dd522cf6012cb372433050f097f7f3877180a45a35adcd7317f1b491
BLAKE2b-256 checksum
How to use checksums
93781e044f1d8364abaade9fd4e2544128211ab557260db8bd75b8cd2994c1f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp310-cp310-win_amd64.whl

Download URL verlex-0.24.0-cp310-cp310-win_amd64.whl
Size 1.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
4eeaeeab4766bec1c25d793de1c6f58f44a1e4243d4cf691e243d115721c3e88
BLAKE2b-256 checksum
How to use checksums
98a8244dda16d2bc65b78aa0134ea599bac66c34527b9ba2d68e9b7dcca675e7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL verlex-0.24.0-cp310-cp310-musllinux_1_2_x86_64.whl
Size 14.3 MB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
37f14fdc4c8a7d09a7dba8a9a952daac3d750cc2207e82917f0a5c3be65fb915
BLAKE2b-256 checksum
How to use checksums
e31d75783ea629afb258fc11a6209adc792a0df29914594db06cf6e9539b5dfe
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp310-cp310-musllinux_1_2_aarch64.whl

Download URL verlex-0.24.0-cp310-cp310-musllinux_1_2_aarch64.whl
Size 13.6 MB
Tags CPython 3.10 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
e6a50eedefdab49cca0d9fcaaa5f4bbffeb1f5c6debc005472aaf3068aafeda7
BLAKE2b-256 checksum
How to use checksums
e1b60f2634c1615f42406d277408e04551ca7e7383250e9ff591db47545370d0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL verlex-0.24.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 13.9 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
2e64c788b8998018a7e5c50806911b1257cfc196e07c245b5e2914f52b763271
BLAKE2b-256 checksum
How to use checksums
e640ea71deea8d75a0155ff645253a791c714f9f01cc7571f6b335c74193aed0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl

Download URL verlex-0.24.0-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Size 13.7 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64
SHA-256 checksum
How to use checksums
a5d5afa10e6a5e72c17159894659ac2d828a143bba88368fc56afbeaf45497c5
BLAKE2b-256 checksum
How to use checksums
31e6a0db99ec18ddbfd05d4637ae6fcce8f24bf855f0afe040af68f33d186bbf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / verlex-0.24.0-cp310-cp310-macosx_10_9_universal2.whl

Download URL verlex-0.24.0-cp310-cp310-macosx_10_9_universal2.whl
Size 4.0 MB
Tags CPython 3.10 macOS 10.9+ universal2 (ARM64, x86-64)
SHA-256 checksum
How to use checksums
8874d201f27538e6f94097cf985aca69721d613b587eef64741107c334f87991
BLAKE2b-256 checksum
How to use checksums
790546fa47ae8854796e3f39f865b30734b0352997a75cca31081e1ee7405104
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
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