Revision history for PGObject

1.403.1 2016-11-20
        Fixing issue #11: Mapper hints from helpers discarded
        Fix call_procedure() 'orderby' syntax errors

1.402.9 2016-02-13
        Fixing warning in map

1.402.8 2015-10-10
        Fixing array ref handling, and tightening up ref handling

1.402.7 2015-09-09
        local $@ to hide eval failures from bleeding up

1.402.6 2014-10-09
        Better exception handling

1.402.5 2014-09-07
        Fixed test numbering that caused build failures

1.402.4 2014-09-05
        Fixed to_db and pgobject_to_db serialization functions (+added tests)

1.402.3 2014-09-04
        Supporting both the old pgobject_to_db and the new to_db methods.
        More code cleanup

1.402.2 2014-09-01
        Code cleanup

1.402.1 2014-08-21
        Better documentation of memoization uses and misuses.

1.402.0 2014-08-20
        Added optional memoization of database catalog lookups.

1.4.1   2014-03-03
        Fixed type instantiation bug when calling from externally with a 
        named registry

1.4     2014-02-24
        1. Added support for arrays and registered types.   Note that this does
        not parse the array from text format and only handles an array passed 
        to it.  This paves the way for array-handling composite types, however.

        2.  DB_TESTING environment variable now used to control database tests,
        consistent with other PGObject modules.

        3.  MANIFEST.SKIP amended to support Mercurial

1.3     2013-11-14
        1. Added get_registered() for composite type decoding

1.11    2013-06-05
        1. Some additional safety checks in the database tests

1.10    2013-05-30
        1. Added type registration system.
        2. Added function prefixes for object types.
        3. Added documentation of namespace layout.

1.01    2013-05-25
        1. Minor changes to test cases to let them finish cleanly when the db is
           not available.
        2. Minor documentation changes.
1.00    2013-05-24
        First version, released on an unsuspecting world.
        Differences from LedgerSMB's interface include:
           1.  Function information is modularized into its own api
           2.  windowed aggs with rows unbounded preceding are supported
           3.  Database handle management outside scope of this module