Ограничение сборки (build constraint): условие, определяющее, используется ли исходный файл Go при компиляции пакета. Ограничения сборки могут быть выражены суффиксами имени файла (например, foo_linux_amd64.go) или комментариями ограничений сборки (например, // +build linux,amd64).
Список сборки (build list): список версий модуля, который будет использоваться для команды сборки, такой как go build, go list или go test. Список сборки определяется из файла go.mod основного модуля и файлов go.mod в транзитивно необходимых модулях с использованием минимального выбора версии. Список сборки содержит версии для всех модулей в графе модулей, а не только тех, которые относятся к конкретной команде.
Каноническая версия (canonical version): правильно отформатированная версия без суффикса метаданных сборки, кроме +incompatible. Например, v1.2.3 является канонической версией, а v1.2.3+meta - нет.
Текущий модуль (current module): синоним основного (main) модуля.
Файл go.mod: файл, который определяет путь к модулю, требования и другие метаданные. Появляется в корневом каталоге модуля.
Путь импорта (import path): строка, используемая для импорта пакета в исходный файл Go. Синоним пути к пакету.
Основной (main) модуль: модуль, в котором вызывается команда go. Главный модуль определяется файлом go.mod в текущем или родительском каталоге.
Основная версия (major version): первое число в семантической версии (1 в v1.2.3). В выпуске с несовместимыми изменениями необходимо увеличить основную версию, а для вспомогательной (minor) версии и версии исправления (patch) необходимо установить значение 0. Семантические версии с основной версией 0 считаются нестабильными.
Подкаталог основной версии (major version subdirectory): подкаталог в репозитории управления версиями, соответствующий суффиксу основной версии модуля, в котором может быть определен модуль. Например, модуль example.com/mod/v2 в репозитории с корневым путем example.com/mod может быть определен в корневом каталоге репозитория или в подкаталоге основной версии v2.
Суффикс основной версии (major version suffix): суффикс пути к модулю, соответствующий номеру основной версии. Например, /v2 в example.com/mod/v2. Суффиксы основной версии требуются в версии 2.0.0 и новее и не допускаются в более ранних версиях.
Выбор минимальной версии (MVS, minimal version selection): алгоритм, используемый для определения версий всех модулей, которые будут использоваться в сборке.
Второстепенная версия (minor version): второе число в семантической версии (2 в v1.2.3). В релизе с новой обратно совместимой функциональностью необходимо увеличить второстепенную версию, а для версии исправления (patch) необходимо установить значение 0.
Модуль (module): набор пакетов, которые выпускаются, контролируются версиями и распространяются вместе.
Кеш модулей (module cache): локальный каталог, в котором хранятся загруженные модули, расположенный в GOPATH/pkg/mod.
Граф модуля (module graph): направленный граф требований к модулю, основанный на основном модуле. Каждая вершина в графе - это модуль; каждое ребро является версией оператора require в файле go.mod (при условии, что операторы replace и exclude в файле go.mod основного модуля).
Путь к модулю (module path): путь, который идентифицирует модуль и действует как префикс для путей импорта пакетов внутри модуля. Например, "golang.org/x/net".
Прокси модуля (module proxy): веб-сервер, реализующий протокол GOPROXY. Команда go загружает информацию о версии, файлы go.mod и zip-файлы модуля с прокси-серверов модуля.
Корневой каталог модуля (module root directory): каталог, содержащий файл go.mod, определяющий модуль.
Подкаталог модуля (module subdirectory): часть пути к модулю после корневого пути репозитория, которая указывает подкаталог, в котором определен модуль. Если не пусто, подкаталог модуля также является префиксом для тегов семантической версии. Подкаталог модуля не включает суффикс основной версии, если он есть, даже если модуль находится в подкаталоге основной версии.
Пакет (package): набор исходных файлов в одном каталоге, которые скомпилированы вместе.
Путь к пакету (package path): путь, который однозначно определяет пакет. Путь к пакету - это путь к модулю, соединенный с подкаталогом внутри модуля. Например, "golang.org/x/net/html" - это путь пакета для пакета в модуле "golang.org/x/net" в подкаталоге "html". Синоним пути импорта.
Версия исправления (patch version): третье число в семантической версии (3 в v1.2.3). В релизе без изменений в общедоступном интерфейсе модуля версия исправления должна быть увеличена.
Предварительная версия (pre-release version): версия с дефисом, за которой следует ряд идентификаторов, разделенных точками, сразу после версии исправления, например v1.2.3-beta4. Предварительные версии считаются нестабильными и не считаются совместимыми с другими версиями. Предварительная версия сортируется перед соответствующей версией выпуска: v1.2.3-pre предшествует v1.2.3.
Псевдоверсия (pseudo-version): версия, которая кодирует идентификатор ревизии (например, хеш коммита Git) и временную метку из системы контроля версий. Например, v0.0.0-20191109021931-daa7c04131f5. Используется для совместимости с немодульными репозиториями и в других ситуациях, когда версия с тегами недоступна.
Версия релиза (release version): версия без суффикса предварительного выпуска. Например, v1.2.3, а не v1.2.3-pre.
Корневой путь репозитория (repository root path): часть пути к модулю, соответствующая корневому каталогу репозитория системы управления версиями.
Отозванная версия (retracted version): версия, от которой не следует полагаться либо потому, что она была опубликована преждевременно, либо потому, что после публикации была обнаружена серьезная проблема.
Семантический тег версии (semantic version tag): тег в репозитории управления версиями, который сопоставляет версию с определенной ревизией.
Каталог vendor (vendor directory): каталог с именем vendor, который содержит пакеты из других модулей, необходимые для сборки пакетов в основном модуле. Поддерживается go mod vendor.
Версия: идентификатор неизменяемого снимка (snapshot) модуля, записанный буквой v, за которой следует семантическая версия.
Читайте также:
- Модули в Golang: аутентификации модулей, файлы go.sum
- Модули в Golang: аутентификации модулей, база данных контрольных сумм
- Модули в Golang: переменные среды
Комментариев нет:
Отправить комментарий