-
-
Notifications
You must be signed in to change notification settings - Fork 251
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cargo-pgx
should verify compiler parity requirement
#774
Comments
We could have the Rust compiler version get injected into |
Do we need this except for the ability to return |
@thomcc pgx has multiple Fixing this properly (to remove all of the unsoundness from cargo-pgx) would probably require serializing everything (to JSON or similar) that extension binaries return to cargo-pgx, so that instead of: it does something like let symbol: libloading::os::unix::Symbol<unsafe extern "C" fn() -> *const u8> = and deserializes the returned |
Ah, I see. Yeah, nevermind then. |
We do generate a lot of code so we could probably do better than JSON, but still, a problem for another time. |
FWIW, I think actually JSON would be fine here since this is only used in That said, a better approach is probably to store this data in a custom |
pgx requires that the compiler used to compile
cargo-pgx
is the same compiler used to compile extension crates (#687 (comment)), but doesn't verify that requirement incargo-pgx
. It should.This requirement is not made obvious to users and results in user confusion since a compiler mismatch can result in weird segfaults and errors.
The text was updated successfully, but these errors were encountered: