All versions are tagged by the major Postgres version, plus an individual semver for this library itself.
- Cut off fingerprints at 100 nodes deep to avoid excessive runtimes/memory
- Fix warning on Linux due to missing asprintf include
- Automatically call pg_query_init as needed to ease threaded usage
- Clean up includes to avoid dependency on stdbool.h and xlocale.h
- Change PL/pgSQL input to be the full CREATE FUNCTION statement
- This is necessary for parsing, since we need the argument and return types
- Fingerprinting Version 1.1
- Only ignore ResTarget.name when parent field name is targetList and we have a SelectStmt as a parent node (fixes UpdateStmt fingerprinting)
- Normalize the password in ALTER ROLE ... PASSWORD '123' statements
- Make library thread-safe through thread-local storage #13
- Extract source code using LLVM instead of manually compiling the right objects
- This speeds up build times considerably since we don't download the Postgres source anymore, instead shipping a partial copy created as part of a release.
- Experimental support for parsing PL/pgSQL source code (output format subject to change)
- Fix stack overflow when parsing CREATE FOREIGN TABLE (#9)
- Update to PostgreSQL 9.5.3
- Add pg_query_fingerprint() method that uniquely identifies SQL queries, whilst ignoring formatting and individual constant values
- Update to PostgreSQL 9.5.2
- First release based on PostgreSQL 9.5.1
- Make JSON_OUTPUT_V2 the default and remove outfuncs patch
- NOTE: This is a backwards incompatible change in the output parsetree format!
- First tagged release based on PostgreSQL 9.4.5