!vcyiEtMVHIhWXcJAfl:sw1v.org

#synapse-dev:matrix.org

476 Members
If you are not a dev contributing code to Synapse, please talk in #synapse:matrix.org instead. This room is *only* for coordination of dev work. If you want to grab the attention of a dev, do it in #synapse:matrix.org. 144 Servers

Load older messages


SenderMessageTime
2 Jan 2025
@tweakboy559:envs.nettweakboy559 joined the room.20:24:54
3 Jan 2025
@juangrasso:matrix.orgJuan GrassoThanks you for the answer! Im going to check te mentioned issue!13:05:51
@juangrasso:matrix.orgJuan Grasso* Thanks you for the answer! Im going to check te mentioned issues!13:06:14
5 Jan 2025
@sqlerrorthing:matrix.orgsqlerrorthing joined the room.04:43:05
6 Jan 2025
@fheese:element.ioFlorian Heese changed their display name from Florian Heese // away to Florian Heese.08:19:13
@blackmad:matrix.orgDavid Blackman

I'm noticing some strange behaviour deep inside synapse and wondering if anyone here has seen it before / is familiar with it.

Symptom: new 'space-visible' rooms are not showing up in /hierarchy
Reason: because get_rooms_that_allow_join is checking that the allow key is a list, and it's coming back as a tuple https://github.com/element-hq/synapse/blob/develop/synapse/handlers/event_auth.py#L329

-> Reason: when the room is created, the join_rules event calls check_event_allowed - https://github.com/element-hq/synapse/blob/develop/synapse/handlers/message.py#L1289 - which calls event.freeze() which seems to be changing lists to tuples - https://github.com/element-hq/synapse/blob/develop/synapse/module_api/callbacks/third_party_event_rules_callbacks.py#L294
--> so that when the event is being pulled from cache, the allow list is a tuple. But when I restart the server, it gets pulled from the DB and deserialized as a list.

I'm confused why I'm seeing this behaviour in my server, and why it's not a bigger problem across synapse

10:00:36
@jason:littlevortex.netjason Neat find, it needs to be an iterable of strings that is not a string itself(since a string can be a list too). Maybe use StrCollection in that call at your first link? The freezing of events is a protective measure in the code base to prevent accidentally mutating the collection, can't just remove an element from a tuple 😁 10:12:15
@reivilibre.element:librepush.netOlivier 'reivilibre'
        if len(self._check_event_allowed_callbacks) == 0:
            return True, None

https://github.com/element-hq/synapse/blob/develop/synapse/module_api/callbacks/third_party_event_rules_callbacks.py#L282C1-L283C30

this might be why it's not widely seen. However it is a very valid bug, well done for spotting it!

10:16:13
@jason:littlevortex.netjasonOh man, the old module API?10:17:21
@blackmad:matrix.orgDavid BlackmanOHHH I missed that line10:17:43
@blackmad:matrix.orgDavid Blackmanyeah, my server makes heavy use of modules as a way to isolate functionality10:17:55
@reivilibre.element:librepush.netOlivier 'reivilibre'just my opinion but it's rather undesirable that we don't consistenly freeze events (at least once they've been persisted...)10:18:31
@blackmad:matrix.orgDavid Blackmanthank you for pointing out why it's not a bigger issue!10:18:52
@davidf:element.ioTill Faelligen changed their display name from Till [away] to Till.10:20:47
@sqlerrorthing:matrix.orgsqlerrorthingya russkiy11:40:58
@sqlerrorthing:matrix.orgsqlerrorthingkto toshe?11:41:02
@andrewm:element.ioAndrew Morgan (anoa) sqlerrorthing привет! Обратите внимание, что это комната только для англоговорящих. 11:44:36
@andrewm:element.ioAndrew Morgan (anoa) Does an issue need to be created off the back of this? 11:46:16
@andrewf:element.ioAndrew F changed their display name from Andrew F (back Jan 6) to Andrew F.13:35:34
@thibaultmartin:matrix.orgThib (m.org) changed their display name from Thib (m.org) to Thib (m.org, 🤒).16:08:36
7 Jan 2025
@sqlerrorthing:matrix.orgsqlerrorthing changed their display name from sqlerrorthing to sqlerrorthing😑.08:44:00
@sqlerrorthing:matrix.orgsqlerrorthing changed their display name from sqlerrorthing😑 to sqlerrorthing.08:46:01
@reivilibre.element:librepush.netOlivier 'reivilibre' eyes on the changelog for v1.122 please? https://github.com/element-hq/synapse/blob/release-v1.122/CHANGES.md 14:13:41
@mat:tout.imMatMaulLGTM14:22:38
@andrewm:element.ioAndrew Morgan (anoa)

Olivier 'reivilibre':

access to the user ID of requester

"access to the user ID of the requester"

Remove support for PostgreSQL 11 and 12.

We should pull this one up to the top, so it's front and centre.

Add previously-undocumented last_seen_ts

"last_seen_ts query parameter ..."

Alpine Linux Synapse Package Maintainer within installation.md

"within the installation instructions"

nice-to-have: It'd be nice to link to the config documentation for each config option that's mentioned.

14:25:11
@juangrasso:matrix.orgJuan GrassoRedacted or Malformed Event15:04:41
@juangrasso:matrix.orgJuan Grasso

Hello everyone,

I wanted to ask about the use of the SYNAPSE_HTTP_PORT variable. From what I understand, based on the README inside the Docker folder, I should be able to generate the configuration using a port different from the default 8008. That is:

If I run the command:

docker run -it --rm
-v synapse-data:/data
--env-file .env.dev
-e SYNAPSE_SERVER_NAME=Juan
-e SYNAPSE_REPORT_STATS=no
-e SYNAPSE_HTTP_PORT=1234
synapse-dev generate

The configuration file should set the port to:

listeners:

  • port: 1234
    tls: false

But it’s not working. Am I misunderstanding how I should implement this?

15:06:01
@daedric:aguiarvieira.ptRicardo DuarteQuestion regarding 1.222 docker , :latest isn't available yet, right ?16:31:45
@andrewm:element.ioAndrew Morgan (anoa) Correct, latest follows full releases. Today's release, v1.122.0rc1, was a release candidate for testing. 16:37:23
@daedric:aguiarvieira.ptRicardo Duarte

I misunderstood :)

eyes on the changelog for v1.122 please? https://github.com/element-hq/synapse/blob/release-v1.122/CHANGES.md

16:38:51

Show newer messages


Back to Room ListRoom Version: 9