Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Karva

PyPI - Version Discord

A Python test framework, written in Rust.

Benchmark results

We'd love for you to try Karva! It's currently in alpha, and your feedback helps shape the project. Get started or join us on Discord.

About Karva

Karva aims to be an efficient alternative to pytest and unittest.

Karva is intentionally narrower in scope than pytest. Not every pytest feature encourages high quality tests, and we'd rather omit features than ship ones that quietly make test suites worse. Karva draws on the Rust testing ecosystem, where projects like uv and ruff show what a high quality test suite can look like. By keeping the surface area small, we hope to nudge Python testing in the same direction.

nextest is the clearest example of what we're aiming for, and meeting the bar it sets is an explicit goal of this project.

Getting started

Installation

Karva is available as karva on PyPI.

Install karva with uv:

# Add karva to your project.
uv add --dev karva

You can also install karva with pip, but we strongly recommend using uv instead.

Usage

By default, Karva will respect your .gitignore files when discovering tests in specified directories.

To run your tests, try any of the following:

# Run all tests.
uv run karva test

# Run tests in a specific directory.
uv run karva test tests/

# Run tests in a specific file.
uv run karva test tests/test_example.py

Contributing

Contributions are very welcome! See CONTRIBUTING.md for more information.

Support

Use GitHub issues for bug reports and feature requests, or join the Discord for discussion.

Please report security issues privately; see SECURITY.md.

License

Karva is licensed under the MIT License.

Download files

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

Source Distribution

karva-0.0.1a10.tar.gz (377.8 kB view details)

Uploaded Source

Built Distributions

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

karva-0.0.1a10-cp310-abi3-win_amd64.whl (5.6 MB view details)

Uploaded CPython 3.10+Windows x86-64

karva-0.0.1a10-cp310-abi3-win32.whl (5.0 MB view details)

Uploaded CPython 3.10+Windows x86

karva-0.0.1a10-cp310-abi3-musllinux_1_2_x86_64.whl (6.0 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ x86-64

karva-0.0.1a10-cp310-abi3-musllinux_1_2_i686.whl (6.1 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

karva-0.0.1a10-cp310-abi3-musllinux_1_2_armv7l.whl (5.5 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

karva-0.0.1a10-cp310-abi3-musllinux_1_2_aarch64.whl (5.6 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

karva-0.0.1a10-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.7 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

karva-0.0.1a10-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (6.1 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ i686

karva-0.0.1a10-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (5.1 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

karva-0.0.1a10-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (5.3 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

karva-0.0.1a10-cp310-abi3-macosx_11_0_arm64.whl (5.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

karva-0.0.1a10-cp310-abi3-macosx_10_12_x86_64.whl (5.4 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

Details for the file karva-0.0.1a10.tar.gz.

File metadata

  • Download URL: karva-0.0.1a10.tar.gz
  • Upload date:
  • Size: 377.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10.tar.gz
Algorithm Hash digest
SHA256 e24b4130e9d5894269ce320c2bdaaa10f1cf2b9f9131d4e35165729bb19347ab
MD5 e3b8917ca47ba91161cb05f21680d163
BLAKE2b-256 8757f67f23a6de61ea54ee5865398202b04935d300dc98df74088fd7658ccac7

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-win_amd64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: CPython 3.10+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 316cb2d5211ed2050afbe0ef5dc4212f7d4261fa2c0006e1f355794e96728ca4
MD5 36d32170b03b09f437d9f48a67eea6b7
BLAKE2b-256 5a77da88b246d003492fb6f2eeda84aa3f736c1ad161a5ae4cb67fe6cb14132f

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-win32.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-win32.whl
  • Upload date:
  • Size: 5.0 MB
  • Tags: CPython 3.10+, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 93387068ff9ae81ffdc95a8c9b863e8b1e6ad89933db0004ae596565e90e52a2
MD5 7ddb168f0de6a776a2cdf290e56ded3a
BLAKE2b-256 0bee7f19903d8521f2cdaf8b18532edcced84cc157af12fd6c23cc0795052847

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 6.0 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 056e1678620cf3d74ff395433d7e2b9ae464f49ad445cd3d6933a8291e95f122
MD5 1d1805c3b14ac494fb197000324168fc
BLAKE2b-256 84565d40c8d2a74aa9fe6bf0a774a90f0c2a814082fdc9f1465d6475adec1740

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-musllinux_1_2_i686.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 89f86734f6ab13d402c61fd59a05166d6a616d00cef386c3bf78749224b56eb3
MD5 cd8a55399ce33dfdb2d9cc187650ec5d
BLAKE2b-256 cd4a83852eb667c471c1b096086f02927d0c3b2bda86c386b79f6e44200f7612

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 5.5 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 605b6373ce8daed43c16b0d2e2c31391ec614544a63e98030504e4942c79e94b
MD5 7fd86cc2345e5c844057e8ba5060c747
BLAKE2b-256 e1946da82f8a766991c0c8f586c704911a718448ecba9c6c32d4ce12f885071c

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 5.6 MB
  • Tags: CPython 3.10+, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 10cef041c1cfc084f4fde8eb4cefa2db66a9f4b8c636ab1f1d72c0afa4ab8aeb
MD5 7c34cddc8be6562d20c01b9f5a26f288
BLAKE2b-256 6972ec62d6372eaa9d254c55d081f370f342f93881ff92d7233eece636d50511

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 5.7 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 81f64094b5c73e6134c977ef91469915985cecce368f414088d00a04f1a9077b
MD5 2f1dbda466f83b9a87171d7efa2326da
BLAKE2b-256 31487de66952ec51b65a431eed00504561e7ff5e8c6291102a973bb1e26c1c48

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 6.1 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ i686
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 f12a87842b1f3c4205f6d474ed76ccf1ae80590e407a34b6b324f22b685d920a
MD5 97af30c4c9b7f937aee31589e390d34a
BLAKE2b-256 8c628e817d5fb77e3b50db7e539c9cbeed554bb8bd54af4347d85eeeeb5abcdb

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 5.1 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 b5e617530ec343f2b9bf6f150d80e6b693c6c8db5fe925eec8657d3b52b59c7f
MD5 ae194c6828a748116fd9f3e301f26df9
BLAKE2b-256 556f41e4855bc069b7629b68267a18e5a61e09ff317ab979a22651eb2ae6d3c2

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 5.3 MB
  • Tags: CPython 3.10+, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 29e088581c7b9f1a4b53eceb7325cc8a0234aa5dc09cb1fda03ae10a0ea685fd
MD5 4426c613ef17823d3ff1fc3b91fec8a6
BLAKE2b-256 31d9f6cefceeb2f41b799b2a12c96a59709b69d71ea4510ddd6ae11c65f9c515

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-macosx_11_0_arm64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: CPython 3.10+, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 93ca74db2ca1e6146d127f632ea2e76bb9b8e5aeec8848ac3b1aac9c277a87cf
MD5 7cf05865d243cd809a41e2f64fbcaa14
BLAKE2b-256 898ac8fa4d05bc722c31293143bd40d662a2ef37fe2e0eb2dcbbf9ced0240e6f

See more details on using hashes here.

File details

Details for the file karva-0.0.1a10-cp310-abi3-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: karva-0.0.1a10-cp310-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 5.4 MB
  • Tags: CPython 3.10+, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for karva-0.0.1a10-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 d9a4d4c49eee3dd9e5e9dc363f51f3be97d28395ba9bda8c75c5e186538e99a8
MD5 08c61d71269dac1a58c263b5807e5a3a
BLAKE2b-256 22c70cfcf905fe49c4976d95641c28dec1984a5a7f723227da51a88416e1a310

See more details on using hashes here.

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