Skip to main content

juwunit

juwunit is a small JUnit XML serializer and deserializer for Python.

It's a small Python layer on top of the excellent quick-junit.

Usage

Install it:

uv add juwunit

Loading a report:

import juwunit

report = juwunit.Report.from_xml("...")
for suite in report.test_suites:
    for case in suite.test_cases:
        print(f"{case.name}: {case.status}")

Building a report:

import juwunit

case = juwunit.TestCase("my-test", status=juwunit.Success())
suite = juwunit.TestSuite("my-suite")
suite.add_test_case(case)
report = juwunit.Report("my-report")
report.add_test_suite(suite)

print(report.to_xml())

The Python API follows quick-junit closely while using Python-native types where that is more natural:

  • uuid.UUID for report UUIDs
  • timezone-aware datetime.datetime for timestamps
  • datetime.timedelta for durations
  • Success, Failure, Error, and Skipped status objects
  • dict[str, str]-style extra attributes and ordered Property objects

Development

Install the editable extension:

uv run --dev maturin develop

Run the unit tests:

# rust side
cargo test

# python side
uv run --dev pytest

Linting/formatting/typechecking:

uv run --dev ruff format
uv run --dev ruff check --fix
uv run --dev ty check

Release files for juwunit 0.1.4

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

Source distribution (sdist)

Source distribution for juwunit 0.1.4
File Size Uploaded
juwunit-0.1.4.tar.gz 35.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for juwunit 0.1.4
File
juwunit-0.1.4-cp310-abi3-win_arm64.whl CPython 3.10 abi3 Windows ARM64 Details
juwunit-0.1.4-cp310-abi3-win_amd64.whl CPython 3.10 abi3 Windows x86-64 Details
juwunit-0.1.4-cp310-abi3-musllinux_1_2_x86_64.whl CPython 3.10 abi3 Linux musl 1.2+ x86-64 Details
juwunit-0.1.4-cp310-abi3-musllinux_1_2_aarch64.whl CPython 3.10 abi3 Linux musl 1.2+ ARM64 Details
juwunit-0.1.4-cp310-abi3-manylinux_2_34_x86_64.whl CPython 3.10 abi3 Linux glibc 2.34+ x86-64 Details
juwunit-0.1.4-cp310-abi3-manylinux_2_34_aarch64.whl CPython 3.10 abi3 Linux glibc 2.34+ ARM64 Details
juwunit-0.1.4-cp310-abi3-macosx_11_0_arm64.whl CPython 3.10 abi3 macOS 11.0+ ARM64 Details
juwunit-0.1.4-cp310-abi3-macosx_10_12_x86_64.whl CPython 3.10 abi3 macOS 10.12+ x86-64 Details

Total release size: 4.6 MB

Release files / juwunit-0.1.4.tar.gz

Download URL juwunit-0.1.4.tar.gz
Size 35.5 kB
Tags Source
SHA-256 checksum
How to use checksums
b2410c8f67ac6dae996f46fa5ce6eea68f80a56f68f5f563ea0db9963dfb7936
BLAKE2b-256 checksum
How to use checksums
d05fd49fbde56e95d50d79a5805c9239e2bad1902fb9d3a797c5905a95149eb3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-win_arm64.whl

Download URL juwunit-0.1.4-cp310-abi3-win_arm64.whl
Size 672.7 kB
Tags CPython 3.10 Windows ARM64 abi3
SHA-256 checksum
How to use checksums
e001d98d6681743434b2fb769ecf008c4eb49ec524b6c11d06aa38317fb316ae
BLAKE2b-256 checksum
How to use checksums
83c246f95e12bf1240eebb3c0a8ea7b977cdd0cf57349dbb30a09cfc42e6abc3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-win_amd64.whl

Download URL juwunit-0.1.4-cp310-abi3-win_amd64.whl
Size 716.0 kB
Tags CPython 3.10 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
e1fa696f5095a8aebb5147b208290c4324ae2b79e2489cbd9c060342393fa32d
BLAKE2b-256 checksum
How to use checksums
2c52cf35d12cdb16332e95a94db02cf14c31d872df222a79af9d7551db05d857
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-musllinux_1_2_x86_64.whl

Download URL juwunit-0.1.4-cp310-abi3-musllinux_1_2_x86_64.whl
Size 598.9 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64 abi3
SHA-256 checksum
How to use checksums
e22f40ba3954bcc7f8c65278eed829f13dd4ed3db637c3873ff7b4d4a00b682d
BLAKE2b-256 checksum
How to use checksums
92004835d411bc9c781548fa443c97dca90743afbb87a7050f5bd733896a7786
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-musllinux_1_2_aarch64.whl

Download URL juwunit-0.1.4-cp310-abi3-musllinux_1_2_aarch64.whl
Size 579.5 kB
Tags CPython 3.10 Linux musl 1.2+ ARM64 abi3
SHA-256 checksum
How to use checksums
f26740f3189a01056b94f34f74b5aac1dca344cd5fd0f982db01b224db0452dc
BLAKE2b-256 checksum
How to use checksums
b0cca755f6c4a1d12479048cc2391fcbf8f13a5daa3bb21328ec19140f8fa387
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-manylinux_2_34_x86_64.whl

Download URL juwunit-0.1.4-cp310-abi3-manylinux_2_34_x86_64.whl
Size 513.8 kB
Tags CPython 3.10 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
8522ffddc9cc653288481eb5c1a8c52d3d6d8d8d65fcf13406a72c6dbb8794a2
BLAKE2b-256 checksum
How to use checksums
3b730d962a2a87725103978400755a2ff6175f0558c513abe886bd3e28730588
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-manylinux_2_34_aarch64.whl

Download URL juwunit-0.1.4-cp310-abi3-manylinux_2_34_aarch64.whl
Size 511.8 kB
Tags CPython 3.10 Linux glibc 2.34+ ARM64 abi3
SHA-256 checksum
How to use checksums
78e89a055d0b7891c5a757d361676babb5e54d034d6c4db84c0ac4622b752e31
BLAKE2b-256 checksum
How to use checksums
11217354f762c62d3674f1ae0b906007df443c8d00fcb07b00ca0df294ece297
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-macosx_11_0_arm64.whl

Download URL juwunit-0.1.4-cp310-abi3-macosx_11_0_arm64.whl
Size 472.0 kB
Tags CPython 3.10 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
92b04cfe682f632ed5126787d24ab1f47a123d4c9666a515220eeb31b4545ba2
BLAKE2b-256 checksum
How to use checksums
bac4fae92ee2c2875e54dd4c2032d86aebfcdef707e6d24a4297af26daa84286
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / juwunit-0.1.4-cp310-abi3-macosx_10_12_x86_64.whl

Download URL juwunit-0.1.4-cp310-abi3-macosx_10_12_x86_64.whl
Size 465.9 kB
Tags CPython 3.10 abi3 macOS 10.12+ x86-64
SHA-256 checksum
How to use checksums
ab76ff2e7b1c8e39a99027279dac21eef488137a6bd60ef03e09f375a3831ca9
BLAKE2b-256 checksum
How to use checksums
c3f49784114b2ea1f3eca4010079af3cada42171f7be6b8b7643018e30b4bd2e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.4 This release

9 release files

0.1.3

9 release files

0.1.2

9 release files

0.1.1

9 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