15 releases (9 breaking)
|0.68.0||Oct 31, 2023|
|0.67.0||Jul 8, 2022|
|0.66.0||Jul 6, 2022|
|0.64.1||Jan 19, 2022|
|0.1.0||Feb 10, 2019|
#1825 in Database interfaces
245 downloads per month
Used in 5 crates (via c3p0)
"A pleasure to meet you. I am C-3p0, JSON-DB Relations."
C3p0: "Hello, I don't believe we have been introduced. A pleasure to meet you. I am C-3p0, JSON-DB Relations."
Are you playing with Postgres and you like it?
Do you think JSON is excellent, but it could be better handled in your DB code?
So, if you would like to:
- use any
serde_json::Serializablestruct as a valid field in your Diesel models
- seamlessly integrate any
serde_json::Serializablestruct in your rust-postgres code
- automatically upgrade your schema in rust-postgres as in Diesel migration
then keep reading!
What C3p0 is not
Even when it offers a high-level interface to perform basic CRUD operations, it is not an ORM nor an alternative to Diesel or similar products.
C3p0: "I see, Sir Luke".
How it works
C3p0 is composed of a set of independent small Rust libraries for:
- simplifying JSON-Postgres interactions
- facilitating general schema management
C3p0 components not ready yet:
- c3p0_diesel This will be the equivalent c3p0_pg build on Diesel.
You must have Rust version 1.33 or later installed.
The first C3p0 version was written in Java...
C3p0: "If I told you half the things I’ve heard about this Jabba the Hutt, you’d probably short circuit."
I said "Java", "Ja"-"va". Stay focused, please!
Anyway, Java is slowly showing its age, and we got a bit bored about it.
C3p0: "they're using a very primitive dialect".
On the contrary, our interest in the Rust programming language has kept growing over time; so, experimented with it and, finally, migrated some critical portions of our code to Rust.
Just said, we love it.
We believe that Rust is a better overall language.
C3p0: "The city's central computer told you?"
Yes! It allows us to achieve better resource usage, to avoid the garbage collector and the virtual machine, and, at the same time, to get a better and safer concurrency level.
Can I use it in production?
Han "Don't worry. Everything's gonna be fine. Trust me."
C3p0: "Every time he employs that phrase, my circuitry becomes erratic!"