The general pattern for http4s clients is to have a builder, and use that to create the client.
That pattern will not work here, because the client is constructed for us by the runtime. Therefore a config data class CurlClientConfig would be the way to do this. It would be similar in spirit to IORuntimeConfig in that it should be possible to override in CurlApp.
There's some fun to scope out the various curl configuration options. There's also the question of client-level config vs request-level config, which we can expose with an attribute.
The general pattern for http4s clients is to have a builder, and use that to create the client.
That pattern will not work here, because the client is constructed for us by the runtime. Therefore a config data class
CurlClientConfigwould be the way to do this. It would be similar in spirit toIORuntimeConfigin that it should be possible to override inCurlApp.There's some fun to scope out the various curl configuration options. There's also the question of client-level config vs request-level config, which we can expose with an attribute.