There are multiple ways we can enable experimental QUIC support:
We add a config option in the Experimental section, and then use QUIC if a QUIC address if it is configured.
just requires a single step to enable QUIC, but doesn't really make it clear that QUIC support is still experimental. 2. is clear about that, but it requires two steps to enable QUIC.
@Stebalien, @whyrusleeping what do you think?
I'd add an entry in Swarm to be consistent with relay - https://github.com/ipfs/go-ipfs-config/blob/master/swarm.go#L7
@magik6k I think the relay option is more of an extra feature we are enabling or disabling, where QUIC is just another transport. I wouldnt want to have similar flags for tcp, websockets, etc.
@marten-seemann I think your option 2 sounds like a good way to move forward for now. The main reason being that I would still like to be able to dial to a QUIC peer if I don't have a QUIC listen address. and without the config option, its not possible to say "don't use QUIC at all for anything"
Most helpful comment
@magik6k I think the relay option is more of an extra feature we are enabling or disabling, where QUIC is just another transport. I wouldnt want to have similar flags for tcp, websockets, etc.
@marten-seemann I think your option 2 sounds like a good way to move forward for now. The main reason being that I would still like to be able to dial to a QUIC peer if I don't have a QUIC listen address. and without the config option, its not possible to say "don't use QUIC at all for anything"