Austin Henriksen
Austin Henriksen
Just as a sanity check, C#'s [URI class](https://learn.microsoft.com/en-us/dotnet/api/system.uri.iswellformedoriginalstring?view=net-8.0#remarks) does state that it must adhere to RFC 3986 to be considered well-formed.
I guess disallowing `#` helps _reduce_ ambiguity, even if it isn't strictly necessary? And maybe allows for more optimized performance when getting the fragment, since you can search from the...
On the decoding side, I totally agree. As long as we can decode it, it doesn't really matter if the URI is perfectly-to-spec, and we shouldn't waste effort doing so....
I see your point. Keeping consistency with the language is a nice-to-have, but more importantly implementing my 'fix' would be pretty pointless, since it's so rare to construct a `ServiceAddress`...
> Actually ' doesn't need to be escaped in the summary Does it need to be escaped anywhere? https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/documentation-comments This page doesn't call them out as needing to be escaped,...
So I guess the next thing to check is do we ever use `'` to delimit attributes. I expect we probably don't, `"` feels more standard to me, and should...
I don't see anywhere in `slicec-cs` where we're outputting `'` for attributes. So it's probably safe to just never escape it. Should we make our escaping function smarter? To support...
I agree that's definitely the easy fix. I Just wanted to see if anyone wanted to advocate for adding a more complex fix, but that would only escape when absolutely...
This function got some simplification in #3916. There is still more opportunity for simplification, but it would require untangling the other functions that call into it first.
The original proposal was implemented in 2685accd63ad2deb8dccc7523a217a1b7ebd78ca. But I agree, more simplification seems possible here.