REPOMAN

НАЗВАНИЕ

repoman - программа Gentoo, обеспечивающая минимальный уровень качества пакетов, добавляемых к дереву портежей

СИНТАКСИС

repoman [опция] [режим]

ОПИСАНИЕ

Качество прежде всего.

Утилита repoman предназначена для контроля качества репозитариев ебилдов.

Примечание: repoman commit работает только в локальных репозитариях cvs, git или subversion.

ОПЦИИ

-a, --ask

Запросить подтверждение перед коммитом.

--force

Принудительно сделать коммит, независимо от проблем QA. Эта опция удобна, если вы хотите пропустить QA-проверки, занимающие наибольшее время. Сообщение, прилагаемое к коммиту, наряду с обычной отметкой о версии portage будет содержать указание на то, что опция включена.

При использовании в режиме manifest опция --force вызывает замену существующих digest-файлов любыми файлами, расположенными в каталоге ${DISTDIR}. Существующие дайджесты будут считаться корректными для файлов, которые в противном случае потребовалось бы перезагрузить для повторной генерации дайджестов. ВНИМАНИЕ: При замене существующих дайджестов пользователю необходимо убедиться, что файлы в каталоге ${DISTDIR} определяются верно. Особенно осторожным следует быть, если имеются частично загруженные файлы.

-q, --quiet

Не выдавать лишней информации.

-p, --pretend

Не делать коммита, не вносить исправлений, а только перечислить планируемые действия.

-x, --xmlparse

Принудительно выполнить синтаксический анализ metadata.xml.

-v, --verbose

При проверке отображать названия пакетов.

--echangelog=<y|n|force>

В режиме коммита вызывает echangelog, если чейнджлог не изменился (или, если выбрано значение force - независимо от изменений чейнджлога). Эта опция может быть включена по умолчанию для заданного репозитария путем установки значения update-changelog = true в файле metadata/layout.conf (см. portage(5)).

--if-modified=<y|n>

Проверять только те пакеты, которые имеют изменения, не внесенные в коммит.

-i, --ignore-arches

Игнорировать ошибки, специфичные для данной архитектуры (архитектура != хост).

--ignore-default-opts

Не использовать переменную окружения REPOMAN_DEFAULT_OPTS.

-I, --ignore-masked

Игнорировать замаскированные пакеты (не допускается в режиме commit).

-d, --include-dev

Включить профили для разработчиков в проверку зависимостей.

--unmatched-removal

Включить строгую проверку файлов package.mask и package.unmask на предмет несовпадающих атомов на удаление.

--without-mask

Вести себя так, как если бы в package.mask не существовало записей (не допускается в режиме commit)

-m, --commitmsg

Добавить сообщение с коммитом в командной строке.

-M, --commitmsgfile

Добавить сообщение с коммитом из указанного файла.

-V, --version

Отобразить версию.

-h, --help

Вывести эту справку.

РЕЖИМЫ

full

Дерево каталога сканируется на предмет ошибок QA (полный вывод).

help

Выводится справка.

scan

Дерево каталога сканируется на предмет ошибок QA (краткий вывод).

fix

Исправляются простые ошибки QA (дайджест, не соотнесенный с пакетом, отсутствующий дайджест).

manifest

Генерируется manifest-файл (при необходимости будут загружены файлы исходного кода). Если вы хотите заменить существующие дайджесты, см. опцию --force.

manifest-check

Осуществляется проверка, не содержат ли манифесты отсутствующих или некорректных дайджестов.

commit

Дерево каталога будет просканировано на предмет ошибок QA; если ошибок нет, будет сделан коммит через cvs.

Ошибки QA

CVS/Entries.IO_error

При попытке сделать коммит возникла ошибка ввода-вывода при доступе к файлу Entries.

DEPEND.bad

Видимые пользователем ебилды с некорректным значением DEPEND (среди *видимых* ебилдов)

DEPEND.badindev

Видимые пользователем ебилды с некорректным значением DEPEND (среди *видимых* ебилдов) из ветки разработки

DEPEND.badmasked

Замаскированные ебилды с некорректным значением DEPEND (среди *всех* ебилдов)

DEPEND.badmaskedindev

Замаскированные ебилды с некорректным значением DEPEND (среди *всех* ебилдов) из ветки разработки

DEPEND.badtilde

DEPEND использует оператор зависимости ~ dep с ненулевой строкой ревизии, что не имеет смысла (ревизия игнорируется)

DEPEND.syntax

Синтаксическая ошибка в DEPEND (обычно лишний или недостающий пробел/скобка)

DESCRIPTION.missing

Ебилды без переменной DESCRIPTION или с пустым значением этой переменной.

EAPI.definition

EAPI определяется после наследования (а должен - до).

EAPI.deprecated

Ебилды с функционалом, устаревшим в текущей версии EAPI.

EAPI.incompatible

Ебилды с функционалом, доступным только с EAPI другой версии.

EAPI.unsupported

Ебилды с неподдерживаемой версией EAPI (вы должны обновить portage)

HOMEPAGE.missing

Ебилды без переменной HOMEPAGE или с пустым значением этой переменной.

HOMEPAGE.virtual

Виртуальные пакеты с непустым значением переменной HOMEPAGE.

IUSE.invalid

Ебилд вызывает IUSE-переменную, которая не фигурирует в use.desc или его файле метаданных metadata.xml.

IUSE.missing

Ебилд использует условие USE, которое отсылает к флагу, отсутствующему в IUSE.

IUSE.undefined

Ебилд не определяет IUSE (тогда как правила синтаксиса требуют определять IUSE даже при пустом значении).

KEYWORDS.dropped

Ебилды, для которых, вероятно, установленное значение KEYWORDS было заменено другим ключевым словом архитектуры.

KEYWORDS.invalid

Ебилд содержит ключевое слово, которое не указано в profiles/arch.list или на которое не был найден доступный профиль.

KEYWORDS.missing

Ебилды без переменной KEYWORDS или с пустым значением этой переменной.

KEYWORDS.stable

Ебилды, которые были напрямую добавлены с ключевым словом стабильной архитектуры.

KEYWORDS.stupid

Ебилды, использующие значение KEYWORDS=-* вместо значения файла package.mask.

LICENSE.invalid

Ебилд имеет лицензию, которая не фигурирует в каталоге license/ портежей.

LICENSE.missing

Ебилды без переменной LICENSE или с пустым значением этой переменной.

LICENSE.syntax

Синтаксическая ошибка в LICENSE (обычно лишний или недостающий пробел/скобка).

LICENSE.virtual

Виртуальные пакеты с непустым значением переменной LICENSE.

LIVEVCS.stable

Ебилд представляет собой ебилд live-системы контроля (cvs, git, darcs, svn и т.д.) с ключевым словом стабильной архитектуры.

LIVEVCS.unmasked

Ебилд представляет собой ебилд live-системы контроля (cvs, git, darcs, svn и т.д.), но имеет ключевые слова и не замаскирован в глобальном package.mask.

PDEPEND.bad

Видимые пользователям ебилды с некорректным значением PDEPEND (среди *видимых* ебилдов).

PDEPEND.badindev

Видимые пользователям ебилды с некорректным значением PDEPEND (среди *видимых* ебилдов) в ветке разработки.

PDEPEND.badmasked

Замаскированные ебилды с некорректным значением PDEPEND (среди *всех* ебилдов).

PDEPEND.badmaskedindev

Замаскированные ебилды с некорректным значением PDEPEND (среди *всех* ебилдов) в ветке разработки.

PDEPEND.badtilde

PDEPEND использует оператор зависимости ~ dep с ненулевой строкой ревизии, что не имеет смысла (ревизия игнорируется).

PDEPEND.suspect

PDEPEND содержит пакет, который обычно принадлежит только DEPEND.

PDEPEND.syntax

Синтаксическая ошибка в PDEPEND (обычно лишний или недостающий пробел/скобка).

PROVIDE.syntax

Синтаксическая ошибка в PROVIDE (обычно лишний или недостающий пробел/скобка).

RDEPEND.bad

Видимые пользователям ебилды с некорректным значением RDEPEND (среди *видимых* ебилдов).

RDEPEND.badindev

Видимые пользователям ебилды с некорректным значением RDEPEND (среди *видимых* ебилдов) в ветке разработки.

RDEPEND.badmasked

Замаскированные ебилды с некорректным значением RDEPEND (среди *всех* ебилдов).

RDEPEND.badmaskedindev

Замаскированные ебилды с некорректным значением RDEPEND (среди *всех* ебилдов) в ветке разработки.

RDEPEND.badtilde

RDEPEND использует оператор зависимости ~ dep с ненулевой строкой ревизии, что не имеет смысла (ревизия игнорируется).

RDEPEND.implicit

Значение RDEPEND в ебилде не установлено; тем самым неявно назначается RDEPEND=$DEPEND (до EAPI 4).

RDEPEND.suspect

RDEPEND содержит пакет, который обычно принадлежит только DEPEND.

RDEPEND.syntax

Синтаксическая ошибка в RDEPEND (обычно лишний или недостающий пробел/скобка).

PROPERTIES.syntax

Синтаксическая ошибка в PROPERTIES (обычно лишний или недостающий пробел/скобка).

RESTRICT.syntax

Синтаксическая ошибка в RESTRICT (обычно лишний или недостающий пробел/скобка).

SLOT.invalid

Ебилды с отсутствующим или ошибочным значением переменной SLOT.

SRC_URI.mirror

URI, фигурирующий в profiles/thirdpartymirrors, обнаружен среди значений SRC_URI.

changelog.ebuildadded

Был добавлен ебилд, но чейнджлог не изменился.

changelog.missing

Отсутствуют чейнджлоги.

changelog.notadded

Чейнджлоги существуют, но не было добавлены в cvs.

dependency.unknown

Ебилд имеет в зависимостях неизвестный пакет (это может не быть ошибкой, если речь идет о блокировке переименованного/удаленного пакета или об альтернативе, предоставляемой оверлеем).

digest.assumed

Существующий дайджест должен считаться корректным (только на уровне пакета)

digest.missing

Некоторые файлы, указанные в SRC_URI, не фигурируют в манифесте.

digest.unused

Некоторые файлы, указанные в Manifest-файле, не фигурируют в SRC_URI.

ebuild.allmasked

Для этого пакета замаскированы все ебилды (только на уровне пакета).

ebuild.badheader

У ебилда некорректный заголовок.

ebuild.invalidname

Файлы ебилда имеют названия, не поддающиеся синтаксическому анализу или содержащие синтаксические ошибки (или имеют расширения версии portage 2.1).

ebuild.majorsyn

Ебилд содержит серьезную синтаксическую ошибку, которая может привести к полной или частичной неработоспособности ебилда.

ebuild.minorsyn

Ебилд содержит мелкую синтаксическую ошибку, нарушающую требования, предъявляемые к программированию под gentoo.

ebuild.namenomatch

Ебилд содержит файлы, имена которых не совпадают с именами в родительском каталоге.

ebuild.nesteddie

Помещение 'die' в ( ) вызывает ошибку, но не завершает ebuild-сценарий.

ebuild.nostable

Нет ебилдов, которые были бы маркированы как стабильные для вашей архитектуры.

ebuild.notadded

Ебилды существуют, но не были добавлены в cvs.

ebuild.output

Простая передача данных ебилду сопровождается выводом; это нарушает требования, предъявляемые к ебилдам.

ebuild.patches

Переменная PATCHES должна быть массивом bash, чтобы обеспечивалась корректная обработка пробелов.

ebuild.syntax

Ошибка генерации кэша ебилда, вызванная, вероятнее всего, синтаксической ошибкой в ебилде или ошибкой при проверке дайджеста.

eprefixify.defined

Ебилд использует eprefixify, но не наследует екласс префикса.

file.UTF8

Файл не в кодировке UTF8.

file.executable

Ебилды, дайджесты, файл метаданных metadata.xml, манифест, чейнджлог не требуют исполняемого файла.

file.name

Имя файла/каталога может включать только следующие символы: a-zA-Z0-9._-+:

file.size

Файлы в каталоге files должны быть размером менее 20k.

inherit.autotools

Ебилд наследует autotools, но не вызывает eautomake, eautoconf и eautoreconf.

inherit.deprecated

Ебилд наследует устаревший екласс.

java.eclassesnotused

Если virtual/jdk прописан в DEPEND, должен наследоваться екласс java. См. подробнее: http://www.gentoo.org/proj/en/java/java-devel.xml.

manifest.bad

Manifest-файл имеет отсутствующие или некорректные дайджесты.

metadata.bad

Некорректные файлы metadata.xml.

metadata.missing

Отсутствуют файлы metadata.xml.

metadata.warning

Предупреждения в файлах metadata.xml.

portage.internal

Ебилд обращается к внутренней функции Portage.

upstream.workaround

Ебилд обходит ошибку апстрима; на ошибку следует разместить заявку на багтрекере bugs.gentoo.org.

usage.obsolete

Ебилд использует устаревшую конструкцию.

variable.invalidchar

Переменная содержит некорректный символ, не из набора ASCII.

variable.readonly

Переменная назначается только для чтения.

variable.usedwithhelpers

Ебилд использует переменные D, ROOT, ED, EROOT, EPREFIX с помощниками.

virtual.oldstyle

Ебилд предоставляет виртуальный пакет устаревшего типа (см. GLEP 37).

wxwidgets.eclassnotused

Ебилд зависит от пакета x11-libs/wxGTK, не наследуя екласс wxwidgets.eclass. См. подробнее в отчете об ошибке #305469.

БАГТРЕКЕР

Об обнаруженных ошибках сообщайте на http://bugs.gentoo.org.

АВТОРЫ

СМ. ТАКЖЕ

emerge(1)

ПЕРЕВОД

 
 

Октябрь 2011

Спасибо!