ddl-diff
usql
ddl-diff | usql | |
---|---|---|
1 | 21 | |
2 | 8,634 | |
- | 0.9% | |
10.0 | 9.2 | |
over 6 years ago | 5 days ago | |
Scala | Go | |
GNU General Public License v3.0 only | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ddl-diff
-
PRQL a simple, powerful, pipelined SQL replacement
So, after digging about in the docs, I found the Best Practices[0] page which lays out what you describe. I was disappointed to find it is just using idempotent creation statements for procedures and views and putting them all in files that are re-run on each migration step-along with each new roll forward migration-so that new versions of these logic objects replace any old ones. This is not exactly something that liquidbase provides, should be easily replicatable, and I was hoping it'd do diffs to provide similar experience on tables as well.
After some web searching, I came across a project[1] that's trying to do what I describe but it appears to be dead. I'm surprised that migration tools (that I looked through) don't already support such a basic approach that I suspect I'm missing something obvious. Some fundamental block in how SQL works or maybe it doesn't work that well in practice for, in concept, it sounds easy to script using what they call a shadow db and `pg_diff`.
[0]: https://docs.liquibase.com/concepts/bestpractices.html
[1]: https://github.com/cbowdon/ddl-diff
usql
- xo/usql: Universal command-line interface for SQL databases
- Usql – Universal command-line interface for SQL databases
-
PRQL a simple, powerful, pipelined SQL replacement
Also all languages has an query-builder / ORM so the benefit of something like PRQL is possibly not big enough to merit it as an additional dependency.
My suggestion:
Make PRQL a cli tool that can be used by allowing users to connect to a database in a similar fashion as something like usql (https://github.com/xo/usql),
-
Is there a CLI interface to browse SQL databases?
take a look at: https://github.com/xo/usql
-
New Open source Go projects looking for contributors
https://github.com/xo/usql has some good first issues
-
usql 0.11.0
There's a new release of usql that adds even more autocomplete and fixes a bunch of issues: https://github.com/xo/usql/releases/tag/v0.11.0
- 5 Useful Database Command Line Tools
- usql
-
Literate programming is much more than just commenting code
I am not a big fan of the complex literate programming style involving code-generation which this article talks about.
But I recently discovered that Google's zx [1] scripting utility supports executing scripts in markdown documents and I combined it with httpie [2] and usql [3] for a bit of quick and dirty automation testing and api verification code and it worked out pretty well.
[1] https://github.com/google/zx#markdown-scripts
[2] https://github.com/httpie/httpie
[3] https://github.com/xo/usql
- usql v0.9.4
What are some alternatives?
cargo-semver-checks - Scan your Rust crate for semver violations.
go-sitemap-generator - go-sitemap-generator is the easiest way to generate Sitemaps in Go
prql-query - Query and transform data with PRQL
hystrix-go - Netflix's Hystrix latency and fault tolerance library, for Go
FunSQL.jl - Julia library for compositional construction of SQL queries
boilr - :zap: boilerplate template manager that generates files or directories from template repositories
normconf2022
Task - A task runner / simpler Make alternative written in Go
prql - PRQL is a modern language for transforming data — a simple, powerful, pipelined SQL replacement
ngrok - Unified ingress for developers
liquibase - Main Liquibase Source
fzf - :cherry_blossom: A command-line fuzzy finder