Skip to main content

points-lsd

Point-seeded LSD (Line Segment Detector) bindings used by UPAL (Unified and Efficient Point-Line Local Features, ECCV 2026).

This is a fork of pytlsd by Iago Suárez, itself a pybind11 wrapper around the original C implementation of LSD by Rafael Grompone von Gioi. On top of the upstream bindings it adds lsd_from_points, which grows LSD regions only from a set of seed pixels (e.g. learned keypoints) instead of scanning the full image, and accepts externally computed gradients so that a learned line field can steer the detector.

Install

Prebuilt wheels are published for Linux (x86_64, aarch64), macOS (arm64, x86_64) and Windows (AMD64), CPython 3.10–3.14:

pip install points-lsd

Building from source needs a C++17 compiler and CMake ≥ 3.15 (no other native dependencies):

git clone --recursive https://github.com/francois141/points_lsd.git
pip install ./points_lsd

Usage

lsd_from_points needs the image, integer (x, y) seed pixels, and gradient norm/angle maps. The maps are float64 arrays of the image's shape with undefined pixels set to -1024.0; the snippet below computes them the way LSD does (2x2 finite differences), but any gradient, such as one derived from a learned line distance field, can be supplied.

import numpy as np
import points_lsd

gray = ...  # H x W float64 (or uint8) image
seeds = np.array([[x0, y0], [x1, y1]], dtype=np.int32)  # (x, y) pixel seeds inside the image


def lsd_gradients(img, not_defined=-1024.0, threshold=5.2262518595055063):
    norm = np.full(img.shape, not_defined)
    angle = np.full(img.shape, not_defined)
    a, b, c, d = img[:-1, :-1], img[:-1, 1:], img[1:, :-1], img[1:, 1:]
    gx, gy = b + d - a - c, c + d - a - b
    norm[:-1, :-1] = 0.5 * np.hypot(gx, gy)
    angle[:-1, :-1] = np.arctan2(gx, -gy)
    angle[norm <= threshold] = not_defined
    return norm, angle


gradnorm, gradangle = lsd_gradients(gray.astype(np.float64))

# N x 5 float32 array: [x1, y1, x2, y2, p] per segment, where p is LSD's angle precision.
segments = points_lsd.lsd_from_points(gray, seeds, 1.0, 0.6, 0.0, gradnorm, gradangle)

# The upstream full-image detector is still available (gradients optional there).
segments = points_lsd.lsd(gray)

Seeds outside the image, seed arrays that are not N x 2, or missing gradient maps raise ValueError / TypeError. Region growing starts only from seeds whose gradient angle is defined, so seeds should lie on (or one pixel before) an intensity edge.

Development

pip install -e ".[test]"
pytest tests            # test_smoke.py is numpy-only; test_lsd.py needs the [test] extra

Wheels and publishing

Supported wheels

Built with cibuildwheel (config in pyproject.toml under [tool.cibuildwheel]) for CPython 3.10, 3.11, 3.12, 3.13 and 3.14:

Platform Architectures Wheel tag
Linux (glibc ≥ 2.24) x86_64, aarch64 manylinux_2_24_*.manylinux_2_28_*
macOS arm64 (≥ 11.0), x86_64 (≥ 10.9–10.15, per Python build) macosx_*
Windows AMD64 win_amd64

That is 25 wheels plus an sdist per release. Not built: musllinux (Alpine), PyPy, free-threaded CPython and 32-bit platforms. On a compatible platform, pip can build from the sdist with a C++17 compiler and CMake ≥ 3.15. The extension has no required external native libraries. OpenMP support and the OpenCV-dependent C++ tests are opt-in and disabled for wheels.

How a release works

.github/workflows/wheels.yml runs on every push to main, every pull request, every v* tag, and on manual dispatch. Every run builds all wheels and the sdist, smoke-tests the wheels in clean environments where the runner can execute them (macOS x86_64 is skipped on the arm64 runner), and runs the full test suite on Linux, macOS and Windows. What happens with the artifacts depends on the trigger:

Trigger Publishes to
push to main / pull request nothing (build + test only)
manual run (Actions → Wheels → Run workflow) with Upload to TestPyPI ticked TestPyPI
push of a tag vX.Y.Z PyPI

Uploads use PyPI trusted publishing (OIDC), so no API tokens are stored. Before the first upload to an index, configure that index to trust this repository's wheels.yml workflow and its corresponding pypi or testpypi GitHub environment.

The version comes from pyproject.toml, not from git. The tag only triggers the upload, and the check_version job refuses a tag that does not match project.version (tag v0.1.0 ↔ version = "0.1.0"). A version can be uploaded to an index more than once only with new distribution filenames. Existing files cannot be overwritten, so replacing published artifacts requires a new version number.

Release checklist:

# 1. update project.version in pyproject.toml and land it on main
git add pyproject.toml
git commit -m "release: 0.2.0"
git push origin main                                 # CI must be green

# 2. optional dry run: Actions > Wheels > Run workflow > "Upload to TestPyPI", then
pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple "points-lsd==0.2.0"

# 3. publish
git tag v0.2.0
git push origin v0.2.0                               # publish_pypi job uploads to PyPI

Building wheels locally

pipx run cibuildwheel --platform linux    # needs Docker; native arch, or set CIBW_ARCHS_LINUX
pipx run cibuildwheel --platform macos    # needs the python.org CPython installers
CIBW_BUILD="cp313-*" pipx run cibuildwheel --platform linux   # one interpreter only

cibuildwheel's Windows build must run on Windows (or in CI). A plain pip wheel . builds a single wheel for the current interpreter without cibuildwheel's portability repair and compatibility checks.

License

The binding code and the lsd_from_points extension retain the MIT license of upstream pytlsd (see LICENSE), while pybind11 is BSD-3-Clause. The bundled core detector src/lsd.cpp is © Rafael Grompone von Gioi and licensed under the GNU Affero General Public License v3 or later (see LICENSES/AGPL-3.0-or-later.txt); it is linked statically, so the distributed wheels as a whole are subject to the AGPL terms.

Metadata

Release files for points-lsd 0.1.0

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

Source distribution (sdist)

Source distribution for points-lsd 0.1.0
File Size Uploaded Provenance Actions
points_lsd-0.1.0.tar.gz 327.5 kB With provenance Details for points_lsd-0.1.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for points-lsd 0.1.0
File Actions
points_lsd-0.1.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for points_lsd-0.1.0-cp314-cp314-win_amd64.whl
points_lsd-0.1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details for points_lsd-0.1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
points_lsd-0.1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.24+ ARM64, Linux glibc 2.28+ ARM64 Details for points_lsd-0.1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
points_lsd-0.1.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for points_lsd-0.1.0-cp314-cp314-macosx_11_0_arm64.whl
points_lsd-0.1.0-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details for points_lsd-0.1.0-cp314-cp314-macosx_10_15_x86_64.whl
points_lsd-0.1.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for points_lsd-0.1.0-cp313-cp313-win_amd64.whl
points_lsd-0.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for points_lsd-0.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
points_lsd-0.1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.24+ ARM64, Linux glibc 2.28+ ARM64 Details for points_lsd-0.1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
points_lsd-0.1.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for points_lsd-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
points_lsd-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details for points_lsd-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl
points_lsd-0.1.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for points_lsd-0.1.0-cp312-cp312-win_amd64.whl
points_lsd-0.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details for points_lsd-0.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
points_lsd-0.1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.24+ ARM64, Linux glibc 2.28+ ARM64 Details for points_lsd-0.1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
points_lsd-0.1.0-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for points_lsd-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
points_lsd-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details for points_lsd-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl
points_lsd-0.1.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details for points_lsd-0.1.0-cp311-cp311-win_amd64.whl
points_lsd-0.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details for points_lsd-0.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
points_lsd-0.1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.24+ ARM64 Details for points_lsd-0.1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
points_lsd-0.1.0-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details for points_lsd-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
points_lsd-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details for points_lsd-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
points_lsd-0.1.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details for points_lsd-0.1.0-cp310-cp310-win_amd64.whl
points_lsd-0.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64, Linux glibc 2.24+ x86-64 Details for points_lsd-0.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
points_lsd-0.1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64, Linux glibc 2.24+ ARM64 Details for points_lsd-0.1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
points_lsd-0.1.0-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details for points_lsd-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
points_lsd-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details for points_lsd-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl

Total release size: 4.4 MB

Release files / points_lsd-0.1.0.tar.gz

Download URL points_lsd-0.1.0.tar.gz
Size 327.5 kB
Tags Source
SHA-256 checksum
How to use checksums
4d71d7f077bbcd889768e883510208a43191066cb87bc02f7332942fa143c130
BLAKE2b-256 checksum
How to use checksums
9d1aebd83c9f50de1e32e9074280ee46b310a44644700858207171d74f33754c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp314-cp314-win_amd64.whl

Download URL points_lsd-0.1.0-cp314-cp314-win_amd64.whl
Size 328.3 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
4fd3e9958214614b5c498f0a8a45de2bb06a3f7e4d04043d85bc28b75cebba6f
BLAKE2b-256 checksum
How to use checksums
72a4feee0101978fd0436849f0c5d2f98bf1f94fe07d44e1004092e2ffb9e689
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL points_lsd-0.1.0-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 133.6 kB
Tags CPython 3.14 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
3477ec2a42fc4cf3bc9e3673042d3e77abbadc1db94606ae56c31542020cb56a
BLAKE2b-256 checksum
How to use checksums
d05c6c65fe362f904c8e32d34a602e09b238f949fbcebc6818dd8f325ba813b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Download URL points_lsd-0.1.0-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Size 121.1 kB
Tags CPython 3.14 Linux glibc 2.24+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
bd78e136e74575a9e9c0f9cbc8b244d0c3bf7a7c789092bdcccab9f07ee80107
BLAKE2b-256 checksum
How to use checksums
4caed00bd43ed521dddf757512b2f1a3dde14cded23d4a0d717209bcd5b4a1f2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL points_lsd-0.1.0-cp314-cp314-macosx_11_0_arm64.whl
Size 111.2 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
1087fc7d18d75ac02b6b80f84274ae5109977dd8fc7a6d29e4bec006242f2209
BLAKE2b-256 checksum
How to use checksums
b5f9fa7c5d92912d92ce30770918fc70d8a4ace88680271015f9cca1219b1c90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp314-cp314-macosx_10_15_x86_64.whl

Download URL points_lsd-0.1.0-cp314-cp314-macosx_10_15_x86_64.whl
Size 123.7 kB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
2e7dd1226d42645b2081af858fc05e137fd1f21455f23aef58d80b2d74875e3f
BLAKE2b-256 checksum
How to use checksums
5d1e9a74ebb20bd76a627c4361cae537f40c3968ca0b7d92f24ea57e2d432765
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp313-cp313-win_amd64.whl

Download URL points_lsd-0.1.0-cp313-cp313-win_amd64.whl
Size 318.7 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
0b004a659263b79f576996cd45629e29379d775b8f2c247bd6f0435b9373db36
BLAKE2b-256 checksum
How to use checksums
f49b095bac39b610157ad8b5c0946093c22e1abf42cf18ad16f7779fbd1a21cd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL points_lsd-0.1.0-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 133.6 kB
Tags CPython 3.13 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
12108a74f2749e4e77843322d5381ca10b5a22a29fa27952bcf9d4b9ac3db40b
BLAKE2b-256 checksum
How to use checksums
c62036e85c9d75f01307bb24fdc653e7410f90bfd3c2c35d1a6448e9b90f0a37
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Download URL points_lsd-0.1.0-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Size 120.6 kB
Tags CPython 3.13 Linux glibc 2.24+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
6dce4f0675b36930be4536f9a356f22235c8944cf9733b4423b73f3e8d5748c3
BLAKE2b-256 checksum
How to use checksums
779eec8cbb4d2b833600e90c55917413ac4e37f89ef5ebc73c5d41871cf7c5ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL points_lsd-0.1.0-cp313-cp313-macosx_11_0_arm64.whl
Size 111.2 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
9c90b6e937b1c98737be5417ed8b00e6490a5ccf74a067af612774843ba33fe2
BLAKE2b-256 checksum
How to use checksums
f1949aa94581229bffcf4a79432f6d6bf2f24f01c9b4a9d1f89b20f1a0d44f81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl

Download URL points_lsd-0.1.0-cp313-cp313-macosx_10_13_x86_64.whl
Size 123.5 kB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
099deaa0a60f6eac02220ed4039b9594f1363dfa02531c17df1b8393285cff08
BLAKE2b-256 checksum
How to use checksums
33985a8019fb4813541cdf0f9f1e8d0238675c654b45374e2f4f90f8ff88dd1f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp312-cp312-win_amd64.whl

Download URL points_lsd-0.1.0-cp312-cp312-win_amd64.whl
Size 318.6 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
cb5321cbafe5a4cca2c0b199fd69e6d887d3b59b18717ed7c1204b4685601f19
BLAKE2b-256 checksum
How to use checksums
b614bcf19c5cf4861b70280ed3061ddf3e0e1dd673db46727aad7cf21e9278dd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL points_lsd-0.1.0-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 133.5 kB
Tags CPython 3.12 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4e4eec8c0189a96820da020cde38b58536b447974333043abb94a86e11d12ff5
BLAKE2b-256 checksum
How to use checksums
9a0362c2eca475769b081a7bdc7e89530dc9b63c346a6cf9249c3f3d25b1b7cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Download URL points_lsd-0.1.0-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Size 120.6 kB
Tags CPython 3.12 Linux glibc 2.24+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
6b875441b65657fb73187ab791a1bea876fd8df6fb8a776f7bca0d8f1e057aeb
BLAKE2b-256 checksum
How to use checksums
be4618b09f7daa45b840991d2f017a97ee29ce3e3ca1f3eadf5c411a83ab02ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp312-cp312-macosx_11_0_arm64.whl

Download URL points_lsd-0.1.0-cp312-cp312-macosx_11_0_arm64.whl
Size 111.1 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
0f8f844539d387ecbe3ada1de7e88f98c52fe01bd0e67d8edb77fb25fe879cd8
BLAKE2b-256 checksum
How to use checksums
c7ce1f6ecc61692895911b1eadf3439fa9507c8b69fa0efca17d93a5cc68ed57
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl

Download URL points_lsd-0.1.0-cp312-cp312-macosx_10_13_x86_64.whl
Size 123.5 kB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
5575ec68e787f254a671e237caf02975ed67a9db63010f57ab14bf59af51f896
BLAKE2b-256 checksum
How to use checksums
3742d4943348346c5ae669120c370f70bc84083cfa7d2539870a0f7c5a0c16e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp311-cp311-win_amd64.whl

Download URL points_lsd-0.1.0-cp311-cp311-win_amd64.whl
Size 315.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
ee16ed059478eaca9edf266947d02ae67422de0dbd9332832c22ff5a6de66672
BLAKE2b-256 checksum
How to use checksums
960d5c0057eb48cf1c895e272bb046d34152f0b8a2522fddfa381adfbeeca4af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL points_lsd-0.1.0-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 133.1 kB
Tags CPython 3.11 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
7468df54011567597229105616df9d855e695d6bcf12080373e49eef6d12120c
BLAKE2b-256 checksum
How to use checksums
3f2b23b251a5037290d8edfd4116c44d5ede2deef8d6f37c59bc0ea4da9a80e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Download URL points_lsd-0.1.0-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Size 119.5 kB
Tags CPython 3.11 Linux glibc 2.24+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
23af46d44e65fbb60b920520ff637dc8356410d8a4226216f42b61988b9ed6be
BLAKE2b-256 checksum
How to use checksums
4253b2f0dfade2eb867e9fd4b66d1bb185e0cdd1d5c8a804a386e0833c7fa072
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp311-cp311-macosx_11_0_arm64.whl

Download URL points_lsd-0.1.0-cp311-cp311-macosx_11_0_arm64.whl
Size 109.5 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2c3ad884b212d05936a89f1542fc66002dcfa59ab809ab0d6f34e17dfbd3917d
BLAKE2b-256 checksum
How to use checksums
32bf53dad3cef6147aed73413933eae88b1f27a40e156da5143a1c94393e40d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl

Download URL points_lsd-0.1.0-cp311-cp311-macosx_10_9_x86_64.whl
Size 121.1 kB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
444556c5a441a1dd613acd90bed8a863447ffbf756e4b33c1af6e35848a28f80
BLAKE2b-256 checksum
How to use checksums
8d95f0754aa2af70949e14f350e954b3f2542e670d5382070a8feb67bd29ef76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp310-cp310-win_amd64.whl

Download URL points_lsd-0.1.0-cp310-cp310-win_amd64.whl
Size 315.3 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
a09266c2e47de7302df3ab92d67814eeff9b94a047c69223bf227eda5036544d
BLAKE2b-256 checksum
How to use checksums
fc38959ee29b6bcc497c372d2f7df584025c08b3a3e5d14680809b2efa10cd7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL points_lsd-0.1.0-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 132.1 kB
Tags CPython 3.10 Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ecb543aa3171a4bb769f1bffb3eed7f8b1e71cedb00da604805e07163dc2f4bf
BLAKE2b-256 checksum
How to use checksums
155f647dfd0d3588833734a0c3de0536f0caf51f3051ffe4e9feb1787c09aa6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Download URL points_lsd-0.1.0-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Size 118.9 kB
Tags CPython 3.10 Linux glibc 2.24+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
2e0855e27f33a697e43c05316166eee5a7c87e11407d1e1c8ce164b6c55fb581
BLAKE2b-256 checksum
How to use checksums
d74a1c7b8b3fd6b868f9a3881151877a42accf6db830016ac558b69e2eedcf52
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp310-cp310-macosx_11_0_arm64.whl

Download URL points_lsd-0.1.0-cp310-cp310-macosx_11_0_arm64.whl
Size 108.2 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
e2febd6ee1a6a8bf4ecf934488d2eb42a3e1d5c91035a7b1dec0bb1a52a8cc34
BLAKE2b-256 checksum
How to use checksums
6445f48d42e52e2920944342ea1db9374f021f52fcf3c763ed9cd6f2adb6d879
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Release files / points_lsd-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl

Download URL points_lsd-0.1.0-cp310-cp310-macosx_10_9_x86_64.whl
Size 119.5 kB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
86dd8298aafadec78d8bd1b35c5ce20b495d502cd6db0e0a9e9058ea801d3be8
BLAKE2b-256 checksum
How to use checksums
11bcb98fdd78e01ee919c06aacce8efca8fa4b601e52f5fee4b178738643da4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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

Transparency log

Security for points-lsd 0.1.0

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 26 files in this release have been uploaded with provenance metadata.

Select from 26 files

Attestation for points_lsd-0.1.0.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 Aug 28, 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.

Release history Release notifications | RSS feed

This release

0.1.0 This release

26 release files Full provenance

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