# Iscrizione RSS interrotta dal contenuto del post

**URL:** https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415
**Category:** Bug
**Tags:** rss
**Created:** [16 Ottobre 2023, 4:42pm UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415 "2023-10-16T16:42:53Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![jeff5-really](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jeff5-really/32/333611_2.png) [@jeff5-really](https://meta.discourse.org/u/jeff5-really)
#### Post date: [16 Ottobre 2023, 4:42pm UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/1 "2023-10-16T16:42:53Z")

</div>

Sul [Python Discourse](https://discuss.python.org/) ho notato che il mio abbonamento RSS alla categoria `users` (rinominata “Help”) aveva smesso di funzionare. Tentando di ripristinarlo, l’abbonamento `https://discuss.python.org/c/users/7.rss` genera un contenuto non valido che il mio lettore (Thunderbird) non carica. Fallisce la validazione al W3C:

> **[Feed Validator Results: https://discuss.python.org/c/users/7.rss](https://validator.w3.org/feed/check.cgi?url=https%3A%2F%2Fdiscuss.python.org%2Fc%2Fusers%2F7.rss)**

Poiché quel controllo fallisce, presumo di non essere l’unico interessato.

Il problema sembra essere un carattere inaspettato nel post `https://discuss.python.org/t/beginner-help-with-concatenating-arrays/36226`. Nel feed, la sottostringa incriminata appare come `b'N \\x02x KSQT'` (due occorrenze).

Ovviamente non è colpa dell’utente, ma di Discourse per averlo permesso, e la soluzione a lungo termine spetta a voi.

Un amministratore lì (o almeno uno sviluppatore core di CPython) mi ha suggerito di segnalarlo qui.

---

<div class="post-metadata">

### Author: ![sam](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sam/32/102149_2.png) [@sam](https://meta.discourse.org/u/sam)
#### Post date: [17 Ottobre 2023, 3:50am UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/2 "2023-10-17T03:50:42Z")

</div>

Questo è un caso davvero strano:

```plaintext
PrettyText.format_for_email(p.cooked, p)
=> "<p>Hello, I’m currently trying to follow a machine learning pipeline described by a paper. Essentially, I need to create an input matrix which is shaped N x KSDT sized. The paper describes this as: “Here k, ks, kd, and ksd are labels and not indices, and all terms are understood to be matrices of the same N x KSQT size, so e.g. Xk is not an N x K sized matrix, but the full-size N x KSQT matrix with N x k unique values replicated KSQ times”.</p>\n<p>Right now, I have three following np.arrays:<br>\nbias_block: (348, 2, 151), bias_contrast: (348, 5, 151), and bias_decision: (348, 2, 151).<br>\nMy understanding is that in order to combine these three arrays, I would need a final size of (348, 20, 20, 20, 151). However, I’m really struggling on how to combine these arrays. Could someone please help with this, thanks a lot.</p>"

```

Non capisco cosa ci sia di sbagliato in quella stringa… la N x KSDT non sembra avere nulla di nascosto.

(nota che il post è ora uscito da “latest”, quindi rss è tornato a funzionare come effetto collaterale, ma vorrei certamente risolvere questo problema.

Suppongo che questa sia la riga da cui ha origine:

> <https://github.com/discourse/discourse/blob/542f77181a47df8aa0f909f69814406491d08c5e/app/views/posts/latest.rss.erb#L14-L14>

---

<div class="post-metadata">

### Author: ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)
#### Post date: [17 Ottobre 2023, 4:47am UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/3 "2023-10-17T04:47:33Z")

</div>

> [@sam](#):
>
> Non vedo cosa ci sia di sbagliato in quella stringa… l’N x KSDT non sembra nascondere nulla.

Ho guardato il post prima oggi. C’era un codice esadecimale unicode che era qualcosa come \u0026#x2610; (`\u0026#x2610`). Non è il codice esatto però. Stava comparendo nel contenuto grezzo del post stamattina (`https://discuss.python.org/posts/121311.json`). Sembra che sia stato modificato da allora.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [17 Ottobre 2023, 1:04pm UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/5 "2023-10-17T13:04:20Z")

</div>

Il carattere errato è & # x2; o ￼

> **[Find all Unicode Characters from Hieroglyphs to Dingbats – Unicode Compart](https://www.compart.com/en/unicode/U+0002)**
>
> U+0002 is the unicode hex value of the character (STX). Char U+0002, Encodings, HTML Entitys:,, UTF-8 (hex), UTF-16 (hex), UTF-32 (hex)

---

<div class="post-metadata">

### Author: ![jeff5-really](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jeff5-really/32/333611_2.png) [@jeff5-really](https://meta.discourse.org/u/jeff5-really)
#### Post date: [17 Ottobre 2023, 5:35pm UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/6 "2023-10-17T17:35:03Z")

</div>

> [@simon](#):
>
> > [@sam](#):
> >
> > Non vedo cosa ci sia di sbagliato in quella stringa… la N x KSDT non sembra nascondere nulla.
> 
> Ho guardato il post prima oggi. C’era un codice esadecimale unicode che era qualcosa come ☐ (`\u0026#x2610`).

La prima occorrenza va bene, ma la seconda e la terza contengono un byte 0x02 (quando salvo da questo URL usando Firefox e leggo il file come byte usando Python), come nel mio primo post. `validator.w3.org` mi ha dato abbastanza contesto per individuare il primo 0x02 nella riga.

U+002610 è solo il simbolo della casella che qualcosa sta sostituendo (ma non nell’RSS).

Ho chiesto che il post venisse riparato poiché non vedevo come avrei potuto far funzionare la mia sottoscrizione senza. Posso inviarti i miei byte salvati se può aiutare.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [19 Ottobre 2023, 1:28am UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/8 "2023-10-19T01:28:31Z")

</div>

Secondo le specifiche RSS 2.0, il feed deve essere conforme a XML 1.0. E secondo le specifiche XML 1.0, ci sono diversi caratteri di controllo che non sono validi.

La PR seguente è un primo tentativo di affrontare questo problema:

> <https://github.com/discourse/discourse/pull/24001>
>
> See https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415?…u=falco

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [21 Ottobre 2023, 11:00am UTC](https://meta.discourse.org/t/rss-subscription-broken-by-post-content/282415/9 "2023-10-21T11:00:14Z")

</div>

Questo argomento è stato chiuso automaticamente dopo 39 ore. Non sono più consentite nuove risposte.
