cargo-semver-checks
liquibase
cargo-semver-checks | liquibase | |
---|---|---|
18 | 54 | |
921 | 4,399 | |
- | 1.0% | |
9.4 | 9.9 | |
9 days ago | about 1 hour ago | |
Rust | Java | |
Apache License 2.0 | Apache License 2.0 |
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.
cargo-semver-checks
-
Semver violations are common, better tooling is the answer
If you'd like to dig deeper, here are some links:
- cargo-semver-checks: https://github.com/obi1kenobi/cargo-semver-checks
- Trustfall query engine, which powers cargo-semver-checks: https://github.com/obi1kenobi/trustfall
- Trustfall playground, where you can query Rust library APIs in your browser -- for example, "which structs in `itertools` are importable by more than one path": https://play.predr.ag/rustdoc#?f=2&q=*3-Structs-importable-f...
- 10min conference talk on Trustfall: https://www.hytradboi.com/2022/how-to-query-almost-everythin...
I'm also giving a talk at P99 CONF in a few months about how Trustfall's new optimizations API made cargo-semver-checks over 2300x faster: https://twitter.com/PredragGruevski/status/16893002495908003...
- Cargo-semver-checks: Scan your Rust crate for semver violations
- cargo-semver-checks v0.20 and Trustfall v0.4 released — semver-check up to 2354x faster
-
err-as-you-go crate - anyhow meets thiserror
I strongly recommend that anybody creating new error types for public APIs read Study of std::io::Error by u/matklad to see some ways that error types can [need to] be future-proofed. I don't know if cargo-semver-checks can catch these issues when they're generated by a macro, but it'd be something people using this crate should carefully look into.
-
Re-exporting an enum with a type alias is breaking, but not major
cargo-semver-checks will implement a check for cases like this, and many other hazards like it. The check will be major, or minor, or just a hazard — whatever the overall community decides is right.
-
cargo-semver-checks v0.18.0: rustdoc caching, new lints & more
Full release notes: https://github.com/obi1kenobi/cargo-semver-checks/releases/tag/v0.18.0
-
cargo-semver-checks v0.17 is out: correct re-export handling
Release notes, TL;DR: Rust 1.65+ only, no more false positives due to moved+re-exported items.
- Semver implications of `#[non_exhaustive]` behavior on tuple/unit enum variants · Issue #304 · obi1kenobi/cargo-semver-checks
liquibase
-
I am looking for a troubled/bad open source codebase
While I respect the work, Liquibase's code base is quite messy... https://github.com/liquibase/liquibase
-
Any free SchemaDiff tools out there? pgAdmin Schema Diff created a script but it fails (order is wrong, etc)
Have you looked at liquibase?
-
dbForge Schema Compare vs Redgate SQL Compare vs ApexSQL Diff
For those in search of a open source solution with commercial support have a look at https://www.liquibase.org/
- How do you manage database structure changes? And deploying code?
-
Better alternatives to schemachange for Snowflake Database Object Deployment
I haven't used it for a number of years but it sounds like something like liquibase (https://www.liquibase.org/) might be what you're looking for.
-
Version control for database used by C# app
Liquibase
- Dumb Question: Initializing a database.
-
How do you handle migrations ?
We use https://github.com/liquibase/liquibase, as most of Dev are used to and comfortable with it.
-
Schema vs non-schema prpgramming
Highly recommend you use either Liquibase or Flyway for schema management, and Testcontainers pg to run a transitive database for your tests.
-
Deploying data across environments
I haven't used this so I'm not sure it does exactly what you're looking for but I had a DBA recommend it to me as a possible tool to start using as we overhaul our pipelines. https://www.liquibase.org/
What are some alternatives?
octosql-plugin-postgres
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
ddl-diff - Generates SQL migrations by parsing and diffing DDL
schemachange - A Database Change Management tool for Snowflake
octosql-plugin-random_data - OctoSQL plugin serving random data
FluentMigrator - Fluent migrations framework for .NET
prql-query - Query and transform data with PRQL
dolt - Dolt – Git for Data
argfile - Load additional CLI args from file
bytebase - The GitLab/GitHub for database DevOps. World's most advanced database DevOps and CI/CD for Developer, DBA and Platform Engineering teams.
go-sqlite3-stdlib - A standard library for mattn/go-sqlite3 including best-effort date parsing, url parsing, math/string functions, and stats aggregation functions
dbmate - :rocket: A lightweight, framework-agnostic database migration tool.