Skip to main content

Run conflicting Python dependencies in one process — with vendored isolation.

Project description

Reyk

Tests Coverage Latest Version Python Versions llms.txt

Run conflicting Python dependencies in one process — with vendored isolation.

Reyk lets you vendor Python dependencies into your project and isolate them by design, without changing how you write imports. We leverage Python's import system internals to achieve transparent dependency isolation.

Features

  • Zero Configuration: Enable isolation with a single function call
  • Dependency Isolation: Avoid conflicts by shipping libraries with your package
  • Version Flexibility: Run multiple versions of the same library in one process
  • Transparent Imports: Keep your public imports unchanged (import requests still works)
  • Lightweight: Minimal overhead with a tiny import hook

Installation

You can install Reyk from PyPI:

uv add reyk

Enable isolation from your package's __init__.py:

from reyk.isolator import isolate_package

isolate_package()

Then, vendor your dependencies with Reyk's CLI:

uvx reyk-cli add requests==2.25.1

That's it! Inside your_package, import requests resolves to your_package.libs.requests. Outside your_package, import requests continues to resolve to the global installation.

Documentation

For detailed documentation, examples, and API reference, visit the documentation site at https://reyk.dev.

Limitations

  • Multi-threaded applications are not supported.

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

reyk-0.0.1.tar.gz (124.6 kB view details)

Uploaded Source

Built Distribution

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

reyk-0.0.1-py3-none-any.whl (9.7 kB view details)

Uploaded Python 3

File details

Details for the file reyk-0.0.1.tar.gz.

File metadata

  • Download URL: reyk-0.0.1.tar.gz
  • Upload date:
  • Size: 124.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for reyk-0.0.1.tar.gz
Algorithm Hash digest
SHA256 1ef99aa5f428266fab2a41a3e6bf3b160dd0eb70ab07dc9d1b3e7e57135e1fcc
MD5 6378df2f3f43b8929f8f18a391984ee3
BLAKE2b-256 685c02c8501ebe0d357c8c970eeb8f2cb0898c6d283ae7b57cee1b7ca7fb2747

See more details on using hashes here.

Provenance

The following attestation bundles were made for reyk-0.0.1.tar.gz:

Publisher: ci.yml on eyalohn/reyk

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

File details

Details for the file reyk-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: reyk-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 9.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for reyk-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 34729e94b6eab6288532d64deff3b6ffe716a8f9e399b8ea81dc924cf141d0d0
MD5 d5610657cede2021ed56ffe611e618d1
BLAKE2b-256 7ffcd7e4b0ed972f38555ab3864e54064b7c33581fdf8fb176f0ae05d82e41da

See more details on using hashes here.

Provenance

The following attestation bundles were made for reyk-0.0.1-py3-none-any.whl:

Publisher: ci.yml on eyalohn/reyk

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