dotnet / symstore

Implements API for retrieval of symbols and other debug artifacts from symbol store.
MIT License
143 stars 50 forks source link

CAB compression support #50

Open ww898 opened 6 years ago

ww898 commented 6 years ago

It would be great to support MSCF compression on symbol storage as was made in symstore.exe. This ticket is connected with #52

mikem8361 commented 6 years ago

Window's cab compression isn't very portable to other OS like Linux/MacOS. Of course we could write managed cab compression from scratch but we don't have the resources or really think compression is that necessary anymore. Symbol server storage costs are so low, Microsoft symbols servers "dedup" files with the same blocks and that portable PDBs are so much smaller than Windows PDBs, make compression less important.

/cc: @noahfalk

mikem8361 commented 6 years ago

We need a lot more detail on the scenario you are trying to solve.

ww898 commented 6 years ago

The symbol storage keeps files for years. The size of the storage is very important thing because hundreds public releases with hundreds files. The compression is the only way to keep disk space. For example Qt Desktop PDBs are about 15Gb, but after CAB compression about 2Gb. I can use symbol server as static content of nginx-server without compression on the fly. Profit everywhere!