Commit Graph

25 Commits

Author SHA1 Message Date
Wolfgang Walther
1e1128d443 libpq: 18.4 -> 18.16
Release Notes:
https://www.postgresql.org/about/news/postgresql-186-1711-1615-1519-1424-and-19-beta-3-released-3365/

Note: 18.5 was not shipped due to a regression.
2026-08-14 22:32:25 +02:00
Wolfgang Walther
c9b2117da5 libpq: 18.2 -> 18.4
Release Notes:
https://www.postgresql.org/about/news/postgresql-184-1710-1614-1518-and-1423-released-3297/

Security: CVE-2026-6477
2026-05-15 09:27:15 +02:00
Jonathan King
4c9cd46a43 libpq: support dontDisableStatic
Bring libpq into line with `pkgs/servers/sql/postgresql/generic.nix`,
which already lets consumers retain the static archives alongside the
shared libraries by setting `dontDisableStatic = true`. libpq's
`postInstall` previously deleted every `.a` from `$dev/lib`
unconditionally on non-static builds; consumers that need both the
shared library and a native-ELF static archive had no in-tree way to
keep them.

The default behaviour is preserved: when `dontDisableStatic` is unset
or `false`, the `.a` files are still removed, and the resulting
`postInstall` string is identical to the previous one, so the
derivation hash for existing consumers does not change.
2026-05-11 17:01:23 +01:00
Wolfgang Walther
c9967163b8 libpq: 18.1 -> 18.2
Release Notes:
https://github.com/postgres/postgres/blob/REL_18_STABLE/doc/src/sgml/release-18.sgml
2026-02-12 13:21:59 +01:00
Wolfgang Walther
8af07b25ac postgresql: switch back to latest tags
The commits we already switched to have now been tagged, so we can go
back to these.
2025-11-13 12:17:52 +01:00
Wolfgang Walther
a52728a9b1 libpq: 18.0 -> 18.1
Release Notes:
4b324845ba/doc/src/sgml/release-18.sgml

Fixes:
CVE-2025-12818
2025-11-11 12:59:00 +01:00
Luna Nova
e7fbed853b treewide: remove usages of obsolete pie hardening flag 2025-10-09 10:13:03 -07:00
Wolfgang Walther
dcb41fbcee libpq: 17.6 -> 18.0 2025-09-24 12:30:43 +02:00
Wolfgang Walther
ed0efe5907 pkgsStatic.libpq: fix build
This has worked before - but only accidentally so. It worked once we
enabled `structuredAttrs`, but there was a bug in the stdenv adapter for
`pkgsStatic`, which made it ineffective when using `structuredAttrs`.

With the bug fixed, libpq was broken again. This time, we fix it by
entirely disabling the build of shared libraries in PG's Makefiles for
the static case. No shared libraries - no problem.
2025-09-10 16:07:21 +02:00
Wolfgang Walther
f719b79589 libpq: 17.5 -> 17.6 (#433766)
Release Notes:
https://www.postgresql.org/docs/release/17.6/
2025-08-15 10:26:50 +00:00
Wolfgang Walther
4c70fc087a libpq: 17.5 -> 17.6
Release Notes:
https://www.postgresql.org/docs/release/17.6/
2025-08-14 22:04:27 +02:00
Wolfgang Walther
f8bc00efc5 postgresql.pg_config: make overrideable
This allows `postgresql.withPackages` to easily override the paths to
the default and man outputs for `pg_config`. It avoids all
`buildEnv`-dev-output hackery, which it didn't properly support, and
separates the logic cleanly.
2025-08-04 16:53:01 +02:00
Wolfgang Walther
5a0711127c treewide: run nixfmt 1.0.0 2025-07-24 13:55:40 +02:00
Wolfgang Walther
dc01def502 libpq: 17.14 -> 17.15 2025-05-07 20:31:41 +02:00
K900
f96ac2dcd6 Merge remote-tracking branch 'origin/master' into staging-next 2025-04-26 09:07:48 +03:00
Fernando Rodrigues
05580f4b44 treewide: switch instances of lib.teams.*.members to the new meta.teams attribute
Follow-up to #394797.

Signed-off-by: Fernando Rodrigues <alpha@sigmasquadron.net>
2025-04-25 22:20:17 -03:00
Wolfgang Walther
9f3bea8dca pkgsStatic.{libpq,postgresql}: fix linking against libpq.a
This can be observed when building
haskellPackages.postgresql-libpq-pkgconfig. This is currently pinned to
postgresql_16 in pkgsStatic, but when unpinning it, it will fail with
the mentioned error on master. With this fix, it successfully builds
with postgresql_17 / libpq.
2025-04-05 20:00:14 +02:00
Wolfgang Walther
88dfade94b postgresql: replace pg_config with custom script
By replacing upstream's pg_config binary with a shell script, we:
- gain the ability to run pg_config easily when cross-compiling,
- can remove the fake pg_config in the default output,
- can remove the pg_config wrapper script dealing with special cases.

Some 20 years ago, pg_config *was* a shell script upstream, too. It was
changed to a binary, when it was made "relocatable", so it would return
paths depending on the location of the "postgres" binary. However, this
is exactly the thing that just hurts us in nixpkgs - we don't want those
paths to change, we want them to always point at the right outputs. By
writing the script ourselves, this becomes a lot less painful.

This approach means more lines of codes, but all of them are dead simple
and we have a lot less complexity overall.

Additionally, pg_config is now made a separate derivation, only exposed
as "postgresql.pg_config". This has the nice side-effect, that all users
of postgresql and libpq in nixpkgs must be very *explicit* about their
dependency on pg_config. This gives a lot more visibility into the state
of affairs regarding pkg-config support for libpq, which ultimately is
the much better solution.
2025-03-21 18:05:38 +01:00
nixpkgs-ci[bot]
ac12db5260 Merge staging-next into staging 2025-02-21 18:05:28 +00:00
Wolfgang Walther
4579b6bc19 {postgresql*,libpq}: replace rev with tag
We had set the "stamped" commit in #382282, a few days before the tags
appeared. The tags are now there, so we can replace them. The hashes
stay the same.
2025-02-20 18:54:48 +01:00
Maximilian Bosch
6127dba039 Merge: libpq: fix pg_config --libdir (#382380) 2025-02-20 10:45:00 +01:00
R. Ryantm
7a8b7390d8 libpq: 17.2 -> 17.4
ChangeLog:
https://www.postgresql.org/about/news/postgresql-173-167-1511-1416-and-1319-released-3015/
https://www.postgresql.org/about/news/out-of-cycle-release-scheduled-for-february-20-2025-3016/

Co-authored-by: Maximilian Bosch <maximilian@mbosch.me>
Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
2025-02-18 11:20:12 +01:00
Wolfgang Walther
be8612e15a postgresql: fetch from GitHub instead of tarball
This allows us to fetch newer releases a few days before they are
officially released and the tarballs have been pushed.

The regular release cycle is like this:
- Sunday, the release notes are committed.
- Monday, the version is "stamped", i.e. the version bump committed.
- Thursday, the release is made.

There are not going to be any changes from Monday on, so we can kick off
our builds at that time already - they still need time to hit unstable
anyway.
2025-02-18 10:59:47 +01:00
Wolfgang Walther
4b19142053 libpq: fix pg_config --libdir
With the same reasoning as for postgresql's pg_config, we need to make
adjustments to libpq's variant. Otherwise it would not return the
correct LIBDIR, pointing at the -dev output instead of -out.
2025-02-15 22:13:17 +01:00
Wolfgang Walther
546ece569b libpq: init at 17.2
Resolves #61580
2025-01-19 12:49:21 +01:00