plrust
plrust copied to clipboard
A Rust procedural language handler for PostgreSQL
> This is a request for comments, we'd like to hear user (or potential user) opinions and get feedback! As highlighted by @jim-mlodgenski in #9, PL/Rust is currently an "Untrusted"...
In the style of https://matklad.github.io/2021/02/06/ARCHITECTURE.md.html
It's worth examining possible usage of - [cargo vet](https://github.com/mozilla/cargo-vet) for vetting arbitrary dependency trees - [cargo geiger](https://github.com/rust-secure-code/cargo-geiger) for checking `unsafe` code - [cargo supply chain](https://github.com/rust-secure-code/cargo-supply-chain) - [cargo auditable](https://github.com/rust-secure-code/cargo-auditable) - [cargo...
In #25 we discussed a bit about creating sandboxing for the user-written PL/Rust code. Part of that security posture is related to dependencies. Right now, a user could go ```rust...
Right now PL/Rust keeps produced shared objects on the local filesystem in the directory specified by the `plrust.work_dir` GUC. We'd like to have an option for PL/Rust to keep these...
I'd like to see what it would look like to design (develop?) and otherwise maintain a custom rust compilation target for Postgres that could give us a nearly "safe" (as...
Some code that can be written for trusted language handlers might still soundly call `unsafe` code, technically speaking (in Rust terms), but PL/Rust should probably provide a suite of blessed...
PL/Rust has two distinct functionalities: compiling the code and executing the code. When executing doesn't have the required artifacts available, we could attempt to invoke the compilation side to get...
There is an issue with OUT parameters being in the front of the argument list. When creating a function like this: ```sql CREATE FUNCTION one_out(OUT o integer, i integer) AS...