Hacker News new | past | comments | ask | show | jobs | submit login

Also of interest: rpgffi - https://github.com/posix4e/rpgffi

"R(Rust) PG(Postgresql) FFI (Foreign Function Interface)"




That is interesting.

pgx does a lot of that too, but for only pg10/11/12. And then it post-processes the bindings and builds a "common.rs" for symbols that are identical across versions.

That way you can target all three versions at once, and then you can use Rust's #[cfg(feature=)] directive to opt into support for specific versions.

pgx has also done a little bit of work to mask differences between the three versions so they appear as part of "common.rs" anyways.

I wanted a framework that let me know, at development time, if I was trying to do a thing that isn't supported (or the same) across various PG versions.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: