Skip to content
  • Michael Kleehammer's avatar
    Implement async notifications properly. Made minor API changes. · 06e093ab
    Michael Kleehammer authored
    The primary update was to allow notifications and commands on the same asynchronous connection.
    This required an API change.  I also simplified the async implementation so the reader is not
    added and removed all the time.
    
    Since it is a major API change, I also removed the deprecated Connection.row and
    Connection.scalar functions.  Use Connection.fetchrow and Connection.fetchval.  (Now I'm
    wondering if I shouldn't make a Connection.fetchall just for symmetry that would be an alias
    for execute.)
    
    Add Connection.pid and Connection.close().  I needed to add close() because pytest doesn't
    seem to let fixtures goes out of scope.  (I assume it keeps them in the request until the end.)
    I use pid to add a test to make sure connections are closed when they go out of scope,
    something I needed to confirm before determining it was pytest and not a bug.
    
    While doing so, I moved from unittest to pytest.  The tests are easier to write and I really
    like "-k" and "--lf".  I moved all of the test files into a new /test directory.  I've provided
    an alias so you can still use "python setup.py test".
    06e093ab