The current set of fetch transports is basically hard-wired into the code, whereby the only way to add to (or override) the default set of handlers is to modify the bdbag.fetch.transports module source code directly. This has proven to be too limiting in practice.
Refactoring the bdbag.fetch.transports module so that it supports run-time loading of externally provided fetch transport providers (similar to how the bdbag.fetch.resolvers module works) should be sufficient address this.
The current set of fetch transports is basically hard-wired into the code, whereby the only way to add to (or override) the default set of handlers is to modify the
bdbag.fetch.transports
module source code directly. This has proven to be too limiting in practice.Refactoring the
bdbag.fetch.transports
module so that it supports run-time loading of externally provided fetch transport providers (similar to how thebdbag.fetch.resolvers
module works) should be sufficient address this.