DITA Publish Unmarked Dependency Error
Condition
Users may receive a dependency mark-for-publish CMS error message after running a publish action on a DITA map.
This error prevents a DITA map and its dependencies from publishing. If you experience this condition, the error will be similar to the following:
Error performing request: Cannot continue publish. The following map dependencies are not marked for publish: a/66,a/69,a/74
In the CMS
logs, you will see an error similar to this:[ERROR] [2024-02-03 14:22:59.5100] - [admin from 127.0.0.1 on 10.6.319.0] - Error executing action: Publishing Assets a/61Staging to PubTarget Incremental - publish type: admin. Submitted by User ID: admin.:
System.ArgumentException: Cannot continue publish, following dependency content are not yet marked for publishg: a/66,a/69,a/74
at Ingeniux.CMS.PublishingManager.gatherAdditionalContentFromDependencyForPublish(IPublishingTarget target, IEnumerable`1& markedPages, IEnumerable`1& markedAssets, IDependencyNode[]& selectedDependencies, Boolean gatherDepForAllAssets)
at Ingeniux.CMS.PublishingManager.CreateTask(IEnumerable`1 pages, IEnumerable`1 assets, Boolean incremental, IPublishingTarget pubTarget, Action`2 postPageFilterCallback, Boolean replicate, Boolean pagesPublish, Boolean assetsPublish, IDependencyNode[] dependenciesToProcess)
at Ingeniux.CMS.PublishingTarget.createPublishingTask(Boolean incremental, Boolean replicate, List`1 markedPages, List`1 markedAssets, Boolean alwaysIncludePages, Boolean alwaysIncludeAssets, IDependencyNode[] selectedDependencies)
at Ingeniux.CMS.PublishingTarget.<>c__DisplayClass268_0.<PublishAssets>b__1()
at Ingeniux.CMS.TransactionalEntity.ExcuteWithLogging(Action callback, String actionMessage, Boolean debugLogging, Action cleanupCallback, Action`2 logOverride)
Cause
This error occurs when one or more dependencies (both DITA and non-DITA files) associated with the DITA map you want to publish are not marked for the appropriate publishing target.
The publish error is CMS-related and is not generated from the DITA Open Toolkit (DITA-OT). When publishing a DITA map, the CMS requires all dependencies of that map to be marked for publish. If you do not want to publish some dependencies, then remove them from the dependency structure.
If you do not know where the dependency is located within the map dependency structure, review the map's Depends On tab in DITA Properties. See DITA "Depends On" Properties for details. Also, see Dependency Structures for details about the map dependency structure.
Review Unmarked Dependencies List
This unmarked dependencies list feature is only available in CMS 10.6.378.
To review unmarked dependencies in CMS 10.6.308–10.6.342, you can check the dependency structure of the DITA map to review the Total Marked Publishing Targets icon of each dependency. Alternatively, for an expedited unmarked dependency list, reproduce the "dependencies are not marked for publish" error message and note each dependency listed in the message. The publish error indicates these dependencies are not marked for publish to the appropriate publishing target. The publish cannot run until all dependencies referenced in the map you want publish are marked.
Remedy Part 1: Marking Dependencies for Publish
To mark dependencies for publish, choose one of the following options:
Remedy Part 2: Suppressing Dependencies from the Map Structure
To suppress dependencies from the map: