Ho installato il discourse mail-receiver per consentire le risposte via email sul mio sito self-hosted. Ricevo il seguente avviso di deprecazione nei log.
Deprecation notice: warning: the email parameter is deprecated. all POST requests to this route should be sent with a base64 strict encoded email_encoded parameter instead. email has been received and is queued for processing (removal in Discourse 3.3.0)
At /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/actionpack-7.2.2.1/lib/action_controller/metal/basic_implicit_render.rb:8:in `send_action`
Sto eseguendo l’ultima versione di Discourse 3.5.0.beta3-dev, quindi la versione di deprecazione è errata, ma sembra comunque spaventoso che possa interrompersi da un momento all’altro.
Sintomo
Ogni email in arrivo tramite mail-receiver genera questo nei log:
AVVISO DI DEPRECAZIONE: warning: il parametro email è deprecato. tutte le richieste POST verso questa route dovrebbero essere inviate con un parametro email_encoded codificato in base64 strict. email è stata ricevuta e messa in coda per l'elaborazione (rimozione in Discourse 3.3.0)
At /var/www/discourse/vendor/bundle/ruby/3.4.0/gems/actionpack-8.0.5.1/lib/action_controller/metal/basic_implicit_render.rb:8:in `ActionController::BasicImplicitRender#send_action`
Cosa ho verificato sul mio server
base_image: discourse/mail-receiver:release in /var/discourse/containers/mail-receiver.yml — quindi sto eseguendo la linea release, non una versione vecchia bloccata.
docker ps mostra local_discourse/mail-receiver in esecuzione accanto al contenitore app standard.
docker image inspect local_discourse/mail-receiver --format '{{.Created}}' → 2026-08-08T08:41:54Z — ricostruito da poco con ./launcher rebuild mail-receiver solo giorni fa.
L’avviso di deprecazione persiste dopo una ricostruzione fresca su release.
Conclusione
L’avviso proviene dall’attuale ultimo rilascio di mail-receiver stesso, che invia ancora l’email grezza tramite il parametro deprecato email invece del parametro email_encoded codificato in base64 strict che l’endpoint ora si aspetta. Per quanto posso capire, nulla nell’immagine release in esecuzione risolve ancora questo problema.
Si tratta solo di un avviso di deprecazione (non un errore) e le email vengono comunque messe in coda ed elaborate normalmente, quindi non sta bloccando il mio sito — ma mi piacerebbe vedere il codice di mail-receiver aggiornato in modo che questo avviso scompaia. La riga problematica è in discourse_mail_receiver.rb, che invia il parametro email invece di email_encoded.
C’è qualche tempistica per il rilascio di questa correzione nell’immagine release di mail-receiver?
Il mail-receiver stava ancora inviando il messaggio grezzo utilizzando il parametro email deprecato. La PR lo modifica per inviare il messaggio utilizzando email_encoded: Base64.strict_encode64(...) invece, come richiesto dall’endpoint Discourse /admin/email/handle_mail.
Ho anche aggiunto un test di regressione che verifica che email_encoded venga inviato e che il parametro email deprecato non venga più utilizzato.
La suite di test del mail-receiver e i controlli di formattazione/lint passano localmente.