There is a weird interaction between libraryDependencies in sub-projects that depend on one another. If the dependee has an older version of a dependency than the depender, then this old version might be used in the depender when running unidoc!
I've made an example project here. Note that with compile the depender sub-project uses the new cats-effect version (and compiles OK), yet with unidoc it uses the old version and fails. This is also flaky in a weird way - the behavior seems to depend on the folder in which the build is located. For me, the bug is always present when running the example project from /tmp/sbt-test, but can't be reproduced in /home/nigredo/dev/various-examples...
A workaround for this issue might be to ensure all the sub-projects use consistent dependencies - but this looks painful in the long run.
There is a weird interaction between
libraryDependenciesin sub-projects that depend on one another. If the dependee has an older version of a dependency than the depender, then this old version might be used in the depender when runningunidoc!I've made an example project here. Note that with
compilethe depender sub-project uses the newcats-effectversion (and compiles OK), yet withunidocit uses the old version and fails. This is also flaky in a weird way - the behavior seems to depend on the folder in which the build is located. For me, the bug is always present when running the example project from/tmp/sbt-test, but can't be reproduced in/home/nigredo/dev/various-examples...A workaround for this issue might be to ensure all the sub-projects use consistent dependencies - but this looks painful in the long run.