On Wed, Jan 28, 2015 at 3:36 PM, Justin Ross <justin.r...@gmail.com> wrote: > > - Python is using utils, not util. I don't care whether we go util or > utils, but I'd very much like to avoid it being half one way and half the > other. If we decide utils, I'll update the wiki page. >
Distinct from the naming consistency question, util[s] has an ambiguity of purpose that I think is important to resolve--particularly in Python, because it's difficult to have clean dependencies if we don't. These are the two ways people tend use util: 1. Functions and classes for internal use by other parts of the proton library; that is, handy stuff that your language library didn't give you 2. Functions and classes for external use by consumers of proton PROTON-805 adds more of the latter to proton/utils.py, and it already had BlockingConnection. Having both types of util in one module ends up making imports a mess because it contains at once quite low-level things and high-level things. Maybe we should have proton/extras.py for stuff like BlockingConnection and SyncRequestResponseHandler and reserve utils.py for the internal utility code.