Skip to main content

Prebuilt codeanalyzer-typescript backend binary for CLDK (codellm-devkit).

Project description

codeanalyzer-typescript (Python distribution)

This directory packages the compiled codeanalyzer-typescript binary as a set of platform-specific Python wheels, published to PyPI as codeanalyzer-typescript.

The CLDK Python SDK depends on this package and calls codeanalyzer_typescript.bin_path() to locate the analyzer binary — the same way it imports codeanalyzer-python for the Python backend. The binary itself is built from this repo's src/ with bun build --compile, so it is fully self-contained (no Node/Bun needed at runtime).

Why platform wheels?

Unlike the Java backend (one cross-platform .jar), a bun --compile binary is platform-specific and large (~70 MB). So we ship one wheel per OS/arch, tagged py3-none-<platform> (the binary is Python-agnostic — no per-Python-version matrix), and let pip resolve the correct one at install time. There is intentionally no usable sdist: the binary cannot be built without Bun.

Building & publishing

python -m pip install build wheel hatchling twine
./build_wheels.sh            # cross-compiles every target via Bun, emits ./dist/*.whl
twine upload dist/*.whl

build_wheels.sh loops over the Bun targets, compiles each binary into src/codeanalyzer_typescript/_bin/, builds a pure wheel, and retags it to the platform. Bun cross-compiles all targets from a single host, so this does not need a CI runner matrix.

Versioning

The released version comes from the git tag. A push of vX.Y.Z triggers the release workflow, which derives X.Y.Z from the tag, verifies it matches this repo's package.json version (failing fast on mismatch), and stamps it into __init__.py via $PKG_VERSION — hatch reads __version__ as the wheel version (pyproject.toml declares dynamic = ["version"]). So the GitHub Release tag, the PyPI wheel version, and the npm package.json version are always in lockstep.

To cut a release: bump package.json version, then push the matching tag, e.g.

npm version 0.2.0 --no-git-tag-version   # or edit package.json
git commit -am "Release v0.2.0" && git tag v0.2.0 && git push --tags

For a local wheel build, override the fallback version explicitly: PKG_VERSION=0.2.0 ./build_wheels.sh.

One thing still tracked by hand: the python-sdk pin — [tool.backend-versions] codeanalyzer-typescript and the dependencies entry codeanalyzer-typescript==<version> — must be bumped to consume a new release.

SDK integration

In the python-sdk, TSCodeanalyzer._get_codeanalyzer_exec() resolves the binary in this order: analysis_backend_path$CODEANALYZER_TS_BINthis package → in-tree bundled bin/. Adding codeanalyzer-typescript to the SDK's dependencies makes the binary available automatically on install.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

codeanalyzer_typescript-0.1.0-py3-none-win_amd64.whl (40.5 MB view details)

Uploaded Python 3Windows x86-64

codeanalyzer_typescript-0.1.0-py3-none-macosx_11_0_arm64.whl (26.2 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

codeanalyzer_typescript-0.1.0-py3-none-macosx_10_12_x86_64.whl (28.7 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file codeanalyzer_typescript-0.1.0-py3-none-win_amd64.whl.

File metadata

File hashes

Hashes for codeanalyzer_typescript-0.1.0-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 f69f1c0bc61b68a839361195e9c0d458204cf0685322292b900e80f201ac8c90
MD5 af0fda4bce1d78db0fa92904fc5b1ac8
BLAKE2b-256 c132c1c11cd4b145e2a5beeda7da5fd55c1633006ee642922608d2092fefe4b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeanalyzer_typescript-0.1.0-py3-none-win_amd64.whl:

Publisher: release.yml on codellm-devkit/codeanalyzer-ts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codeanalyzer_typescript-0.1.0-py3-none-manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for codeanalyzer_typescript-0.1.0-py3-none-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2fba06369c6a12b36180e0716fdc855738f46472908cf369c7eae92067daf733
MD5 6e0770a949eb727eeb1de36dd0e2f9f7
BLAKE2b-256 47512d4884cc4a9e0e773192a7a8c38db866b1b354c96367ab6cae9a9fb6397a

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeanalyzer_typescript-0.1.0-py3-none-manylinux2014_x86_64.whl:

Publisher: release.yml on codellm-devkit/codeanalyzer-ts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codeanalyzer_typescript-0.1.0-py3-none-manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for codeanalyzer_typescript-0.1.0-py3-none-manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 a99d469de5a47743e49bd4f81012bbd40119cd461df4b604cfad800e6cb1c145
MD5 4c4b4be501ab6eb9ca99001e9f92895b
BLAKE2b-256 e8ae529646290a22bd3e42fd55565bccbaf77ab5852d032618517aefc4faacff

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeanalyzer_typescript-0.1.0-py3-none-manylinux2014_aarch64.whl:

Publisher: release.yml on codellm-devkit/codeanalyzer-ts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codeanalyzer_typescript-0.1.0-py3-none-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for codeanalyzer_typescript-0.1.0-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 10a6ba77533657fdbc4576064bc8da4d867a9670b1ce9f2983e5d55922353898
MD5 1f75da806845f523fa1ebc22f393f6bc
BLAKE2b-256 74508c8f5360ccfed6a817502fd77abafa929b0cd77803bd93ef4e29bce571d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeanalyzer_typescript-0.1.0-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on codellm-devkit/codeanalyzer-ts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file codeanalyzer_typescript-0.1.0-py3-none-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for codeanalyzer_typescript-0.1.0-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 94dac122884bbff9750df383a9298ea2348aacccb3c194b8e53aa7dbd5112327
MD5 8676d7ab96d885bf2d744524ab3e2a54
BLAKE2b-256 55d9a60f6bcf9c73d02cfcb53de5cf1b68b5c70cf258d5b7c26cb523e42c2273

See more details on using hashes here.

Provenance

The following attestation bundles were made for codeanalyzer_typescript-0.1.0-py3-none-macosx_10_12_x86_64.whl:

Publisher: release.yml on codellm-devkit/codeanalyzer-ts

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page