Skip to main content

A Python test framework, written in Rust.

Project description

Karva (0.0.1-alpha.6)

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.1a6.tar.gz (273.1 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.1a6-cp310-abi3-win_amd64.whl (4.0 MB view details)

Uploaded CPython 3.10+Windows x86-64

karva-0.0.1a6-cp310-abi3-win32.whl (3.7 MB view details)

Uploaded CPython 3.10+Windows x86

karva-0.0.1a6-cp310-abi3-musllinux_1_2_x86_64.whl (5.0 MB view details)

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

karva-0.0.1a6-cp310-abi3-musllinux_1_2_i686.whl (5.0 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ i686

karva-0.0.1a6-cp310-abi3-musllinux_1_2_armv7l.whl (4.8 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARMv7l

karva-0.0.1a6-cp310-abi3-musllinux_1_2_aarch64.whl (4.8 MB view details)

Uploaded CPython 3.10+musllinux: musl 1.2+ ARM64

karva-0.0.1a6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.7 MB view details)

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

karva-0.0.1a6-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl (5.0 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ i686

karva-0.0.1a6-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl (4.6 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARMv7l

karva-0.0.1a6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (4.6 MB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

karva-0.0.1a6-cp310-abi3-macosx_11_0_arm64.whl (4.2 MB view details)

Uploaded CPython 3.10+macOS 11.0+ ARM64

karva-0.0.1a6-cp310-abi3-macosx_10_12_x86_64.whl (4.3 MB view details)

Uploaded CPython 3.10+macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: karva-0.0.1a6.tar.gz
  • Upload date:
  • Size: 273.1 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.1a6.tar.gz
Algorithm Hash digest
SHA256 e422c9dc4608941cc8873328848dc2a6386e20eb7e957c3dd750eab32d2364d7
MD5 46eea39532f4797706dd8f942893a66f
BLAKE2b-256 25f67d5b8e4b46f5c46be1056006d73426be647ec043e3faf3875f58d86730c6

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-win_amd64.whl
  • Upload date:
  • Size: 4.0 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.1a6-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 b53bf67fb6819fda1b9c45ec11f63312b3e4d753fe7e0e85e9a206c2ebfe83d9
MD5 0e76e4d75e3e15db6a583cb60209dc26
BLAKE2b-256 649fc81b85e855978515390e61f5bf4b9f7e85c3b2d090aeb9e234f0624fd067

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-win32.whl
  • Upload date:
  • Size: 3.7 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.1a6-cp310-abi3-win32.whl
Algorithm Hash digest
SHA256 3c60d9f4e0190f742beaeb18362183e7b9534de2eff0f1ecfa3e40716504b37c
MD5 7d1c1a452c5c95548300456e5134880d
BLAKE2b-256 e658b7e1eb1109d8d73a181564fcf1e9bb018f0968433928283c7ecdabdccf4a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 5.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.1a6-cp310-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 8f1cce5afe1ed5c9f492176859c1547df9905b9b8ae0cd0cf7cd112af41a43f0
MD5 db36fa2dea6a610eba2fb51283f2f134
BLAKE2b-256 9f6f7db5839351880cf1424b51e41bcedc6bba0be0c58f4d2e877511fb324c47

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-musllinux_1_2_i686.whl
  • Upload date:
  • Size: 5.0 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.1a6-cp310-abi3-musllinux_1_2_i686.whl
Algorithm Hash digest
SHA256 a0a51f74ac4f87e1efb89f94cd6b2b2e899a5d5f858c789778212333f1f5c04f
MD5 66420bd836434bdb9a9aa994dc394910
BLAKE2b-256 3acc40d7c0a80917b0e70d4500df58ed455fd334c45000a06b76bc8e07b0273c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 4.8 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.1a6-cp310-abi3-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 9bf9316bbb1b16e2bf4248f015e67b55b35ead9cef6a6787942bd05b69f4bc89
MD5 60c7db6439e44e8e2e4990c2fea91f2e
BLAKE2b-256 90b89e89ff191825d8b19205077e9927ac71c2fe930de96c0a32f06559757217

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 4.8 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.1a6-cp310-abi3-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 aa3beea6efe5b0d1e964bdf8d8df9a563b822a976df1beca18c4a59682745ed6
MD5 ea3103b1808e4b8c9d0f389be6413521
BLAKE2b-256 f839227896ea6230aa2a7695d7dcf1271d5549100234f75223ce1baf0cf28b6c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 4.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.1a6-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0b8528611ac5719df78face06a7dfa54faf51a4f77509435fce96c11bd745f05
MD5 ad906b89a43b52d56c0c9057a001ff49
BLAKE2b-256 67894a69f7d1b56f23b5c1b939d327c4cd1dd08923c9cdc862a8123d967a9357

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
  • Upload date:
  • Size: 5.0 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.1a6-cp310-abi3-manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 972de8264c489097d20c89bcccb954de69f0b4dd2553fbb7515baf8b535d45b2
MD5 85d1eb1db09318a1d8f1c767175cfe82
BLAKE2b-256 84ab0c92138e9b2495ef94d39b3f241225a9772a118dbbcbef04b963ad96c072

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
  • Upload date:
  • Size: 4.6 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.1a6-cp310-abi3-manylinux_2_17_armv7l.manylinux2014_armv7l.whl
Algorithm Hash digest
SHA256 3b1ffbab2fbc099070ec1a92686354f4e469af2dfddaae45d540a5ae531949f2
MD5 0c107b217511c78f08dd86600ea69a5c
BLAKE2b-256 05fefe0771065f04c84d223cfa8de3d7493320c47ea657c86e9d87d473fca3b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 4.6 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.1a6-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7d8a81cd69c213ebb6be6f82458ad137cb89238ebfe9d5b6dbb7f838ee052ea9
MD5 4463dd8ed161b9a33e84adb11d475c5e
BLAKE2b-256 431f3b2bf70bda896bacea131fe9db560f80e7bd05a59e2289495504b7abf1ec

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 4.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.1a6-cp310-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 03168ab18edf05a5197bb55cd11dae18b601d33e12179c86e2ea6474174027a4
MD5 a65cdae185d9ca630631e3fee9986271
BLAKE2b-256 a012b92781161f690dc45e3f933a431257300f49010d6ffba69ac5e8e556cd74

See more details on using hashes here.

File details

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

File metadata

  • Download URL: karva-0.0.1a6-cp310-abi3-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 4.3 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.1a6-cp310-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 9c1edf90bbf6c5867147c977fc3248f2b9119a48d4b4a85e343abfa2e09d4a5c
MD5 6bce52d8dd907e784a2d7e52cdf79be8
BLAKE2b-256 35b0749a61b1199f5ed6d7d4589333c04680835844bad93a817ec3d0857d75b1

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