Skip to main content

A tool for managing python poetry projects

Project description

Realm

realm is a Python open-source tool inspired by lerna and nx. It is designed to manage multiple Python packages/projects within the same Git repository. The primary focus is on running tasks across all projects in the repository and performing tasks on projects affected by specific changes.

Build Status

Features

  • Poetry Integration: realm is built to manage projects that use poetry. Therefore, each project within the repository should have a pyproject.toml file.

  • Dependency Management: realm scans the pyproject.toml files to identify local path dependencies managed within the repository. If a project depends on a library, changes to that library will be considered when determining affected projects.

Commands

  • realm init: Initializes a new realm repository.
  • realm install: Executes poetry install on all projects.
  • realm ls: Lists all projects managed by realm.
  • realm run: Executes a command on all projects.
  • realm task: Runs a poetry task on projects containing that task (requires poethepoet).

Filtering

You can apply filters to affect only specific projects. For example, to install only changed projects:

$ realm install --since origin/master

Available filters:

  • --since - Includes only projects changed since the specified reference.
  • --scope - Includes only projects that match the given pattern.
  • --ignore - Excludes projects that match the given pattern.
  • --match - Filters projects by a field specified in the pyproject.toml file.

Feel free to contribute, report issues, or suggest improvements. Happy coding with realm!

Project details


Download files

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

Source Distribution

realm-0.3.0.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

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

realm-0.3.0-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

Details for the file realm-0.3.0.tar.gz.

File metadata

  • Download URL: realm-0.3.0.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.13 Linux/6.2.0-1019-azure

File hashes

Hashes for realm-0.3.0.tar.gz
Algorithm Hash digest
SHA256 87fc0ea76dcf4166e4165d121c0e823a71bc0f874294c709d673b00e82f3d1c9
MD5 d2b498ac730d41f542d749ad35e5c833
BLAKE2b-256 37bb7f8d42d359000fb423306a458258db727ff0c8a413598605cb081949e341

See more details on using hashes here.

File details

Details for the file realm-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: realm-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.7.1 CPython/3.10.13 Linux/6.2.0-1019-azure

File hashes

Hashes for realm-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 48fc7b6a007833fa15be1112228eac1936e9ffe42b1f4ae022f1efa8eada9193
MD5 02c80bfe74651b1dae85aa549a36792d
BLAKE2b-256 0356cbf4a0421528980e5cf0784e041ba1a42c57f007976a5b6a0fcc9e0916c1

See more details on using hashes here.

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