Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vXhma-002SLf-2m for pgsql-announce@arkaria.postgresql.org; Mon, 22 Dec 2025 15:25:14 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vXhmY-00F612-2L for pgsql-announce@arkaria.postgresql.org; Mon, 22 Dec 2025 15:25:11 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vXhmX-00F60r-2v for pgsql-announce@lists.postgresql.org; Mon, 22 Dec 2025 15:25:10 +0000 Received: from mahout.postgresql.org ([2001:4800:3e1:1::227]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vXhmU-0028NF-2I for pgsql-announce@lists.postgresql.org; Mon, 22 Dec 2025 15:25:10 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=postgresql.org; s=20171124; h=Message-ID:Date:Reply-To:From:To:Subject: MIME-Version:Content-Type:Sender:Cc:Content-Transfer-Encoding:Content-ID: Content-Description:In-Reply-To:References; bh=xwum/iSmkSROE1TU1lOSObVTU4NChY+qSJh75ZVJoDM=; b=oFdnp09Ge0gn6a98I8VSGQREvU NXpFwt0ek0GX53RsQf41BD5ve9qunY/7KlaSR5TLJw9Mh0VlcKV14tPASiGwGcF4pzEPUC2YmklM0 BAFGwIHWOEZWmrJb13u6UTFacrxq1rqDxN7ubdRr8qQxbmzejXH4cMQT3r2SAMFFkTtkz++MQlJT0 aQ9PDP/ZbgkX47+rIaL7SC1cWI+DYSgzAP3f5KmY5pk89plNzISD8pT4fEKognxXYilKjNd0uqbcD //+QNEwQFalbM9I4uDqZtoU3FhKoar8LVf0sAodKaSYBzBsBAqJglcu2VC6HlIsxWxSVGW1KuMgEC BkpR3fXg==; Received: from wrigleys.postgresql.org ([217.196.149.60]) by mahout.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vXhmT-005umj-2w for pgsql-announce@lists.postgresql.org; Mon, 22 Dec 2025 15:25:05 +0000 Received: from localhost ([127.0.0.1] helo=wrigleys.postgresql.org) by wrigleys.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vXhmR-00Aivo-00 for pgsql-announce@lists.postgresql.org; Mon, 22 Dec 2025 15:25:03 +0000 Content-Type: multipart/mixed; boundary="===============5652734431563702648==" MIME-Version: 1.0 Subject: pgFormatter v5.9 has been released To: PostgreSQL Announce From: HexaCluster via PostgreSQL Announce Reply-To: gilles@hexacluster.ai Date: Mon, 22 Dec 2025 15:24:55 +0000 Message-ID: <176641709541.978864.16463224912129160311@wrigleys.postgresql.org> X-Auto-Response-Suppress: All Auto-Submitted: auto-generated X-pglister-tags: related X-pglister-tagsig: af9703700a8006b79e8ee99e328dda93a539b65c9c996260803b1990c4649f47 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --===============5652734431563702648== Content-Type: multipart/alternative; boundary="===============7508559982133122534==" MIME-Version: 1.0 --===============7508559982133122534== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Dar Es Salam, Tanzania - December 21th, 2025 ## pgFormatter v5.9 pgFormatter, even if not perfect, is the most advanced SQL and PlPgsql code formatter and beautifier dedicated to PostgreSQL. It is provided as a CLI or a CGI program. This release adds several formatting improvements ans fixes some issues reported by users since the last release. Here are the major improvements: - Fix several issues in JOIN formatting. - Fix indentation after RAISE EXCEPTION ... USING. - Fix bad formatting in CASE statements with variable assignments. - Add CI action to test pgFormatter on commit push - Fix dollar quote sign as string separator for when attached to a word. - Fix indentation of UNION in RETURN QUERY clause. - Fix false negative in keyword detection with QUERY after RETURN. - Add pre-commit hook config. - Fix incorrect formatting in PL/pgSQL when using DECLARE and CASE. - Fix incorrect formatting of scientific notation with exponents. - Fix incorrectly removing extra parenthesis in CREATE POLICY statements. For the complete list of changes, please checkout the release note on [https://github.com/darold/pgFormatter/blob/master/ChangeLog](https://gi= thub.com/darold/pgFormatter/blob/master/ChangeLog) ## Links & Credits Thank to the developers who submitted patches and users who reported bugs and feature requests, they are all cited in the ChangeLog file. pgFormatter is an open project. Any contribution to build a better tool is welcome. You just have to send your ideas, features requests or patches using the GitHub tools. Links: * Website: [http://sqlformat.darold.net/](http://sqlformat.darold.net/) * Download: [https://github.com/darold/pgFormatter/releases](https://github= .com/darold/pgFormatter/releases) * Development: [https://github.com/darold/pgFormatter](https://github.com/d= arold/pgFormatter) * Changelog: [https://github.com/darold/pgFormatter/blob/master/ChangeLog](= [https://github.com/darold/pgFormatter/blob/master/ChangeLog) ----------------- **About pgFormatter** pgFormatter is a SQL and PlPgsql formatter/beautifier that supports keywords from SQL-92, SQL-99, SQL-2003, SQL-2008, SQL-2011 and PostgreSQL specifics keywords. May works with any other databases too. It shares the same code with pgBadger, so any improvement made in the parser is reversed to pgBadger. Tool created and maintained by Gilles Darold. pgFormatter works on any platform and is available under the PostgreSQL license. --===============7508559982133122534== Content-Type: text/html; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable pgFormatter v5.9 has been released
 

pgFormatter v5.9 has been released

Dar Es Salam, Tanzania - December 21th, 202= 5

pgFormatter v5.9

pgFormatter, even if not perfect, is the mo= st advanced SQL and PlPgsql code formatter and beautifier dedicated to PostgreSQL. It is provided as a CLI or a CGI program.

This release adds several formatting improv= ements ans fixes some issues reported by users since the last release.

Here are the major improvements:

  • Fix several iss= ues in JOIN formatting.
  • Fix indentation= after RAISE EXCEPTION ... USING.
  • Fix bad formatt= ing in CASE statements with variable assignments.
  • Add CI action t= o test pgFormatter on commit push
  • Fix dollar quot= e sign as string separator for when attached to a word.
  • Fix indentation= of UNION in RETURN QUERY clause.
  • Fix false negat= ive in keyword detection with QUERY after RETURN.
  • Add pre-commit = hook config.
  • Fix incorrect f= ormatting in PL/pgSQL when using DECLARE and CASE.
  • Fix incorrect f= ormatting of scientific notation with exponents.
  • Fix incorrectly= removing extra parenthesis in CREATE POLICY statements.

For the complete list of changes, please ch= eckout the release note on https://github.com/dar= old/pgFormatter/blob/master/ChangeLog

Links & Credits

Thank to the developers who submitted patch= es and users who reported bugs and feature requests, they are all cited in the ChangeLog file.

pgFormatter is an open project. Any contrib= ution to build a better tool is welcome. You just have to send your ideas, features requests or patches using the GitHub tools.

Links:


About pgFormatter

pgFormatter is a SQL and PlPgsql formatter/= beautifier that supports keywords from SQL-92, SQL-99, SQL-2003, SQL-2008, SQL-2011 and PostgreSQL specifics keywords. May works with any other databases too. It shares the same code with pgBadger, so any improvement made in the parser is reversed to pgBadger. Tool created and maintained by Gilles Darold.

pgFormatter works on any platform and is av= ailable under the PostgreSQL license.

This email was sent to you from HexaCluster. It was delivered on their beha= lf by the PostgreSQL project. Any questions about the content of the message shou= ld be sent to HexaCluster.

You were sent this email as a subscriber of the pgsql-announce mai= linglist, for the content tag Related Open Source. To unsubscribe from further emails, or change which emails you want to receive, please click th= e personal unsubscribe link that you can find in the headers of this email, or visit https://lists.postgresql.org/unsubscribe/.
 
--===============7508559982133122534==-- --===============5652734431563702648==--