Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Define SQLite compat policy (#13728)
Browse files Browse the repository at this point in the history
  • Loading branch information
David Robertson authored Sep 7, 2022
1 parent b58386e commit 77f3986
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 4 deletions.
1 change: 1 addition & 0 deletions changelog.d/13728.doc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Define Synapse's compatability policy for SQLite versions.
15 changes: 11 additions & 4 deletions docs/deprecation_policy.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Deprecation Policy for Platform Dependencies
============================================

Synapse has a number of platform dependencies, including Python and PostgreSQL.
This document outlines the policy towards which versions we support, and when we
drop support for versions in the future.
Synapse has a number of platform dependencies, including Python, Rust,
PostgreSQL and SQLite. This document outlines the policy towards which versions
we support, and when we drop support for versions in the future.


Policy
Expand All @@ -17,12 +17,14 @@ Details on the upstream support life cycles for Python and PostgreSQL are
documented at [https://endoflife.date/python](https://endoflife.date/python) and
[https://endoflife.date/postgresql](https://endoflife.date/postgresql).


A Rust compiler is required to build Synapse from source. For any given release
the minimum required version may be bumped up to a recent Rust version, and so
people building from source should ensure they can fetch recent versions of Rust
(e.g. by using [rustup](https://rustup.rs/)).

The oldest supported version of SQLite is the version
[provided](https://packages.debian.org/buster/libsqlite3-0) by
[Debian oldstable](https://wiki.debian.org/DebianOldStable).

Context
-------
Expand All @@ -44,3 +46,8 @@ generally bump their minimum support Rust versions frequently. In general, the
Synapse team will try to avoid updating the dependency on Rust to the absolute
latest version, but introducing a formal policy is hard given the constraints of
the ecosystem.

On a similar note, SQLite does not generally have a concept of "supported
release"; bugfixes are published for the latest minor release only. We chose to
track Debian's oldstable as this is relatively conservative, predictably updated
and is consistent with the `.deb` packages released by Matrix.org.

0 comments on commit 77f3986

Please sign in to comment.