Skip to content

Reorganize the transfer pipeline

Currently, client transfers are handled by the executor package. However, this is a problem. Not only does the existence of the executor package add quite a bit of complexity (when combined with the pipeline package), it also creates inconsistency between client & server transfers (since executor is exclusive to client transfers). The executor should be removed, and its code should be moved inside the transfer pipeline.

TransferStream should also be reworked so that it only handles data operation, while the rest should be handled by TransferPipeline.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information