Skip to main content

pysdrlib

Python wrappers for hardware SDRs

Notes

  • No affiliation to the fantastic pysdr page
  • For a more robust C implementation, check SoapySDR

This serves as a lightweight backend for my pyspecan and RPPS projects, with minimal user intervention. Other projects, like SoapySDR, are likely what you're looking for.

Building from source

For each device's vendor (HackRF, ExtIO, etc), if the necessary libraries aren't installed, each vendor library is build on first use. This requires cmake, a C++17 compiler and the development files below (Debian/Ubuntu package names); tests for a device whose library can't be built are skipped.

Prebuilt librtlsdr / libhackrf packages can be installed instead of building those two. All packages are the build tools (cmake, a C++17 compiler, pkg-config) plus the development files listed.

RTL-SDR needs:

  • librtlsdr, or
  • Debian/Ubuntu: sudo apt install cmake libusb-1.0-0-dev
  • Fedora/RHEL: sudo dnf install gcc-c++ cmake pkgconf-pkg-config libusb1-devel
  • Arch: sudo pacman -S base-devel cmake libusb
  • openSUSE: sudo zypper install gcc-c++ cmake pkg-config libusb-1_0-devel
  • Alpine: apk add build-base cmake pkgconf libusb-dev
  • macOS (Homebrew): brew install cmake pkg-config libusb

HackRF needs:

  • libhackrf, or
  • Debian/Ubuntu: sudo apt install cmake libusb-1.0-0-dev
  • Fedora/RHEL: sudo dnf install gcc-c++ cmake pkgconf-pkg-config libusb1-devel
  • Arch: sudo pacman -S base-devel cmake libusb
  • openSUSE: sudo zypper install gcc-c++ cmake pkg-config libusb-1_0-devel
  • Alpine: apk add build-base cmake pkgconf libusb-dev
  • macOS (Homebrew): brew install cmake pkg-config libusb

RX-888 (extio) needs:

  • libextio_sdcc, or
  • Debian/Ubuntu: sudo apt install cmake libusb-1.0-0-dev libfftw3-dev
  • Fedora/RHEL: sudo dnf install gcc-c++ cmake pkgconf-pkg-config libusb1-devel fftw-devel
  • Arch: sudo pacman -S base-devel cmake libusb fftw
  • openSUSE: sudo zypper install gcc-c++ cmake pkg-config libusb-1_0-devel fftw3-devel
  • Alpine: apk add build-base cmake pkgconf libusb-dev fftw-dev
  • macOS (Homebrew): brew install cmake pkg-config libusb fftw

Roadmap

Usage

Dynamic imports

import pysdrlib
print(pysdrlib.devices.ls()) # Print available device interfaces
sdr = pysdrlib.devices.get("rtl_sdr").Device() # Initialize sdr
sdr.open()

Static imports

import pysdrlib.rtl_sdr
sdr = pysdrlib.rtl_sdr.Device() # Initialize sdr

Remote devices

Host SDRs on one machine and use them from another (pip install pysdrlib[remote], uses ZeroMQ).

pysdrlib server --bind tcp://0.0.0.0:5555 --port-range 6000-6100
pysdrlib client tcp://host:5555 list
pysdrlib client tcp://host:5555 rx hackrf --freq 100e6 --rate 10e6 -t 5 -o out.cfile
sdr = pysdrlib.device("remote", "tcp://host:5555", "hackrf")  # same API as a local device
sdr.open(); sdr.initialize(cf=100e6, Fs=10e6); sdr.start_rx()
samples = sdr.get_samples()

One client controls a device; any number can attach as viewers (pysdrlib.device("remote", addr, id="hackrf-0")) to receive samples.

Reading and writing sample files

from pysdrlib import File, FileSink
with File("capture.cfile", "cf32") as f:           # File(path, fmt); set_path/set_fmt also work
    for block in f.forward(8192, partial=True):    # partial=True also yields the short last block
        print(f.percent())                         # fraction read, 0.0-1.0 (percent(fraction=False): 0-100)
    f.seek(0); tail = f.next(8192, partial=True)   # next() raises Overflow at EOF unless partial=True

with FileSink("out.cs16", "ci32t", clip=True) as out:   # or FileSink(..., open=True) and close() yourself
    out.write(samples)
  • File.next(count, partial=False), forward(count, partial=False) and File(...)(count, partial=False): partial=True returns the remaining samples at the end of the file (an empty array once at EOF) instead of raising or stopping early.
  • FileSink(path, fmt, append=False, open=False, clip=False) truncates an existing file unless append=True; the format of an existing file is not checked when appending. write() takes 1-D samples (other shapes raise ValueError; flatten or write per channel) and needs the sink opened (open(), open=True, or with).
  • clip=True saturates values outside the format's range (per I/Q component) and logs one warning, "N samples clipped", when the sink closes; sink.clipped holds the running count. NaN is stored as 0 in integer formats and counted; infinity saturates. Without clip, any value outside the format's range (including NaN/inf in integer formats) raises ValueError; nothing wraps.
  • Neither class scales: integer formats are read and written as stored, not divided by full scale.

Stalls and dropped samples

Hardware devices watch their own stream each time you call get_samples():

try:
    samples = sdr.get_samples()
except pysdrlib.err.StreamStalled:   # no samples for sdr.stall_timeout seconds (default 1, None disables)
    sdr.stop_rx(); sdr.start_rx()    # or close and reopen the device
print(sdr.stats)  # samples delivered, dropped, missing, stalls, and seconds since the last samples

Samples lost because get_samples() wasn't called often enough, or because the device delivered fewer than its sample rate requires, raise a pysdrlib.warn.Dropped warning. Anything still buffered when a stall is detected is returned first.

Contributing

  1. git clone https://github.com/Anonoei/pysdrlib
  2. cd pysdrlib
  3. git branch -c feature/<your feature>
  4. python3 builder.py -b -l build and install locally

Metadata

Release files for pysdrlib 0.3.1

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

Source distribution (sdist)

Source distribution for pysdrlib 0.3.1
File Size Uploaded Provenance Actions
pysdrlib-0.3.1.tar.gz 17.2 MB With provenance Details for pysdrlib-0.3.1.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for pysdrlib 0.3.1
File Actions
pysdrlib-0.3.1-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details for pysdrlib-0.3.1-cp314-cp314t-win_amd64.whl
pysdrlib-0.3.1-cp314-cp314t-win32.whl CPython 3.14 CPython 3.14 free-threading Windows x86-32 Details for pysdrlib-0.3.1-cp314-cp314t-win32.whl
pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details for pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl
pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64 Details for pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl
pysdrlib-0.3.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for pysdrlib-0.3.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
pysdrlib-0.3.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for pysdrlib-0.3.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
pysdrlib-0.3.1-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for pysdrlib-0.3.1-cp314-cp314-win_amd64.whl
pysdrlib-0.3.1-cp314-cp314-win32.whl CPython 3.14 CPython 3.14 Windows x86-32 Details for pysdrlib-0.3.1-cp314-cp314-win32.whl
pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details for pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl
pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ ARM64 Details for pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl
pysdrlib-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for pysdrlib-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
pysdrlib-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for pysdrlib-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
pysdrlib-0.3.1-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for pysdrlib-0.3.1-cp313-cp313-win_amd64.whl
pysdrlib-0.3.1-cp313-cp313-win32.whl CPython 3.13 CPython 3.13 Windows x86-32 Details for pysdrlib-0.3.1-cp313-cp313-win32.whl
pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details for pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ ARM64 Details for pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl
pysdrlib-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for pysdrlib-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
pysdrlib-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64, Linux glibc 2.26+ ARM64 Details for pysdrlib-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
pysdrlib-0.3.1-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for pysdrlib-0.3.1-cp312-cp312-win_amd64.whl
pysdrlib-0.3.1-cp312-cp312-win32.whl CPython 3.12 CPython 3.12 Windows x86-32 Details for pysdrlib-0.3.1-cp312-cp312-win32.whl
pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details for pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ ARM64 Details for pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
pysdrlib-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for pysdrlib-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
pysdrlib-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.26+ ARM64, Linux glibc 2.28+ ARM64 Details for pysdrlib-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Total release size: 454.2 MB

Release files / pysdrlib-0.3.1.tar.gz

Download URL pysdrlib-0.3.1.tar.gz
Size 17.2 MB
Tags Source
SHA-256 checksum
How to use checksums
86f8e45867e6e99ca96bad36307e8701a4ce63c122adca9c45a94969f186c99d
BLAKE2b-256 checksum
How to use checksums
7da34f46383630fe640ad7a65ee9bb0f2ba53665a345a9866fc51f9f3c21a60e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314t-win_amd64.whl

Download URL pysdrlib-0.3.1-cp314-cp314t-win_amd64.whl
Size 17.6 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
45958d5ea05db0ca4f0e3dda4d1653e5519b91ec5059369e9de07271c01bf9d0
BLAKE2b-256 checksum
How to use checksums
ad6d59623baf4d3641beb68d3cddec77378bedf1d96fd3d55206df217fa4d597
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314t-win32.whl

Download URL pysdrlib-0.3.1-cp314-cp314t-win32.whl
Size 17.5 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-32
SHA-256 checksum
How to use checksums
22d48955b75de92e5e2ff121b11b570346c494429285712b6495488d5ad1db6a
BLAKE2b-256 checksum
How to use checksums
54478b8d6fecf2c838af014c92c275ba8c65290941875cf0904a7d1c6e656035
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 19.1 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
955113d658c2c1927a7313c2a1cb545e74b0ed15bb5d334d753d1a220b028509
BLAKE2b-256 checksum
How to use checksums
6459600e6efbe8e19357c08cd022d35d43d05d096ad100638444867a875aa072
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl

Download URL pysdrlib-0.3.1-cp314-cp314t-musllinux_1_2_aarch64.whl
Size 19.0 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
26a1977217afae90a499e889898ee811080dcfcabd8810756d12280a00a01ed9
BLAKE2b-256 checksum
How to use checksums
0a724ae8c7f9fd2d946c533a787c2a8cd74434d8faa1862d57e844720e483cec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pysdrlib-0.3.1-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 18.1 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0b5cc3c26c08ab89de7f3d38bb180ef5596efbe66378f701177e90a31ce09769
BLAKE2b-256 checksum
How to use checksums
b771d37b188ff1636a7b02c5d48a527349b46fc7f7eb5a0c5c7188467139a73c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL pysdrlib-0.3.1-cp314-cp314t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 18.0 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8dae7ef5a120215a769f9d333017e33fa62f53cda9bebf906e08d6f98e236147
BLAKE2b-256 checksum
How to use checksums
99bccbf915a851034a0929492799059e5aed1dfca35290ebdea727d106b4c0bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314-win_amd64.whl

Download URL pysdrlib-0.3.1-cp314-cp314-win_amd64.whl
Size 17.6 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
8efa9c321c12f935cf644ee08ad41d2cb960f2af36246fa380d067163b514dc3
BLAKE2b-256 checksum
How to use checksums
9b44c57310042bd62dc5e5bb30389b6687cd455c5edebbf7916efca5c846b0ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314-win32.whl

Download URL pysdrlib-0.3.1-cp314-cp314-win32.whl
Size 17.5 MB
Tags CPython 3.14 Windows x86-32
SHA-256 checksum
How to use checksums
31f2d485b2d3e709617d3266f6b037c9a64eaa807c8fc5f0850d1000c6af3ea3
BLAKE2b-256 checksum
How to use checksums
0e0b6976a6aa39e8bdf3104f2acf1ed6f8a1c195a33e6e2ba6b38d7cb5f31df9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_x86_64.whl
Size 19.1 MB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
5e7e08b25252e397823807dbd2394e519adc25b29b3ea95410d3e773857ddb04
BLAKE2b-256 checksum
How to use checksums
7125e4b1eb98874d8d3faea9e76d42d8931f9d31be59c30260f480998578ad01
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl

Download URL pysdrlib-0.3.1-cp314-cp314-musllinux_1_2_aarch64.whl
Size 19.0 MB
Tags CPython 3.14 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
eca7a7da8c45ac643acf8ea35efe73c78f9e4c607a40dd359facac9098abfe97
BLAKE2b-256 checksum
How to use checksums
4d481222f8b99181302d3335e310af811df9d90a80df36a83b126deb282f1f9b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pysdrlib-0.3.1-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 18.1 MB
Tags CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4a43a8e4370bbd7c3c94666c63a06a5b2787afb866d3a8d86da088188a0d5592
BLAKE2b-256 checksum
How to use checksums
bea8778fcdb812f0ca953138aef196400a89a2887c96716617843b411c58f1ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL pysdrlib-0.3.1-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 18.0 MB
Tags CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
5894a229858a84ec1562f65db5e42d25353f942ae7ac5c4ca76465229a7e34f0
BLAKE2b-256 checksum
How to use checksums
ee79a9276b80c39bdbd2ae7036e095604ecbbb50a33637376ce6624e738ff6c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp313-cp313-win_amd64.whl

Download URL pysdrlib-0.3.1-cp313-cp313-win_amd64.whl
Size 17.5 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
5c76e66ab71b287cfffe9619dcff04efff2794560eba07ed9e99bb2540f9ec0a
BLAKE2b-256 checksum
How to use checksums
9aa14dc4907f048918516a5c49741e40211a8ff89c6140fc9b897aaf9e0a2704
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp313-cp313-win32.whl

Download URL pysdrlib-0.3.1-cp313-cp313-win32.whl
Size 17.5 MB
Tags CPython 3.13 Windows x86-32
SHA-256 checksum
How to use checksums
7005619ee2f3a32c3510d20215418e459179b7f015b72aeb88ad59e35fcd1afd
BLAKE2b-256 checksum
How to use checksums
947956df4bee5624b9811cfb5202e5d07e83419d0f41c2ce5b7cb825a452b7c1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_x86_64.whl
Size 19.1 MB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
df1561cf40a53d9d84e9e373599ceed884f77ac4a75cbf774cec6e074321ccfb
BLAKE2b-256 checksum
How to use checksums
b448395cd2cc6fbb1f475367e28d3fd299c1feb3898ace07c0432f40f0e9867a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl

Download URL pysdrlib-0.3.1-cp313-cp313-musllinux_1_2_aarch64.whl
Size 19.0 MB
Tags CPython 3.13 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
eeee3754c0f939c9a23fb60e77b7c829e77d98a3a9c6371f54d627a467fcec80
BLAKE2b-256 checksum
How to use checksums
65a696089a43151934111ca592ca99276419056436f53098986f8a8098fbae82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pysdrlib-0.3.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 18.1 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
cadc0a2d134a90c7f5978b4e29194bd733b279b3b3a1f3ee464860a8855a6189
BLAKE2b-256 checksum
How to use checksums
103f45f414bc3cea5c97aec22e1dd8fedcc6b8879c9e53ec8b77a4e7cd7e93f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL pysdrlib-0.3.1-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 18.0 MB
Tags CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8f28cc18b855ecba238fb59e0ca8d3fb10052e1534156f01cba441f7f3d4681e
BLAKE2b-256 checksum
How to use checksums
a9eae7c28f0a3d77f14536bafc0b5867e781e6b5d56e8ac018796d8b22ff021f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp312-cp312-win_amd64.whl

Download URL pysdrlib-0.3.1-cp312-cp312-win_amd64.whl
Size 17.5 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
c5304f1f146d77db05234626a1da488e48948d4d727b9ecfb5f8cb84c61c5102
BLAKE2b-256 checksum
How to use checksums
d558247f48ed3a63351946f3cdac2455b836128a068045c7cf32e78396493f3b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp312-cp312-win32.whl

Download URL pysdrlib-0.3.1-cp312-cp312-win32.whl
Size 17.5 MB
Tags CPython 3.12 Windows x86-32
SHA-256 checksum
How to use checksums
7138fe5d8b159fb8b816c487cf786e598c24ca9726abb5fc8bf2b930a038fa2e
BLAKE2b-256 checksum
How to use checksums
03d6541ef40565c9788820927cdd3c389bc971b12614f1f014ef89d14b638516
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_x86_64.whl
Size 19.1 MB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
daffa8a75899f0c4474c5a598c52b2432fe32299b41dde577d0b66c8a5bb63d1
BLAKE2b-256 checksum
How to use checksums
7f0b8b0a6b47856d92a821893c6b532c413fa6afb691d24f8c9a06d14c1baa91
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl

Download URL pysdrlib-0.3.1-cp312-cp312-musllinux_1_2_aarch64.whl
Size 19.0 MB
Tags CPython 3.12 Linux musl 1.2+ ARM64
SHA-256 checksum
How to use checksums
04debea3e9792f757605635bf751ef08f9ffce3351309b186ace9fe7614fedfa
BLAKE2b-256 checksum
How to use checksums
ca74468d5d0465f6d2ce54f51feea6d68e154b3b4b05aa09f59675b9a6ef7584
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL pysdrlib-0.3.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 18.1 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
0efa077a0ed7724e0a7fc9e4d767466bb7fb5e8ddc88f76e7d553548a5758a91
BLAKE2b-256 checksum
How to use checksums
d0f117fcd90fd4d6e1fe17424c207ee301fbae86f01f954903100d146b015a20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Release files / pysdrlib-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl

Download URL pysdrlib-0.3.1-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
Size 18.0 MB
Tags CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
d618808f4338534571419b27e40632e62c4b3552d08674183755cd72077fd9b5
BLAKE2b-256 checksum
How to use checksums
06d5279470e6982ed5b8e076568a4cfab0ead7f7068725d18dab4170519fba52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Nov 7, 2026.

Transparency log

Security for pysdrlib 0.3.1

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.

Full provenance

All 25 files in this release have been uploaded with provenance metadata.

Select from 25 files

Attestation for pysdrlib-0.3.1.tar.gz

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 Nov 7, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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