Skip to content
Navigation

Primary

Build errors

These errors happen when Docara reads the project and writes the result: the build and serve commands and the one-page rebuild build --page. Errors in page text are described separately, in Page and Markdown errors.

Project root and paths

The project root is the folder with docara.json. All paths in the settings are written relative to it.

Code Cause and what to do
ROOT_NOT_FOUND, PORTABLE_ROOT_INVALID The project folder does not exist or cannot be read. What to do: Run the command from the folder with docara.json or give the path to it.
ROOT_PATH_INVALID The path to the project is empty or contains ... What to do: Give the path to the project folder without steps up a level.
ABSOLUTE_PATH_FORBIDDEN The settings give an absolute path, for example /Users/…/content. What to do: Write the path relative to the project root: content/en.
RELATIVE_PATH_INVALID A path in the settings is empty or contains a backslash \. What to do: Write the path with /: content/en.
PORTABLE_FILE_READ_FAILED A page file cannot be read. What to do: Check that the file exists and is readable.

Settings layers

Settings are combined from docara.json, section.json and <page>.page.json. How a branch reset works is described in Site, section and page.

Code Cause and what to do
CONFIGURATION_ROOT_INVALID A settings file is not a JSON object, for example an array or a string. What to do: Start the file with { and end it with }.
RESET_DIRECTIVE_INVALID $reset is not given as true, or there are other keys beside $value. What to do: Write {"$reset": true} or {"$reset": true, "$value": {…}} without other keys.

Rebuilding one page

docara build --page /en/section/page/ rebuilds one page on top of a finished full build. If the full build is out of date, or something changed that affects other pages, the command stops so as not to leave the site half old.

Code Cause and what to do
PORTABLE_PAGE_SELECTOR_INVALID The page address is not written as a public address. What to do: Give the address with / at the start and end: /en/components/badge/.
PORTABLE_PAGE_NOT_FOUND The last full build has no page with this address; for example, the page was just added or renamed. What to do: Run a full build.
PORTABLE_INCREMENTAL_BUILD_PURPOSE_CHANGED The finished build was made for another environment. What to do: Run a full build for the environment you need, then rebuild pages.
PORTABLE_INCREMENTAL_ENGINE_CHANGED Docara or its dependencies were updated after the full build. What to do: Run a full build.
PORTABLE_INCREMENTAL_THEME_CHANGED The site theme changed after the full build. What to do: Run a full build.
PORTABLE_INCREMENTAL_EXAMPLE_CHANGED A shared example from the examples/ folder changed, and it may stand on other pages too. What to do: Run a full build.
PORTABLE_INCREMENTAL_DIAGNOSTICS_INCOMPLETE, PORTABLE_INCREMENTAL_DIAGNOSTICS_INVALID The finished build lacks full details about the pages, or a page has changed its address since. What to do: Run a full build.
PORTABLE_INCREMENTAL_ATLAS_BASE_INVALID, PORTABLE_INCREMENTAL_BACKLINK_BASE_INVALID, PORTABLE_INCREMENTAL_COMPONENT_INDEX_BASE_INVALID, PORTABLE_INCREMENTAL_EXAMPLE_BASE_INVALID, PORTABLE_INCREMENTAL_FRAMEWORK_ASSET_BASE_INVALID, PORTABLE_INCREMENTAL_SCHEMA_REFERENCE_BASE_INVALID, PORTABLE_INCREMENTAL_SEARCH_BASE_INVALID The shared site data in the finished build is missing or damaged: the component catalogue, backlinks, search, examples. Usually this is a build from an old version or an interrupted build. What to do: Run a full build.
PORTABLE_INCREMENTAL_BASE_COPY_FAILED The finished build could not be copied into a temporary folder. What to do: Check the disk space and the permissions on the build folder, then try again.

Files and addresses in the result

Code Cause and what to do
PORTABLE_ASSET_OUTPUT_COLLISION A file from the content lands at the same address as a Docara service file, for example in _docara/ or in place of a page. What to do: Rename the file or move it into assets/.
PORTABLE_ASSET_SOURCE_COLLISION A file from the root assets/ folder that a page refers to, and another file from a language folder, get one address but differ in content. What to do: Rename one of the files.
PORTABLE_LOCAL_ASSET_RECEIPT_UNSAFE A file from /assets/ that a page refers to does not exist, or is a symbolic or hard link. What to do: Put an ordinary file into assets/ and rebuild the site.
PORTABLE_BUILD_LOCALE_MISMATCH A page lies in the folder of one language, but the build runs for another. What to do: Check the content_root of the languages in docara.json and put the page into the folder of its language.

Writing and replacing the build folder

Docara builds the site into a temporary folder and replaces the old result only when the new build is ready. If the replacement fails, the previous build is put back.

Code Cause and what to do
DESTINATION_OUTSIDE_SITE_FORBIDDEN The build folder lies outside the project or is not named build or build_*. What to do: Build into build_<environment> inside the project.
DESTINATION_SYMLINK_FORBIDDEN The build folder is a symbolic link. What to do: Replace the link with an ordinary folder; to publish elsewhere, copy the finished build.
DESTINATION_INPUT_OVERLAP_FORBIDDEN The build folder matches the source folders or is nested in them, for example in content/. What to do: Choose a separate build_<environment> folder.
DESTINATION_ROLLBACK_SYMLINK_FORBIDDEN The build folder or the receipts folder is a symbolic link. What to do: Replace the link with an ordinary folder; to publish elsewhere, copy the finished build.
DESTINATION_ROLLBACK_PREPARE_FAILED, DESTINATION_PROMOTION_FAILED The new build could not be put in place of the old one; the old build was restored. What to do: Check the folder permissions and close programs that hold its files, then try again.
DESTINATION_PROMOTION_AND_RESTORE_FAILED The new build could not be put in place, and the old one could not be returned either. What to do: Run a full build again; do not publish the build folder until then.
DESTINATION_ROLLBACK_CLEANUP_FAILED The build is ready, but the temporary copy of the previous build could not be deleted. What to do: Delete the folder <build folder>.docara-rollback or <build folder>.docara.rollback beside the build folder by hand.
DESTINATION_CANDIDATE_INVALID The temporary folder of the new build disappeared or has no receipts. What to do: Build again; do not run two builds of one project at the same time.
PORTABLE_BUILD_IN_PROGRESS Another build into the same build folder is still running: for example, serve and build were started at the same time. The second build stops at once and changes nothing. What to do: Wait for the first build to finish and run the second one again. You do not need to delete the <build folder>.docara-lock file beside the build folder.
PORTABLE_BUILD_LOCK_FAILED The <build folder>.docara-lock file that marks a running build could not be opened. What to do: Check write permissions in the project folder, then try again.
BUILD_PURPOSE_UNSUPPORTED verify-static checks a build that was not made for publication, for example by the serve command. What to do: Build the site with docara build production and check that build.
PORTABLE_DIAGNOSTIC_WRITE_FAILED, PORTABLE_PERFORMANCE_RECEIPT_WRITE_FAILED A service report of the build could not be written. What to do: Check the disk space and the write permissions, then try again.
PORTABLE_PERFORMANCE_HTML_INVALID, PORTABLE_PERFORMANCE_PAGE_INVALID, PORTABLE_PERFORMANCE_PAGE_UNSAFE, PORTABLE_PERFORMANCE_RESOURCE_OUTSIDE_BASE, PORTABLE_PERFORMANCE_RESOURCE_TRAVERSAL, PORTABLE_PERFORMANCE_RESOURCE_UNSAFE, PORTABLE_PERFORMANCE_RESOURCE_URL_INVALID, PORTABLE_VENDOR_SELECTION_INPUT_INVALID The page weight report could not parse a finished page or a file it refers to: the file disappeared, leads outside base_url or became a link. What to do: Check base_url in docara.json and the file links in the project templates, then run a full build.

See also