К содержанию

Главное

Ошибки поставки SIMAI Framework

Docara поставляет SIMAI Framework внутри своего пакета: стили, скрипты, значки, шрифты и описания компонентов. Файл проекта simai-framework.lock.json (поле framework_lock в docara.json) называет точную версию этой поставки. Перед сборкой Docara сверяет каждый файл Framework с закреплёнными хешами — поэтому сайт не зависит от внешних серверов и не меняется сам по себе. Как устроен файл, описано на странице «Файл закрепления Framework».

Что делать в большинстве случаев

Почти все коды на этой странице означают одно из двух: файл закрепления не совпадает с поставкой в пакете или файлы пакета повреждены.

  1. Не правьте simai-framework.lock.json вручную.

  2. Если вы недавно обновили Docara, замените файл закрепления проекта поставляемым:

    Bash
    cp vendor/simai/docara/stubs/portable/simai-framework.lock.json simai-framework.lock.json
    
  3. Восстановите файлы пакета из composer.lock: удалите папку vendor/simai/docara и выполните composer install.

  4. Выполните полную сборку. Если ошибка осталась, сообщите о ней по инструкции со страницы «Внутренние ошибки».

Файл закрепления

Код Причина и что сделать
FRAMEWORK_LOCK_MISSING, FRAMEWORK_LOCK_PATH_INVALID Файла из поля framework_lock нет. Что сделать: Скопируйте поставляемый файл, как показано выше, и проверьте путь в docara.json.
FRAMEWORK_LOCK_JSON_INVALID Файл закрепления — не корректный JSON. Что сделать: Верните файл из истории проекта или замените поставляемым.
FRAMEWORK_LOCK_SCHEMA_INVALID, FRAMEWORK_LOCK_INVALID, FRAMEWORK_LOCK_IDENTITY_INVALID В файле не хватает полей или версии в нём не согласованы между собой. Что сделать: Замените файл поставляемым.
FRAMEWORK_MOVING_REFERENCE_FORBIDDEN, FRAMEWORK_ASSET_MOVING_REFERENCE_FORBIDDEN Версия указана подвижной ссылкой — main, master, latest, — содержимое которой меняется со временем. Что сделать: Укажите точную версию вида v1.2.3 или замените файл поставляемым.
FRAMEWORK_RUNTIME_RELEASE_REFERENCE_INVALID, FRAMEWORK_ASSET_COMMIT_REQUIRED Версия записана не в виде v1.2.3 или адрес файла не содержит точный коммит. Что сделать: Замените файл поставляемым.
FRAMEWORK_MANIFEST_NOT_LOCKED, FRAMEWORK_MANIFEST_UPSTREAM_REVISION_MISMATCH, FRAMEWORK_RUNTIME_PROJECTION_MISMATCH Файл закрепления называет другую версию Framework, чем поставляет установленная Docara, — обычно после обновления Docara. Что сделать: Замените файл поставляемым.
FRAMEWORK_LOCK_CHANGED_DURING_BUILD Файл закрепления изменился, пока шла сборка. Что сделать: Дождитесь окончания правки и повторите сборку.
FRAMEWORK_RUNTIME_MISSING В проекте нет ни одной страницы. Что сделать: Добавьте страницу в папку языка, например content/ru/index.md.
FRAMEWORK_ASSET_PLAN_NOT_STABLE После вывода страницы набор нужных ей файлов Framework изменился. Что сделать: Пересоберите сайт; если ошибка повторяется, сообщите о ней.

Вызов компонента

Код Причина и что сделать
FRAMEWORK_PRESET_UNKNOWN У компонента SIMAI Framework нет пресета с таким именем. Что сделать: Возьмите имя из docara inspect smart <компонент> --json или уберите preset.
FRAMEWORK_PRESET_INVALID preset записан не строкой. Что сделать: Пишите "preset": "имя".

Предупреждения о загрузке

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

Код Что означает
FRAMEWORK_COMPONENT_DYNAMIC_FALLBACK, FRAMEWORK_SMART_DYNAMIC_FALLBACK, FRAMEWORK_RELATION_DYNAMIC_FALLBACK Компонент или его зависимость загрузится в браузере по требованию. Что сделать: Ничего, если страница работает.
FRAMEWORK_SHELL_PRELOAD_METADATA_MISSING В закреплённой версии нет списка файлов для предварительной загрузки. Что сделать: Ничего; после обновления Docara и файла закрепления предупреждение уйдёт.

Проверки поставки

Эти коды относятся к файлам внутри пакета Docara и к их описанию в файле закрепления. Исправление для всех одно — шаги из раздела «Что делать в большинстве случаев».

Что проверяется Коды
Файлы Framework в пакете на месте и совпадают с хешами FRAMEWORK_BUNDLED_ASSET_HASH_MISMATCH, FRAMEWORK_BUNDLED_ASSET_MISSING, FRAMEWORK_BUNDLED_ASSET_UNSAFE, FRAMEWORK_BUNDLED_DYNAMIC_ASSET_HASH_MISMATCH, FRAMEWORK_BUNDLED_DYNAMIC_ASSET_MISSING, FRAMEWORK_BUNDLED_DYNAMIC_ASSET_UNSAFE, FRAMEWORK_BUNDLED_RUNTIME_INVALID, FRAMEWORK_BUNDLED_RUNTIME_MISSING, FRAMEWORK_BUNDLED_RUNTIME_UNSAFE, FRAMEWORK_PACKAGE_ARCHIVE_ENTRY_FORBIDDEN, FRAMEWORK_PACKAGE_ARCHIVE_HASH_MISMATCH, FRAMEWORK_PACKAGE_ARCHIVE_UNREADABLE, FRAMEWORK_PACKAGE_ASSET_HASH_MISMATCH, FRAMEWORK_PACKAGE_ASSET_MISSING, FRAMEWORK_PACKAGE_ASSET_NOT_PROJECTED, FRAMEWORK_PACKAGE_ASSET_PUBLICATION_FAILED, FRAMEWORK_PACKAGE_ASSET_UNSAFE, FRAMEWORK_PACKAGE_FILE_HASH_MISMATCH, FRAMEWORK_PACKAGE_FILE_MISSING, FRAMEWORK_PACKAGE_FILE_NOT_IN_RECEIPT, FRAMEWORK_PACKAGE_OUTPUT_MISSING, FRAMEWORK_PACKAGE_OUTPUT_SYMLINK_FORBIDDEN, FRAMEWORK_PACKAGE_RECEIPT_INVALID, FRAMEWORK_PACKAGE_RECEIPT_MANIFEST_MISMATCH, FRAMEWORK_PACKAGE_RECEIPT_RELEASE_MISSING, FRAMEWORK_PACKAGE_RECEIPT_REQUIRED_FILE_UNLISTED, FRAMEWORK_PACKAGE_RECEIPT_SCHEMA_UNSUPPORTED, FRAMEWORK_PACKAGE_RECEIPT_UNREADABLE
Файл закрепления перечисляет все опубликованные файлы и описывает их согласованно FRAMEWORK_ASSET_NOT_PROJECTED, FRAMEWORK_ASSET_PATH_INVALID, FRAMEWORK_ASSET_PROJECTION_FILE_INVALID, FRAMEWORK_ASSET_PROJECTION_INVALID, FRAMEWORK_ASSET_PUBLICATION_FAILED, FRAMEWORK_DYNAMIC_ASSET_NOT_PROJECTED, FRAMEWORK_DYNAMIC_ASSET_PROJECTION_FILE_INVALID, FRAMEWORK_DYNAMIC_ASSET_PROJECTION_INVALID, FRAMEWORK_DYNAMIC_ASSET_PUBLICATION_FAILED, FRAMEWORK_NONCLAIMS_INVALID, FRAMEWORK_PACKAGE_PROJECTIONS_INVALID, FRAMEWORK_PACKAGE_PROJECTION_FILE_INVALID, FRAMEWORK_PACKAGE_PROJECTION_INVALID, FRAMEWORK_PACKAGE_PROJECTION_UNSUPPORTED, FRAMEWORK_PORTABLE_ASSET_ENCODING_INVALID, FRAMEWORK_PORTABLE_ASSET_HASH_INVALID, FRAMEWORK_PORTABLE_ASSET_HASH_MISMATCH, FRAMEWORK_PORTABLE_ASSET_MISSING, FRAMEWORK_PORTABLE_ASSET_PROJECTION_COLLISION, FRAMEWORK_PORTABLE_ASSET_PROJECTION_INVALID, FRAMEWORK_PORTABLE_ASSET_PROJECTION_PATH_INVALID, FRAMEWORK_PORTABLE_ASSET_UNSAFE, FRAMEWORK_RUNTIME_ASSET_HASH_MISMATCH, FRAMEWORK_RUNTIME_ASSET_MISSING, FRAMEWORK_RUNTIME_ASSET_NOT_PROJECTED, FRAMEWORK_RUNTIME_ASSET_UNSAFE, FRAMEWORK_RUNTIME_COMPONENT_MISSING, FRAMEWORK_RUNTIME_DEPENDENCY_INVALID, FRAMEWORK_RUNTIME_LOCK_INVALID, FRAMEWORK_RUNTIME_LOCK_V2_INVALID, FRAMEWORK_RUNTIME_MANIFEST_FILE_INVALID, FRAMEWORK_RUNTIME_MANIFEST_HASH_MISMATCH, FRAMEWORK_RUNTIME_MANIFEST_INVALID, FRAMEWORK_RUNTIME_MANIFEST_MISSING, FRAMEWORK_RUNTIME_MANIFEST_NOT_PROJECTED, FRAMEWORK_RUNTIME_MANIFEST_UNSAFE, FRAMEWORK_RUNTIME_PACKET_HASH_MISMATCH, FRAMEWORK_RUNTIME_PROJECTION_INVALID
Описания компонентов Framework и правила их использования в Docara FRAMEWORK_CONSTRAINTS_INVALID, FRAMEWORK_CONSTRAINT_COMBINATION_INVALID, FRAMEWORK_CONSTRAINT_REQUIREMENT_INVALID, FRAMEWORK_CONSUMER_POLICY_ASSET_NOT_OMITTED, FRAMEWORK_CONSUMER_POLICY_INVALID, FRAMEWORK_CONSUMER_POLICY_MISSING, FRAMEWORK_CONSUMER_POLICY_WIDENS_MANIFEST, FRAMEWORK_CRITICAL_ASSET_UNACCOUNTED, FRAMEWORK_EXAMPLE_PROPS_MISSING, FRAMEWORK_GATEWAY_CALL_INVALID, FRAMEWORK_MANIFEST_ATLAS_INVALID, FRAMEWORK_MANIFEST_COMPONENT_ASSET_MISSING, FRAMEWORK_MANIFEST_CONSTRAINT_INVALID, FRAMEWORK_MANIFEST_CONTROL_INVALID, FRAMEWORK_MANIFEST_HASH_MISMATCH, FRAMEWORK_MANIFEST_INVALID, FRAMEWORK_MANIFEST_JSON_INVALID, FRAMEWORK_MANIFEST_LOCKS_INVALID, FRAMEWORK_MANIFEST_LOCK_INVALID, FRAMEWORK_MANIFEST_MISSING, FRAMEWORK_MANIFEST_PROP_PATTERN_INVALID, FRAMEWORK_MANIFEST_PROP_SCHEMA_INVALID, FRAMEWORK_MANIFEST_PROP_TYPE_UNSUPPORTED, FRAMEWORK_MANIFEST_PROVIDER_MISMATCH, FRAMEWORK_MANIFEST_READINESS_NOT_ADMITTED, FRAMEWORK_MANIFEST_SOURCE_UNSAFE, FRAMEWORK_PRESET_CONTRACT_INVALID, FRAMEWORK_PROPS_SCHEMA_INVALID, FRAMEWORK_RENDER_MANIFEST_INVALID
Smart-компоненты SIMAI Framework, закреплённые для Docara SMART_FRAMEWORK_ARTIFACT_CONSTRAINT_INVALID, SMART_FRAMEWORK_ARTIFACT_CONTRACT_MISMATCH, SMART_FRAMEWORK_ARTIFACT_DEPENDENCY_INVALID, SMART_FRAMEWORK_ARTIFACT_DUPLICATE, SMART_FRAMEWORK_ARTIFACT_FILE_LOCK_INVALID, SMART_FRAMEWORK_ARTIFACT_HASH_MISMATCH, SMART_FRAMEWORK_ARTIFACT_LOCK_INVALID, SMART_FRAMEWORK_ARTIFACT_LOCK_ORDER_INVALID, SMART_FRAMEWORK_ARTIFACT_NOT_LOCKED, SMART_FRAMEWORK_ARTIFACT_PATH_UNSAFE, SMART_FRAMEWORK_ARTIFACT_TREE_MISMATCH, SMART_FRAMEWORK_PACKET_LOCK_INVALID, SMART_FRAMEWORK_PACKET_NOT_LOCKED, SMART_FRAMEWORK_PORTABLE_LOCK_CONTRACT_INVALID, SMART_FRAMEWORK_PORTABLE_LOCK_INVALID, SMART_FRAMEWORK_PORTABLE_LOCK_MISSING, SMART_FRAMEWORK_REVISION_IMMUTABLE_REQUIRED, SMART_FRAMEWORK_RUNTIME_ASSET_LOCK_INVALID, SMART_FRAMEWORK_RUNTIME_ASSET_MISMATCH
Значки и шрифты FRAMEWORK_ICON_ASSET_HASH_MISMATCH, FRAMEWORK_ICON_ASSET_INVALID, FRAMEWORK_ICON_ASSET_MISSING, FRAMEWORK_ICON_ASSET_NOT_PROJECTED, FRAMEWORK_ICON_ASSET_UNSAFE, FRAMEWORK_ICON_CATALOG_FONT_SIZE_MISMATCH, FRAMEWORK_ICON_CATALOG_INDEX_HASH_MISMATCH, FRAMEWORK_ICON_CATALOG_INDEX_INVALID, FRAMEWORK_ICON_CATALOG_MANIFEST_HASH_MISMATCH, FRAMEWORK_ICON_CATALOG_MANIFEST_INVALID, FRAMEWORK_ICON_PACKET_HASH_MISMATCH, FRAMEWORK_ICON_PRELOAD_MISSING, FRAMEWORK_ICON_PROJECTION_INVALID, FRAMEWORK_ICON_SUBSET_CSS_HASH_MISMATCH, FRAMEWORK_ICON_SUBSET_FONT_SIZE_MISMATCH, FRAMEWORK_ICON_SUBSET_MANIFEST_HASH_MISMATCH, FRAMEWORK_ICON_SUBSET_MANIFEST_INVALID, FRAMEWORK_TYPOGRAPHY_ASSET_HASH_MISMATCH, FRAMEWORK_TYPOGRAPHY_ASSET_INVALID, FRAMEWORK_TYPOGRAPHY_ASSET_MISSING, FRAMEWORK_TYPOGRAPHY_ASSET_NOT_PROJECTED, FRAMEWORK_TYPOGRAPHY_ASSET_UNSAFE, FRAMEWORK_TYPOGRAPHY_PRELOAD_MISSING, FRAMEWORK_TYPOGRAPHY_PROJECTION_INVALID, FRAMEWORK_TYPOGRAPHY_PUBLIC_PATH_INVALID
План подключения стилей и скриптов к страницам FRAMEWORK_ASSET_BASE_INVALID, FRAMEWORK_ASSET_PLAN_HTML_ENCODING_INVALID, FRAMEWORK_ASSET_PLAN_HTML_INVALID, FRAMEWORK_ASSET_PROJECTION_CLOSURE_MISMATCH, FRAMEWORK_ASSET_SOURCE_REVISION_REQUIRED, FRAMEWORK_COMPONENT_TAG_INVALID, FRAMEWORK_EXPLICIT_REQUIREMENT_INVALID, FRAMEWORK_EXPLICIT_REQUIREMENT_UNKNOWN, FRAMEWORK_RULE_REGISTRY_ENTRY_INVALID, FRAMEWORK_RULE_REGISTRY_INVALID, FRAMEWORK_RULE_REGISTRY_REGEX_INVALID, FRAMEWORK_RULE_REGISTRY_TAGS_INVALID, FRAMEWORK_RULE_REGISTRY_TAG_CONFLICT, FRAMEWORK_RULE_REGISTRY_TAG_INVALID, FRAMEWORK_RULE_REGISTRY_TYPE_INVALID, FRAMEWORK_RUNTIME_DEPENDENCY_MISSING, FRAMEWORK_RUNTIME_FONT_PRELOAD_INVALID, FRAMEWORK_RUNTIME_PUBLIC_PATH_INVALID, FRAMEWORK_SHELL_CSS_ENCODING_INVALID, FRAMEWORK_SHELL_CSS_INVALID, FRAMEWORK_SHELL_CSS_ORDER_INVALID, FRAMEWORK_SHELL_CSS_URL_EXTERNAL, FRAMEWORK_SHELL_CSS_URL_INVALID, FRAMEWORK_SHELL_CSS_URL_TRAVERSAL, FRAMEWORK_SHELL_CSS_URL_UNSUPPORTED, FRAMEWORK_SHELL_PRELOAD_METADATA_INVALID, FRAMEWORK_SHELL_PUBLIC_PATH_INVALID, FRAMEWORK_SMART_ASSET_PATH_INVALID, FRAMEWORK_UI_ASSET_PATH_INVALID

См. также