v4.0.1 - display PG notices; query builder enhancement
Main feature in this release is added support for logging PG notices and improved support for logging PG errors - including additional metadata. Thanks to @arshadkazmi42 for working with me on this! Examples:
ERROR[ERR12]: Error Message Here! | WHERE: PL/pgSQL function a.generate_error(text) line 1 at RAISE | HINT: Help!
NOTICE[NOT23]: This is a notice. | WHERE: PL/pgSQL function a.generate_notice(text) line 1 at RAISE | HINT: Help!
To enable this, make sure you are using the debug envvars: export DEBUG="postgraphile:postgres:error,postgraphile:postgres:notice"; postgraphile ...
Also in this release is a tiny patch enabling plugin authors to reference the "parent" query builder from "child" query builders. This, for example, allows them to check a column from a parent record to decide which children to include. This is necessary for the @graphile-contrib/pg-omit-archived soft deletion plugin's INHERIT option.
This release also introduces another helper to graphile-utils: makePluginByCombiningPlugins - enabling you to bundle multiple plugins into one (particularly useful for combining makeAddInflectorsPlugin and makeExtendSchemaPlugin plugins with raw Graphile Engine plugins).
Finally it makes the terminology used more consistent - "Graphile Engine schema plugins" and "PostGraphile server plugins".