I am reviewing the core
cat.go cmd https://github.com/ipfs/go-ipfs/blob/1c6043d67ca1301573f0650cf0a227cd3386bb4f/core/commands/cat.go#L61 but there is too much abstraction for me to come to a conclusion.
Does the cat cmd streams the output or it loads the whole file to memory and then it returns it?
If yes, can you point me to the part where it streams to and to which output?
I see the progress bar is streamed to os.Stderr. Why to os.Stderr btw?
bar, reader := progressBarForReader(os.Stderr, val, int64(res.Length()))