github pganalyze/libpg_query 18.0.0

7 hours ago
  • Upgrade to Postgres 18
  • Rework PL/pgSQL parsing to use proper type definitions
    • This is a substantial change to the hack-ish approach we've taken in
      prior versions, instead of hacking our way to get the PL/pgSQL parser
      to accept our constructs, imitate actual CREATE FUNCTION logic and
      PL/pgSQL compilation for a function.
  • Deparser: Rework comment handling for PG 18 multi-statement strings
    • Previously a subsequent statement in a multi-statement string would start
      at the end of the prior statement, including any comments between. In
      Postgres 18 this has changed, and such comments (and whitespace) are
      excluded from the statements, the next statement starts at the first
      non-whitespace (and non-comment) character.
  • Deparser: Pass opts by reference/pointer instead of copying it
    • This is a breaking change for callers, but seems more appropriate since
      it avoids implicit shallow copying of the struct (which itself includes
      pointer values, that would be retained in such a copy).
  • Fingerprinting: Rework alias/schema name handling to match Postgres 18
% shasum -a 256 libpg_query-18.0.0*    
6ad7783f272acfd116455c66a03298a0cac9a9168281df547969219112f0260f  libpg_query-18.0.0.tar.gz
e7276c7111c4518561e7e2bce01acb0e74b1d1805e5d3817771bf334442e74e7  libpg_query-18.0.0.zip

Don't miss a new libpg_query release

NewReleases is sending notifications on new releases.