Looks like it's a good time for the next epgsql release:
- There is a lot of improvements and new features
- Last release was released more than half year ago
There is some not yet fixed / committed issues/PRs and I thing it will be good to fix them before release.
Currently changelog may look like:
* Options now may be passed as map()
* Added `set_notice_receiver/2` function to dynamically change receiver for asynchronous notifications
* Asynchronous notifications receiver may be set to registered process name (atom)
* `get_cmd_status/1` function added**
* TODO: fixed return value of `DELETE ... RETURNING ..` in case when 0 rows was deleted (now returns `{ok, 0, Columns, []}` instead of `{ok, 0}`)
* Some typespecs fixed (TODO: #106)
* TCP socket implicitly closed when epgsql connection process terminates
** The main practical usecase is to detect if transaction was committed after COMMIT.
{ok, _, _} = epgsql:squery(C, "BEGIN").
{error, _} = epgsql:equery(C, "SELECT 1 / $1::integer", [0]).
{ok, _, _} = epgsql:squery(C, "COMMIT").
{ok, rollback} = epgsql:get_cmd_status(C).