Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[bug]: Email notifications show a broken avatar for users without a profile photo

Aperta Adatta ai principianti
#10,009 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@gurnoorpannu ci sta già lavorando.

Dal 14/10/2026.

  • #10012 di @gurnoorpannu — aperta

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
82/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
python
Ambito
backend

Direzione di ricerca

Inizia dalle tre assegnazioni di avatar_url in apps/api/plane/bgtasks/email_notification_task.py (intorno alle righe 200, 213 e 227), che antepongono l'URL base dell'API anche quando l'attore non ha un avatar. Poi controlla i rami {% if update.actor_detail.avatar_url %} in templates/emails/notifications/issue-updates.html (righe 53 e 194). È completato quando un attore senza foto riceve un valore avatar vuoto e il template mostra l'iniziale invece di un'immagine non funzionante.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Current behavior

In email notifications, the avatar for anyone without a profile photo is a broken image. The initial fallback in the template never shows.

apps/api/plane/bgtasks/email_notification_task.py (lines 200, 213 and 227 on preview) builds the URL as:

"avatar_url": f"{base_api}{actor.avatar_url}",

When the user has no avatar, actor.avatar_url is None (or ""), so the value becomes https://<host>/None (or just https://<host>). That string is truthy, so {% if update.actor_detail.avatar_url %} in templates/emails/notifications/issue-updates.html (lines 53 and 194) always takes the <img> branch, and the {% else %} initial is never used. https://<host>/None returns the web app's HTML, so mail clients show a broken image.

Expected behavior

Users without a photo show the initial, as the template intends.

Suggested fix

Only prefix when there is an avatar, in all three places:

"avatar_url": f"{base_api}{actor.avatar_url}" if actor.avatar_url else "",
Steps to reproduce
  1. Self-hosted instance with email notifications on.
  2. A user with no profile photo comments on or updates a work item.
  3. Another member gets the notification email: the actor's avatar is a broken image pointing to https://<host>/None.
Environment

Self-hosted (Docker images built from the current release), seen October 2026.

Lingua principale
TypeScript
Stelle
60.7k
Fork
6k
Merge medio
22h 10m
PR unite (30g)
33

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di makeplane/plane

Tutte le issue di makeplane/plane

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.