pytktable-binaries
Prebuilt Tktable, the Tcl/Tk table widget, for pytktable, so that Python users don't need to install Tktable with their operating system's package manager.
Each wheel contains Tktable compiled for Tcl/Tk 8.6 and for Tcl/Tk 9.0; Tcl loads the one matching the Tcl/Tk of the Python that runs it. The libraries don't depend on the Python version, so one wheel per platform works with every Python 3.
| Platform | Wheel tags |
|---|---|
| Linux with glibc (most distros) | manylinux_2_28_x86_64, manylinux_2_28_aarch64 |
| Linux with musl (e.g. Alpine) | musllinux_1_2_x86_64, musllinux_1_2_aarch64 |
| macOS 11+, Intel and Apple silicon | macosx_11_0_universal2 |
| Windows | win_amd64, win32, win_arm64 |
Possible future platforms
- Linux on other CPUs: 32-bit ARM (
armv7l, older Raspberry Pi OS),ppc64le,s390x,riscv64. They would be compiled under emulation, which is slow. - Linux with glibc older than 2.28 (
manylinux2014): only end-of-life distributions, e.g. CentOS 7. - macOS older than 11.
- PyPy: the wheels don't depend on the Python version, so they should already work; it would need a test job.
Usage
library_dir() returns the folder to add to Tcl's auto_path. For example, with pytktable:
import os
import tktable_binaries
os.environ["TKTABLE_LIBRARY"] = str(tktable_binaries.library_dir())
How it is built
tktable-srcis a Git submodule pinned to a Tktable release tag.versions.envpins the Tcl/Tk sources it is compiled against (only their headers and stub libraries are used, so the result works with any Tcl/Tk 8.6.x or 9.0.x).scripts/build-unix.sh(Linux, macOS) andscripts/build-windows.ps1(Windows) compile Tktable against Tcl/Tk 8.6 and 9.0, andscripts/collect.pyputs both in oneTktable<version>folder.scripts/make_wheel.pybuilds the wheel of one platform from that folder.- The
Buildworkflow (.github/workflows/build.yml) does all of this on GitHub Actions: it callscompile-linux.yml,compile-macos.ymlandcompile-windows.yml, builds the wheels, then callstest.yml, which tests them with pytktable's tests on each platform, and on Fedora and Alpine (scripts/test-distro.sh).
To update Tktable, check out another tag in the submodule, and set version in pyproject.toml
to its version:
git -C tktable-src fetch --tags
git -C tktable-src checkout <tag>
Versioning
The version is the version of Tktable it contains, plus a fourth number for the releases of this package with the same Tktable (e.g. a build fix or a new platform):
| Change | Version |
|---|---|
| First release with Tktable 2.12.2 | 2.12.2 |
| A fix of this package, same Tktable | 2.12.2.1, 2.12.2.2 |
| Tktable 2.12.3 | 2.12.3 |
PEP 440 allows any number of version components, so
2.12.2 < 2.12.2.1 < 2.12.3.
Development
Install Poetry, then the dev dependencies and the
pre-commit hooks, which format and lint Python, YAML, shell and
PowerShell files, and scan for secrets, on every git commit:
poetry install
poetry run pre-commit install
The PowerShell hook needs PowerShell 7
(pwsh) and PSScriptAnalyzer. Save PSScriptAnalyzer once inside the repository, in .tools/Modules
(not in Git), so nothing changes outside the repository:
New-Item -ItemType Directory -Force .tools/Modules
Save-PSResource PSScriptAnalyzer -Path .tools/Modules -TrustRepository
To run all hooks on all files, as the Checks workflow does:
poetry run pre-commit run --all-files
Releasing
- Set
versioninpyproject.toml(see Versioning) and commit it tomain. - Push a tag with the same version, e.g.
2.12.2.
The Release workflow (.github/workflows/release.yml) then checks that the tag and the version
are equal, builds and tests the wheels, publishes them to PyPI with
Trusted Publishing (no API token), and creates a
GitHub release with them.
AI assistance
This repository was created with the help of Claude (Anthropic). The maintainer reviewed the changes, but not always thoroughly. Please report any problem you find.
License
The build scripts: BSD 2-Clause. Tktable: its own license, included in the wheels.
Metadata
Release files for pytktable-binaries 2.12.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
Total release size: 1.2 MB
Release files / pytktable_binaries-2.12.2-py3-none-win_arm64.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-win_arm64.whl |
|---|---|
| Size | 118.6 kB |
| Tags | Python 3 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
50bac05eb5869eb74329b7fc0e57678a4df15e330d7eaae21a856815957014b4
|
|
BLAKE2b-256 checksum How to use checksums |
21d8dbb5dc94c5c8290483888f8ca18104e87751b0396535d5c4df6123e4eadb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-win_amd64.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-win_amd64.whl |
|---|---|
| Size | 126.8 kB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
49cc0575fdb9e645d4fd6681ae0506a78ae25a85a640ce14806a5963d9127c24
|
|
BLAKE2b-256 checksum How to use checksums |
b704b656cb36a8ac0385cd979e1247fc1061788662d14093f7eaeab9455c72d4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-win32.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-win32.whl |
|---|---|
| Size | 112.8 kB |
| Tags | Python 3 Windows x86-32 |
|
SHA-256 checksum How to use checksums |
460554c633687cefd93aeb5e578e8775100c74b8309f78dc9ab7adcf5612918e
|
|
BLAKE2b-256 checksum How to use checksums |
ef86e0a7db00bf34ad9dddbf32b1bfe7789bb1cfd4971714710dbdee552974e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-musllinux_1_2_x86_64.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 144.4 kB |
| Tags | Linux musl 1.2+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
85b2179c5a2cc5a5fa3e5b870ea1050b86dcaf97dd5c9e0b2e60e9f2165bbca6
|
|
BLAKE2b-256 checksum How to use checksums |
19badd304dad3f9c188ac7e01db78d30aa4bb93415ba70e11f4ec986dc8e7e13
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-musllinux_1_2_aarch64.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 146.9 kB |
| Tags | Linux musl 1.2+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
e2df90f76926d17fdd9ac8da0ced7fce88c85cfc3781887e258a6c2a8e97ab4b
|
|
BLAKE2b-256 checksum How to use checksums |
e0980d3a9cbf9c2d007a845853ca565c1ba631653cef8ddf3317fc99741b43fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-manylinux_2_28_x86_64.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 142.7 kB |
| Tags | Linux glibc 2.28+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
30096e5f33fab78739807a011f988504b8b0bffc846ce00af4a51871386e7273
|
|
BLAKE2b-256 checksum How to use checksums |
9f4b56e76fb65c23caeda9f650d2e58d9090fd01470f652f4b50ef68ae8df457
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-manylinux_2_28_aarch64.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 144.1 kB |
| Tags | Linux glibc 2.28+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
95ff932743c8692233601ca25b4c8658652c31f3f6790c43a446e667d69f818e
|
|
BLAKE2b-256 checksum How to use checksums |
379d92eacf3edd864c88bde49d9acfc83ed8c7a00a97b5c95fe9be7cbe172392
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logRelease files / pytktable_binaries-2.12.2-py3-none-macosx_11_0_universal2.whl
| Download URL | pytktable_binaries-2.12.2-py3-none-macosx_11_0_universal2.whl |
|---|---|
| Size | 215.7 kB |
| Tags | Python 3 macOS 11.0+ universal2 (ARM64, x86-64) |
|
SHA-256 checksum How to use checksums |
decce970dd08e607d002928ab0c2d65e0cc25c4c871bed01d0e3008f3a9912e8
|
|
BLAKE2b-256 checksum How to use checksums |
a7efa61674a59234bd3a2849acda1b7577340ef8853086bd7716a9a930d243b2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logSecurity for pytktable-binaries 2.12.2
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 8 files in this release have been uploaded with provenance metadata.
Attestation for pytktable_binaries-2.12.2-py3-none-win_arm64.whl
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.
Transparency logA 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.