-
Notifications
You must be signed in to change notification settings - Fork 17
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
Tusker rewrite in Rust #37
Comments
@dlight wrote at #35 (comment)
I've seen The most promising solution for me was renovate. I was not able to get it working and the whole idea of parsing the output of Personally The rewrite aims to keep the spirit of
|
Okay cool!
Is this like cornucopia? Cornucopia is really top notch; I think that you could use it in conjunction with tusker-rs. |
When I first heard about
The design I have in mind is a very small CLI tool and a single -- get_post_by_id.sql, one file per query
SELECT id, author, text, created
FROM post
WHERE id = $1 #[derive(QueryOne)]
#[query(sql = "get_post_by_id.sql", row = Post)]
struct GetPostById {
// order of params must match, types are checked
pub id: i32,
}
struct Post {
// column name and type are checked, order is irrelevant
pub id: i32,
pub author: String,
pub text: String,
pub created: time::OffsetDateTime,
} And when using the query I'm aiming for this API: let post = db.query(GetPostById { id: 1 }).await?; I got a prototype working but it's still very rough around the edges. I'm still figuring out how to resolve the paths relative to the tbh. working on this future is quite frustrating but I haven't given up, yet. I'm tempted to ditch this code and just use |
Any updates on this ? |
I finally came around implementing basic diffing of tables and constraints. It doesn't support functions, views, etc. For simple schemas that just use tables and constraints it's almost usable today. I plan to release a |
I ended up using https://github.com/stripe/pg-schema-diff as migra is not getting much support now a days. thanks for insights. |
I'm currently in process of rewriting
tuksker
in Rust.Why?
devcontainer
or deployment servers.migra
andschemainspect
have some unsolved issues. The lack of types makes it really hard to reason about the code.How is it going?
Head over to https://github.com/bikeshedder/tusker-rs and see for your own.
It doesn't work, yet. Don't bother trying it unless you want to start working on it. If that's your intention. Feel free to contact me and we can see what's the best way to collaborate.
The text was updated successfully, but these errors were encountered: