Skip to content

Releases: pgcentralfoundation/pgrx

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

v0.12.0-beta.5

14 Aug 17:43
a6d4755
Compare
Choose a tag to compare

pgrx 0.12.0-beta.5 will likely be the final1 beta release and we will be releasing 0.12.0 based on this code with almost no variation if no unpleasant surprises are discovered.

Misc Changes

  • Some doc fixes from @SteveLauC, thank you!
  • A number of FFI headers:
    • add bindings of syslogger.h by @usamoi in #1783
    • Add bindings for 'tcop/pquery.h' and 'commands/copy.h' header files by @aykut-bozkurt in #1786
    • Include pg_seclabel catalog by @daamien in #1787
    • Add bindings for 'jit/jit.h' and 'utils/resowner_private.h' header files by @jeltz in #1790

Postgres 17 beta3 support

Thanks to @eeeebbbbrrrr in #1790 we now have support for Postgres 17's beta3 release. This will be updated to whatever's actually current before we release 0.12.0 proper.

New bindgen settings

For this release, I extensively reworked our CI to make new releases easier and faster, by validating that the build problems that occurred for the pgrx 0.12.0-beta.0 release never happen again. This involved splitting out our bindgen-running code into its own crate, which you will see in your dependency tree, though you should never have a reason to explicitly depend on it. Now we test that the pgrx workspace always can be packaged in CI, and we verify that code on publishing.

As part of this I also did some additional tuning on our bindgen settings in #1804 so that it now generates &CStr for appropriate constants (same content as the &[u8] you may have used before).

New Contributors

Full Changelog: v0.12.0-beta.3...v0.12.0-beta.5

  1. The astute may notice something about these release notes when compared with the previous: https://github.com/pgcentralfoundation/pgrx/releases/tag/v0.12.0-beta.4

v0.12.0-beta.4

14 Aug 16:08
3f8ee77
Compare
Choose a tag to compare
v0.12.0-beta.4 Pre-release
Pre-release

pgrx 0.12.0-beta.4 will likely be the final beta release and we will be releasing 0.12.0 based on this code with almost no variation if no unpleasant surprises are discovered.

Misc Changes

  • Some doc fixes from @SteveLauC, thank you!
  • A number of FFI headers:
    • add bindings of syslogger.h by @usamoi in #1783
    • Add bindings for 'tcop/pquery.h' and 'commands/copy.h' header files by @aykut-bozkurt in #1786
    • Include pg_seclabel catalog by @daamien in #1787
    • Add bindings for 'jit/jit.h' and 'utils/resowner_private.h' header files by @jeltz in #1790

Postgres 17 beta2 support

Thanks to @eeeebbbbrrrr in #1790 we now have support for Postgres 17's beta2 release. This will be updated to whatever's actually current before we release 0.12.0 properly.

New bindgen settings

For this release, I extensively reworked our CI to make new releases easier and faster, by validating that the build problems that occurred for the pgrx 0.12.0-beta.0 release never happen again. This involved splitting out our bindgen-running code into its own crate, which you will see in your dependency tree, though you should never have a reason to explicitly depend on it. Now we test that the pgrx workspace always can be packaged in CI, and we verify that code on publishing.

As part of this I also did some additional tuning on our bindgen settings in #1804 so that it now generates &CStr for appropriate constants (same content as the &[u8] you may have used before).

New Contributors

Full Changelog: v0.12.0-beta.3...v0.12.0-beta.4

v0.12.0-beta.3

16 Jul 00:46
b875b0b
Compare
Choose a tag to compare
v0.12.0-beta.3 Pre-release
Pre-release

An internal API fixup later, and now you can actually read the docs for pgrx::callconv!

What's Changed

Full Changelog: v0.12.0-beta.2...v0.12.0-beta.3

v0.12.0-beta.2

10 Jul 04:59
215af07
Compare
Choose a tag to compare
v0.12.0-beta.2 Pre-release
Pre-release

Mostly, we filled in a bunch of small gaps that were found in pgrx's type implementations because we lacked adequate testing.

Otherwise, see the release notes for 0.12.0-beta.0!

What's Changed

Full Changelog: v0.12.0-beta.1...v0.12.0-beta.2

v0.12.0-beta.1

07 Jul 04:29
b8392e7
Compare
Choose a tag to compare
v0.12.0-beta.1 Pre-release
Pre-release

Somehow we were missing a build directory and the nuances of our publishing requirements and Cargo prevented us from noticing this. Otherwise, see the release notes for v0.12.0-beta.0! Thanks to @danbluhmhansen in #1756 for catching this!

New Contributors

Full Changelog: v0.12.0-beta.0...v0.12.0-beta.1