sqlc-bin
Unofficial. This is a community-maintained packaging project. It is not affiliated with or endorsed by the sqlc authors. Please file issues about this package here, not against sqlc-dev/sqlc.
sqlc as a pip-installable package. Ships the unmodified upstream release binaries, so no Go toolchain is required.
sqlc generates fully type-safe code from SQL. This package exists so Python projects (and anyone without Go installed) can get the sqlc CLI straight from PyPI and pin it like any other dependency.
Installation
# with uv
uv add --dev sqlc-bin # as a project dev dependency
uv tool install sqlc-bin # as a global tool
# with pip
pip install sqlc-bin
# with pipx
pipx install sqlc-bin
# run without installing
uvx --from sqlc-bin sqlc version
Usage
Exactly like a go installed sqlc: the sqlc command is on your PATH.
sqlc version
sqlc init
sqlc generate
It also works as a Python module:
python -m sqlc_bin generate
See the sqlc documentation for everything the CLI can do.
Supported platforms
| OS | x86_64 | arm64 |
|---|---|---|
| Linux (glibc and musl) | ✅ | ✅ |
| macOS 11+ | ✅ | ✅ |
| Windows | ✅ | ✅ |
Each platform gets its own wheel with the matching binary inside; pip/uv picks the right one automatically. On any other platform, installation falls back to the sdist, which downloads the binary for the host at build time (and fails clearly if sqlc doesn't publish one).
Versioning
The package version tracks the sqlc version: sqlc-bin==1.31.1 ships sqlc v1.31.1. Packaging-only fixes are published as post-releases (1.31.1.post1) containing the same binary.
How it works
- Wheels bundle the unmodified binaries from sqlc's GitHub releases. Nothing is rebuilt, patched, or recompiled.
- Every downloaded archive is verified against sha256 checksums pinned in
checksums.jsonbefore packaging. - The
sqlcentry pointexecs the bundled binary
Development
uv sync # set up the dev environment
uv build --wheel # build a wheel for your platform
SQLC_BIN_TARGET=windows_arm64 uv build --wheel # cross-build for another target
uv run --with dist/*.whl pytest # tests run against an installed wheel
uv run --no-project scripts/bump_sqlc.py # update to the latest sqlc release
Releases are built and published to PyPI by GitHub Actions (.github/workflows/release.yml) on version tags, using trusted publishing. A daily workflow checks for new sqlc releases and opens a bump PR.
License
The packaging code in this repository is MIT-licensed (LICENSE).
sqlc itself is a separate project by its own authors, licensed under the MIT
license — see LICENSE-sqlc (Copyright (c) Riza, Inc.), which
covers the bundled binaries and is shipped inside every wheel. "sqlc" is the
name of the upstream project; this package is not affiliated with, endorsed
by, or sponsored by the sqlc authors.
Metadata
Release files for sqlc-bin 1.31.1.post1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| sqlc_bin-1.31.1.post1.tar.gz | 6.2 kB | Without provenance | Details |
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| sqlc_bin-1.31.1.post1-py3-none-win_arm64.whl | Python 3 | none | Windows ARM64 | Details |
| sqlc_bin-1.31.1.post1-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| sqlc_bin-1.31.1.post1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.musllinux_1_1_x86_64.whl | Python 3 | none | Linux glibc 2.17+ x86-64, Linux musl 1.1+ x86-64 | Details |
| sqlc_bin-1.31.1.post1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl | Python 3 | none | Linux glibc 2.17+ ARM64, Linux musl 1.1+ ARM64 | Details |
| sqlc_bin-1.31.1.post1-py3-none-macosx_11_0_x86_64.whl | Python 3 | none | macOS 11.0+ x86-64 | Details |
| sqlc_bin-1.31.1.post1-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
Total release size: 88.2 MB
Release files / sqlc_bin-1.31.1.post1.tar.gz
| Download URL | sqlc_bin-1.31.1.post1.tar.gz |
|---|---|
| Size | 6.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a898b2e79f49615bb96d6402b36c90ef65c81f1744568f9376eb9f3be25452af
|
|
BLAKE2b-256 checksum How to use checksums |
294e62944acbd5c4a4773aa27e937484602b2f7a7b6d678a5c51982832bada69
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / sqlc_bin-1.31.1.post1-py3-none-win_arm64.whl
| Download URL | sqlc_bin-1.31.1.post1-py3-none-win_arm64.whl |
|---|---|
| Size | 13.7 MB |
| Tags | Python 3 Windows ARM64 |
|
SHA-256 checksum How to use checksums |
b59d93bab220ac0d029a95df5bbb846a6a21c125631a15209ecdaa7ab7b7a1dc
|
|
BLAKE2b-256 checksum How to use checksums |
893776f2bea89b55bef435df507ac8f88583f4c85ef0eb345b3f730e269ae9c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / sqlc_bin-1.31.1.post1-py3-none-win_amd64.whl
| Download URL | sqlc_bin-1.31.1.post1-py3-none-win_amd64.whl |
|---|---|
| Size | 15.4 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b4befd2178659e59237a4021455c20c85724a76d77ea23e8aabf20c0ec4ff1a8
|
|
BLAKE2b-256 checksum How to use checksums |
1c5a15fa71eb49079305beb9ff94316fa21aef8243b7c9a2f977744c5ca52afb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / sqlc_bin-1.31.1.post1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.musllinux_1_1_x86_64.whl
| Download URL | sqlc_bin-1.31.1.post1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.musllinux_1_1_x86_64.whl |
|---|---|
| Size | 15.1 MB |
| Tags | Linux glibc 2.17+ x86-64 Linux musl 1.1+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
0547da025ecd2136e5700f56e72194c227779a4843a3f4dd297ceed0f119557e
|
|
BLAKE2b-256 checksum How to use checksums |
1e9c504173c47e63c831c5a8611319782526daa0b25324efa5b637104c5c78db
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / sqlc_bin-1.31.1.post1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl
| Download URL | sqlc_bin-1.31.1.post1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.musllinux_1_1_aarch64.whl |
|---|---|
| Size | 13.6 MB |
| Tags | Linux glibc 2.17+ ARM64 Linux musl 1.1+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
55307be3b16c4a43a021ba04203c2033c8fcd493722d039b5491942827fadc0f
|
|
BLAKE2b-256 checksum How to use checksums |
8685a09c3fb79953cd7875eeb6a96313d6a68894e562284a84750d498a2f2a27
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / sqlc_bin-1.31.1.post1-py3-none-macosx_11_0_x86_64.whl
| Download URL | sqlc_bin-1.31.1.post1-py3-none-macosx_11_0_x86_64.whl |
|---|---|
| Size | 15.9 MB |
| Tags | Python 3 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
38f20286deb026d3de26025a0ca06f947d8551f6e45a88f3f629eb4a30b57921
|
|
BLAKE2b-256 checksum How to use checksums |
e2fc5768b57c0626eea11feb18c2ee866e069c034e5fc1ac8668dc12a11d46c5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / sqlc_bin-1.31.1.post1-py3-none-macosx_11_0_arm64.whl
| Download URL | sqlc_bin-1.31.1.post1-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 14.5 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
7493fdc9dd16a330596fbdb1e91575b088b0a7e1b28e1cf510682e69937d133b
|
|
BLAKE2b-256 checksum How to use checksums |
f9277fd250116ee674541a23ba1fae9eeff0689b3050fe64f05ebf0463993091
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for sqlc-bin 1.31.1.post1
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
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.