Conversation
|
May have mismatched on proposals here - I was thinking name overrides being in the default options provider - for example if there's a client name fetcher there or a suffix generally appended, both would work that way. Here from a config standpoint, specifying clientname and clientname suffix feels very odd (and restrictive) - I'd rather provide the ability to modify or set the client name entirely to the lib, let me spike this on the #1987 branch to give an idea - I think this will be both cleaner and more flexible. |
|
@philon-msft alrighty I made a thing over in 3abc530 - thoughts? It occurs to me what I need to do in that branch is make an off-the-wall provider and make sure all that works with the overrides, adding to list! |
|
Thanks @NickCraver a couple thoughts:
|
|
On further examination, I think I see where you're going with the DefaultOptionsProvider appending a suffix. It's creating the default, so it can always append whatever it wants. If the user is specifying their own client name, then that default+suffix will never be used. |
I'd say either is acceptable, but for any meaningful usefulness we're talking about is it acceptable to append by default, which would mean changing explicitly supplied client names today. I'd lean towards that being unacceptable and likely breaking lots of use cases. I'm 100% fine changing the state if users aren't explicitly specifying anything today (total defaults) and that's the approach here.
I agree this may be noisy, but: we're not going to get all the libs to agree on a string format anyway - in my mind there's 0% chance this isn't a regex for any kind of cross-client analysis (many old clients aren't ever getting updated, for example). My preference would be to leave the nasty bits out of every connection for a single server side convenience use case, especially if we're the only one doing it. If we're the only one using it as a practical consumer example, there's still effectively lib: parsing just for us, which is the same as SE.Redis-v just for us, the cost/payoff is equivalent there. That's my thinking anyway - curious where ya end up on this! |
|
@NickCraver Agreed on all points - thanks for the discussion! I'll close my PR. Or should I tweak it to only add the "SE.Redis-" in the version tag? I'd like to include that in the official 2.5 release if possible. But if you're planning to pull in #1987 for the initial 2.5 release, then no need for my PR at all. |
|
@philon-msft With your input on scenarios and some Marc eyes to boot, I see no issues landing that in 2.5x, adding some tests this AM before on to house things! I'd like to talk through this Tuesday and get it on in...or if it's contentious we'll can just tweak the suffix in a small PR for the release ASAP. |
|
Will be implemented with a different approach in #1987 |
The suffix enables a couple of scenarios:
Also add to the library version tag on default client names: