Skip to content

Releases: goloop/pgc

v1.0.2

Choose a tag to compare

@goloop goloop released this 20 Oct 12:25
Bound query resources and reduce SQL parsing copies

v1.0.1

Choose a tag to compare

@goloop goloop released this 24 Sep 09:50
Release 1.0.1

The README states the v1 compatibility promise and explains how to run
the integration tests.

v0.8.2

Choose a tag to compare

@goloop goloop released this 22 Sep 08:56
v0.8.2

v0.6.0

Choose a tag to compare

@goloop goloop released this 12 Jul 07:59
Harden the wire client, migrations and code generation

Wire protocol: reject a DataRow, ParameterDescription or RowDescription with a
negative field count (0xffff read as int16) instead of panicking in make; treat
a truncated authentication message as an error rather than AuthenticationOk;
bound the SCRAM iteration count (a hostile server can no longer force unbounded
PBKDF2 work) and reject a server nonce that does not extend the client nonce.

Migrations: pin search_path to public and fully qualify the pgc_migrations
table, so a decoy table in another schema cannot shadow the migration history;
teach the statement splitter about E'...' escape strings so a backslash-escaped
quote with an embedded semicolon no longer splits a no-transaction migration.

Code generation: always derive a valid, compilable Go identifier (rune-safe
capitalization, non-identifier runes dropped, X prefix for a leading digit or
empty result); read a quoted identifier with a doubled quote whole when
inferring parameter names; and give two same-base import paths distinct
selectors with explicit aliases so the generated import block compiles.