summaryrefslogtreecommitdiff
path: root/src/System/Torrent/Storage.hs
AgeCommit message (Collapse)Author
2013-10-31Merge bittorrent package with torrent-contentSam Truzjan
2013-10-14Move some modules from torrent-contentSam Truzjan
2013-08-16~ Remove torrent-content modules.Sam T
2013-07-17+ Get torrent info with caching.Sam T
2013-07-17~ Add stub for flush operation.Sam T
2013-07-17~ Add stubs to nonblocking IO.Sam T
2013-07-16~ Move client bitfield to storage.Sam T
We localize bitfield mutation in storage module this way. Also fix some warnings.
2013-07-16+ Add posix-like file interface.Sam T
2013-07-14~ Use timestamp peer Id generator.Sam T
2013-07-13~ Remove import Internal from Storage.Sam T
2013-07-04~ Add more JSON instances.Sam T
2013-07-03~ Use lazy bytestringSam T
This lead to the following consequences: * we could efficiently read from storage - if block intersects files boundaries then we will "view" the block in the two different bytestrings. To avoid concat we now return lazy bytestring; * we could read block from socket without "concat" - again, for the same reason. The pitfail is that now we have a bit more heap object, but blocks lifetime is very short and this shouldnt play the big difference. The lifetime is either (socket -> storage -> unreachable) or (storage -> socket -> unreachable) unless a lib user keep block for their own purposes.
2013-06-30~ Avoid piece copying in piece validation.Sam T
The 'getPiece' is internal function, so no need to copy the all piece. This optimization removes 5% of overall program allocation.
2013-06-30+ Add some SCC annotations.Sam T
2013-06-30+ Add very basic storage operations.Sam T
Now we can download and make some progress, but very unstable.
2013-06-29+ Scetch basic broadcasting.Sam T
2013-06-28~ Adapt storage.Sam T
2013-06-28~ Move Storage to bittorrent.Sam T
This way we can hide some session <-> storage details.