Skip to content

Fix config regression around falsy experimental_features (None) - #19987

Merged
MadLittleMods merged 4 commits into
release-v1.157from
madlittlemods/19986-fix-none-type-experimental_features-config
Jul 22, 2026
Merged

Fix config regression around falsy experimental_features (None)#19987
MadLittleMods merged 4 commits into
release-v1.157from
madlittlemods/19986-fix-none-type-experimental_features-config

Conversation

@MadLittleMods

@MadLittleMods MadLittleMods commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Fix config regression around falsy experimental_features (None)

Examples:

experimental_features:
experimental_features: null
experimental_features: ~

Fix #19986

Regressed in #19539

The plan is to create a patch release and ship this in v1.157.1

Dev notes

SYNAPSE_TEST_LOG_LEVEL=INFO poetry run trial tests.config.test_experimental
SYNAPSE_TEST_LOG_LEVEL=INFO poetry run trial tests.config.test_server

Pull Request Checklist

  • Pull request is based on the develop branch
  • Pull request includes a changelog file. The entry should:
    • Be a short description of your change which makes sense to users. "Fixed a bug that prevented receiving messages from other servers." instead of "Moved X method from EventStore to EventWorkerStore.".
    • Use markdown where necessary, mostly for code blocks.
    • End with either a period (.) or an exclamation mark (!).
    • Start with a capital letter.
    • Feel free to credit yourself, by adding a sentence "Contributed by @github_username." or "Contributed by [Your Name]." to the end of the entry.
  • Code style is correct (run the linters)

Comment thread synapse/config/server.py
self.max_delayed_events_per_user: int = config.get(
"experimental_features", {}
).get("msc4140_max_delayed_events_per_user", 100)
experimental = config.get("experimental_features") or {}

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This matches what we already do:

experimental = config.get("experimental_features") or {}

Comment thread changelog.d/19987.bugfix Outdated
@@ -0,0 +1 @@
Stub changelog: Merge with #19539.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is here so the CI runs but the plan is to remove it in favor of coalescing it with #19539

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

since it's going out in a point release, wouldn't it need its own bugfix entry?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That makes sense 👍

@MadLittleMods
MadLittleMods marked this pull request as ready for review July 22, 2026 00:53
@MadLittleMods
MadLittleMods requested a review from a team as a code owner July 22, 2026 00:53
@MadLittleMods
MadLittleMods merged commit 7cb94ab into release-v1.157 Jul 22, 2026
44 of 45 checks passed
@MadLittleMods
MadLittleMods deleted the madlittlemods/19986-fix-none-type-experimental_features-config branch July 22, 2026 14:07
@MadLittleMods

Copy link
Copy Markdown
Contributor Author

Thanks for the review @reivilibre 🦦

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants