On 04.06.25 17:53, Jeff Davis wrote:
On Wed, 2025-06-04 at 11:33 -0400, David E. Wheeler wrote:
I understand the need to trace these dependencies, but as a function
developer with relatively modest understanding of collation nuances,
I’m wondering how I’d know I needed these markers. It seems
complicated. Which leads me to think that adoption would be low
outside of core.

In the proposal, I mentioned adding runtime checks as future work.
Perhaps that would be a requirement for this proposal so that users
could get a warning? We could also make the markers negative, so that
the default is to assume that a UDF with collatable inputs depends on
all of the behaviors.

Yes, in my research in the past (see other message) I was also wondering about this. One is, how do we get third-party code to update, the other is, how many functions, either in core or third-party, do you need to update, versus having a negative/opt-out approach.

My conclusion was also what you appear to be saying here: We should assume by default that a function using a collatable data type might use the collation. If the function doesn't, then the implementer can explicitly opt out. This is similar to how functions are volatile by default, but implementers can mark them as stable or immutable as their own responsibility.



Reply via email to