awesome-repositories.com
博客
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
python-poetry avatar

python-poetry/poetry

0
View on GitHub↗
34,282 星标·2,456 分支·Python·MIT·19 次浏览python-poetry.org↗

Poetry

Poetry is a comprehensive dependency manager and packaging tool for Python projects. It functions as a configuration engine that resolves complex dependency graphs, manages isolated virtual environments, and ensures reproducible builds through deterministic lock file generation. By centralizing project metadata and build requirements into a single configuration file, it provides a unified workflow for managing the entire lifecycle of a Python codebase.

The project distinguishes itself through its constraint-based solver, which evaluates environment markers and version requirements to maintain compatibility across intricate dependency trees. It offers a robust extensibility architecture via a plugin system, allowing developers to inject custom commands and modify internal workflows. Furthermore, it streamlines the distribution process by automating the creation of source and binary artifacts and handling secure publication to remote repositories.

Beyond its core management capabilities, the tool supports a wide range of development tasks, including dependency group organization, local path referencing, and the management of custom package sources. It provides extensive tooling for environment inspection, shell integration, and configuration validation to ensure that projects remain consistent across different development and deployment environments.

Features

  • Dependency Managers - Resolves version constraints and generates lock files for consistent environments.
  • Dependency Management - Record exact versions of all project dependencies in a lock file to ensure that builds remain reproducible across different machines and environments.
  • Dependency Resolvers - Calculates valid dependency graphs by evaluating version constraints and environment markers.
  • Language-Specific Dependency Managers - Resolves and installs project dependencies using deterministic lock files for consistent environments.
  • Project Metadata Declarations - Defines essential project information using standardized packaging formats.
  • Dependency Installers - Downloads required packages while respecting version constraints and repository locations.
  • Environment Activation - Enables virtual environments within the current shell session for immediate use.
  • Lock Files - Records exact dependency versions and hashes to guarantee reproducible builds across environments.
  • Package Builders - Creates source distributions and wheels to prepare code for installation.
  • Virtual Environment Managers - Manages project-specific Python runtimes and dependency sets to prevent version conflicts between different projects on the same machine.
  • Automated Distribution Pipelines - Streamlines building, authenticating, and publishing code packages.
  • Build Backends - Delegates archive creation to standardized backends to ensure compliance with modern packaging specifications.
  • Dependency Lock Managers - Control the creation and maintenance of lock files to ensure team consistency or flexible versioning during the distribution of software libraries.
  • Environment Managers - Manages isolated virtual environments to prevent version conflicts and ensure consistent interpreter usage.
  • Version Constraints - Enforces project stability by defining precise version requirements for dependencies.
  • Virtual Environments - Manages project-specific runtimes and dependency sets to prevent version conflicts.
  • Python Tooling - Configures the project runtime by specifying the language interpreter and version.
  • Environment and Package Management - Handles dependency management and project packaging.
  • 开发者工具 - Dependency management and packaging.
  • General Utilities - Dependency management and packaging tool.
  • Package Managers - Simplifies packaging and dependency management for modern projects.
  • Build Orchestrators - Orchestrates build backends and compilation scripts to prepare software artifacts for deployment.
  • Command Execution - Executes scripts and tools within isolated environments to ensure dependency consistency.
  • Environment Synchronizers - Aligns the local environment with locked dependencies by removing extraneous packages.
  • Package Publishers - Uploads built packages to public or private repositories.
  • Project Configuration - Uses a centralized configuration file to define project identity and build requirements.
  • Project Initializers - Creates project configuration files interactively to establish a codebase.
  • Language Specifications - Manages language runtime distributions to ensure the correct version is used for development.
  • Build System Orchestrators - Manages build backends to prepare software artifacts for deployment.
  • Configuration Managers - Manages local and global configuration settings through command-line operations.
  • Dependency Groups - Categorizes project dependencies into logical sets to distinguish between runtime and development requirements.
  • Distribution Artifacts - Creates source and binary archives to prepare code for reliable distribution.
  • Package Publishing Tools - Upload built project files to remote repositories by handling authentication and registration requirements to ensure software is indexed and available for others.
  • Package Sources - Enables fetching dependencies from private or alternative repositories by configuring custom package sources.
  • Packaging Utilities - Standardizes the bundling of code and metadata into distributable formats for installation.
  • Repository Sources - Controls dependency resolution by managing and prioritizing multiple package sources.
  • Runtime Configuration Managers - Updates the runtime environment by syncing plugins and dependencies.
  • Build Configuration Tools - Defines build requirements and system dependencies to ensure consistent compilation across diverse environments.
  • Environment Markers - Ensures correct package installation by applying conditional logic based on platform or runtime requirements.
  • Plugin Managers - Controls installed plugins to extend system functionality automatically.
  • Plugin Systems - Provides a hook-based system allowing external code to inject custom commands and modify workflows.
  • Project Settings Managers - Organizes project settings and dependency groups to streamline workflows.
  • Repository Credentials - Secures repository access by managing credentials through system keyrings.
  • Build System Specifications - Specifies build system requirements for consistent packaging.

Star 历史

python-poetry/poetry 的 Star 历史图表python-poetry/poetry 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Poetry 的开源替代方案

相似的开源项目,按与 Poetry 的功能重合度排序。
  • sdispater/poetrysdispater 的头像

    sdispater/poetry

    34,282在 GitHub 上查看↗

    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

    Python
    在 GitHub 上查看↗34,282
  • masterminds/glideMasterminds 的头像

    Masterminds/glide

    8,095在 GitHub 上查看↗

    Glide is a Go dependency management tool that fetches, pins, and vendors external packages to enable reproducible builds across environments. It stores project-specific copies of Go packages in a vendor directory, isolating dependencies per project to avoid version conflicts, and supports fetching packages from Git, Mercurial, Bazaar, and Subversion repositories. The tool resolves dependency versions using semantic versioning ranges and operators, and generates a lock file that records exact commit IDs for all transitive dependencies. Glide distinguishes itself with an interactive version wiz

    Gogogolangpackage-management
    在 GitHub 上查看↗8,095
  • pypa/pipenvpypa 的头像

    pypa/pipenv

    25,066在 GitHub 上查看↗

    Pipenv is a Python dependency manager and virtual environment manager that ensures reproducible environments across different systems. It functions as a lockfile resolver, generating deterministic lockfiles from high-level dependency constraints to prevent version drift. The tool integrates project workflow automation by loading environment variables and executing custom project scripts. It also includes security auditing capabilities to scan installed packages for known vulnerabilities. The system covers a broad range of capabilities including dependency version locking, package installatio

    Python
    在 GitHub 上查看↗25,066
  • pypa/sampleprojectpypa 的头像

    pypa/sampleproject

    5,245在 GitHub 上查看↗

    This project is a reference implementation and tutorial designed to demonstrate the end-to-end workflow of building, versioning, and uploading Python distributions. It serves as a concrete project template and example for configuring metadata and build artifacts for package indices. The repository illustrates how to package software by defining project metadata and dependencies in static configuration files. It covers the process of transforming source trees into versioned archives and platform-specific binary distributions, specifically showing how to build binary wheels and source distribut

    Python
    在 GitHub 上查看↗5,245
查看 Poetry 的所有 30 个替代方案→

常见问题解答

python-poetry/poetry 是做什么的?

Poetry is a comprehensive dependency manager and packaging tool for Python projects. It functions as a configuration engine that resolves complex dependency graphs, manages isolated virtual environments, and ensures reproducible builds through deterministic lock file generation. By centralizing project metadata and build requirements into a single configuration file, it provides a unified workflow for managing the entire lifecycle of a Python codebase.

python-poetry/poetry 的主要功能有哪些?

python-poetry/poetry 的主要功能包括:Dependency Managers, Dependency Management, Dependency Resolvers, Language-Specific Dependency Managers, Project Metadata Declarations, Dependency Installers, Environment Activation, Lock Files。

python-poetry/poetry 有哪些开源替代品?

python-poetry/poetry 的开源替代品包括: sdispater/poetry — Poetry is a Python build tool, dependency manager, and project orchestrator. It provides a unified workflow for… masterminds/glide — Glide is a Go dependency management tool that fetches, pins, and vendors external packages to enable reproducible… pypa/pipenv — Pipenv is a Python dependency manager and virtual environment manager that ensures reproducible environments across… pypa/sampleproject — This project is a reference implementation and tutorial designed to demonstrate the end-to-end workflow of building,… rust-lang/cargo — Cargo is the official build system and package manager for the Rust programming language. It provides a unified… conda/conda — Conda is a binary package manager, cross-platform environment manager, and dependency resolution engine. It serves as…