element-hq / element-hq/synapse

MSC4354 Sticky Events implementation has workaround for our SQLite supported versions situation

Open
#19,452 0 comments 0 reactions 1 assignee Claimed by @reivilibre View on GitHub
A-Database A-SQLite dependencies T-Task
Dominant language
Python
Stars
4.6k
Forks
600
Avg merge
5d 22h
Merged PRs (30d)
51

Description

I'm going to merge #19365 with somewhat dodgy SQLite version gating for the experimental Sticky Events feature (#19409).

The problem is: we need to get some field out of the `internal_metadata` JSON payload and using JSON operators introduced in SQLite 3.38 is the least painful way to do this.
But despite our minimum supported version being 3.40, we only enforce 3.37 and this is what is used on Ubuntu 22.04: #19428

Since this feature is experimental, I feel OK with this workaround for now, but we need to sort out the situation and then remove the workaround (at which point this ticket can be closed).
This ticket also means this feature doesn't get any 'olddeps' testing under SQLite.

The effect of this ticket is that, when ready, these commits should be undone:

- https://github.com/element-hq/synapse/pull/19365/commits/02d245f210802c4a61532248b8571a11e941bbdf
- https://github.com/element-hq/synapse/pull/19365/commits/737d4823d32cffbb0c56e57f8bf93c34de235eac

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.