Skip to content
Snippets Groups Projects
Jean-Paul Calderone's avatar
Jean-Paul Calderone authored
Try as hard as we can to make ``download`` return its failures in a Left
instead.

Also factor most of the tahoe-great-black-swamp parts out of `makeServer`in to
a separate helper function.  I thought this function might be where the
exception handling goes but it can't really yet because StorageServer requires
IO exceptions as part of its interface.  Should likely fix that sometime.
9047c899
History

GBS-Downloader

What is it?

GBS-Downloader integrates Tahoe-CHK with Tahoe-Great-Black-Swamp to support downloading and decoding data from Great Black Swamp servers. It aims for bit-for-bit compatibility with the original Python implementation.

What is the current state?

It's just starting. It can't do much.

Why does it exist?

A Haskell implementation can be used in places the original Python implementation cannot be (for example, runtime environments where it is difficult to have a Python interpreter). Additionally, with the benefit of the experience gained from creating and maintaining the Python implementation, a number of implementation decisions can be made differently to produce a more efficient, more flexible, simpler implementation and API. Also, the Python implementation claims no public library API for users outside of the Tahoe-LAFS project itself.