haddock-for-hackage doesn't hyperlink types that are declared in "sibling" libraries
- Dominant language
- Haskell
- Stars
- 1.7k
- Forks
- 750
- Avg merge
- 4d 3h
- Merged PRs (30d)
- 28
Description
**Description**
I have a multi-project that contains `cabal.project` with multiple Haskell project inside.
My `cabal.project` looks like:
```
packages: .
```
When I build it with `cabal v2-build all --enable-documentation --haddock-for-hackage` the all the documentation tarballs are built in `dist-newstyle`, however the types from "sibling" libraries are not hyperkinked.
An example:

Here `Range` is coming from one of the "external" packages (from Hackage), and it gets hyperlinked. But `LookupKey` and `FeedLookup` are coming from a "sibling" library and they are not hyperlinked.
When I omit `--haddock-for-hackage` the everything is hyperlinked as expected, but, of course, no tarball is generated and, from my understanding, the directory structure of these generated docs is not suitable for Hackage.
**To Reproduce**
Steps to reproduce the behavior:
1. Have a repository with multiple Haskell projects sitting under an umbrella of one `cabal.project`
2. Reference one project from another and use its types in an exported function
3. Build all projects with `cabal v2-build all --enable-documentation --haddock-for-hackage`
4. Look at the documentation and observe that types from a "sibling" library are not hyperlinked
**Expected behavior**
I would expect that, since I use `all`, the documentation is generated assuming that all the referenced libraries are going to be uploaded to Hackage (otherwise it wouldn't work anyway?) and all the types within that multi-project are hyperlinked.
**System information**
- Linux, OSX
- `cabal-3.0.0.0`, `ghc-8.6.5`, `haddock-2.22.0`
Contributor guide
Assessment
This issue has not been assessed yet.