Welcome to pgrx v0.17.0. This is a new minor release that brings a bunch
of internal code refactoring, cleanup, new Postgres headers, and
additional cargo-pgrx regress CLI options.
As always, please install the latest cargo-pgrx with cargo install cargo-pgrx --version 0.17.0 --locked and also update your extension
crate dependencies with cargo pgrx upgrade.
Breaking Changes
v0.17.0 migrates to Rust edition 2024 and prefers to use a different resolver. It may be necessary to add these lines to the [package] section of your Cargo.toml files:
[package]
edition = "2024"
resolver = "3"What's Changed
New Headers/Symbols
- include
access/tsmapi.hby @usamoi in
#2155 - Include access/subtrans.h & access/commit_ts.h by @isdaniel in
#2147 - include
utils/guc_tables.hby @usamoi in
#2243 - Include
scanner.hin Rust bindings by @piki in
#2163 - Add
commands/publicationcmds.hto generatedpg_sysbindings by
@Sinjo in #2221 - Add the ClientAuthentication_hook by @daamien in
#2231 - add storage/dsm_*.h headers by @eeeebbbbrrrr in
#2244 - pg-sys: add catalog/heap.h bindings for PG18 by @charmitro in
#2150 - Add back
peer_dnfield toPortonpg17..by @workingjubilee in
#2200 - Add
repr(C)tostruct Portonpg13..=16by @workingjubilee in
#2201
cargo-pgrx improvements
Code Cleanup
- Replace with let-chains in pgrx-bindgen by @workingjubilee in
#2168 - Replace with let-chains in pgrx-sql-entity-graph by @workingjubilee in
#2169 - Restore so-called needless lifetimes by @workingjubilee in
#2167 - Drop stray Postgres 12 support in cargo-pgrx by @workingjubilee in
#2173 - Remove deprecated enum##member constants by @workingjubilee in
#2170 - Remove
variadic!macro by @workingjubilee in
#2171 - Semi-automated code cleanup by @workingjubilee in
#2189 - Deref instead of borrowing
Option<&String>by @workingjubilee in
#2185 - Refactor schema.rs using a cargo command builder by @workingjubilee in
#2187 - Replace
impl AsRef<T>with&Tby @workingjubilee in
#2182 - Make
PgRelation::heap_relationunsafe by @workingjubilee in
#2176 - Move
cargo_pgrx::envtocargo_pgrx::cargoby @workingjubilee in
#2186 - Move
CargoProfileintocargo_pgrx::cargoby @workingjubilee in
#2188 - Add Scalar trait for generic handling of primitive arrays by
@workingjubilee in #2153 - Set BGWORKER_SHMEM_ACCESS when building background workers by @cbandy
in #2161 - Stop referencing
pg_configin schema generation by @workingjubilee
in #2174 - Show line number of failed asserts by @piki in
#2175 - Ghostbust
used_type.rsa bit by @workingjubilee in
#2190 - Manually bind
static MyProcPortandstruct Portby @workingjubilee
in #2162 - Make datetime types import each other via
use superby
@workingjubilee in #2198 - Migrate datetime types into
pgrx::datetimeby @workingjubilee in
#2199 - Use diagnostic attrs for ABI/SQL-related traits by @workingjubilee in
#2203 - Make
Scalarprovidepg_sys::Oidconstant by @workingjubilee in
#2209 - Hoist varlena encoding fn by @workingjubilee in
#2208 - Recurse through
Twhile anonymizing&Tby @workingjubilee in
#2212 impl BorrowDatum for TimeTzby @workingjubilee in
#2213- Change
MemCx::alloc_bytesto returnNonNullby @workingjubilee in
#2214 - Add
MemCx<'current, T>arguments andPBox<'current, T>returns by
@workingjubilee in #2210 - Further improve diagnostics for signatures with no SQL form by
@workingjubilee in #2215 - Add
array::Elementandcallconv::DatumPassby @workingjubilee in
#2218 - Remove unused line in
memcxt_tests.rsby @workingjubilee in
#2220 - Add
FlatArray<'_, T>by @workingjubilee in
#2207 - Allow explicit handling of allocation errors by @workingjubilee in
#2226 - Place lbound before updating array len product by @workingjubilee in
#2236 - introduce
#[pg_guard(unsafe_entry_thread)]by @eeeebbbbrrrr in
#2242
Project Administrativa
- Use Rust Edition 2024 by @workingjubilee in
#2165 - Remove testing for deprecated Intel Macs by @workingjubilee in
#2156 - Remove unused Cargo.lock for version-updater by @workingjubilee in
#2180 - Add rust-analyzer.toml by @workingjubilee in
#2179 - Note pgrx requires an unknown minimum Xcode version by @workingjubilee
in #2164
New Contributors
- @isdaniel made their first contribution in
#2147 - @cbandy made their first contribution in
#2161 - @piki made their first contribution in
#2163 - @Sinjo made their first contribution in
#2221
Full Changelog:
v0.16.1...v0.17.0