taoensso / carmine

Redis client + message queue for Clojure
https://www.taoensso.com/carmine
Eclipse Public License 1.0
1.15k stars 130 forks source link

Only provide username for ACL if username is non-empty #281

Closed frwdrik closed 1 year ago

frwdrik commented 1 year ago

Issue: When given a URI like redis://:pass@localhost:6379-/, Carmine 3.1.0 would authenticate to Redis using only password, while Carmine 3.2.0 now passes an empty string "" as username to Redis. This is a breaking change.

Fix: Only add username to connection spec when it's parsed as a non-empty string. Another option is to supply the implicit default username that Redis uses when no username is provided.

ptaoussanis commented 1 year ago

@frwdrik Hi Fredrik, thanks for this! And apologies for the unintended break!

This will be included in Carmine v3.3 currently scheduled for June, or sooner if I cut any hotfixes before then.

In the meantime, you can either adjust your URI or switch to using explicit conn opts to avoid the (less flexible / more fragile) parser. See also https://github.com/ptaoussanis/carmine/issues/279

Cheers :-)

frwdrik commented 1 year ago

Hi! Thanks for the quick response :) Apologies for not seeing #279, I also see the recent commit on master is a fix for that issue. Looking forward to the next release! Closing this PR now.

ptaoussanis commented 1 year ago

Apologies for not seeing https://github.com/ptaoussanis/carmine/issues/279

No worries, it's only partly related - your particular issue still required an independent fix.

I also see the recent commit on master is a fix for that issue.

To clarify: the recent commit on master is basically your proposed fix :-) I wouldn't have been aware of this if you hadn't raised your issue 👍