84. Stabilité des fonctionnalités¶
Cette table unique inventorie chaque fonctionnalité que Pepsi implémente et consigne les preuves actuelles de la stabilité de chacune. Les trois premières colonnes sont maintenues à la main dans contrib/feature-registry.tsv ; les trois dernières sont fusionnées depuis une télémétrie d’usage anonyme et sur consentement explicite (voir pepsi-telemetry).
Test automatisé — si, et comment, la fonctionnalité est couverte par un test automatisé :
U(uncargo testunitaire / en-processus),I(un test d’intégration — un scripttests/*.shde pipeline en service ou un test de bout en boutpepsi-test-stages),I/U(les deux), ou-(pas encore de test automatisé).Manuel — si la fonctionnalité a en outre été vérifiée à la main (
yes/no).Déploiements — nombre de déploiements réels qui ont signalé avoir la fonctionnalité activée.
Usages — nombre de fois où la fonctionnalité a réellement été exercée sur le terrain.
Stabilité — un palier dérivé des deux dernières colonnes :
stable — déploiements ≥ 100 et usages totaux ≥ 100000
used — déploiements ≥ 10 et usages totaux ≥ 1000
experimental — sinon
Une fonctionnalité marquée (*) après son nom n’est pas instrumentée pour la télémétrie — c’est une capacité de protocole passive, une facilité universelle, ou une CLI de courte durée qui se termine avant qu’un compte d’usage ait pu être vidé — de sorte que ses cases Déploiements, Usages et Stabilité sont affichées comme — (aucun compte ne peut être mesuré pour elle).
Les comptes ci-dessous proviennent de https://telemetry.pepsi.taler.net/telemetry/report. Une fonctionnalité instrumentée qui n’y a aucun compte affiche 0 / 0 / experimental : aucun déploiement participant ne l’a exercée depuis le dernier démarrage de son démon de télémétrie. Le collecteur n’authentifie pas les soumissions : lisez donc les comptes comme une indication, non comme une mesure. Aucune fonctionnalité n’est encore passée par une passe de test à la main dédiée (Manuel = no partout).
Rapport généré : 2026-09-28T23:22:26Z
Fonctionnalité (RFC) |
Test automatisé |
Manuel |
Déploiements |
Usages |
Stabilité |
|---|---|---|---|---|---|
Cœur de serveur SMTP (RFC 5321) |
I/U |
no |
1 |
141 |
experimental |
STARTTLS (RFC 3207) |
I/U |
no |
1 |
830 |
experimental |
TLS implicite / port submissions (RFC 8314) |
U |
no |
0 |
0 |
experimental |
CHUNKING / BDAT (RFC 3030) |
I/U |
no |
1 |
18 |
experimental |
Déclaration et application de SIZE (RFC 1870) |
I/U |
no |
1 |
129 |
experimental |
PIPELINING (RFC 2920) |
I/U |
no |
1 |
111 |
experimental |
ENHANCEDSTATUSCODES (RFC 2034) (*) |
U |
no |
— |
— |
— |
En-tête de trace Received (RFC 5321, RFC 3848) |
I/U |
no |
1 |
141 |
experimental |
Limitation de connexions / d’engorgement |
I/U |
no |
0 |
0 |
experimental |
8BITMIME (RFC 6152) |
I/U |
no |
1 |
43 |
experimental |
SMTPUTF8 (RFC 6531) |
I/U |
no |
1 |
8 |
experimental |
Rétrogradation 8 bits / UTF-8 par saut (RFC 2045, RFC 2047) |
I/U |
no |
0 |
0 |
experimental |
Notifications d’état de remise (RFC 3461, RFC 3463, RFC 3464) |
I/U |
no |
1 |
88 |
experimental |
SMTP AUTH (entrant) (RFC 4954) |
U |
no |
1 |
16 |
experimental |
Soumission de messages / MSA (RFC 6409) |
U |
no |
1 |
17 |
experimental |
Authentification du client (MYNETWORKS / certificat client TLS) |
I/U |
no |
0 |
0 |
experimental |
SPF (RFC 7208) |
U |
no |
1 |
140 |
experimental |
Vérification DKIM (RFC 6376, RFC 8463) |
I/U |
no |
1 |
91 |
experimental |
DMARC (RFC 7489) |
U |
no |
1 |
95 |
experimental |
iprev / FCrDNS (RFC 8601) |
U |
no |
1 |
140 |
experimental |
En-tête Authentication-Results (RFC 8601) |
U |
no |
1 |
141 |
experimental |
Scellement et vérification ARC (RFC 8617) |
I/U |
no |
1 |
124 |
experimental |
Sender Rewriting Scheme (SRS) |
I/U |
no |
0 |
0 |
experimental |
Signature DKIM sortante (RFC 6376, RFC 8463) |
I/U |
no |
1 |
23 |
experimental |
Relais direct vers le MX (RFC 5321) |
I/U |
no |
1 |
53 |
experimental |
Gestion du Null MX (RFC 7505) |
U |
no |
0 |
0 |
experimental |
MTA-STS (RFC 8461) |
U |
no |
1 |
4 |
experimental |
Autoconfiguration des clients de messagerie (config-v1.1.xml) (draft-ietf-mailmaint-autoconfig) |
U |
no |
0 |
0 |
experimental |
Vérification de l’identité de serveur TLS (RFC 6125) |
U |
no |
1 |
53 |
experimental |
Relais via smarthost (RFC 5321) |
I/U |
no |
0 |
0 |
experimental |
Mécanismes SASL de smarthost (RFC 4954, RFC 4616, RFC 5802, RFC 7628) |
U |
no |
0 |
0 |
experimental |
DANE / TLSA (RFC 7672) |
U |
no |
0 |
0 |
experimental |
SMTP TLS Reporting (TLSRPT) (RFC 8460) |
I/U |
no |
1 |
43 |
experimental |
Remise locale en Maildir |
I/U |
no |
1 |
119 |
experimental |
Application du quota de boîte aux lettres (Maildir++ / quotactl) |
I/U |
no |
0 |
0 |
experimental |
CLI et réconciliation du quota de boîte aux lettres (pepsi-quota) (*) |
I |
no |
— |
— |
— |
Remise locale LMTP + Sieve du MDA (RFC 2033, RFC 5228) |
I/U |
no |
0 |
0 |
experimental |
Traitement de ~/.forward |
I/U |
no |
0 |
0 |
experimental |
Expansion d’alias / de map virtuelle |
I/U |
no |
1 |
119 |
experimental |
Client de filtre de courrier milter (après la file d’attente) |
I/U |
no |
0 |
0 |
experimental |
Barrière anti-spam à péage à l’envoi (GNU Taler) |
I/U |
no |
0 |
0 |
experimental |
Wallet d’auto-paiement (GNU Taler) |
I/U |
no |
1 |
17 |
experimental |
Vérification de liste blanche d’expéditeur |
I/U |
no |
0 |
0 |
experimental |
Liste blanche automatique (sortante) |
I/U |
no |
1 |
17 |
experimental |
Détection de langue |
I/U |
no |
1 |
63 |
experimental |
Blocage de langue |
I/U |
no |
1 |
63 |
experimental |
Étape de branchement conditionnel |
U |
no |
1 |
141 |
experimental |
Édition des paramètres par e-mail |
I/U |
no |
1 |
17 |
experimental |
Redéfinitions de paramètres par adresse |
I/U |
no |
0 |
0 |
experimental |
Génération de rebonds (RFC 3464) |
I/U |
no |
1 |
7 |
experimental |
Puits de rejet |
no |
0 |
0 |
experimental |
|
File d’attente à table unique et récupération après plantage |
I |
no |
0 |
0 |
experimental |
Pools de workers pipelinés et chien de garde |
I |
no |
1 |
1 |
experimental |
Fusion d’étapes |
I |
no |
1 |
17 |
experimental |
Serveur HTTP (politique MTA-STS + métriques) (RFC 8461) |
I/U |
no |
0 |
0 |
experimental |
Métriques Prometheus |
I |
no |
0 |
0 |
experimental |
Provisionnement et vérification DNS (*) |
I/U |
no |
— |
— |
— |
Migration depuis un MTA existant (Postfix/Exim/Sendmail/qmail/Stalwart) (*) |
U |
no |
— |
— |
— |
CLI d’opérateur de file d’attente (pepsi-queue) (*) |
no |
— |
— |
— |
|
Résumé de santé (pepsi-status) (*) |
U |
no |
— |
— |
— |
Diagnostic de détection de langue (pepsi-detect-language) (*) |
U |
no |
— |
— |
— |
Socket de soumission locale (authentification par identifiants du pair) (RFC 6409) |
U |
no |
1 |
2 |
experimental |
Client compatible sendmail (pepsi-sendmail) (*) |
I/U |
no |
— |
— |
— |
CLI de liste blanche (pepsi-whitelist) (*) |
I |
no |
— |
— |
— |
Espaces de noms de liste blanche par utilisateur (<login>/name) (*) |
I/U |
no |
— |
— |
— |
Import de liste blanche depuis une boîte aux lettres (mbox/Maildir) (*) |
I/U |
no |
— |
— |
— |
Import de liste blanche par IMAP (*) |
U |
no |
— |
— |
— |
Import de liste blanche via doveadm (*) |
U |
no |
— |
— |
— |
Propositions de joker de liste blanche + exclusion des hébergeurs (*) |
I/U |
no |
— |
— |
— |
Magasin de clés de bout en bout (identités, clés de pairs, confiance des CA) (*) |
I/U |
no |
— |
— |
— |
Clés privées enveloppées en AEAD sous une KEK de secrets.d |
U |
no |
0 |
0 |
experimental |
Colonne des clés privées restreinte au rôle pepsi-crypto (*) |
I |
no |
— |
— |
— |
CLI du magasin de clés (pepsi-keys) (*) |
I |
no |
— |
— |
— |
Génération de clés OpenPGP (Ed25519 / RSA) |
U |
no |
0 |
0 |
experimental |
Délivrance de certificat S/MIME + CSR (auto-signé) |
U |
no |
0 |
0 |
experimental |
Mode certificat S/MIME unique (CRYPTO_SMIME_SHARED_KEY) |
U |
no |
0 |
0 |
experimental |
Découverte de clés : WKD advanced (openpgpkey.<domain>) (draft-koch-openpgp-webkey-service) |
I/U |
no |
0 |
0 |
experimental |
Découverte de clés : WKD direct (draft-koch-openpgp-webkey-service) |
I/U |
no |
0 |
0 |
experimental |
Découverte de clés : DANE OPENPGPKEY / SMIMEA (RFC 7929, RFC 8162) |
U |
no |
0 |
0 |
experimental |
Découverte de clés : serveur de clés vérificateur (VKS) |
U |
no |
0 |
0 |
experimental |
Découverte de clés : annuaire LDAP (conditionné par une fonctionnalité de compilation) (RFC 4511) |
U |
no |
0 |
0 |
experimental |
Moissonnage de clés depuis le courrier entrant + Autocrypt |
U |
no |
0 |
0 |
experimental |
Apprentissage de clés depuis le gossip Autocrypt d’un message déchiffré (Autocrypt Level 1) |
U |
no |
0 |
0 |
experimental |
Message garé sur clé manquante (découverte asynchrone) |
I/U |
no |
0 |
0 |
experimental |
Signature et chiffrement de bout en bout sortants (pepsi-stage-encrypt) (RFC 3156, RFC 8551) |
I/U |
no |
0 |
0 |
experimental |
Chiffrement OpenPGP (PGP/MIME) sortant (RFC 3156, RFC 9580) |
U |
no |
0 |
0 |
experimental |
Chiffrement S/MIME (CMS) sortant (RFC 8551, RFC 5083) |
U |
no |
0 |
0 |
experimental |
Signature de bout en bout sortante sans chiffrement (RFC 3156, RFC 8551) |
U |
no |
0 |
0 |
experimental |
Rétrogradation de conteneur par destinataire (SEIPDv1 / CBC) (RFC 4880) |
U |
no |
0 |
0 |
experimental |
Annonce de clé Autocrypt sur le courrier sortant (Autocrypt Level 1) |
U |
no |
0 |
0 |
experimental |
Gossip de clés Autocrypt : les clés des autres destinataires To/Cc à l’intérieur du texte chiffré (Autocrypt Level 1) |
U |
no |
0 |
0 |
experimental |
Destinataire sans clé acheminé vers le portail de lien sécurisé |
I/U |
no |
0 |
0 |
experimental |
Portail de repli par lien sécurisé : stocker un message non chiffrable |
I/U |
no |
0 |
0 |
experimental |
Points de terminaison du portail de lien sécurisé servis par pepsi-httpd |
I/U |
no |
0 |
0 |
experimental |
Message à lien sécurisé ouvert avec le bon PIN |
I |
no |
0 |
0 |
experimental |
PIN de lien sécurisé refusé (compteur de verrouillage) |
I |
no |
0 |
0 |
experimental |
Réponse composée via le portail de lien sécurisé |
I |
no |
0 |
0 |
experimental |
Second facteur du lien sécurisé envoyé par courrier à l’expéditeur |
U |
no |
0 |
0 |
experimental |
Second facteur du lien sécurisé remis à une commande de passerelle |
no |
0 |
0 |
experimental |
|
Lien sécurisé sans second facteur (lien seul, plus faible) |
U |
no |
0 |
0 |
experimental |
Création d’identité sur demande (une demande explicite de protection, ou SIGN = always) |
I/U |
no |
0 |
0 |
experimental |
Préréglage pEp : une clé générée pour un expéditeur à sa première soumission (ENABLE_PEP) |
I |
no |
0 |
0 |
experimental |
La propre clé (MUA) d’un utilisateur enregistrée depuis un en-tête Autocrypt ou un fichier de clé soumis (Autocrypt Level 1) |
I |
no |
0 |
0 |
experimental |
Clé publique de l’expéditeur jointe sous forme de fichier (ATTACH_KEYS_AS_FILES) (RFC 3156) |
I/U |
no |
0 |
0 |
experimental |
Libre-service des clés par e-mail (état, génération, enregistrement, publication, retrait) |
I/U |
no |
0 |
0 |
experimental |
Déchiffrement de bout en bout et vérification de signature entrants (pepsi-stage-decrypt) (RFC 3156, RFC 8551) |
I/U |
no |
0 |
0 |
experimental |
Message entrant réellement déchiffré (RFC 3156, RFC 8551) |
U |
no |
0 |
0 |
experimental |
Déchiffrement OpenPGP entrant (PGP/MIME, en ligne) (RFC 3156, RFC 9580) |
U |
no |
0 |
0 |
experimental |
Déchiffrement S/MIME (CMS) entrant (RFC 8551, RFC 5083) |
U |
no |
0 |
0 |
experimental |
Signature entrante valide contre une clé de confiance (RFC 3156, RFC 8551) |
U |
no |
0 |
0 |
experimental |
Signature entrante valide mais la clé n’est pas ancrée (TOFU) |
U |
no |
0 |
0 |
experimental |
Signature entrante qui n’a pas vérifié |
U |
no |
0 |
0 |
experimental |
Texte chiffré entrant que cet hôte n’a pas pu ouvrir |
U |
no |
0 |
0 |
experimental |
Texte clair OpenPGP entrant au-delà du plafond de décompression |
U |
no |
0 |
0 |
experimental |
Apprentissage de clés Autocrypt depuis le courrier entrant (Autocrypt Level 1) |
I/U |
no |
0 |
0 |
experimental |
Clés apprises en ligne depuis un message entrant (Autocrypt Level 1) |
U |
no |
0 |
0 |
experimental |
Revérification à l’aide d’un certificat trouvé dans le texte clair |
no |
0 |
0 |
experimental |
|
Clés de tiers apprises depuis les champs de gossip d’un message déchiffré (Autocrypt Level 1) |
U |
no |
0 |
0 |
experimental |
Clé Autocrypt d’un correspondant remplacée par une plus récente (auditée, utilisateurs avertis) (Autocrypt Level 1) |
I/U |
no |
0 |
0 |
experimental |
Clé Autocrypt plus récente refusée parce que la clé stockée est toujours valide (ACCEPT_ROTATION = expired) |
I/U |
no |
0 |
0 |
experimental |
Échec cryptographique entrant acheminé vers une étape de quarantaine |
U |
no |
0 |
0 |
experimental |
Échec cryptographique entrant renvoyé en rebond |
U |
no |
0 |
0 |
experimental |
Courrier entrant chiffré vers la propre clé (MUA) d’un utilisateur transmis sans être ouvert (RFC 3156, RFC 8551) |
I |
no |
0 |
0 |
experimental |
Courrier entrant déchiffré rechiffré vers la propre clé (MUA) du destinataire pour le stockage (pepsi-stage-reencrypt) (RFC 3156, RFC 8551) |
I/U |
no |
0 |
0 |
experimental |
Rechiffrement pour le stockage vers une clé MUA OpenPGP (RFC 3156, RFC 9580) |
I/U |
no |
0 |
0 |
experimental |
Rechiffrement pour le stockage vers une clé MUA S/MIME (RFC 8551, RFC 5083) |
U |
no |
0 |
0 |
experimental |
Courrier déchiffré classé en clair : le destinataire n’a pas de clé MUA (ON_NO_CLIENT_KEY = plaintext) |
I |
no |
0 |
0 |
experimental |
Clé MUA d’un destinataire vers laquelle le scellement a échoué |
no |
0 |
0 |
experimental |
|
Courrier déchiffré refusé faute de clé MUA (ON_NO_CLIENT_KEY = bounce) (RFC 3463) |
I |
no |
0 |
0 |
experimental |
Preuve consignée qu’un correspondant détient notre clé (arrête le fichier de clé) |
I/U |
no |
0 |
0 |
experimental |
Publication de clés : points de terminaison Web Key Directory (draft-koch-openpgp-webkey-service) |
I/U |
no |
0 |
0 |
experimental |
Publication de clés : téléversement vers le serveur de clés + réessai de vérification (*) |
U |
no |
— |
— |
— |
Publication de clés : confirmation automatique du courrier de vérification du serveur de clés |
U |
no |
0 |
0 |
experimental |
Acheminement par domaine de destinataire vers un saut suivant (pepsi-stage-route) |
I/U |
no |
0 |
0 |
experimental |
Module complémentaire Outlook servi par pepsi-httpd (manifeste + volet de tâches) |
U |
no |
0 |
0 |
experimental |
Choix de la famille d’adresses IP par saut suivant (ADDRESS_FAMILY) |
U |
no |
0 |
0 |
experimental |
CLI de paramètres (pepsi-settings) (*) |
I/U |
no |
— |
— |
— |
Configuration en base de données (chaîne de portées + rechargement à chaud) |
I/U |
no |
0 |
0 |
experimental |
CLI de configuration (pepsi-config) (*) |
I |
no |
— |
— |
— |
Export/import chiffré de la configuration (*) |
U |
no |
— |
— |
— |
Mise en rebond des échecs (pepsi-failure-bouncer) |
no |
0 |
0 |
experimental |
|
Helper de rafraîchissement de jeton OAuth de smarthost (*) |
U |
no |
— |
— |
— |
Journalisation structurée (*) |
U |
no |
— |
— |
— |
Télémétrie de fonctionnalités (*) |
U |
no |
— |
— |
— |
API REST d’administration (/api/v1) |
I/U |
no |
0 |
0 |
experimental |
Console web d’administration (/ui) |
U |
no |
0 |
0 |
experimental |
Questionnaire de configuration initiale piloté depuis la console web |
U |
no |
0 |
0 |
experimental |
Messages à lien sécurisé parcourus depuis la console web |
U |
no |
0 |
0 |
experimental |
Clé de correspondant importée via l’API (POST /api/v1/peers) |
I |
no |
0 |
0 |
experimental |
Consultation de découverte mise en file d’attente via l’API (POST /api/v1/peers/discover) |
I |
no |
0 |
0 |
experimental |
Journal d’audit d’administration |
U |
no |
0 |
0 |
experimental |
Journal par message sur consentement explicite ([pepsi] MAIL_LOG) |
U |
no |
0 |
0 |
experimental |
Configuration initiale pilotée par navigateur (/api/v1/setup + pepsi-setup apply) |
U |
no |
0 |
0 |
experimental |
Assistant non interactif (pepsi-setup –answers) |
U |
no |
0 |
0 |
experimental |
Réponse automatique de vacances / d’absence (RFC 3834) |
I/U |
no |
0 |
0 |
experimental |
Défi de confirmation à l’envoi pour les expéditeurs inconnus (pepsi-stage-secretary) (RFC 3834) |
I/U |
no |
0 |
0 |
experimental |
Listes de diffusion : domaines, listes, membres, propriétaires, interdictions (pepsi-list) (*) |
I/U |
no |
— |
— |
— |
Stockage des archives de listes (partitionné par hachage, plein texte + trigrammes) (*) |
I/U |
no |
— |
— |
— |
Routage des listes de diffusion (pepsi-stage-list) |
I/U |
no |
0 |
0 |
experimental |
Envoi de liste : chaîne de modération, pipeline de gestionnaires et éclatement (pepsi-stage-list-post) |
I/U |
no |
0 |
0 |
experimental |
Remise de liste par membre : désabonnement en un clic, décoration (pepsi-stage-list-deliver) |
I/U |
no |
0 |
0 |
experimental |
Commandes de liste par e-mail : join, leave, confirm et les flux d’abonnement (pepsi-stage-list-command) |
I/U |
no |
0 |
0 |
experimental |
Traitement des rejets de liste : attribution VERP, 17 détecteurs, comptabilisation (pepsi-stage-list-bounce) |
I/U |
no |
0 |
0 |
experimental |
Archives de liste : ingestion, constitution des fils, les deux mécanismes de recherche, suppression et export (pepsi-archive) (*) |
I/U |
no |
— |
— |
— |
L’API REST de GNU Mailman 3 (/3.0/ et /3.1/) – amont 3.3.10, vérifiée par les suites propres de mailmanclient et de Postorius |
I/U |
no |
0 |
0 |
experimental |
L’interface web publique des listes : index, formulaires d’abonnement et de désabonnement, navigation dans les archives et recherche |
I/U |
no |
0 |
0 |
experimental |
Désabonnement en un clic RFC 8058 (List-Unsubscribe-Post), honoré quoi que dise la politique de désabonnement (RFC 8058) |
I/U |
no |
0 |
0 |
experimental |
Comptes de membres sur le site public des listes : inscription, vérification d’adresse, mots de passe et réinitialisation, et les pages d’abonnement propres au membre |
I/U |
no |
0 |
0 |
experimental |
La console du propriétaire et du modérateur : messages retenus, demandes d’abonnement, écrans de réglages générés, liste des membres, interdictions et règles d’en-tête – autorisée par une interrogation de la liste des membres, non par un compte d’exploitant |
I/U |
no |
0 |
0 |
experimental |
Import d’un serveur GNU Mailman 3 en fonctionnement via sa propre API REST : domaines, listes, utilisateurs, adresses, membres, interdictions et règles d’en-tête |
I/U |
no |
0 |
0 |
experimental |
Import d’un site Mailman 2.1 depuis ses fichiers config.pck, avec la correspondance d’attributs d’amont et un lecteur de pickle qui ne construit rien |
I/U |
no |
0 |
0 |
experimental |
Import d’une archive mbox, avec les réparations cleanarch dans le lecteur et une reconstruction automatique des fils |
I/U |
no |
0 |
0 |
experimental |
La campagne d’invitations de bascule : un débit, une reprise et une simulation par domaine |
I/U |
no |
0 |
0 |
experimental |
Les deux formats de résumé : multipart/digest MIME et la forme simple RFC 1153, avec la règle de volume et de numéro et une minuterie périodique (RFC 1153) |
I/U |
no |
0 |
0 |
experimental |
Le répondeur automatique de l’adresse d’envoi, y compris respond_and_discard (RFC 3834) |
I/U |
no |
0 |
0 |
experimental |
Rejet des messages retenus au-delà de max_days_to_hold – un attribut inerte dans GNU Mailman 3 |
I/U |
no |
0 |
0 |
experimental |
Les 28 modèles de notification de GNU Mailman dans les dix langues livrées, avec l’audit des substituts qui repère un nom de substitut traduit (*) |
U |
no |
— |
— |
— |
Les pages publiques de listes et d’archives en anglais, allemand et français, choisies d’après Accept-Language dans l’ordre des q, avant tout accès à la base (*) |
I/U |
no |
— |
— |
— |