Skip to main content

marinholab-sas-core

Python bindings for the ROS-free SmartArmStack C++ core.

This repository wraps MarinhoLab/sas_cpp (the pure-C++ part of SmartArmStack/sas_core) with pybind11, exposing it to Python as the marinholab.sas.core package.

More information about SmartArmStack is available in smartarmstack.github.io.

Contents

  • marinholab/sas/core/ — the Python package.
    • _core.* — compiled pybind11 extension (the C++ bindings live in src/).
    • modeling/ — kinematic modeling bindings (re-exported from _core).
    • papers/ — reference implementations from published work.
      • papers/icra2019/ — the task-space Controller (RCM + joint-limit constraints as a QP) from "A Unified Framework for the Teleoperation of Surgical Robots in Constrained Workspaces" (ICRA 2019).
    • example_*.py — example scripts (also installed as commands).
  • src/ — the C++ binding sources (ported from SmartArmStack/sas_core).
  • submodules/sas_cpp — the C++ core (git submodule, consumed via CMake).
  • submodules/dqrobotics_cpp — the dqrobotics C++ library (git submodule, pinned to the commit the required dqrobotics Python release is built from).
  • submodules/pybind11 — pybind11 (git submodule, pinned to v3.0.4).
  • docker/ — ubuntu:noble build environment and full test pipeline.

The C++ core depends on Eigen3 and dqrobotics. dqrobotics is compiled from the submodules/dqrobotics_cpp submodule and linked statically into the extension module, together with the C++ core, so no dqrobotics library needs to be installed. The Python package additionally depends on the dqrobotics Python package, which registers the dual-quaternion and robot-model types the bindings expose (pybind11 shares them between the two extension modules, so the submodule is kept at the same dqrobotics/cpp commit as that release).

Installation

From PyPI, with wheels for Python 3.10–3.14 on Linux (x86_64, aarch64), macOS (arm64, 14.0 or later) and Windows (x86_64):

pip install marinholab-sas-core

The wheels match the Python versions that dqrobotics publishes wheels for, in its pre-releases, which the requirement dqrobotics>=26.4.0a7 selects.

From source:

git clone --recursive https://github.com/MarinhoLab/sas_py.git
cd sas_py
pip install . --no-build-isolation

Building requires cmake (>= 3.16), ninja, a C++17 compiler and Eigen3. On Debian/Ubuntu:

sudo apt install build-essential g++ cmake ninja-build python3-dev libeigen3-dev

On macOS, with Eigen from Homebrew:

brew install eigen cmake ninja
CMAKE_ARGS="-DCMAKE_PREFIX_PATH=$(brew --prefix)" pip install . --no-build-isolation

On Windows, Eigen comes from vcpkg, expected at C:/vcpkg (vcpkg install eigen3:x64-windows).

Usage

from marinholab.sas.core import (
    Clock,
    Statistics,
    RobotDriver,
    ShutdownSignaler,
)

# High-resolution sampling clock
clock = Clock(0.01)          # 10 ms sampling period
clock.init()
for _ in range(100):
    clock.update_and_sleep()
print(clock.get_statistics(Statistics.Mean, Clock.TimeType.Computational))

# Subclass RobotDriver to drive hardware
class MyDriver(RobotDriver):
    def __init__(self, ss):
        super().__init__(ss)
    def get_joint_positions(self):
        return np.zeros(6)
    def set_target_joint_positions(self, target):
        ...
    def connect(self):
        ...
    def disconnect(self):
        ...
    def initialize(self):
        ...
    def deinitialize(self):
        ...

Kinematic modeling

import numpy as np
from dqrobotics import DQ
from marinholab.sas.core import SerialManipulatorSimulatorFriendly

# 3 revolute joints about X, Y, Z with zero per-joint offsets.
arm = SerialManipulatorSimulatorFriendly(
    offset_before=[DQ([1]), DQ([1]), DQ([1])],
    offset_after=[DQ([1]), DQ([1]), DQ([1])],
    actuation_types=[
        SerialManipulatorSimulatorFriendly.ActuationType.RX,
        SerialManipulatorSimulatorFriendly.ActuationType.RY,
        SerialManipulatorSimulatorFriendly.ActuationType.RZ,
    ],
)
q = np.array([0.1, -0.2, 0.3])
x = arm.raw_fkm(q, 2)                 # dual-quaternion pose of the end-effector
J = arm.raw_pose_jacobian(q, 2)       # 8 x 3 pose Jacobian

The examples are installed as commands:

  • sas_core_clock_example — a 10 ms Clock with timing statistics.
  • sas_core_clock_sched_fifo_example — a 1 ms Clock under SCHED_FIFO.
  • sas_core_robot_driver_subclass_example — subclass RobotDriver in Python and exercise the trampoline (connect / initialize / targets / limits).

Versioning

The version is computed from git tags at build time by setuptools-git-versioning. A monthly version tag of the form YY.MM (e.g. 26.09) plus the number of commits since that tag yields a rolling YY.MM.NN version (e.g. 26.09.3), mirroring MarinhoLab/sas_cpp. An untagged checkout builds as 0.0.1 (a development version).

Testing

A full build + test pipeline runs in an ubuntu:noble container:

cd docker
docker compose run --rm marinholab_sas_core

License

See LICENSE for details (LGPLv3).

Metadata

Release files for marinholab-sas-core 26.9.12

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

Built distributions (wheels)

Table of built distributions (wheels) for marinholab-sas-core 26.9.12
File
marinholab_sas_core-26.9.12-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
marinholab_sas_core-26.9.12-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
marinholab_sas_core-26.9.12-cp314-cp314-manylinux_2_39_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ ARM64 Details
marinholab_sas_core-26.9.12-cp314-cp314-macosx_14_0_arm64.whl CPython 3.14 CPython 3.14 macOS 14.0+ ARM64 Details
marinholab_sas_core-26.9.12-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
marinholab_sas_core-26.9.12-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
marinholab_sas_core-26.9.12-cp313-cp313-manylinux_2_39_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ ARM64 Details
marinholab_sas_core-26.9.12-cp313-cp313-macosx_14_0_arm64.whl CPython 3.13 CPython 3.13 macOS 14.0+ ARM64 Details
marinholab_sas_core-26.9.12-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
marinholab_sas_core-26.9.12-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details
marinholab_sas_core-26.9.12-cp312-cp312-manylinux_2_39_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ ARM64 Details
marinholab_sas_core-26.9.12-cp312-cp312-macosx_14_0_arm64.whl CPython 3.12 CPython 3.12 macOS 14.0+ ARM64 Details
marinholab_sas_core-26.9.12-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
marinholab_sas_core-26.9.12-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details
marinholab_sas_core-26.9.12-cp311-cp311-manylinux_2_39_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ ARM64 Details
marinholab_sas_core-26.9.12-cp311-cp311-macosx_14_0_arm64.whl CPython 3.11 CPython 3.11 macOS 14.0+ ARM64 Details
marinholab_sas_core-26.9.12-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
marinholab_sas_core-26.9.12-cp310-cp310-manylinux_2_39_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ x86-64 Details
marinholab_sas_core-26.9.12-cp310-cp310-manylinux_2_39_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ ARM64 Details
marinholab_sas_core-26.9.12-cp310-cp310-macosx_14_0_arm64.whl CPython 3.10 CPython 3.10 macOS 14.0+ ARM64 Details

Total release size: 4.6 MB

Release files / marinholab_sas_core-26.9.12-cp314-cp314-win_amd64.whl

Download URL marinholab_sas_core-26.9.12-cp314-cp314-win_amd64.whl
Size 203.7 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
78129a0678f96adf50adb180d84f73b8973eb65e686421b6695d8642e4112e64
BLAKE2b-256 checksum
How to use checksums
0da959468ef724dcaaf022c9c385a88328eb08234e7f3167820b1ac37160fb62
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL marinholab_sas_core-26.9.12-cp314-cp314-manylinux_2_39_x86_64.whl
Size 297.6 kB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
8a6658c9327ecc6c97fca9a65c3553aaa8682ac7c89666fe755b64e14a6dbe12
BLAKE2b-256 checksum
How to use checksums
d199ad100e36d89ffb72d0353d68c0b69b7460c10ead46f6a7a05596053cf646
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp314-cp314-manylinux_2_39_aarch64.whl

Download URL marinholab_sas_core-26.9.12-cp314-cp314-manylinux_2_39_aarch64.whl
Size 263.6 kB
Tags CPython 3.14 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
a3d40e7b9e1ff3a7d46dd41fb6439a065a7480164e8012d79ad2ac78968af8e7
BLAKE2b-256 checksum
How to use checksums
b8b09d9f671c74e256606080c098e76db55e64814bab6511831fd70386759bc5
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp314-cp314-macosx_14_0_arm64.whl

Download URL marinholab_sas_core-26.9.12-cp314-cp314-macosx_14_0_arm64.whl
Size 172.2 kB
Tags CPython 3.14 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
16fc2b518c281168793c966ad8de764fb8d69b451b9b32044f6fc278da193ef9
BLAKE2b-256 checksum
How to use checksums
bf6bae0c041b8868263cf22f8aecb9032c1c9c7948eb35117f90bdc934fccff0
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp313-cp313-win_amd64.whl

Download URL marinholab_sas_core-26.9.12-cp313-cp313-win_amd64.whl
Size 198.9 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
0cb0ee15d5f2085ab2782357b73467d93d2a4e5acc91cbbf692fa1c9fcc82e1c
BLAKE2b-256 checksum
How to use checksums
c62a3a17b004e6ae5d9b3cc17b55dee317f5c2cf4d0c99c791d317f44e5e40fe
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL marinholab_sas_core-26.9.12-cp313-cp313-manylinux_2_39_x86_64.whl
Size 297.5 kB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
435db2aa7f9833a453e84b3cf15cc9243df4d307f55796f448bc55eea14d3578
BLAKE2b-256 checksum
How to use checksums
e24bb5068e03014b3c177c12c6c4346043f66b9c82c4ee0f62a4305fcf0c8e1f
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp313-cp313-manylinux_2_39_aarch64.whl

Download URL marinholab_sas_core-26.9.12-cp313-cp313-manylinux_2_39_aarch64.whl
Size 263.3 kB
Tags CPython 3.13 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
07a11d91806c31bb276c1c40b2f6183b48c50bd38db28488966bb731416536da
BLAKE2b-256 checksum
How to use checksums
f65ce2049fe0b2ecd8dbaa8058eaaf535ea3bdb1c2a9821a08a1877a5671d577
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp313-cp313-macosx_14_0_arm64.whl

Download URL marinholab_sas_core-26.9.12-cp313-cp313-macosx_14_0_arm64.whl
Size 171.8 kB
Tags CPython 3.13 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
229aa17f434d5590049ebadd6251abc49f1463d346f74266fc0735da3e385e38
BLAKE2b-256 checksum
How to use checksums
2cf05dea2fca5e447df542cede905435a0c2ae6049b6a7715d76fc1b311f15e2
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp312-cp312-win_amd64.whl

Download URL marinholab_sas_core-26.9.12-cp312-cp312-win_amd64.whl
Size 198.9 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
09a28e7a20eb9ae6bb1fe82e1a784c439fdcd620510d4ec165eaa0e591f59341
BLAKE2b-256 checksum
How to use checksums
02195aeefb000c56746ac63981d00cca83034180c7029437d8a66ed67bff9ef8
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL marinholab_sas_core-26.9.12-cp312-cp312-manylinux_2_39_x86_64.whl
Size 297.4 kB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
8593ddeec34f0ee04438ae4b9f3b3daa5d1e64d92e4a9a55fdcd36038ece10fb
BLAKE2b-256 checksum
How to use checksums
eb13aa0090b1213b755bb601e84688d9b0699755db425d29e43ec044210a72d9
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp312-cp312-manylinux_2_39_aarch64.whl

Download URL marinholab_sas_core-26.9.12-cp312-cp312-manylinux_2_39_aarch64.whl
Size 263.0 kB
Tags CPython 3.12 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
8db1599f049fc21545bc18c49dff9f355d5aa37da665d68f295c6ce339a32a9b
BLAKE2b-256 checksum
How to use checksums
40e3e40fabbf8273bb879b2d61867817ca0773f968dc37c4a2d4434083664ad0
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp312-cp312-macosx_14_0_arm64.whl

Download URL marinholab_sas_core-26.9.12-cp312-cp312-macosx_14_0_arm64.whl
Size 171.8 kB
Tags CPython 3.12 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
c8b9fa757bfe5231984f1cbb994431ca004208ef4226aa3e26f9c88989ac6929
BLAKE2b-256 checksum
How to use checksums
95eef6c26efadf559755d243293ad75de843c05748de4d4942bcb8125e48a4bc
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp311-cp311-win_amd64.whl

Download URL marinholab_sas_core-26.9.12-cp311-cp311-win_amd64.whl
Size 195.2 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
84bfe9304708d69cc1d269815c7c4e9f0207b20dc9720a02d1d7eabc0a2c710e
BLAKE2b-256 checksum
How to use checksums
436be7fd1f2b68ef51acac38cfd43ff64687516dbb6093a1046a50c39b1efbd9
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL marinholab_sas_core-26.9.12-cp311-cp311-manylinux_2_39_x86_64.whl
Size 296.9 kB
Tags CPython 3.11 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
05f672f7b452972f2e71ba40dd172135ed961bdb3b6c14d47c315e7edb3e0a4c
BLAKE2b-256 checksum
How to use checksums
c1aa6a0bd52fa14d19a3d99a0c6e1d062a606856c8331d6b552f88ea996d7438
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp311-cp311-manylinux_2_39_aarch64.whl

Download URL marinholab_sas_core-26.9.12-cp311-cp311-manylinux_2_39_aarch64.whl
Size 263.0 kB
Tags CPython 3.11 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
3bef88ad64b4d8faceda60f7c2952aad523fddb75b09c7a57b4a6fd1ef5a97a4
BLAKE2b-256 checksum
How to use checksums
a4c602f79824b4689a5d8174ae6f1872d2ff1675308474cb055cfcaf29562e2f
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp311-cp311-macosx_14_0_arm64.whl

Download URL marinholab_sas_core-26.9.12-cp311-cp311-macosx_14_0_arm64.whl
Size 170.9 kB
Tags CPython 3.11 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
69c906be780778cb7ffcf079a5bb1ba451cef843a13ced257d4d162e751fce0e
BLAKE2b-256 checksum
How to use checksums
fd6d880d437e4b630221e720b523dbc5a2e3dc45de9d0d643ff83233845e098b
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp310-cp310-win_amd64.whl

Download URL marinholab_sas_core-26.9.12-cp310-cp310-win_amd64.whl
Size 192.6 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
1c9375ea3d8c4de6ce4d80adae53def84561ff83d78e8e99e124dcbf24e287ba
BLAKE2b-256 checksum
How to use checksums
2d80d07c9d82b51a63bd24a1d5ab88e49ae98c0d73edbc29403eb25e1f0f35ad
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp310-cp310-manylinux_2_39_x86_64.whl

Download URL marinholab_sas_core-26.9.12-cp310-cp310-manylinux_2_39_x86_64.whl
Size 296.3 kB
Tags CPython 3.10 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
903a2ee3e87f0590f2cbfbc00567e48e01fadfeffda19e24f61b135df41db2b5
BLAKE2b-256 checksum
How to use checksums
af56a778c874de282afcaabe8cbb286aae95ad390f990afbb1096f3a0c855476
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp310-cp310-manylinux_2_39_aarch64.whl

Download URL marinholab_sas_core-26.9.12-cp310-cp310-manylinux_2_39_aarch64.whl
Size 262.9 kB
Tags CPython 3.10 Linux glibc 2.39+ ARM64
SHA-256 checksum
How to use checksums
7bcbd4ac1344db957a58820a0bb61bde0531bc36af63adcff1b4833f2b462a50
BLAKE2b-256 checksum
How to use checksums
ecc7e4d491e2e916733e89cffc0617cab247db292399c0b3363f400ed57ef9eb
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 Oct 1, 2026.

Transparency log

Release files / marinholab_sas_core-26.9.12-cp310-cp310-macosx_14_0_arm64.whl

Download URL marinholab_sas_core-26.9.12-cp310-cp310-macosx_14_0_arm64.whl
Size 169.9 kB
Tags CPython 3.10 macOS 14.0+ ARM64
SHA-256 checksum
How to use checksums
37e589d1d7403592e381205e416dcd895030c2c0c172293f070050043a11118b
BLAKE2b-256 checksum
How to use checksums
a6c2bb0154688d9822de52ae98ad5a80c23a9858a67de6f448c8c2bc927adcda
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 Oct 1, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

26.9.12 This release

20 release files

26.9.8

9 release files

26.9.6

9 release files

26.9.5

9 release files

26.9.4

6 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page