It's something around 1 GiB when the whole hackage.json is consumed.
Laziness or streaming can surely help, since we don't need to hold the whole parsed hackage.json in memory.
But still it looks abnormal the program needs that much even if not streaming. Maybe there is something else causing the leak.