Bug(s) nella gestione dei URI da parte di Discourse nei contenuti markdown

Ho appena riscontrato questo bug con l’URI geo, che ha questo aspetto: geo:36.95733984,-122.0172856.

Vedo che esiste un’eccezione per l’URI tel:

    if (allowedHrefSchemes.includes("tel")) {
      extraHrefMatchers.push(new RegExp("^tel://\\+?[\\w\\.\\-]+", "i"));

C’è Uniform Resource Identifier (URI) Schemes, ma ho utilizzato List of URI schemes - Wikipedia per verificare gli schemi, dato che includono degli esempi. Sto osservando il “suffisso” del nome dello schema, ovvero :// (come si chiama esattamente? “Formato dello schema”?).

Da un’attenta ispezione visiva, sembra che esistano solo tre pattern utilizzati:

  • ://
  • :/
  • :

La mia mente fa fatica a tracciare dove ciò avvenga in relazione alla scrittura del markdown e alla conversione in href, ma penso che se riusciamo a capire come controllare questi tre formati, dovremmo essere al sicuro per qualsiasi schema aggiunto dall’amministratore.

Non ho idea di come validare per singolo schema… :thinking:


I miei codici non ufficiali per i formati:

  • : “osservante”
  • :/ “scettico”
  • :// - “doppiamente scettico”
1 Mi Piace