Skip to main content
https://img.shields.io/github/actions/workflow/status/adamchainz/tprof/main.yml.svg?branch=main&style=for-the-badge https://img.shields.io/badge/Coverage-100%25-success?style=for-the-badge https://img.shields.io/pypi/v/tprof.svg?style=for-the-badge https://img.shields.io/badge/code%20style-black-000000.svg?style=for-the-badge pre-commit

A targeting profiler.

tprof in action.

Get better at command line Git with my book Boost Your Git DX.


Requirements

Python 3.12 to 3.14 supported.

Installation

  1. Install with pip:

    python -m pip install tprof

Usage

tprof measures the time spent in specified target functions when running a script or module. Unlike a full program profiler, it only tracks the specified functions using sys.monitoring (new in Python 3.12), reducing overhead and helping you focus on the bits you’re changing. Timing is done in C to further reduce overhead.

tprof supports usage as a CLI and with a Python API.

CLI

Specify one or more target functions with -t, then what to run: a script file by filename, or a module with -m then its name. Any unrecognized arguments are passed to the script or module.

Use the format <module>:<function> to specify target functions. When using -m with a module, you can skip the <module> part and it will be inferred from the module name.

$ tprof -t lib:maths ./example.py
...
🎯 tprof results:
 function    calls total  median ± σ     min … max
 lib:maths()     2 610ms 305ms ± 2ms 304ms … 307ms

Full help:

usage: tprof [-h] -t target [-x | --baseline path] [--json path]
             (-m module | script) ...

positional arguments:
  script           Python script to run
  args             Arguments to pass to the script or module

options:
  -h, --help       show this help message and exit
  -t target        Target callable to profile (format: module:function).
  -x, --compare    Compare performance of targets, with the first as baseline.
  --baseline path  Compare against statistics from a previous run's --json
                   file.
  --json path      Write statistics as JSON to this file, or '-' for stdout.
  -m module        Run library module as a script (like python -m)

Comparison mode

Pass -x (--compare) to compare the performance of multiple target functions, with the first as the baseline, in an extra “delta” column. For example, given this code:

def before():
    total = 0
    for i in range(100_000):
        total += i
    return total


def after():
    return sum(range(100_000))


for _ in range(100):
    before()
    after()

…you can run tprof like this to compare the two functions:

$ tprof -x -t before -t after -m example
🎯 tprof results:
 function         calls total  median ± σ      min … max   delta
 example:before()   100 227ms   2ms ± 34μs   2ms … 2ms   -
 example:after()    100  86ms 856μs ± 15μs 835μs … 910μs -62.27%

JSON output

Pass --json <path> to also write the statistics to the given file as JSON, or - to write them to standard output. The file contains a functions list with the name, call count, and total, minimum, maximum, median, and standard deviation of times, in nanoseconds, per target:

{
  "version": 1,
  "label": null,
  "functions": [
    {
      "name": "lib:maths",
      "calls": 2,
      "total_ns": 610622917,
      "min_ns": 304285875,
      "max_ns": 306337042,
      "median_ns": 305311458.5,
      "stdev_ns": 1450393.5
    }
  ]
}

Baseline comparison mode

Pass --baseline <path> with the --json output of a previous run to compare against that run, in an extra “delta” column that compares each function’s median against its median in the baseline run. Use this to check the effect of a change to the profiled code:

$ tprof -t lib:maths --json before.json ./example.py
...
$ tprof -t lib:maths --baseline before.json ./example.py
...
🎯 tprof results:
 function    calls total  median ± σ     min … max     delta
 lib:maths()     2 592ms 296ms ± 2ms  294ms … 297ms -3.11%

API

tprof(*targets, label=None, compare=False, json_path=None, baseline_path=None)

Use this context manager / decorator within your code to perform profiling in a specific block. The report is printed when the block ends, each time it ends.

Each item in targets may be a callable to profile, or a string reference to one that will be resolved with pkgutil.resolve_name().

label is an optional string to add to the report heading to distinguish multiple reports.

Set compare to True to enable comparison mode, as documented above in the CLI section.

Set json_path to a file path to also write the statistics as JSON, as documented above in the CLI section, or - for standard output.

Set baseline_path to the path of a previous run’s JSON statistics to enable baseline comparison mode, as documented above in the CLI section. It cannot be combined with compare.

The context manager yields a list of FunctionStats, populated with one entry per target when the profiled block ends, for programmatic access to the results. Each FunctionStats has these attributes: name, calls, total_ns, min_ns, max_ns, median_ns, and stdev_ns.

For example, given this code:

from lib import maths

from tprof import tprof

print("Doing the maths…")
with tprof(maths):
    maths()
print("The maths has been done!")

…running it would produce output like:

$ python example.py
Doing the maths…
🎯 tprof results:
 function    calls total  median ± σ   min … max
 lib:maths()     1 305ms 305ms     305ms … 305ms
The maths has been done!

Another example using comparison mode:

from tprof import tprof


def before():
    total = 0
    for i in range(100_000):
        total += i
    return total


def after():
    return sum(range(100_000))


with tprof(before, after, compare=True):
    for _ in range(100):
        before()
        after()

…which produces output like:

$ python example.py
🎯 tprof results:
 function          calls total  median ± σ      min … max delta
 __main__:before()   100 227ms   2ms ± 83μs   2ms … 3ms -
 __main__:after()    100  85ms 853μs ± 22μs 835μs … 1ms -62.35%

Use the yielded list to access the results programmatically. It contains one FunctionStats per target, in the same order as passed to tprof(), so with a single target you can unpack it directly:

from lib import maths

from tprof import tprof

with tprof(maths) as results:
    maths()

(function_stats,) = results  # unpack the single result for maths()
print(f"{function_stats.name} took {function_stats.median_ns}ns")

History

When optimizing Python code, I found I was using this workflow:

  1. Profile the whole program with a tool like cProfile or py-spy to find slow functions.

  2. Pick a function to optimize.

  3. Make a change.

  4. Re-profile the whole program to see if the changes helped.

This works fined but profiling the whole program again adds overhead, and picking out the one function’s stats from the report is extra work. When I saw that Python 3.12’s sys.monitoring allows tracking specific functions with low overhead, I created tprof to streamline this workflow, allowing the final step to re-profile just the target function.

It also seemed a natural extension that tprof could compare multiple functions, supporting a nice microbenchmarking workflow.

Output inspired by poop and formatted nicely with Rich.

Download files

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

Source Distribution

tprof-1.3.0.tar.gz (20.7 kB view details)

Uploaded Source

Built Distributions

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

tprof-1.3.0-cp314-cp314t-win_arm64.whl (24.7 kB view details)

Uploaded CPython 3.14tWindows ARM64

tprof-1.3.0-cp314-cp314t-win_amd64.whl (25.5 kB view details)

Uploaded CPython 3.14tWindows x86-64

tprof-1.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl (44.6 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ x86-64

tprof-1.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl (45.9 kB view details)

Uploaded CPython 3.14tmusllinux: musl 1.2+ ARM64

tprof-1.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (45.0 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

tprof-1.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (47.3 kB view details)

Uploaded CPython 3.14tmanylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

tprof-1.3.0-cp314-cp314t-macosx_11_0_arm64.whl (22.7 kB view details)

Uploaded CPython 3.14tmacOS 11.0+ ARM64

tprof-1.3.0-cp314-cp314t-macosx_10_15_x86_64.whl (22.6 kB view details)

Uploaded CPython 3.14tmacOS 10.15+ x86-64

tprof-1.3.0-cp314-cp314-win_arm64.whl (24.3 kB view details)

Uploaded CPython 3.14Windows ARM64

tprof-1.3.0-cp314-cp314-win_amd64.whl (25.0 kB view details)

Uploaded CPython 3.14Windows x86-64

tprof-1.3.0-cp314-cp314-musllinux_1_2_x86_64.whl (40.6 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ x86-64

tprof-1.3.0-cp314-cp314-musllinux_1_2_aarch64.whl (41.1 kB view details)

Uploaded CPython 3.14musllinux: musl 1.2+ ARM64

tprof-1.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (41.1 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

tprof-1.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (42.0 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

tprof-1.3.0-cp314-cp314-macosx_11_0_arm64.whl (22.5 kB view details)

Uploaded CPython 3.14macOS 11.0+ ARM64

tprof-1.3.0-cp314-cp314-macosx_10_15_x86_64.whl (22.4 kB view details)

Uploaded CPython 3.14macOS 10.15+ x86-64

tprof-1.3.0-cp313-cp313-win_arm64.whl (24.0 kB view details)

Uploaded CPython 3.13Windows ARM64

tprof-1.3.0-cp313-cp313-win_amd64.whl (24.8 kB view details)

Uploaded CPython 3.13Windows x86-64

tprof-1.3.0-cp313-cp313-musllinux_1_2_x86_64.whl (40.7 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ x86-64

tprof-1.3.0-cp313-cp313-musllinux_1_2_aarch64.whl (41.1 kB view details)

Uploaded CPython 3.13musllinux: musl 1.2+ ARM64

tprof-1.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (41.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

tprof-1.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (42.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

tprof-1.3.0-cp313-cp313-macosx_11_0_arm64.whl (22.5 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

tprof-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl (22.3 kB view details)

Uploaded CPython 3.13macOS 10.13+ x86-64

tprof-1.3.0-cp312-cp312-win_arm64.whl (24.0 kB view details)

Uploaded CPython 3.12Windows ARM64

tprof-1.3.0-cp312-cp312-win_amd64.whl (24.9 kB view details)

Uploaded CPython 3.12Windows x86-64

tprof-1.3.0-cp312-cp312-musllinux_1_2_x86_64.whl (41.3 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ x86-64

tprof-1.3.0-cp312-cp312-musllinux_1_2_aarch64.whl (41.6 kB view details)

Uploaded CPython 3.12musllinux: musl 1.2+ ARM64

tprof-1.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (41.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64manylinux: glibc 2.28+ x86-64

tprof-1.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl (42.7 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64manylinux: glibc 2.28+ ARM64

tprof-1.3.0-cp312-cp312-macosx_11_0_arm64.whl (22.6 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

tprof-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl (22.4 kB view details)

Uploaded CPython 3.12macOS 10.13+ x86-64

File details

Details for the file tprof-1.3.0.tar.gz.

File metadata

  • Download URL: tprof-1.3.0.tar.gz
  • Upload date:
  • Size: 20.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0.tar.gz
Algorithm Hash digest
SHA256 e0679497453ad07792777fb28819935a7897dcd9a094fd81930bde187039da64
MD5 1a3e09acc1f58232599e8551498898ff
BLAKE2b-256 8744eb3719bad42d56d6335f946e8fb15b7d2ec930d81a4ee0f89268ec46e74f

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0.tar.gz:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-win_arm64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp314-cp314t-win_arm64.whl
  • Upload date:
  • Size: 24.7 kB
  • Tags: CPython 3.14t, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-win_arm64.whl
Algorithm Hash digest
SHA256 1a4b628be11bbbfb4a182ca9da06bacaccb2ff5a79e41ece2ac8beff5150c3d2
MD5 423af93444ea54ce72f1b1b7549c2100
BLAKE2b-256 579b6f22c64f66ee9b0a332503ba1a50eb24cbfa0a5919ef396ef20bcb9da734

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-win_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-win_amd64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp314-cp314t-win_amd64.whl
  • Upload date:
  • Size: 25.5 kB
  • Tags: CPython 3.14t, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-win_amd64.whl
Algorithm Hash digest
SHA256 e359e0997748d7d8eee4b487e6242f13c07ced064d08e5d4305d6d5f6e8d18ae
MD5 35277e1af79f1c0ed9bb0d1022efe558
BLAKE2b-256 11a9990acac34e38451eedc2cbcea2011b4195ecb4a3fba9fbc3af8e39720418

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-win_amd64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 eb12a97901a3fa0a52dc724f2997fcc97bfd489a12ae2604cdef34cdfd4aa6cd
MD5 1f4bb7835ef5afe192bf6b124c660fd7
BLAKE2b-256 0ea704512563016f5af6fcda75bfe73335fbfee91d254a51379974d121c90ba8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-musllinux_1_2_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8b04c13d60b2a9b4021002be95cd257830408c8af39744d897e45acde50f726c
MD5 eb9ce31d8a70fc4f3bc4ee49351e52e7
BLAKE2b-256 3f54b2e298e8699b083bd2237405767bdfdfa5d6a2b6e12f0433aac61d201825

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-musllinux_1_2_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 cdd1a2c6b149888f69a4e3b2b01c9e4d60262d0adcebcb14e138f317fd4dc549
MD5 eb53592ce7091212b9e060f5e007ab04
BLAKE2b-256 79ad6eae87e96c4c798acd35d286b5974bc71acaa4db152bb6370246db883eef

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 444b91ebd2fe21a28c91b789223c4c4f7363a2f79a8581b4b6e54c14f9413455
MD5 c2e87a7bde6ccd8cdf4250ff20332bb7
BLAKE2b-256 6cec7940c96e9a1f17cc09b34319f1dc598ff0062f252111d7642132106ba396

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2923442f9d4c73ad51acded89f281704cdd1b6284bb5451767a6053f7673a0ed
MD5 d40e34d99b04059e9e70f4bb38520417
BLAKE2b-256 7be530f972db70bc48573f575cb811653cf9743a500d764056b99987fc1a18d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-macosx_11_0_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314t-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314t-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 e7e425a52a71aa81e1e82fa6323182468175a0669816a6c800dbd2f6a3e28b44
MD5 4d166a3d814e8c62f2a9f4478ec45879
BLAKE2b-256 6c80af20798c2c4287cefb81142d463fd810eff39f6cb70f9552cbf8f161199d

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314t-macosx_10_15_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-win_arm64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp314-cp314-win_arm64.whl
  • Upload date:
  • Size: 24.3 kB
  • Tags: CPython 3.14, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp314-cp314-win_arm64.whl
Algorithm Hash digest
SHA256 0309a468ed1c179e93af8c5a3c3647063fa9fde1eea7979daedbf69c94022487
MD5 119cfd6d4abd8aeac160462e9a6f3d15
BLAKE2b-256 36ecc589c9e29afaedc77ecdb2b1a4ca38f3f387b7d2c214bcb1c37e9dd04629

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-win_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-win_amd64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp314-cp314-win_amd64.whl
  • Upload date:
  • Size: 25.0 kB
  • Tags: CPython 3.14, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp314-cp314-win_amd64.whl
Algorithm Hash digest
SHA256 e110f48da95f7bb327a0b2f718b589effc8d59bbef3b01a076507d0d939ca6e7
MD5 2c2353f3663de14850beb8e82bf4c999
BLAKE2b-256 6730bfbdae7acdbba52a4bf7344b4d6ee4e6b57d652b0c8e0640551da881b4ea

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-win_amd64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 671b6187686a4de6dc3c76428863d6b59cba137f8a08244a9a7e4bd69027f7a3
MD5 afea9c156dfe143521b0de7645f3587a
BLAKE2b-256 3d3407e5d6c394f8c79271ea41df120b6f1ccbe861fb78f63dc59aad7aaaac9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-musllinux_1_2_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 821a2d9fa625b63d1fc1ef0629b7cf6b03545e48585acb01103792c32c3becfa
MD5 957965693487490d1fd088078ad0a20b
BLAKE2b-256 8014fcca0111eb9c783dd93412413c34cdbd31060e06ed34c897fb0db9a936f4

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-musllinux_1_2_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 1401b72a4acadeac30bfe77441ebe2d467c84447e971004e1d51efd32625acd1
MD5 4edf8c1366e88815cd4f7c93569d7a85
BLAKE2b-256 03366f810f6e1e597348d5545ac43a7f196ab6db040c73f2be18eb8de492a026

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 177ce2646e62caac09675ea70f6e48a55942faa5d25f3442115c46e018e73150
MD5 f8a99b2914381cd9f280184dc2078aaf
BLAKE2b-256 ef0e9ba89f12d69a3d95bb81fb4dbe6d0a72cffffab727958ba276825b951216

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 de53c681f7fa0619919f7752d109cc9daaedddae885a202fcf1905d151723f00
MD5 a67abb8db2833f69ccdf29358c45fb3b
BLAKE2b-256 8aab3b7beeaac30295ca8e88c3f48f133db91a875f8386125b509d2039ba4f03

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-macosx_11_0_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp314-cp314-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp314-cp314-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 0d8b0cbd660201ce4e47a76b087bc6addb48c470ce10675456c75522f9fc9ce5
MD5 389e415fdd1f2593b731a033169bc366
BLAKE2b-256 91c88b7b575a9a9b73de103c24507f8740bb6b2d5d95a855f9bf6966ebfc1fe0

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp314-cp314-macosx_10_15_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-win_arm64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp313-cp313-win_arm64.whl
  • Upload date:
  • Size: 24.0 kB
  • Tags: CPython 3.13, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp313-cp313-win_arm64.whl
Algorithm Hash digest
SHA256 206b4a04289491baee31296844ddf8f05e895fad5ca41ba7d42871347da1af0e
MD5 ea0cb6f2b3f915ec0cbd9ae8d3c76cf7
BLAKE2b-256 290a35d9a44c0d49eee99d8781b2b35353de3573a76d8457794f369178df3c91

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-win_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 24.8 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 5ab25a302d23198de15df79c60adfd26e820a52918d3b5e8c5287899b86f88a8
MD5 5d768f2ba597520e533c03684f8cd3bf
BLAKE2b-256 1643c11d41deee1b2e1b7c0fcd1e981ec9f90af7f87c3ee92e5c08055a8328eb

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-win_amd64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp313-cp313-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 714271e28cc82ead07d9948e29c784faa1c1a5df02bc94c013b451355d8d7361
MD5 e9de317efd75accf70a51cd3bde3622d
BLAKE2b-256 6ddc0570a8db554fa95b39ef57b6dcd23db9865b80375083d10b27b7ecb4c2a3

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-musllinux_1_2_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp313-cp313-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 6a6aa12a09e8d9499447000a1e9274b30fbc50f71ab85818f1bfe5367d0b627f
MD5 2743eef9a5c68d91a5bd44fb27c15b20
BLAKE2b-256 4e452a96f1202631e572ed1943d388ddf09cefbf35798d18882e401896c9061c

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-musllinux_1_2_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 df8f9e4b5996d2f5ed502be0a4415e1f2e43f50d0716a3356062aaf2c97bf677
MD5 11f71a9a99d75487dada11f9b319087f
BLAKE2b-256 eac0eb74a1e5ac59cec85730d804563fe9af0bcf7de6757708818429152685c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 0b14fdea762eced87056a866b88530550370c3a7d3922eef13dcab8b46d81dcf
MD5 a7a039f6ecbc778ce1285774acffbb69
BLAKE2b-256 e1305a640153a7aec3dc75e3fc027eb0b92d0e27b4f2b025fb8d584213776ec8

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 493b23cb81406cc389e1f6efd9c533315a70ea50338e8e37f1848850a4081659
MD5 8c4f4b482f3d41be6b2b29799f9c90b0
BLAKE2b-256 cf86f3fd9e82d8367031b615954b63bdf88c83919a8133becaa259422ed003c9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-macosx_11_0_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 28feb90da554d0ee51513c8c16725c226b4b6b2ea0223042fa1588d4db9e8945
MD5 bc6d6d4d267f7f0d330a3359ff74129d
BLAKE2b-256 98584bc3435d30db2f03ae43a496e3de2adcfc36ff9f928ca506d799b2aeabc9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-win_arm64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp312-cp312-win_arm64.whl
  • Upload date:
  • Size: 24.0 kB
  • Tags: CPython 3.12, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp312-cp312-win_arm64.whl
Algorithm Hash digest
SHA256 f3f274ba882a07036e626c8996ed28407a8eee5b32afe4a5c0c5937ef95dc2f6
MD5 968098e3e7e3777e59cb723ae0650955
BLAKE2b-256 12da1598b77da6cc48d2d95259ccc135e0d56cf6b99d7638c81c50f01bb52a24

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-win_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: tprof-1.3.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 24.9 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for tprof-1.3.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 e16a77591ced6a36a85da625ad34ccd1412bd589ed8b8cd1484e00989088086b
MD5 79eef9380997e0ca71a4c1cfbf7baa67
BLAKE2b-256 6263c9693bb21a7605221ac924e0e99de98bfe4dabd184e68466b11e1ce4fb36

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-win_amd64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-musllinux_1_2_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp312-cp312-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 2a6d3120f31690b27b856d5ae642dbf2525ced2c21d21329ccd706d293fc0c7c
MD5 4f1dedf06ee749469f8b17591ef84357
BLAKE2b-256 35338ce346f9252af870a5ef033a6cf636f28c91b4b647587918e8bd9c493da9

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-musllinux_1_2_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-musllinux_1_2_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp312-cp312-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 741a5e993dd48eb4dd63fc922e61b2d7caf5aada3bc7087a8e10e4789390e444
MD5 6a1c4ccfaf2f674a23ca79a197e46ef4
BLAKE2b-256 c1197efe6f42843000d345ace8f18fe34a77989e74096f9e7ab5969bee47c5bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-musllinux_1_2_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e609201efe71459ae864d745c9d15d935fd7c75ba7ac0c6367d5fa97e9ce9427
MD5 781e78398217c0400c2e1b54deda6c94
BLAKE2b-256 c686a25aa421f1fb8b1a3995ecb144d740221f0b3fc6b38d4dbbae4c56b515bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 a6dbb25b03ffd70f3b3080dc12dc20890fa4fa70ffe4f69c6acde3aed30f06c9
MD5 79162f94176d51a027d49c8f369e2265
BLAKE2b-256 8d97a34bc23bb68b61339ce0c69ed6215c3b1f81f7a60789703fe21d2af56041

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9d9f612f45fd5204e4e8c7f62b0ba2e66a879990ad634ffeeb8a98af36693f65
MD5 7a3dc57adcfed7f4331fb2d7d03b8fde
BLAKE2b-256 7420e9b288a9de02af42b2b8e8d27f92972075fdafb30103ff3a8648c5d5e218

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file tprof-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl.

File metadata

File hashes

Hashes for tprof-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl
Algorithm Hash digest
SHA256 85372eef945d456824e7cf4916bac2ef36e071aac5f4e45ac4196d3f0a48941d
MD5 1ac5cf55762dd124ebbbe6ccd7ec42e0
BLAKE2b-256 baf8d49ac830e00d48b80aced9b358d4737a47b3678808f47b887488fbc2e804

See more details on using hashes here.

Provenance

The following attestation bundles were made for tprof-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl:

Publisher: main.yml on adamchainz/tprof

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page