#98 has caused a regression in the sense that Client no longer implements Sync (while in all previous versions, AFAICT, it did).
The problem lies in the CustomChannel variant of Channel (this type alias). BoxCloneService does not implement Sync, unlike tower's BoxService which does (because it uses a SyncWrapper, which can't be used in the BoxCloneService since cloning requires accessing the underlying object via a shared ref, which SyncWrapper disallows).
Not sure what the easiest way to solve this is, but I do think making Client Sync is important.
(thank you to everyone working and contributing to this crate!)
#98 has caused a regression in the sense that
Clientno longer implementsSync(while in all previous versions, AFAICT, it did).The problem lies in the
CustomChannelvariant ofChannel(this type alias).BoxCloneServicedoes not implementSync, unliketower'sBoxServicewhich does (because it uses aSyncWrapper, which can't be used in theBoxCloneServicesince cloning requires accessing the underlying object via a shared ref, whichSyncWrapperdisallows).Not sure what the easiest way to solve this is, but I do think making
ClientSyncis important.(thank you to everyone working and contributing to this crate!)