Skip to content

Releases: pgcentralfoundation/pgrx

v0.12.9

22 Nov 16:29
a218889
Compare
Choose a tag to compare

This is pgrx v0.12.9. This version will refuse to build against Postgres versions 17.1, 16.5, 15.9, 14.14, 13.17, and 12.21. These Postgres versions introduced an ABI incompatibility that we'd rather just not ever have to deal with.

As always, to upgrade please run cargo install cargo-pgrx --version v0.12.9 --locked.

You may need to run another cargo pgrx init to pickup the new latest versions of each major release.

What's Changed

Full Changelog: v0.12.8...v0.12.9

v0.12.8

02 Nov 17:34
dd4155c
Compare
Choose a tag to compare

This is pgrx v0.12.8. It fixes a potential deadlock during the cargo-pgrx "install" process if any of the extension schema files include the @GIT_HASH@ variable. How bizarre!

As always, to upgrade please run cargo install cargo-pgrx --version v0.12.8 --locked.

What's Changed

Full Changelog

v0.12.7...v0.12.8

v0.12.7

27 Oct 17:51
5a4ff45
Compare
Choose a tag to compare

Welcome to pgrx v0.12.7. This is a minor release which adds a few more Postgres headers, fixes a possible crashing bug, adds some more smarts to #[pg_cast], and adds a new GucFlags variant.

To upgrade, please execute cargo install cargo-pgrx --version 0.12.7 --locked. Then you can run cargo pgrx upgrade against your extension crates.

The plan is that this will be the last release in the v0.12.x series.

What's Changed

More Headers

New Features

Less Build Drama

Safety

  • fix: crash from drop impls that panic via leak_and_drop_on_delete() by @eeeebbbbrrrr in #1929

New Contributors

Full Changelog:
v0.12.6...v0.12.7

v0.12.6

14 Oct 17:41
123b2b0
Compare
Choose a tag to compare

Welcome to pgrx v0.12.6. This release fixes a number of bugs, cleans up various parts of the code, adds more Postgres #include headers, and other little things.

To upgrade, first install cargo-pgrx with cargo install cargo-pgrx --version 0.12.6 --locked. Then you can run cargo pgrx upgrade in your extension's crate to update its dependencies.

What's Changed

New Contributors

Full Changelog: v0.12.5...v0.12.6

v0.12.5

26 Sep 20:05
2801296
Compare
Choose a tag to compare

Welcome to pgrx v0.12.5. This is a big minor release because it brings support for Postgres v17.0, released on Sept 26th, 2024. Much thanks to the Postgres folks for all their hard work! We'd have to do this for MySQL otherwise!

To upgrade to pgrx v0.12.5, do cargo install cargo-pgrx --version 0.12.5 --locked. Once installed you can run cargo pgrx upgrade in the root of all your extension crates to update their dependencies.

New Features

pgrx now supports Postgres v17.0! You'll want to run another cargo pgrx init to get the latest release of all Postgres versions, including 17.

diffs between schema versions should be a lot prettier now as cargo pgrx schema should be repeatable from run-to-run and otherwise output in a predictable order.

Regular and cross-compiles should be more reliable now thanks to using cc to compile the tiny bit of C code pgrx includes.

Made with love to those who don't like allocations!

Bug Fixes

  • Fixed conversion of i64 and f64 to datums on 32-bit machines by @YohDeadfall in #1859

More Postgres Headers

Docs & Examples

Code Cleanup

New Contributors

Full Changelog: v0.12.4...v0.12.5

v0.12.4

11 Sep 16:14
b810e98
Compare
Choose a tag to compare

Welcome to pgrx v0.12.4.

First, and most importantly, it fixes a segfault when converting a NULL pg_sys::Datum into a Rust String. It seems you'd need to go out of your way to cause the segfault, but nonetheless, it shouldn't happen. A NULL Datum should convert to Option::None in all situations.

Secondly, @aykut-bozkurt has properly defined microseconds, which is critical for proper Time conversions.

From there, @usamoi enhanced our bindings generation such that we now auto-generate wrappers for any of Postgres' static inline functions in the included headers. This is great as it eliminates our need to manually write these wrappers and it automatically exposes a lot more.

And thanks to @YohDeadfall AnyArray is now iterable!

As always, please upgrade using cargo install cargo-pgrx --version 0.12.4 --locked. Then you can use cargo pgrx upgrade to update the dependencies in your extension crates.

What's Changed

Full Changelog: v0.12.3...v0.12.4

v0.12.3

09 Sep 13:17
46c9abe
Compare
Choose a tag to compare

Welcome to pgrx v0.12.3. This point release upgrades to use the new Postgres 17rc1.

As usual, please cargo install cargo-pgrx --version 0.12.3 --locked. Then you can run cargo pgrx upgrade in your extension crate's root to update its dependencies.

What's Changed

Full Changelog: v0.12.2...v0.12.3

v0.12.2

06 Sep 13:54
5a1151e
Compare
Choose a tag to compare

Welcome to pgrx v0.12.2. This is a minor release that fixes a few bugs, improves compilation times with cargo pgrx run/install/test, and adds a few more Postgres headers.

As usual, please cargo install cargo-pgrx --version 0.12.2 --locked. Then you can run cargo pgrx upgrade in your extension crate's root to update its dependencies.

What's Changed

New Contributors

Thanks to these folks for their first-time contributions -- it's greatly appreciated!

Full Changelog: v0.12.1...v0.12.2

v0.12.1

21 Aug 23:11
d40aa4d
Compare
Choose a tag to compare

You may be more interested in the release notes for 0.12.0.

What's Changed

Full Changelog: v0.12.0...v0.12.1

v0.12.0

20 Aug 19:49
2de7a4e
Compare
Choose a tag to compare

Cutting the 0.12.0 release as-is!

You may need to:

  • rearrange some imports
  • sed some types to use pg_sys::EnumName::Type (only the typedef, not the constants)
  • bump heapless to 0.8
  • impl ArgAbi and impl BoxRet for custom types

Code which updates to this version of pgrx is actually sound for the Postgres function ABI, so sorry about the breakages!

What's Changed

Read more