Update version to 0.15.0#2096
Merged
eeeebbbbrrrr merged 1 commit intoJun 28, 2025
Merged
Conversation
daamien
pushed a commit
to daamien/pgrx
that referenced
this pull request
Dec 15, 2025
Welcome to pgrx v0.15.0. This begins a new series for pgrx that includes support for Postgres 18. As of this release, that means Postgres 18beta1. This release does contain a few breaking API changes but they're largely mechanical. Don't worry, the compiler will let you know! As always, please install our CI tool with `cargo install cargo-pgrx --version 0.15.0 --locked` and then run `cargo pgrx upgrade` in all of your extension crates. If you want to start working with Postgres 18beta1, you'll also need to re-init your pgrx environment with `cargo pgrx init`. That will automatically detect all the latest Postgres versions, including 18beta1. At the top here, I'd like to thank @silver-ymz for the 18beta1 support. It was a pleasant surprise to see that work come from the community -- it's no easy task to add a new Postgres version to pgrx! That said, as Postgres 18 is currently beta, you should consider pgrx' support for it as beta too. Please report any problems with 18beta1 (or discrepancies with other versions) as GitHub issues. Also, this release requires rust v1.88.0 or greater. `if-let` chains are now a thing and we're not afraid to use them. # What's Changed ## Postgres 18beta1 Support * Support Postgres 18beta1 by @silver-ymz in pgcentralfoundation#2056 * pg18 support: add header and implement `#define` by @eeeebbbbrrrr in pgcentralfoundation#2094 * improve pg_magic_func by @usamoi in pgcentralfoundation#2088 ## More Headers * Added `catalog/heap.h` binding by @ccleve in pgcentralfoundation#2072 * include `utils/pg_status.h` by @eeeebbbbrrrr in pgcentralfoundation#2091 ## `cargo-pgrx` improvements * Pass `LLVM_*` variables to `--runas` command by @theory in pgcentralfoundation#2083 * `does_db_exist()`: fix `psql` argument order by @eeeebbbbrrrr in pgcentralfoundation#2093 * `cargo pgrx regress` output is no longer fully buffered by @eeeebbbbrrrr in pgcentralfoundation#2095 * Detect `pgrx_embed` name from lib name by @YohDeadfall in pgcentralfoundation#2035 * Fixed error message if no artifact found by @YohDeadfall in pgcentralfoundation#2034 * `cargo-pgrx`: use system certificate store for HTTPS validation by @charmitro in pgcentralfoundation#2074 * Decoding command output in Windows by @if0ne in pgcentralfoundation#2084 ## Breaking Changes * fix GUC by @usamoi in pgcentralfoundation#2064 * refactor GUC by @usamoi in pgcentralfoundation#2066 ## New Stuff * Added `pg_binary_protocol` attribute to derive send and receive functions for `PostgresType` by @LucaCappelletti94 in pgcentralfoundation#2068 * Expose guc hooks by @thesuhas in pgcentralfoundation#2075 * Allows to create multiple aggregates for the same Rust type by @if0ne in pgcentralfoundation#2078 ## General Code Cleanup * `cargo clippy --fix` by @eeeebbbbrrrr in pgcentralfoundation#2092 * Use `if-let` to unpack Options by @stuhood in pgcentralfoundation#2089 * docs: fix typo in `rust_byte_slice_to_bytea()` docs by @burmecia in pgcentralfoundation#2071 * Added a missing `#[doc(hidden)]` by @LucaCappelletti94 in pgcentralfoundation#2079 ## Administrative * Updated Fedora to latest in CI by @YohDeadfall in pgcentralfoundation#2085 * fix ci on beta rust (1.89) by @usamoi in pgcentralfoundation#2087 ## New Contributors Much thanks to our new contributors! Your work is sincerely appreciated! * @charmitro made their first contribution in pgcentralfoundation#2074 * @thesuhas made their first contribution in pgcentralfoundation#2075 * @if0ne made their first contribution in pgcentralfoundation#2084 * @stuhood made their first contribution in pgcentralfoundation#2089 **Full Changelog**: pgcentralfoundation/pgrx@v0.14.3...v0.15.0
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Welcome to pgrx v0.15.0. This begins a new series for pgrx that includes support for Postgres 18. As of this release, that means Postgres 18beta1.
This release does contain a few breaking API changes but they're largely mechanical. Don't worry, the compiler will let you know!
As always, please install our CI tool with
cargo install cargo-pgrx --version 0.15.0 --lockedand then runcargo pgrx upgradein all of your extension crates.If you want to start working with Postgres 18beta1, you'll also need to re-init your pgrx environment with
cargo pgrx init. That will automatically detect all the latest Postgres versions, including 18beta1.At the top here, I'd like to thank @silver-ymz for the 18beta1 support. It was a pleasant surprise to see that work come from the community -- it's no easy task to add a new Postgres version to pgrx!
That said, as Postgres 18 is currently beta, you should consider pgrx' support for it as beta too. Please report any problems with 18beta1 (or discrepancies with other versions) as GitHub issues.
Also, this release requires rust v1.88.0 or greater.
if-letchains are now a thing and we're not afraid to use them.What's Changed
Postgres 18beta1 Support
#defineby @eeeebbbbrrrr in pg18 support: add header and implement#define#2094More Headers
catalog/heap.hbinding by @ccleve in Added "catalog/heap.h" binding #2072utils/pg_status.hby @eeeebbbbrrrr in include utils/pg_status.h #2091cargo-pgrximprovementsLLVM_*variables to--runascommand by @theory in PassLLVM_*variables to--runascommand #2083does_db_exist(): fixpsqlargument order by @eeeebbbbrrrr indoes_db_exist(): fixpsqlargument order #2093cargo pgrx regressoutput is no longer fully buffered by @eeeebbbbrrrr incargo pgrx regressoutput is no longer fully buffered #2095pgrx_embedname from lib name by @YohDeadfall in Detect pgrx_embed name from lib name #2035cargo-pgrx: use system certificate store for HTTPS validation by @charmitro in cargo-pgrx: use system certificate store for HTTPS validation #2074Breaking Changes
New Stuff
pg_binary_protocolattribute to derive send and receive functions forPostgresTypeby @LucaCappelletti94 in Addedpg_binary_protocolattribute to derive send and receive functions forPostgresType#2068General Code Cleanup
cargo clippy --fixby @eeeebbbbrrrr incargo clippy --fix#2092if-letto unpack Options by @stuhood in Use if-let to unpack Options #2089rust_byte_slice_to_bytea()docs by @burmecia in docs: fix typo inrust_byte_slice_to_bytea()docs #2071#[doc(hidden)]by @LucaCappelletti94 in Added a missing#[doc(hidden)]#2079Administrative
New Contributors
Much thanks to our new contributors! Your work is sincerely appreciated!
Full Changelog: v0.14.3...v0.15.0