github trailbaseio/trailbase v0.22.0

latest release: v0.22.1
2 days ago
  • Multi-DB support 🎉: record APIs can be backed by TABLE/VIEWs in independent DBs. This can help with physical isolation and offer a path when encountering locking bottlenecks.
    • This change includes:
      • Config-driven DB life-cycle management, i.e. creation, migrations, ... .
      • Generalized connection management.
      • Per-DB file-upload/life-cycle management.
      • Multi-DB subscription "realtime" management.
      • End-to-end tests.
    • Limitations:
      • SQLite does not allow for FOREIGN KEYs and TRIGGERs to cross DB boundaries. However JOINs, etc. are perfectly capable of crossing DB boundaries.
      • The implemented management of independent connections allows for an arbitrary number of DBs despite SQLite's limit of 125 DBs per connection. However, VIEWs executed within the context of a connection are still subject to this limit.
    • Documentation is TBD :hide:, see <repo>/client/testfixture/config.textproto for an example.
      • DBs are mapped to <traildepot>/data/<name>.db and <traildepot>/migrations/<name>/.
    • This change doesn't introduce a notion of multi-tenancy, e.g.: create and route per-tenant DBs based on schema templates.
    • This was a big change, please reach out for any issues or feedback. 🙏
  • Changed Record API's default behavior to run batches w/o transactions unless requested.
  • Improved errors for file-handling record APIs.
  • Update Rust (latest stable: 1.92) and dependencies.

Full Changelog: v0.21.11...v0.22.0

Don't miss a new trailbase release

NewReleases is sending notifications on new releases.