Skip to main content
https://github.com/koddachad/k_ctds/actions/workflows/ci-cd.yml/badge.svg https://ci.appveyor.com/api/projects/status/tlgkdm69ldx7wc78?svg=true https://img.shields.io/pypi/v/k-ctds.svg https://codecov.io/github/koddachad/k_ctds/graph/badge.svg

k-cTDS is a full Python DB API-2.0-compliant SQL Server database library for Linux, Windows, and Mac OS X supporting Python 3.

k-cTDS is a maintained fork of cTDS, originally developed by Zillow.

The full documentation for k-cTDS can be found here.

Features

  • Supports Microsoft SQL Server 2008 and up.

  • Complete DB API-2.0 support.

  • Python 3.9-3.14 support.

  • Bulk insert (bcp) support.

  • Written entirely in C.

  • Pre-built wheels with bundled FreeTDS and OpenSSL for Linux, macOS, and Windows.

  • TLS/SSL support out of the box (OpenSSL 3.0).

Installation

Install from PyPI using pip. Pre-built wheels are available for Linux (x86_64, aarch64), macOS (x86_64, arm64), and Windows (AMD64):

pip install k-ctds

That’s it — the wheels bundle FreeTDS and OpenSSL so there is nothing else to install. TLS/SSL connections to SQL Server (including Azure SQL) work out of the box.

Using a Custom FreeTDS

If you need to link against your own build of FreeTDS (for example, to use a newer version or one compiled with different options), install from source:

pip install k-ctds --no-binary k-ctds

Point the build at your FreeTDS installation using environment variables:

export CTDS_INCLUDE_DIRS=/path/to/freetds/include
export CTDS_LIBRARY_DIRS=/path/to/freetds/lib
export CTDS_RUNTIME_LIBRARY_DIRS=/path/to/freetds/lib
pip install k-ctds --no-binary k-ctds

On Debian/Ubuntu you can use the system FreeTDS:

sudo apt-get install freetds-dev python3-dev
pip install k-ctds --no-binary k-ctds

On macOS with Homebrew:

brew install freetds
pip install k-ctds --no-binary k-ctds

On Windows (requires Visual Studio 2022 Build Tools, CMake, and 7-Zip):

# Build FreeTDS from source (uses the included helper script)
./windows/freetds-install.ps1

$Env:CTDS_INCLUDE_DIRS = "$(pwd)/build/include"
$Env:CTDS_LIBRARY_DIRS = "$(pwd)/build/lib"
pip install k-ctds --no-binary k-ctds

Dependencies

When installed from a pre-built wheel: none — FreeTDS, OpenSSL, and all native dependencies are bundled.

When installed from source: FreeTDS and its development headers must be available on the system.

Releasing

Publishing new versions of the package and documentation is automated using Github Actions workflows. Official releases are marked using git tags. Pushing the tag to the git remote will trigger the automated deployment. E.g.

git tag -a v1.2.3 -m 'v1.2.3'
git push --tags

Documentation

Generate documentation using the following:

tox -e docs
# Generated to build/docs/

Documentation is hosted on GitHub Pages. As such, the source code for the documentation pages must be committed to the gh-pages branch in order to update the live documentation.

Development

Local development and testing is supported on Linux-based systems running tox and Docker. Docker containers are used for running a local instance of SQL Server on Linux. Only Docker and tox are required for running tests locally on Linux or OS X systems. pyenv is recommended for managing multiple local versions of Python. By default all tests are run against the system version of FreeTDS. GNU Make targets are provided to make compiling specific FreeTDS versions locally for testing purposes. For example:

# Run tests against FreeTDS version 1.1.24
make test-1.1.24

Development and testing will require an instance of SQL Server on Linux running for validation. A script, ./scripts/ensure-sqlserver.sh, is provided to start a Docker container running the database and create the login used by the tests.

# Start a docker-based SQL Server instance.
# The default tox targets will do this automatically for you.
make start-sqlserver

# Run tests as needed ...

# Stop the docker-base SQL Server instance.
make stop-sqlserver

Testing

Testing is designed to be relatively seamless using Docker containers and SQL Server on Linux. The pytest framework is used for running the automated tests.

To run the tests against the system version of FreeTDS and Python, use:

tox

GNU make targets are provided for convenience and to provide a standard method for building and installing the various versions of FreeTDS used in testing. Most targets are wrappers around tox or replicate some behavior in the CI/CD automation.

To run the tests against an arbitrary version of FreeTDS:

# Python X.Y & FreeTDS Z.ZZ.ZZ
make test_X.Y_Z.ZZ.ZZ

To run tests against all supported versions of FreeTDS and Python and additional linting and metadata checks:

make check

Valgrind

valgrind is utilized to ensure memory is managed properly and to detect defects such as memory leaks, buffer overruns, etc. Because valgrind requires Python is compiled with specific flags, a Docker file is provided to compile Python as necessary to run the test suite under valgrind.

To run test test suite under valgrind:

make valgrind

Metadata

Release files for k-ctds 2.2.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 k-ctds 2.2.0
File Size Uploaded
k_ctds-2.2.0.tar.gz 148.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for k-ctds 2.2.0
File
k_ctds-2.2.0-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
k_ctds-2.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
k_ctds-2.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.14 CPython 3.14 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
k_ctds-2.2.0-cp314-cp314-macosx_15_0_x86_64.whl CPython 3.14 CPython 3.14 macOS 15.0+ x86-64 Details
k_ctds-2.2.0-cp314-cp314-macosx_15_0_arm64.whl CPython 3.14 CPython 3.14 macOS 15.0+ ARM64 Details
k_ctds-2.2.0-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
k_ctds-2.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
k_ctds-2.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
k_ctds-2.2.0-cp313-cp313-macosx_15_0_x86_64.whl CPython 3.13 CPython 3.13 macOS 15.0+ x86-64 Details
k_ctds-2.2.0-cp313-cp313-macosx_15_0_arm64.whl CPython 3.13 CPython 3.13 macOS 15.0+ ARM64 Details
k_ctds-2.2.0-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
k_ctds-2.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
k_ctds-2.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
k_ctds-2.2.0-cp312-cp312-macosx_15_0_x86_64.whl CPython 3.12 CPython 3.12 macOS 15.0+ x86-64 Details
k_ctds-2.2.0-cp312-cp312-macosx_15_0_arm64.whl CPython 3.12 CPython 3.12 macOS 15.0+ ARM64 Details
k_ctds-2.2.0-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
k_ctds-2.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
k_ctds-2.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
k_ctds-2.2.0-cp311-cp311-macosx_15_0_x86_64.whl CPython 3.11 CPython 3.11 macOS 15.0+ x86-64 Details
k_ctds-2.2.0-cp311-cp311-macosx_15_0_arm64.whl CPython 3.11 CPython 3.11 macOS 15.0+ ARM64 Details
k_ctds-2.2.0-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
k_ctds-2.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
k_ctds-2.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ ARM64, Linux glibc 2.28+ ARM64 Details
k_ctds-2.2.0-cp310-cp310-macosx_15_0_x86_64.whl CPython 3.10 CPython 3.10 macOS 15.0+ x86-64 Details
k_ctds-2.2.0-cp310-cp310-macosx_15_0_arm64.whl CPython 3.10 CPython 3.10 macOS 15.0+ ARM64 Details
k_ctds-2.2.0-cp39-cp39-win_amd64.whl CPython 3.9 CPython 3.9 Windows x86-64 Details
k_ctds-2.2.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
k_ctds-2.2.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl CPython 3.9 CPython 3.9 Linux glibc 2.28+ ARM64, Linux glibc 2.17+ ARM64 Details
k_ctds-2.2.0-cp39-cp39-macosx_15_0_x86_64.whl CPython 3.9 CPython 3.9 macOS 15.0+ x86-64 Details
k_ctds-2.2.0-cp39-cp39-macosx_15_0_arm64.whl CPython 3.9 CPython 3.9 macOS 15.0+ ARM64 Details

Total release size: 68.5 MB

Release files / k_ctds-2.2.0.tar.gz

Download URL k_ctds-2.2.0.tar.gz
Size 148.5 kB
Tags Source
SHA-256 checksum
How to use checksums
7e96d2e88513d1955d33f658713ef76572831e7896ce5e4c7bf1c8857932e387
BLAKE2b-256 checksum
How to use checksums
337f98a618c75c95cdff575d9e7ff57e183b01068f7bd3be5e5d6b543b5262b1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp314-cp314-win_amd64.whl

Download URL k_ctds-2.2.0-cp314-cp314-win_amd64.whl
Size 494.7 kB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
3ffeb6abd16b5daa0d0279d4c5625763d2517680b1c4e7037f08b1c1966e9782
BLAKE2b-256 checksum
How to use checksums
371a76dd75b1831c8a388d11320d5c5b030e47b200e853f2ed09b30c423756ad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL k_ctds-2.2.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
695af9cfad58adf2dc44e9ac7b0cd57a35c2c4d96e8c9a0205fe24d769a67ca1
BLAKE2b-256 checksum
How to use checksums
e71b174de0146d0beb895c6d4a547803bf8ce48a643560c305a778055f704a90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL k_ctds-2.2.0-cp314-cp314-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 2.3 MB
Tags CPython 3.14 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
64431a0eb01a2c33f65db6bbc2b8f7b83a146ad9cdd9edd3d5c01b844b53ba53
BLAKE2b-256 checksum
How to use checksums
d16a17bd529787b07d65f465fd3996fe8cb99e377880bd948d8c452be131a1f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp314-cp314-macosx_15_0_x86_64.whl

Download URL k_ctds-2.2.0-cp314-cp314-macosx_15_0_x86_64.whl
Size 3.0 MB
Tags CPython 3.14 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
85824c3b84cc876fcf04ac6d898811085e16135602c11dcebf29036977576021
BLAKE2b-256 checksum
How to use checksums
fe6bc343ad553e160c52ff8addd69c06e85596e59ebb647168079e3b9d460662
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp314-cp314-macosx_15_0_arm64.whl

Download URL k_ctds-2.2.0-cp314-cp314-macosx_15_0_arm64.whl
Size 3.2 MB
Tags CPython 3.14 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
f135b2648c98ed9e07e1048ecaf96e0782537b4e416e2d1db14a5a026cbd222d
BLAKE2b-256 checksum
How to use checksums
9023dd0829a4bf8b44f6273b4636491fb1e9fadd908e308aac721d3fd4e4841f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp313-cp313-win_amd64.whl

Download URL k_ctds-2.2.0-cp313-cp313-win_amd64.whl
Size 482.3 kB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
d24d1395f0bd82ff09dd0d1a5759500339a2da0df5db83c5785935a7180200ca
BLAKE2b-256 checksum
How to use checksums
ba8f334ee298eadb01c425b28981f80f4b01b30d33cb644a87fb949706051e67
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL k_ctds-2.2.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d28f0fb9f8d047a947f5bbc5f916cf832261388df95f48a5b65a33aa5911c8c8
BLAKE2b-256 checksum
How to use checksums
3c0723455afcbc4165a1df59dae65622801bf169499d7a5c9bf0482be09dfce3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL k_ctds-2.2.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 2.3 MB
Tags CPython 3.13 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
d3da43d2cb7b724bee9a6352bd0b8bd8f9bd575fc41e771bc40dbf7f5b76320c
BLAKE2b-256 checksum
How to use checksums
3d377548a4a20e03e3c83e38b2ab6e2dc91e19505643d2eb4fd819eece1aaa6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp313-cp313-macosx_15_0_x86_64.whl

Download URL k_ctds-2.2.0-cp313-cp313-macosx_15_0_x86_64.whl
Size 3.0 MB
Tags CPython 3.13 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
b40f2cb2267fc3e90f1b69db463bca8de471cc114dbd5e762c3d90dafbd470ba
BLAKE2b-256 checksum
How to use checksums
633c56d09a8fb9d1e905276c008bea8289ea195fe12127c79d5d52540d6842c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp313-cp313-macosx_15_0_arm64.whl

Download URL k_ctds-2.2.0-cp313-cp313-macosx_15_0_arm64.whl
Size 3.2 MB
Tags CPython 3.13 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
9681e7a298c339ac8190a7b02a0e29defbaf3cfb07ff6ea3adfa213be8811c35
BLAKE2b-256 checksum
How to use checksums
aa58d4569d27153eeeb9b71b8becc4d5519c402b775947e0cdd76173dd6d9e9a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp312-cp312-win_amd64.whl

Download URL k_ctds-2.2.0-cp312-cp312-win_amd64.whl
Size 482.3 kB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
f781e1726132a4fa97671be8958a6543b1655761be03add09fc7fad344b3ac0b
BLAKE2b-256 checksum
How to use checksums
499920bdaaeb9c7fa2a5f16ba81a399230733ba7526780c4714b77172259f8ab
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL k_ctds-2.2.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.12 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
deda3c17cd7e706c3e69eba36a0ee1bf3c148646ba0dfbf2c33e33fdbdcd20c0
BLAKE2b-256 checksum
How to use checksums
44cc242dc08d254ace62e78af900ecf96a20fbdb956b73b15c8929edfe379b3a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL k_ctds-2.2.0-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 2.3 MB
Tags CPython 3.12 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
30702d29d693ff06d88dc3b66ccc27364f0d837ada253ddbffda37210584c7dd
BLAKE2b-256 checksum
How to use checksums
395f626d4a0c59ca0c457acdeb3936ed440f339e733d39f0399cf802b875ce56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp312-cp312-macosx_15_0_x86_64.whl

Download URL k_ctds-2.2.0-cp312-cp312-macosx_15_0_x86_64.whl
Size 3.0 MB
Tags CPython 3.12 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
0496e3941257a19fe6803bea7d69b9be14ff4ac20707efa88960a6f256440e21
BLAKE2b-256 checksum
How to use checksums
eb8ddf2879e25a2efd438a11a8bab55dbe55328e2043d74ffe7a3ee69b4f670b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp312-cp312-macosx_15_0_arm64.whl

Download URL k_ctds-2.2.0-cp312-cp312-macosx_15_0_arm64.whl
Size 3.2 MB
Tags CPython 3.12 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
f0a8f8a9492bd3e8111b8ba611246a43c6cb7a4313a250dee01977b498321825
BLAKE2b-256 checksum
How to use checksums
49bf63ff84b15474a356a3795b8ad29d2f56f78101d8071e7648c6735a7d8f9d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp311-cp311-win_amd64.whl

Download URL k_ctds-2.2.0-cp311-cp311-win_amd64.whl
Size 481.9 kB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
a4d12b47c56e6810ed1696b1a4dff8b41fc3a0c7c0440de4c031755e7e04e5ea
BLAKE2b-256 checksum
How to use checksums
1329238bc5e4546b11e7532a40cb9f03099e70f67f2829dc4f115ed91d7e75b0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL k_ctds-2.2.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.11 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
153f128d52ab80ab5f9a13543ca8fffdec74ad1918f1640247d6faa4d5e49001
BLAKE2b-256 checksum
How to use checksums
bfe6781fccead4deb7e93bfb0a25cece76d138ea590062f0996d1213ad5b90bb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL k_ctds-2.2.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 2.3 MB
Tags CPython 3.11 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
8f81ebaa26e6ae93ecc3d635fb5d4752b5d936615d4605aa0d6253f3bfd58987
BLAKE2b-256 checksum
How to use checksums
16e8edd0a284e946a53972e685de4ccd4e83596b91cfd77bd320f859edab1d7e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp311-cp311-macosx_15_0_x86_64.whl

Download URL k_ctds-2.2.0-cp311-cp311-macosx_15_0_x86_64.whl
Size 3.0 MB
Tags CPython 3.11 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
e8bcb08c833e4c65bc3ce0bd70cccd54c8b9d6e05fa3273c090c4d6b197f5458
BLAKE2b-256 checksum
How to use checksums
c69a3f4e677c9e2b82171a3154075d981479bc8dac3da649530d46091e42dd3f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp311-cp311-macosx_15_0_arm64.whl

Download URL k_ctds-2.2.0-cp311-cp311-macosx_15_0_arm64.whl
Size 3.2 MB
Tags CPython 3.11 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
2170364e480e8be49143f3613bcab6c929e24c151b26a6e66f369396f84152b8
BLAKE2b-256 checksum
How to use checksums
98e0eeb94a476518b414fb05afdcd768b9b82d8b6b66cdf55716826fe578bb76
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp310-cp310-win_amd64.whl

Download URL k_ctds-2.2.0-cp310-cp310-win_amd64.whl
Size 481.9 kB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
6b3c2138c13ed9895da9dc3442f8bb69a9e1688b137aabcc4364afaa424b18e8
BLAKE2b-256 checksum
How to use checksums
fbbf617b3aa24d072101ce593f40adb50a91d53a38c5ec15e4ea4b3485445259
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL k_ctds-2.2.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.10 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d374a39fb8eda63b8bd4a98434c9c5828c226de23e90e26e528f768b23b50001
BLAKE2b-256 checksum
How to use checksums
2c0fafc7e490d348d3cc6386a7c678b4bec5832c41ef2c7a57140c9e5b0a6493
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL k_ctds-2.2.0-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 2.3 MB
Tags CPython 3.10 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
1381d0ad6c208d36b49a7ed535d15d0a34114fa212ac1152c12d0d89f1909640
BLAKE2b-256 checksum
How to use checksums
8486e942c8286472444ca2b4e2df97fb8414775cbaaa87675237eb57e2059965
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp310-cp310-macosx_15_0_x86_64.whl

Download URL k_ctds-2.2.0-cp310-cp310-macosx_15_0_x86_64.whl
Size 3.0 MB
Tags CPython 3.10 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
310f105e4283061d78fcc02fb1aa459ad50a39d25336589f2e51a67aaafdc57f
BLAKE2b-256 checksum
How to use checksums
d38f1bbf918e31a6de89aa76e20feb31411aa5cb757a971cf2b8c4e3332694e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp310-cp310-macosx_15_0_arm64.whl

Download URL k_ctds-2.2.0-cp310-cp310-macosx_15_0_arm64.whl
Size 3.2 MB
Tags CPython 3.10 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
854b72d6792c85979814d694941fdc9e5ff66ac25c5c35d975789d4aae89958e
BLAKE2b-256 checksum
How to use checksums
4d574c80859107aa429fc09ba1f186c3776189c26785087dae511733c5fdacb9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp39-cp39-win_amd64.whl

Download URL k_ctds-2.2.0-cp39-cp39-win_amd64.whl
Size 482.7 kB
Tags CPython 3.9 Windows x86-64
SHA-256 checksum
How to use checksums
cac34f5bd0a660a25e45550f0932f2931ab547ecf4bbcca892e5368b1c93da60
BLAKE2b-256 checksum
How to use checksums
25c78729c6950b043825f73633d8ea20bbbe22a8e8385b0695808366ae09c3c4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL k_ctds-2.2.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 2.4 MB
Tags CPython 3.9 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
8a8fbf2cfd85d3c96da5133e7114270ebf87f64f8bd561167fe4ccfa728866eb
BLAKE2b-256 checksum
How to use checksums
57e63a0f355099b55c5401b4d5ddbd3cd2307d56503e4f9ffb15d4e1e6977213
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl

Download URL k_ctds-2.2.0-cp39-cp39-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl
Size 2.3 MB
Tags CPython 3.9 Linux glibc 2.17+ ARM64 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
b4381cbbab3d457e71a083546a07acf13b2a8c2290dac8c42e5d3377e484b744
BLAKE2b-256 checksum
How to use checksums
ec164a04eedc6254d00bfd54b9f160166140299270f037fd99c41923702d874b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp39-cp39-macosx_15_0_x86_64.whl

Download URL k_ctds-2.2.0-cp39-cp39-macosx_15_0_x86_64.whl
Size 3.0 MB
Tags CPython 3.9 macOS 15.0+ x86-64
SHA-256 checksum
How to use checksums
051faf97a31138b060cdf67dfc9c0471d7e416b65ef3c682ac2b4f76740746cc
BLAKE2b-256 checksum
How to use checksums
eeadf2d778566ef3dbb4a00b7c86bbeba63d723068f7ef8d7ada7d7536c331f8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release files / k_ctds-2.2.0-cp39-cp39-macosx_15_0_arm64.whl

Download URL k_ctds-2.2.0-cp39-cp39-macosx_15_0_arm64.whl
Size 3.2 MB
Tags CPython 3.9 macOS 15.0+ ARM64
SHA-256 checksum
How to use checksums
618aeb22601937301bfe77d3cd0326e65262909a73ea072df19f37366e6d1d7a
BLAKE2b-256 checksum
How to use checksums
9a4a8a1dd9797eca166019b5ab5ffab371e8446632e52ee1e03e4535a98e9da9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Mar 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.2.0 This release

31 release files

2.1.1

31 release files

2.1.0

26 release files

2.0.0

26 release files

1.15.0

1 release file

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