Closed CursedRock17 closed 5 months ago
Technically marking constructors as explicit constitutes an API break
I believe it would be fine to go ahead and break API on rolling, we just need to account for it in the next release version increment.
I believe it would be fine to go ahead and break API on rolling, we just need to account for it in the next release version increment.
I don't generally disagree, though I do think we should do a quick check of downstream packages to see what the extent of the breakage is going to be.
As part of pull request #125,
cpplint
suggests we mark all single param constructors asexplicit
as it is a good practice for writing c++ code. Technically marking constructors asexplicit
constitutes an API break, so to preventcpplint
from going off they're marked asNOLINT
. An example of an API break from these constructors is withSynchronizer
, in which thePolicy
must be created and initialized first, while much of the community just passesqueue_size
straight to their constructor. We should find a way to make these constructors explicit, while preventing API breaks