roslyn icon indicating copy to clipboard operation
roslyn copied to clipboard

Decide on rules for WithTrackingName

Open CyrusNajmabadi opened this issue 3 years ago • 3 comments

As part of a recent API addition for incremental generators, @chsienki raised the point:

We need the tracking names for our internal testing, but they 'leak' into public as they'll now show up in users tracking results if they use this API. I think thats fine, but I think we should get consensus that we're a) ok with that and b) agree that this is not a public API contract and the nodes can be removed / renamed without it being considered a breaking change.

We need to establish what our policy is here, and then document it appropriately for customers.

Personally, i believe all we need to say is that tracking names are purely for debugging/diagnosing/testing purposes, and they are not guaranteed to be stable in any way. Code should not take a dependency on it.

CyrusNajmabadi avatar Jun 14 '22 19:06 CyrusNajmabadi

API Review

Conclusion: We should document that tracking names are not considered public API and users cannot depend on them being consistent in generators they don't own.

333fred avatar Jun 16 '22 21:06 333fred

@333fred

We should document that tracking names are not considered public API and users cannot depend on them being consistent in generators they don't own.

Where should we document this though? Is it sufficient to update our document comments or do we envision this happening elsewhere?

jaredpar avatar Aug 09 '22 23:08 jaredpar

Where should we document this though? Is it sufficient to update our document comments or do we envision this happening elsewhere?

Our comments should be sufficient.

333fred avatar Aug 10 '22 00:08 333fred