Skip to main content

A Python test framework, written in Rust.

Project description

Karva (0.0.1-alpha.5)

PyPI - Version

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 disciplined 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.

Use karva directly with uvx:

uvx karva test
uvx karva version

Or install karva with uv, or pip:

# With uv.
uv tool install karva@latest

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

# With pip.
pip install karva

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.
karva test

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

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

Contributing

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

You can also join us on Discord

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

karva-0.0.1a5.tar.gz (246.3 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.1a5-cp310-abi3-win_amd64.whl (3.9 MB view details)

Uploaded CPython 3.10+Windows x86-64

karva-0.0.1a5-cp310-abi3-win32.whl (3.6 MB view details)

Uploaded CPython 3.10+Windows x86

karva-0.0.1a5-cp310-abi3-musllinux_1_2_x86_64.whl (4.8 MB view details)

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

karva-0.0.1a5-cp310-abi3-musllinux_1_2_i686.whl (4.9 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

karva-0.0.1a5-cp310-abi3-musllinux_1_2_armv7l.whl (4.7 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

karva-0.0.1a5-cp310-abi3-musllinux_1_2_aarch64.whl (4.7 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

karva-0.0.1a5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.5 MB view details)

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

karva-0.0.1a5-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (4.9 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ i686

karva-0.0.1a5-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (4.4 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

karva-0.0.1a5-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.5 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

karva-0.0.1a5-cp310-abi3-macosx_11_0_arm64.whl (4.1 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

karva-0.0.1a5-cp310-abi3-macosx_10_12_x86_64.whl (4.2 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: karva-0.0.1a5.tar.gz
  • Upload date:
  • Size: 246.3 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.1a5.tar.gz
Algorithm Hash digest
SHA256 f57440faae5c49964541b3ef234200c36979aad563881f8c6a6fb8982ae2e420
MD5 87725cf0372291b12667c873b3d320c6
BLAKE2b-256 214b57552ee75cf3dc2ea8b97a90938c2b5365b27389818640fa14a7f93e449e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 3.9 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.1a5-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 fcae1630bcfb0115c7a9ac2a551066b5fbf2b75039bd92bf03f5b67406731c4b
MD5 b682e48dc18a721f756da3c98cf41cb4
BLAKE2b-256 2687823686ed1180530ecde187791d8cea1433680031b5396c7572d3e6d5b1bf

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-win32.whl
  • Upload date:
  • Size: 3.6 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.1a5-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 7f2c163726caa88fb59ddf6e972fac5200d5326456fbfd9b41a8752761dbd06d
MD5 ae5cd5e2bdaad32fcb64925bcf182bd0
BLAKE2b-256 98aeafad9077481d983b4f2412e7125fb646ce0b1e92c12fdcbe9a13b8c0a524

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 4.8 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.1a5-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 dec0ea6f9f0969c50dd6a786a3085264ff4c7e155c10e12032150aa2f0657703
MD5 100ba57646338700b4192a695ece6b48
BLAKE2b-256 ad548152dc1f501f1c6d6a50238388f86f2415e5ed586b165d7a0216b8419ebe

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 4.9 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.1a5-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 6d8b4f5c13bbdfb56a8a4e617b4cfd1414d6648377ea82856dcb70ecf86feec5
MD5 44d017d86d1012776bbbe8a108c6d740
BLAKE2b-256 d19e0b906a0b4b71488b77cb8b620e6b063781b58656e5e5428add91a69bd83e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 4.7 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.1a5-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 d72ee0861817d2b3e0b13bc8a7e8e6b5befced994c531ef7514b8ac4774b8914
MD5 38d3f27cb886a05b2cde0050c8530472
BLAKE2b-256 b104f3155204c340dfcb621a332784f51165fa28c2ef45b3be91c509a9dd1b7d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 4.7 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.1a5-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 5a1d56a712d1e91327e17c3e985cc70464fa995338c78387521643c41eb276ef
MD5 35b90e63269946e7e67e55a905834ca7
BLAKE2b-256 ebadaedffd16fa1541271f5104a8cf9e97f32025593a9c6dc971f8541b24367b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.5 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.1a5-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 fdfe4262d48368fa1af367c8b68622e0f96f21d4c5b8e4a172c93a7674666c2a
MD5 6da30cc7722952d973fe936f7014b5ad
BLAKE2b-256 e386f429bbe98b744c36aaa8dbcba005fc3f896820be8636885aeac762fd27b8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 4.9 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.1a5-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 147219fec1a1f439dc78cf3ed7e4ee15c96785342d23b37c7728f372bdca9314
MD5 80dfa22b32ed34e72ae8e1af17503edb
BLAKE2b-256 896cbcd86518ccbe1a1604ad59a6b1835e1a47528aa46752cac44f6125559409

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 4.4 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.1a5-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 279faf25d33fc2f995d9ab019e01c7f7ac9f1a0afb65aca7bc341a73b4d0d7ce
MD5 55cc601950485da2de940cddeb994d3d
BLAKE2b-256 cb572ddec02f91d7084ae5f8b07a5f5b6d5fd5fa77db21e71c9da5e58f816462

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 4.5 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.1a5-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f0fc7b93adb54b473109c1ac9ee4348145051d23ca1ce742a09a9c6effc7f1cd
MD5 8a03cebe291eebeadb0462cb912279e7
BLAKE2b-256 b7d6e552bdceaecabc9baab49f2bfc470e7e565650d2cb12bbf516233a2da2f4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 4.1 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.1a5-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 aa0299afa19bd8af031fd9fe4b45041b56c3693c189a71750f304ef10d54fcd3
MD5 5e72bdc683e59d3f6804f396bdaf7202
BLAKE2b-256 6221e25d56757f8d8fe7bba697b846f6f1b00d31c07dc43c9aa2b46b0bc783cb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a5-cp310-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 4.2 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.1a5-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f5030a3b74e67b24885feee85f87a2df7f78da7f0e1320d79911e4a200e45c47
MD5 0fc3d0ea4c6161067face7f00d833ae9
BLAKE2b-256 ea2d5470cc01c30357b624b06f4aaf4a9c634704832ea543a50d65e50bac6924

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