-
Notifications
You must be signed in to change notification settings - Fork 121
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Intermittent preconditionFailure when building documentation for multiple modules in one docc convert call.
#351
Comments
|
I've compiled a local copy of The error reported under LLDB was more informative: (referencing DocumentationContext.swift, line 2236) I set a breakpoint to inspect the fragment: And it's showing a fragment, with an available language, from a dependency of this library: I looked briefly at what the error throwing method call ( I'm not sure of the context in the code of how we got here, or the overall flow of what's happening in these sources - but hoped this additional information would make it easier to highlight what could or should be resolved so that this experimental feature could be more stable. |
@heckj Could you please provide a branch for this commit? I can't easily checkout to this commit. |
|
Absolutely @Kyle-Ye - I made a branch The command should clone the repo and get you to that specific commit in one command. |
|
I'm doing a bit more debugging on this, and realized I should have included the backtrace ( |
|
On |
|
I could not reproduce it under both Swift 5.6 toolchain (The default toolchain bundled by Xcode 13.4) and Swift 5.7 toolchain (The default toolchain bundled by Xcode 14 beta 4)
And I'll get the right result if I run the |
|
It's understandable that this wouldn't reproduce in the 5.6 toolchain. The Like @franklinsch pointed out in the Forums topic this build setup is providing symbol graph files for multiple modules to DocC which isn't officially supported. This means that DocC is treats all 7 modules as a single unit and computes the documentation coverage for both SwiftVizScale and its dependencies (Collections, ComplexModule, DequeModule, Numerics, OrderedCollection, and RealModule) as one unit. Passing only the SwiftVizScale symbol graph files produces the coverage information for only that module (see for example that there are 188 members instead of 1108): Building documentation for only SwiftVizScale will avoid this precondition failure and it will output the coverage information that I think you're looking for. I'll update the title of this issue to reflect the cause of the crash. |
convert --analyze function fails (intermittently) without error messagepreconditionFailure when building documentation for multiple modules in one docc convert call.
|
@d-ronnqvist Thank you!! I was just following up and finding that the Thank you, this gives me a much easier way to work around things and get reporting! |
|
Since this was using the experimental coverage feature it's probably the same issue that was fixed by #697. Feel free to reopen this issue, or open a new one, if this crash continues to happen. |

Description
I've been using the experimental
--analyzefeature for several months, and periodically it has been failing without any additional details - just a trap:Checklist
mainbranch of this package.Expected Behavior
report brief synopsis of the state of coverage for the documentation catalog in the project.
Actual behavior
Steps To Reproduce
Swift-DocC Version Information
d56e5a9
Swift Compiler Version Information
The text was updated successfully, but these errors were encountered: