matrix-org / matrix-org/complement

Container feature detection

Ouverte
#656 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Langage dominant
Go
Étoiles
99
Forks
72
Merge moyen
4 j 1 h
PR mergées (30 j)
8

Description

There are an increasing set of features which are:

  • not in the spec
  • required in practice for all production homeservers.

A few examples:

  • ability to delete media.
  • ability to delete rooms/history entirely.
  • change rate limits for the CS API.

It would be nice if a homeserver could "declare" that it supports this, which then runs some magic command on the container to enable/disable this in the container prior to startup (to avoid needing to SIGHUP a running container or other nonsense). If this declaration API is standardised, it would allow the same rate limit tests to work across different HSes for example, and if not, it can be easily skipped.

This has overlap with https://github.com/matrix-org/complement/issues/654 which suggests a configuration format for saying which tests should be run. One can imagine that the "rate limit tests" were an MSC and hence could be opted-in to. The difference is that this needs configuration on a per-test basis, as we usually want very high rate limits in tests.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par comparer cette proposition avec Complement issue 654, en particulier avec le format de configuration suggéré. Définissez comment un homeserver déclare la prise en charge des fonctionnalités et comment cette déclaration active ou ignore des tests individuels avant le démarrage du conteneur. Le travail est considéré comme terminé lorsque l’approche couvre des exemples tels que la suppression des médias, la suppression des salles/de l’historique et les limites de débit par test, sans nécessiter le redémarrage d’un conteneur en cours d’exécution.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
go
Domaine
testing
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.