22 个仓库
Tools specifically for building and preparing Python projects for publication to registries.
Distinct from Distribution and Packaging: Specializes the general distribution and packaging process for the Python ecosystem and its specific formats.
Explore 22 awesome GitHub repositories matching devops & infrastructure · Python Distribution Packaging. Refine with filters or upvote what's useful.
Poetry is a Python build tool, dependency manager, and project orchestrator. It provides a unified workflow for managing the full lifecycle of a project, from initial environment setup to the final package release. The system centralizes project metadata and dependency specifications in a single configuration file, replacing legacy formats. It utilizes a deterministic dependency resolver to calculate compatible package versions and records the exact state of the environment in a lock file to ensure consistency across different machines. The tool handles the orchestration of isolated virtual
Builds software projects into modern, unified Python distributable formats for registry publishing.
Rye is a comprehensive Python toolchain manager, package manager, and virtual environment orchestrator. It provides a unified system for installing Python runtimes, resolving dependencies, and coordinating isolated environments across different projects. The project distinguishes itself through workspace management capabilities that coordinate dependencies and builds across multiple libraries within a single multi-package project structure. It further enables the global installation of Python tools into sandboxed environments, making them accessible system-wide without manual environment acti
Handles the building and preparation of Python projects specifically for publication to package registries.
PyInstaller is a cross-platform binary packager and application freezer that bundles Python scripts and their dependencies into standalone executables. It allows programs to be distributed and run on target operating systems without requiring a local installation of the Python interpreter. The tool functions as a standalone executable bundler, packaging the application with all necessary modules and libraries into a single file or folder. It includes integration for digital binary signing to satisfy operating system security requirements for distributed software. The system utilizes static a
Packages Python programs into standalone executables for distribution without requiring a local interpreter.
fpm is a multiplatform package builder and converter used to create software packages for various Linux distribution formats from a single unified source. It functions as a Linux distribution packager and a cross-format converter, transforming local directories, existing packages, or language-specific modules into platform-native formats such as DEB and RPM. The tool acts as a language-specific package wrapper, bundling modules from Node.js, Python, Ruby, and Perl into system packages. It can also generate packages that automatically configure system services for targets like systemd. The pr
Builds packages from Python sources by identifying metadata and dependencies via pip or project configuration files.
This project is a performance measurement framework and microbenchmarking library designed for C++ and Python. It provides a toolset for measuring the execution time of small code fragments using high-resolution timers, calculating statistical aggregates, and analyzing asymptotic complexity. The framework distinguishes itself through specialized capabilities for multithreaded performance testing, using synchronized execution to measure parallel throughput. It includes mechanisms to prevent compiler optimizations from removing benchmarked code and supports complex parameterization via Cartesia
Includes a build system that compiles native extensions and packages them for distribution as Python bindings.
PDM 是一个 Python 包管理器、依赖解析器和构建工具,旨在创建可重现的环境。它作为一个运行时管理器,使用独立构建安装和切换不同版本的 Python 解释器,同时管理隔离的虚拟环境以防止项目之间的版本冲突。 该工具通过使用跨平台锁文件和基于插件的扩展架构脱颖而出,允许用户通过外部发行版添加新功能。它提供了一个集中的包缓存系统和并行安装流水线,以减少环境设置和依赖解析所需的时间。 除了核心管理,PDM 还通过自定义脚本定义和命令行快捷方式涵盖项目编排。它还处理完整的发行生命周期,从生成标准化的项目存档到将包发布到远程仓库。 该工具通过使用标准化的元数据格式确保互操作性,并提供用于从其他管理器导入和转换项目配置的实用程序。
Builds and prepares Python projects into standardized distribution archives for publication to registries.
Hatch is a unified tool for managing Python environments, building packages, scaffolding projects, and installing Python versions. It provides a single command-line interface for automating common development workflows, including running scripts, tests, and static analysis with automatic dependency resolution and configuration. The tool manages project settings, dependencies, and build instructions through a declarative TOML configuration file, ensuring reproducibility across environments. It creates and manages isolated virtual environments across all major shells, installs and manages multi
Builds reproducible Python packages and uploads them to PyPI or other package indices.
Provides tools and guidelines for distributing Python packages with CUDA version compatibility.
PyOxidizer is a Python application packager and interpreter embedder designed to compile Python code and dependencies into a single standalone executable binary. It functions as a distribution tool that allows applications to run on target machines without a pre-installed interpreter. The project serves as a bridge between Rust and Python, providing a framework to integrate the two languages for creating linkable libraries or incrementally replacing logic. It facilitates the embedding of a Python runtime into larger applications to execute scripts or provide Python-based logic. The toolset c
Packages and delivers Python applications as standalone binaries to simplify installation and deployment.
This project is an alignment framework and suite of pipelines for training language models using supervised fine-tuning and preference optimization. It provides tools for executing large-scale distributed training across multiple GPUs and compute nodes, alongside a system for measuring model helpfulness and dialogue quality through single-turn and multi-turn benchmarks. The framework includes specialized tools for direct preference optimization to refine model behavior using paired data without a separate reward model. It also supports constitutional AI alignment and the training of reward mo
Provides tools for building distribution wheels and source archives for Python package registries.
ZenML is an extensible machine learning orchestration framework designed to manage the end-to-end lifecycle of data pipelines and AI agent workflows. It functions as a durable orchestrator that executes machine learning tasks as directed acyclic graphs, ensuring that every step is containerized for consistent performance across local, cloud, and hybrid infrastructure. By decoupling pipeline code from underlying compute and storage backends, the platform allows developers to define infrastructure-agnostic stacks that remain portable across diverse environments. The project distinguishes itself
Packages shared Python code as private wheels to facilitate versioned distribution across internal projects.
Maturin is a build tool that compiles Rust crates into Python wheel packages, supporting multiple binding systems such as PyO3, CFFI, and UniFFI to create native extension modules. It manages the full build pipeline from Rust compilation to wheel assembly, including cross-compilation for different operating systems and architectures without requiring native hardware. The tool integrates development-mode installation with automatic rebuilds: when a Python import hook detects source changes, it triggers recompilation before the module loads. Editable installs link the compiled module into site-
Uploads built Python packages to the Python Package Index for public distribution.
该项目是一个全面的文学编程(literate programming)框架,使开发者能够完全在 Jupyter Notebooks 中构建生产就绪的 Python 库。通过将 Notebooks 视为单一事实来源,它将代码、文档和测试集成到一个统一的开发流水线中,并直接导出到标准 Python 模块。 该框架通过专门设计的工具脱颖而出,旨在克服在专业软件工程中使用 Notebooks 的固有挑战。它包括自定义 Git 钩子和合并驱动程序,用于清理易变的 Notebook 元数据,有效消除嘈杂的差异并解决合并冲突。此外,它利用基于单元格的指令来控制代码可见性、测试和文档生成,允许开发者在交互式环境中工作时保持干净、模块化的源代码。 除了核心开发工作流外,该项目还为整个软件生命周期提供了一套强大的自动化工具。这包括一个用于渲染出版级文档的静态站点引擎(支持数学公式和符号交叉引用),以及用于管理项目依赖项、版本控制和自动化测试的工具。它还支持用于部署文档和将包发布到标准注册表的持续集成工作流。 该项目提供了一个标准化的引导过程,用于初始化具有预配置测试、文档和版本控制流水线的新仓库。
Converts notebook files into structured Python packages ready for distribution and installation.
该项目是 OpenCV 计算机视觉库的 Python 包装器,提供了一个将高性能 C++ 函数暴露给 Python 编程语言的桥梁。它是一系列用于实时图像处理、目标检测和视觉数据机器学习的工具合集。 该项目提供预编译的二进制分发包,允许将视觉功能集成到 Python 应用程序中,而无需本地 C++ 编译器。它提供多变体包分发,包括专为不需要图形用户界面的服务器或云环境设计的无头(headless)版本。 该库涵盖了广泛的计算机视觉编程任务,包括图像处理和视觉分析。它还支持硬件加速视觉,并支持创建自定义绑定以激活专门的功能模块。
Ships pre-compiled binary wheels for the Python ecosystem to simplify the installation of vision tools.
该项目是一个参考实现和教程,旨在演示构建、版本化和上传 Python 分发包的端到端工作流。它作为一个具体的项目模板和示例,用于配置包索引的元数据和构建产物。 该仓库演示了如何通过在静态配置文件中定义项目元数据和依赖项来打包软件。它涵盖了将源代码树转换为版本化归档文件和特定平台二进制分发包的过程,特别展示了如何构建二进制 wheel 和源代码分发包。 该项目涵盖了更广泛的功能领域,包括依赖管理、命令行界面创建以及向仓库发布发布的自动化。它还演示了隔离虚拟环境的使用和二进制扩展的集成。
Serves as a reference implementation for the end-to-end Python distribution and packaging workflow.
Pyarmor 是一个通过源代码混淆、字节码保护和二进制编译来保护 Python 软件的工具集。它作为一个代码混淆器、字节码保护器和二进制编译器,旨在防止对 Python 脚本和包的逆向工程和未经授权的访问。 该项目通过提供一个支持硬件绑定许可的综合软件许可证管理器而脱颖而出。这允许开发者将脚本执行锁定到特定的物理设备或虚拟机,并通过加密的运行时密钥强制执行严格的过期日期。 其更广泛的功能涵盖通过生成混淆的 Wheel 和多平台独立可执行文件进行安全分发。安全层面包括运行时完整性检查,例如防止调试器附加、内存级保护以及将 Python 函数转换为编译后的 C 扩展。 该工具包含一个命令行界面,并支持集成到持续集成(CI)流水线中,以在构建过程中自动化混淆过程。
Provides secure packaging of protected Python code into obfuscated wheels or standalone executables for multi-platform deployment.
这是一个 Python 打包工具和项目引导程序,旨在管理软件发布生命周期。它提供用于构建分发文件并将 Python 包上传到远程包索引的实用程序。 该工具通过在包上传过程中创建并推送 Git 标签到远程仓库来自动化版本控制。它还包括一个引导实用程序,可根据预定义的模板生成标准化的项目目录结构和配置文件。
Provides tools for building and preparing Python projects for publication to package registries.
该项目是一个 Cookiecutter 模板,用于引导具有标准化目录布局和配置文件的 Python 包。它通过生成项目结构、样板文件和命令行界面入口点,为新库奠定了基础。 该模板通过强化的构建流水线强调安全的软件供应链。它利用 commit SHA 锁定 Action 和最小权限集来防御攻击,同时提供了一个设置,用于使用安全身份提供程序构建并上传签名包到注册表。 该项目涵盖了广泛的功能,包括用于多版本测试、Linting 和类型检查的持续集成自动化。它还包括一个自动化的文档流水线,从 Docstring 中提取 API 参考并将其部署到托管提供商。其他工具处理依赖管理、分发工件编译和静态漏洞扫描。
Provides a Cookiecutter template for generating standardized Python project directory layouts.
Python-Guide-CN is a Chinese translation of a comprehensive guide to idiomatic Python programming and software development. It serves as a curated programming tutorial and ecosystem reference, providing a structured path for learning Python syntax, standard libraries, and professional coding patterns. The project distinguishes itself by offering detailed instructions for setting up development environments across Windows, macOS, and Linux. It specifically focuses on the selection of interpreters and the management of virtual environments to ensure a consistent workspace. The guide covers a b
Covers the process of packaging applications and libraries for distribution via package indices or as standalone executables.
该项目是一个容器化机器学习工作流引擎和编排器,旨在自动化 Kubernetes 集群上机器学习模型的端到端生命周期。它作为一个 MLOps 管道编译器,将领域特定语言转换为用于便携式和可扩展部署的结构化规范。 该平台提供了一个具有隔离命名空间和身份提供商认证的多租户环境。它通过结合基于容器的任务隔离、用于数据传递的强类型工件管理以及用于避免冗余计算的内容寻址结果缓存而脱颖而出。 该系统涵盖了全面的工作流编排,包括并行任务执行、循环运行调度和条件分支逻辑。它进一步支持实验跟踪、工作流指标收集以及可重用管道组件的管理,并能够为 CPU、内存和 GPU 配置特定的硬件资源请求。 该软件通过 Python SDK 分发,可部署在独立、本地或多租户环境中。
Provides tools for building and preparing Python distribution artifacts for the software development kit.