Problema di personalizzazione del messaggio popup e del testo dopo l'aggiornamento

Ho aggiornato qualche giorno fa. Dopo l’aggiornamento, ho riscontrato un problema.

Se la “localizzazione predefinita” è in inglese, non ci sono problemi. Il messaggio popup viene visualizzato correttamente, ma in altre lingue si verificano problemi.
Non riesco a modificare alcuni testi relativi alla sezione chat. A proposito, ho provato e riesco a fare modifiche in altre parti. Non sono sicuro se questo problema sia correlato solo alla parte della chat o se ci siano anche altre aree.
Ho riscontrato lo stesso problema sia che abbia eseguito l’aggiornamento dall’interfaccia o con il comando.
Ho riprovato oggi. Ho disinstallato tutto e ho eseguito una nuova installazione.
Ho una nuova installazione e non sono installati plugin o componenti.

Versione: 3.1.0.beta2 -(6fa9a8990d)

Qualche idea, per favore?



1 Mi Piace

Ho appena eseguito questo sul mio sito di test e posso riprodurlo. Non aggiornavo il mio sito di test da un po’ e sulla versione f19044af6a ha funzionato bene, ma aggiornando all’ultima versione 39be3cb619 si è verificato lo stesso comportamento segnalato.

I miei passaggi:

(Versione f19044af6a)

  • Imposta default locale su ‘Español’
  • Imposta chat dm retention days su ‘30’
  • Vai su /admin/customize/site_texts e modifica js.chat.retention_reminders.dm
  • Aggiorna e controlla il messaggio con un nuovo utente di test:

Aggiorna a 39be3cb619

  • Il messaggio esistente ha il valore del parametro raw:

  • Vai su /admin/customize/site_texts e modifica js.chat.retention_reminders.dm ora genera un errore 500 con questo nei log:

Message (4 copie segnalate)

NoMethodError (undefined method `scan' for {:one=>"Personal chat history is retained for %{count} day.", :other=>"Personal chat history is retained for %{count} days."}:Hash

    keys = text.scan(pattern)
               ^^^^^)
lib/i18n/i18n_interpolation_keys_finder.rb:6:in `find'
app/models/translation_override.rb:124:in `check_interpolation_keys'
app/models/translation_override.rb:65:in `upsert!'
app/controllers/admin/site_texts_controller.rb:88:in `update'
app/controllers/application_controller.rb:414:in `block in with_resolved_locale'
app/controllers/application_controller.rb:414:in `with_resolved_locale'
lib/middleware/omniauth_bypass_middleware.rb:74:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:369:in `call'
config/initializers/100-quiet_logger.rb:20:in `call'
config/initializers/100-silence_logger.rb:29:in `call'
lib/middleware/enforce_hostname.rb:24:in `call'
lib/middleware/request_tracker.rb:228:in `call'

Backtrace

lib/i18n/i18n_interpolation_keys_finder.rb:6:in `find'
app/models/translation_override.rb:124:in `check_interpolation_keys'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:400:in `block in make_lambda'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:199:in `block (2 levels) in halting'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:687:in `block (2 levels) in default_terminator'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:686:in `catch'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:686:in `block in default_terminator'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:200:in `block in halting'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:595:in `block in invoke_before'
activesupport (7.0.4.1) lib/active_support/callbacks.rb:595:in `each'

3 Mi Piace

E non c’è modo di correggere questa situazione solo dall’interfaccia utente @JammyDodger?

1 Mi Piace

Sono abbastanza sicuro che una soluzione simile a Cannot update text for js.composer.error.post_length - #2 by gerhard funzionerà.

3 Mi Piace

Penso che sia un po’ diverso da quello nel link che hai menzionato. Vedi il problema se la tua impostazione predefinita della lingua non è l’inglese e se cambi “chat dm retention days” da 0 a x giorni.
Inoltre, la soluzione che hai menzionato non funziona, non puoi cambiare il testo (js.chat.retention_reminders.dm) nemmeno in modalità provvisoria. C’è un errore 500 quando provi a cambiarlo.

2 Mi Piace

Ho provato in alcuni modi, ma non sono riuscito a reimpostarlo e a farmi rientrare per modificarlo manualmente. Controllando ora, il testo è tornato al suo testo predefinito ma con la variabile grezza (quindi nessuna opzione di ‘revert’ disponibile) e tentando di modificare manualmente viene visualizzato l’errore 500. Ho anche provato la soluzione alternativa della modalità sicura per l’altro argomento, che non sembra aver avuto alcun effetto.

La ricerca di js.chat.retention_reminders.dm nella localizzazione inglese (UK) mi offre tre scelte, ma in Español ne offre solo due.

2 Mi Piace

Abbiamo aggiornato le traduzioni, quindi dopo aver aggiornato il tuo Discourse all’ultima versione, dovresti essere in grado di correggere questo nell’interfaccia utente:

Puoi correggere la tua stringa personalizzata andando su Personalizza → Testo:

  • Cerca “js.chat.retention_reminders.dm”
  • fai clic su “modifica”
  • fai clic su “ripristina modifiche” e conferma la domanda con “sì”
  • fai clic su “torna alla ricerca”
  • Cerca “js.chat.retention_reminders.dm”
  • Vedrai 3 risultati, personalizza queste stringhe a tuo piacimento
7 Mi Piace

Mi dispiace per la cattiva notizia…

1 Mi Piace

Sei riuscito a ripristinare la stringa personalizzata “js.chat.retention_reminders.dm”? Vorrei chiudere questo bug se questo lo ha risolto per te.

Bene, il problema #2 è colpa mia. Lo sistemerò. FIX: Wrong interpolation key by gschlager · Pull Request #20374 · discourse/discourse · GitHub

Il problema #1 è un problema diverso. Ti dispiacerebbe creare un nuovo report di bug per quello?

4 Mi Piace

Certo, sto creando subito :+1:

1 Mi Piace

Questo argomento è stato chiuso automaticamente 24 ore dopo l’ultima risposta. Non sono più consentite nuove risposte.