Analyzers

Analyzers module - Модуль анализаторов результатов.

class package_maximizer.analyzers.ResultAnalyzer[source]

Bases: ResultAnalyzer

Анализатор результатов максимизации пакетов.

Предоставляет методы для анализа: - Сравнение установленных и предложенных пакетов - Статистика изменений - Выявление конфликтов и зависимостей

__init__()[source]

Инициализация анализатора.

Return type:

None

analyze(installed, proposed)[source]

Проанализировать результаты максимизации.

Parameters:
  • installed (list[str] | None) – Список установленных пакетов

  • proposed (list[str] | None) – Список предложенных пакетов

Returns:

Словарь с результатами анализа

Return type:

dict[str, Any]

get_compatibility_matrix(proposed, conflict_graph)[source]

Построить матрицу совместимости для предложенных пакетов.

Parameters:
  • proposed (list[str]) – Список предложенных пакетов

  • conflict_graph (dict[str, list[str]]) – Граф конфликтов (пакет -> список конфликтующих)

Returns:

Матрица совместимости и статистика

Return type:

dict[str, Any]

get_dependency_analysis(proposed, dependency_graph)[source]

Проанализировать зависимости предложенных пакетов.

Parameters:
  • proposed (list[str]) – Список предложенных пакетов

  • dependency_graph (dict[str, list[str]]) – Граф зависимостей (пакет -> список зависимостей)

Returns:

Анализ зависимостей

Return type:

dict[str, Any]

compare_solvers(results, reference=None)[source]

Сравнить результаты разных солверов.

Parameters:
  • results (dict[str, list[str]]) – Словарь {имя_солвера: список_пакетов}

  • reference (list[str] | None) – Опциональный эталонный список для сравнения

Returns:

Сравнительный анализ

Return type:

dict[str, Any]

package_maximizer.analyzers.get_analyzer(analyzer_name)[source]

Получение экземпляра анализатора по имени.

Parameters:

analyzer_name (str) – Имя анализатора (регистронезависимое)

Returns:

Экземпляр анализатора

Raises:

ValueError – Если анализатор не найден

Result Analyzer

Result Analyzer - Анализатор результатов максимизации пакетов.

class package_maximizer.analyzers.result_analyzer.ResultAnalyzer[source]

Bases: ResultAnalyzer

Анализатор результатов максимизации пакетов.

Предоставляет методы для анализа: - Сравнение установленных и предложенных пакетов - Статистика изменений - Выявление конфликтов и зависимостей

__init__()[source]

Инициализация анализатора.

Return type:

None

analyze(installed, proposed)[source]

Проанализировать результаты максимизации.

Parameters:
  • installed (list[str] | None) – Список установленных пакетов

  • proposed (list[str] | None) – Список предложенных пакетов

Returns:

Словарь с результатами анализа

Return type:

dict[str, Any]

get_compatibility_matrix(proposed, conflict_graph)[source]

Построить матрицу совместимости для предложенных пакетов.

Parameters:
  • proposed (list[str]) – Список предложенных пакетов

  • conflict_graph (dict[str, list[str]]) – Граф конфликтов (пакет -> список конфликтующих)

Returns:

Матрица совместимости и статистика

Return type:

dict[str, Any]

get_dependency_analysis(proposed, dependency_graph)[source]

Проанализировать зависимости предложенных пакетов.

Parameters:
  • proposed (list[str]) – Список предложенных пакетов

  • dependency_graph (dict[str, list[str]]) – Граф зависимостей (пакет -> список зависимостей)

Returns:

Анализ зависимостей

Return type:

dict[str, Any]

compare_solvers(results, reference=None)[source]

Сравнить результаты разных солверов.

Parameters:
  • results (dict[str, list[str]]) – Словарь {имя_солвера: список_пакетов}

  • reference (list[str] | None) – Опциональный эталонный список для сравнения

Returns:

Сравнительный анализ

Return type:

dict[str, Any]