Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Settings v3: Feature flag changes #5124

Merged
merged 7 commits into from Aug 19, 2020
Merged

Settings v3: Feature flag changes #5124

merged 7 commits into from Aug 19, 2020

Conversation

turt2live
Copy link
Member

@turt2live turt2live commented Aug 17, 2020

Requires element-hq/element-web#14986
Requires element-hq/element-desktop#135
Fixes element-hq/element-web#10360

This is probably reviewable commit-by-commit, though it might be best to re-read the proposal and look at the code side-by-side.

A while ago we came up with a proposal for how to handle feature flags going forward, having gone through a gauntlet of trying to turn a feature on by default. The proposal described there is what this PR implements.

The theory is that by ensuring the labs section is always readily available we solve several problems we've had with the system:

  1. We no longer have to remember to drop a feature_name: labs in a billion places.
  2. We can force enable or disable a feature on our instances (likewise for self-hosted instances).
  3. We can ensure the ecosystem is able to test a feature more broadly by enabling something by default for all instances as a pre-release step.
  4. We can stop treating feature flags as special and instead convert them to regular settings as time progresses, if needed.

@turt2live
Copy link
Member Author

I think the end to end tests are a false alarm?


Synapse log file at /tmp/tmp.07unFsTa5c
--
  | Starting ...
  | error starting (exit code: 1); see above for logs
  | No running worker of synapse.app.homeserver found (from /workdir/matrix-react-sdk/test/end-to-end-tests/synapse/installations/consent/env/bin/homeserver.pid)
  | The process might be managed by another controller (e.g. systemd)
  | handle_error

Looks like a Synapse problem

@jryans jryans requested review from jryans and removed request for a team August 19, 2020 17:16
Copy link
Collaborator

@jryans jryans left a comment

Choose a reason for hiding this comment

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

Looks great overall, thanks! 😄

docs/settings.md Outdated Show resolved Hide resolved
@turt2live turt2live merged commit c9d98a1 into develop Aug 19, 2020
@turt2live turt2live deleted the travis/settings-v3 branch August 19, 2020 18:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Features cannot be set to default on
2 participants