Skip to main content

gn-dist

Binary distributions of GN (generate-ninja) for Linux (glibc and musl).

Other systems are out of scope for this project. For Windows and macOS builds, please refer to Google CIPD.

Installation

python3 -m pip install gn-dist

# convenience wrapper script
GN_WRAPPER=$(which gn)
$GN_WRAPPER --version

# actual binary
GN_EXE=$(python3 -c "from gn_dist import GN; print(str(GN))")
$GN_EXE --version

# to add the actual binary to PATH, you can do e.g.:
GN_DIR="$(dirname $GN_EXE)"  # or use GN.parent above
export PATH="$GN_DIR:$PATH"
# ^ add this to your ~/.bashrc if you want

Building

./build_gn.py automates the build process (run with --help for options, as usual).

gn-dist's setup implies building GN. Run e.g. pip install -v . or pyproject-build -wxn.
Set $BUILD_PARAMS to pass options to build_gn.py through the setup layer.

Versioning

gn-dist (and GN itself) use git to infer version info.

This is known to cause issues with shallow checkouts. We recommend that you configure your clone of gn-dist in a way that allows git describe to do its job.

Where that is not possible (e.g. when installing from a tarball that does not contain the git repository), a src/gn_dist/VERSION file must be provided.
This is just a plain text file containing the version string that will be passed to gn-dist's PEP 517 build backend. The version should be provided as a PEP 440 / PyPA specs compatible normalization of what would otherwise be returned by git describe.
The VERSION file is included in sdists and will be auto-generated where possible.

GN checkout is typically managed by gn-dist itself (which does a full clone), but if you insist on bringing your own copy of GN, you may need to provide a //out/last_commit_position.h file (relative to //sbuild/gn), in the following format:

#ifndef OUT_LAST_COMMIT_POSITION_H_
#define OUT_LAST_COMMIT_POSITION_H_

#define LAST_COMMIT_POSITION_NUM %(num)s
#define LAST_COMMIT_POSITION "%(num)s (%(commit_id)s)"

#endif  // OUT_LAST_COMMIT_POSITION_H_

where %(num)s is the commit number (counted from the initial commit), and %(commit_id)s the commit hash (truncated to the first 12 digits), as in

git describe HEAD --abbrev=12 --match initial-commit

Then edit build_gn.py to pass --no-last-commit-position to GN's build/gen.py.

Containerization

To manually build gn-dist in a manylinux2014 container, you can do e.g.:

docker run -v "${PWD}:/projects/gn-dist" --security-opt label=disable -it quay.io/pypa/manylinux2014_x86_64 bash
# this would test python 3.6 compatibility - to use a contemporary version of python, comment in the lines below instead
yum install -y python3
#manylinux-interpreters ensure cp314-cp314
#export PATH="/opt/python/cp314-cp314/bin:${PATH}"
manylinux-install-clang -v latest
python3 -m venv /projects/.venv
export PATH="$/projects/.venv/bin:${PATH}"
python3 -m pip install -U pip
python3 -m pip install -U setuptools wheel build auditwheel
python3 -m pip install -U ninja  # scikit-build/ninja-python-distributions
cd /projects/gn-dist
./build_gn.py --help  # informational
BUILD_PARAMS="-c clang --clang-path /opt/clang" python3 -m build -wxn
#auditwheel repair dist/gn_dist-*.whl

Updating (for maintainers)

To make a new release, first update the GN_REV in build_gn.py and rebuild locally.
Commit and push the changes. Then, assuming an editable install, run gn --version to determine the new version, and create a matching tag (add a minor cipher if it's a rebuild):

git tag -a VERSION -m "Release"

Once you're positive, push the tag. For maintainer convenience, pushing a tag that points to the HEAD of main will automatically trigger the build workflow with publish options enabled.

Once a release has been successfully published to GitHub, tag protection from immutable releases will lock the tag in place. However, if anything goes wrong before that, you may just revoke the tag as usual:

git tag -d VERSION
git push --delete origin VERSION

Then you can fix things up and eventually re-create the tag on another commit.

History

See below for some background why gn-dist was created:

If you are looking for PyPI builds of ninja, scikit-build/ninja-python-distributions is somewhat equivalent to this project. Note though, it uses Kitware's fork of ninja, not the original version.

There is also loong64/gn, but for some reason refers to a little-known fork of GN, is not regularly updated, does not include musllinux builds, and is not Python packaged.

Metadata

Release files for gn-dist 2540.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 gn-dist 2540.0
File Size Uploaded Provenance Actions
gn_dist-2540.0.tar.gz 8.2 kB With provenance Details for gn_dist-2540.0.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for gn-dist 2540.0
File Actions
gn_dist-2540.0-py3-none-musllinux_1_2_x86_64.whl Python 3 none Linux musl 1.2+ x86-64 Details for gn_dist-2540.0-py3-none-musllinux_1_2_x86_64.whl
gn_dist-2540.0-py3-none-musllinux_1_2_s390x.whl Python 3 none Linux musl 1.2+ IBM System/390x Details for gn_dist-2540.0-py3-none-musllinux_1_2_s390x.whl
gn_dist-2540.0-py3-none-musllinux_1_2_riscv64.whl Python 3 none Linux musl 1.2+ RISC-V 64 Details for gn_dist-2540.0-py3-none-musllinux_1_2_riscv64.whl
gn_dist-2540.0-py3-none-musllinux_1_2_ppc64le.whl Python 3 none Linux musl 1.2+ PowerPC 64-le Details for gn_dist-2540.0-py3-none-musllinux_1_2_ppc64le.whl
gn_dist-2540.0-py3-none-musllinux_1_2_i686.whl Python 3 none Linux musl 1.2+ x86-32 Details for gn_dist-2540.0-py3-none-musllinux_1_2_i686.whl
gn_dist-2540.0-py3-none-musllinux_1_2_armv7l.whl Python 3 none Linux musl 1.2+ ARMv7l Details for gn_dist-2540.0-py3-none-musllinux_1_2_armv7l.whl
gn_dist-2540.0-py3-none-musllinux_1_2_aarch64.whl Python 3 none Linux musl 1.2+ ARM64 Details for gn_dist-2540.0-py3-none-musllinux_1_2_aarch64.whl
gn_dist-2540.0-py3-none-manylinux_2_39_riscv64.whl Python 3 none Linux glibc 2.39+ RISC-V 64 Details for gn_dist-2540.0-py3-none-manylinux_2_39_riscv64.whl
gn_dist-2540.0-py3-none-manylinux_2_39_armv7l.whl Python 3 none Linux glibc 2.39+ ARMv7l Details for gn_dist-2540.0-py3-none-manylinux_2_39_armv7l.whl
gn_dist-2540.0-py3-none-manylinux_2_26_i686.manylinux_2_28_i686.whl Python 3 none Linux glibc 2.28+ x86-32, Linux glibc 2.26+ x86-32 Details for gn_dist-2540.0-py3-none-manylinux_2_26_i686.manylinux_2_28_i686.whl
gn_dist-2540.0-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.24+ x86-64, Linux glibc 2.28+ x86-64 Details for gn_dist-2540.0-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
gn_dist-2540.0-py3-none-manylinux_2_24_s390x.manylinux_2_28_s390x.whl Python 3 none Linux glibc 2.28+ IBM System/390x, Linux glibc 2.24+ IBM System/390x Details for gn_dist-2540.0-py3-none-manylinux_2_24_s390x.manylinux_2_28_s390x.whl
gn_dist-2540.0-py3-none-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl Python 3 none Linux glibc 2.24+ PowerPC 64-le, Linux glibc 2.28+ PowerPC 64-le Details for gn_dist-2540.0-py3-none-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl
gn_dist-2540.0-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.24+ ARM64, Linux glibc 2.28+ ARM64 Details for gn_dist-2540.0-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Total release size: 27.6 MB

Release files / gn_dist-2540.0.tar.gz

Download URL gn_dist-2540.0.tar.gz
Size 8.2 kB
Tags Source
SHA-256 checksum
How to use checksums
fa4c72dc70565ccbc0b596d86550f23e2cc5e47b2a9263b7c0547578c7a3eb7f
BLAKE2b-256 checksum
How to use checksums
7ef27d58a27955a5e304ebd60f33b0c170c7cdb7f740aa5890146e58e4cce23f
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 / gn_dist-2540.0-py3-none-musllinux_1_2_x86_64.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_x86_64.whl
Size 2.8 MB
Tags Linux musl 1.2+ x86-64 Python 3
SHA-256 checksum
How to use checksums
0dfb589dad071edb0292f26c15cf320d2a5968e9e98b7091716a01d7af93ac6b
BLAKE2b-256 checksum
How to use checksums
4bb5849ad47b92b0633e14f313135785169b33ba0a980db04419a5569811d3f2
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 / gn_dist-2540.0-py3-none-musllinux_1_2_s390x.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_s390x.whl
Size 2.3 MB
Tags Linux musl 1.2+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
8b299ecfcf5a82defe776dc9f3150e8ead2e14f0c91cccbb3ae1f87df13817c6
BLAKE2b-256 checksum
How to use checksums
5e595992db266a4a6d0bcefc4366b6f18c9b3b85d467f2bbb8cbe01ee2ac71cb
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 / gn_dist-2540.0-py3-none-musllinux_1_2_riscv64.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_riscv64.whl
Size 2.0 MB
Tags Linux musl 1.2+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
6bd2ba6593e76c77f93fa49477034115b30f87e6b27734d3639031ce122163cd
BLAKE2b-256 checksum
How to use checksums
255d0fe53ca2f97330342771d1e27bbbf93d7b47eb49d5d69421f99b41f7da79
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 / gn_dist-2540.0-py3-none-musllinux_1_2_ppc64le.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_ppc64le.whl
Size 2.3 MB
Tags Linux musl 1.2+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
2dbfde752f2e1655f4a0b34c67ec6afe531000d6244629587b28194ec0814db5
BLAKE2b-256 checksum
How to use checksums
1d97dc8444f81a40b0c660264b1f7062af7a1d7d876dfed9f7c36890b207b685
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 / gn_dist-2540.0-py3-none-musllinux_1_2_i686.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_i686.whl
Size 3.1 MB
Tags Linux musl 1.2+ x86-32 Python 3
SHA-256 checksum
How to use checksums
50691c3dffeb0d3930f4a117641753827005c165ee1163c416f22b1147da563f
BLAKE2b-256 checksum
How to use checksums
be57808ba02696948f06c5e89dce86160ffe92ed8b19c46d06d4a3efb6e466ad
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 / gn_dist-2540.0-py3-none-musllinux_1_2_armv7l.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_armv7l.whl
Size 2.3 MB
Tags Linux musl 1.2+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
7592fc3d75d32f06eaf9a49a99f92e63dc95479ec66e03dd6f466af4e5e07552
BLAKE2b-256 checksum
How to use checksums
62b38b36157d4a020da61f904231467562ecc2dbf955b5ad5f967433ac5169fb
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 / gn_dist-2540.0-py3-none-musllinux_1_2_aarch64.whl

Download URL gn_dist-2540.0-py3-none-musllinux_1_2_aarch64.whl
Size 2.6 MB
Tags Linux musl 1.2+ ARM64 Python 3
SHA-256 checksum
How to use checksums
27838ddf255ca9ba9b8a436e7a25e43a975b3c26c81dd3fbb7d2e62f94a0b971
BLAKE2b-256 checksum
How to use checksums
fd26713661ba9a97ec629739c60685843e1ee985b50301052079d08f93e4b874
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 / gn_dist-2540.0-py3-none-manylinux_2_39_riscv64.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_39_riscv64.whl
Size 1.0 MB
Tags Linux glibc 2.39+ RISC-V 64 Python 3
SHA-256 checksum
How to use checksums
f4863a82904dba429fc143be6b00953be02f8c6c0c3c7f644d48278c7c095fb7
BLAKE2b-256 checksum
How to use checksums
a41a0e1b997272f4102e840dbc8ef2cb904faf7d45fb1009c3b614029150aa66
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 / gn_dist-2540.0-py3-none-manylinux_2_39_armv7l.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_39_armv7l.whl
Size 1.5 MB
Tags Linux glibc 2.39+ ARMv7l Python 3
SHA-256 checksum
How to use checksums
1e30f3e4f3a7b167d4e3ca0e514c1aec0d595903abc8bc387be8c49ba852cd53
BLAKE2b-256 checksum
How to use checksums
a0602f8850e273ebda0d7637c5a9232a2b20147f41f5213b5dda38556056d776
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 / gn_dist-2540.0-py3-none-manylinux_2_26_i686.manylinux_2_28_i686.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_26_i686.manylinux_2_28_i686.whl
Size 1.9 MB
Tags Linux glibc 2.26+ x86-32 Linux glibc 2.28+ x86-32 Python 3
SHA-256 checksum
How to use checksums
9b49c93fc10761ad8b9d7158207dec579d9329cc6fefcdbe02a576cf2c04627c
BLAKE2b-256 checksum
How to use checksums
7138fbf8742ac67f58c74939efe95e4ef921aedaf6475a45eef2b144dfdb0ebe
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 / gn_dist-2540.0-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl
Size 1.8 MB
Tags Linux glibc 2.24+ x86-64 Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
a041222426f120d7993b3fb4624153f165ae35bed035fbc809dfb2a471582a92
BLAKE2b-256 checksum
How to use checksums
4bfcb43a4ab4dc28c0ac170561b5ca9884446360f0ffa1d4364c76f29fe24a3b
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 / gn_dist-2540.0-py3-none-manylinux_2_24_s390x.manylinux_2_28_s390x.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_24_s390x.manylinux_2_28_s390x.whl
Size 1.1 MB
Tags Linux glibc 2.24+ IBM System/390x Linux glibc 2.28+ IBM System/390x Python 3
SHA-256 checksum
How to use checksums
52572f3b44b617a96ba07342c2112c9400ab0c97d1b2bfd19409684510ce5c4c
BLAKE2b-256 checksum
How to use checksums
6903ff2c984a71277934838b44aa35e339b576d705b66eb777f5d9b1a23ea023
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 / gn_dist-2540.0-py3-none-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl
Size 1.2 MB
Tags Linux glibc 2.24+ PowerPC 64-le Linux glibc 2.28+ PowerPC 64-le Python 3
SHA-256 checksum
How to use checksums
87a1ce28e40cce01f33910fc40a0692ebbe49053e69dd58b8029409c2d8c7609
BLAKE2b-256 checksum
How to use checksums
6f3d58cade8a79133009787d45c688525f8e77dc760ef4d82d34498132926011
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 / gn_dist-2540.0-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl

Download URL gn_dist-2540.0-py3-none-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl
Size 1.6 MB
Tags Linux glibc 2.24+ ARM64 Linux glibc 2.28+ ARM64 Python 3
SHA-256 checksum
How to use checksums
ec16f9623dc80348046c9e6450ffd71f20d5f463d696e2590bdf34e4731ac101
BLAKE2b-256 checksum
How to use checksums
2273aff50bc76e2d915e4d3cdadf6dc2c4b812c111060a725a4dc2d2068ac7a3
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

Security for gn-dist 2540.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 15 files in this release have been uploaded with provenance metadata.

Select from 15 files

Attestation for gn_dist-2540.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 Oct 1, 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.

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