Skip to content

Установка

Magneto предоставляет несколько методов установки. Вы можете выбрать тот, который лучше всего подходит для ваших нужд.

Из PyPI (Рекомендуется)

Самый простой способ установить Magneto — использовать pip:

bash
pip install magneto-cli

Или используя uv:

bash
uv pip install magneto-cli

После установки вы можете использовать команду magneto напрямую:

bash
magneto --help

Из исходного кода

Если вы хотите установить из исходного кода для разработки:

Использование pip

bash
# Клонировать репозиторий
git clone https://github.com/mastaBriX/magneto.git
cd magneto

# Установить в режиме разработки
pip install -e .

Использование uv

uv — это быстрый менеджер пакетов Python, полностью совместимый с pyproject.toml.

1. Установка uv

Windows (PowerShell):

powershell
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"

Linux/macOS:

bash
curl -LsSf https://astral.sh/uv/install.sh | sh

2. Синхронизация зависимостей

Запустите в корневом каталоге проекта:

bash
# Клонировать репозиторий
git clone https://github.com/mastaBriX/magneto.git
cd magneto

# Синхронизировать зависимости и установить проект (режим разработки)
uv sync

# Запустить напрямую (установка не требуется, uv автоматически управляет средой)
uv run magneto file.torrent
uv run magneto folder/ -r -v

# Установить зависимости разработки
uv sync --extra dev

# Просмотреть информацию о проекте
uv tree

Проверка установки

После установки проверьте следующими командами:

bash
# Просмотреть версию
magneto --version

# Просмотреть справку
magneto --help

Если вы видите информацию о версии и документацию справки, установка прошла успешно!

Зависимости

Обязательные зависимости

  • bencode.py >= 4.0.0: Используется для разбора формата торрент-файлов
  • colorama >= 0.4.0: Используется для поддержки цветного вывода в Windows (опционально, но рекомендуется)

Требования к версии Python

  • Python 3.7 или выше
  • Поддерживает Python 3.7, 3.8, 3.9, 3.10, 3.11, 3.12, 3.13

Настройка среды разработки

Если вы хотите внести вклад в разработку или запустить тесты:

bash
# Используя uv
uv sync --extra dev

# Или используя pip
pip install -e ".[dev]"

Зависимости разработки включают:

  • pytest >= 7.0.0 - Фреймворк тестирования
  • pytest-cov >= 4.0.0 - Покрытие тестами
  • black >= 23.0.0 - Форматирование кода
  • ruff >= 0.1.0 - Проверка кода

Запуск тестов

bash
# Запустить все тесты
pytest

# Запустить тесты и сгенерировать отчет о покрытии
pytest --cov=magneto --cov-report=html

# Запустить конкретный тестовый файл
pytest tests/test_core.py

# Подробный режим
pytest -v

Устранение неполадок

Проблема: Команда 'magneto' не найдена

Решение:

  • Убедитесь в правильной установке: pip install -e .
  • Проверьте среду Python: убедитесь, что вы используете правильную версию Python
  • Проверьте переменную окружения PATH: убедитесь, что каталог Scripts Python находится в PATH

Проблема: Ошибка импорта (модуль bencode не найден)

Решение:

bash
pip install bencode.py

Проблема: Цвета не отображаются в Windows

Решение:

bash
pip install colorama

Проблема: Ошибки прав доступа

Решение:

  • Linux/macOS: Используйте sudo или виртуальное окружение
  • Windows: Запустите от имени администратора или используйте виртуальное окружение

Следующие шаги

После установки вы можете:

Released under the MIT License.