{"categories":[{"label":"Build Tools","url":"https://skillfed.io/packages/category/software-development-build-tools/2"}],"enrichment":{"capability":"A setuptools extension that builds CPython extensions from Go source code, enabling developers to write performance-critical Python modules in Go and package them as standard Python extensions.","skillfed_tags":["go-interop","extension-building"],"use_cases":["Accelerate CPU-bound Python code by rewriting hot loops or algorithms in Go and exposing them as Python functions.","Integrate existing Go libraries or services into Python applications without rewriting them in C or Python.","Build and distribute pre-compiled manylinux wheels so Python users don't need Go or a C compiler installed.","Prototype Go-based performance improvements to Python projects while keeping the public API in Python."],"what_it_does":"setuptools-golang is a setuptools plugin that lets you write CPython extension modules in Go instead of C or C++. You define Go source files as extension modules in your setup.py, and the tool compiles them into native Python extensions using Go's cgo mechanism. It handles the build configuration, GOPATH management, and optional binary stripping to reduce extension size.\n\nThe package is primarily useful for teams that want to leverage Go's concurrency model, standard library, or existing Go codebases to accelerate performance-critical sections of Python applications. It also provides a tool for building manylinux wheels so end users can install pre-compiled extensions without needing a Go compiler. However, the project is now archived and no longer maintained, meaning new Python or Go versions may introduce incompatibilities that won't be fixed.","worth_installing":"No\u2014do not install for new projects. The package is archived and abandoned; no releases have been made since the latest release and the repository accepts no new contributions. While it works for existing projects already using it, starting a new Go-Python integration on this tool risks hitting unresolved bugs or incompatibilities with future Python or Go versions. Consider alternatives for new work."},"id":"setuptools-golang","links":{"html":"https://skillfed.io/packages/setuptools-golang","md":"https://skillfed.io/packages/setuptools-golang.md","pypi":"https://pypi.org/project/setuptools-golang/"},"maintenance":{"status":"abandoned"},"meta":{"latest_release":"2023-07-29","license_spdx":null,"license_treatment":"permissive","name":"setuptools-golang","python_support":"supports_current","summary":"A setuptools extension for building cpython extensions written in golang."},"popularity":{"monthly_downloads":1375874,"position":3987,"tier":"top_5000"},"security":{"n_vulnerabilities":0},"version":"2.9.0"}
