Aggiorna il plugin Discourse di Patreon all'API v2

Ciao a tutti :waving_hand:

Il plugin Patreon Discourse sta ancora utilizzando l’API v1 di Patreon, che è deprecata da diversi anni. Per mantenere funzionante l’integrazione, è necessario aggiornarla per utilizzare l’API v2.

L’API v2 di Patreon è la versione supportata e fornisce funzionalità equivalenti alla v1, insieme a un modello dati più coerente e relazioni tra risorse migliorate.
Documentazione:

Note chiave sulla migrazione:

  • Alcune chiamate API che attualmente utilizzano /api/oauth2/ dovranno essere aggiornate agli endpoint v2.
  • Gli utenti del plugin dovranno creare nuovi client OAuth Patreon con scope v2 durante la migrazione. I client v1 non sono compatibili.
  • La struttura dei dati (ad esempio, campagna, membro, pledge) è modellata diversamente in v2.

Vorrei sapere qual è il processo per questo tipo di aggiornamenti. Sono felice di aiutare con indicazioni su questa migrazione.

Grazie per la manutenzione di questa integrazione :folded_hands:

2 Mi Piace

Volevo dare seguito a questo argomento. Questo plugin è ancora attivamente mantenuto, o dovremmo presumere che sia inattivo e accettare che la terminazione dell’API v1 comporterà il mancato funzionamento del plugin?

1 Mi Piace

Sì. Credo sia ancora attivamente mantenuto, poiché è un plugin #ufficiale, è stato #incluso-nel-core e ha il commit più recente solo la scorsa settimana.

1 Mi Piace

L’ultima volta che abbiamo fatto ricerche su questo, Patreon aveva sciolto il team che si occupava dell’API v2 a metà, quindi l’API v1 avrebbe funzionato indefinitamente.

Puoi linkare a qualche risorsa che dica il contrario?

1 Mi Piace

Grazie per avermi risposto! La fonte di questa informazione sono io, sono un ingegnere del team Patreon. La nostra documentazione pubblica e il flusso di creazione del client contengono avvisi sulla deprecazione della v1. La v2 è l’API principale da circa 5 anni, Discourse è una delle ultime integrazioni che ancora non la utilizza.

EDIT: Sentitevi liberi di inviarmi un messaggio diretto o un’email (nel caso in cui non riceva notifiche da Discourse) se avete bisogno di ulteriori informazioni.

6 Mi Piace

Ciao @Falco qualche aggiornamento/piano per l’aggiornamento del plugin? Vorremmo ridurre al minimo l’impatto dell’eliminazione della v1. Grazie.

3 Mi Piace

Proverò ad aggiornare la prossima settimana. Possiamo avere delle credenziali di test?

4 Mi Piace

Fantastico @falco, lo apprezzo! Patreon non dispone di utenti di test pubblici. Il modo migliore che suggerirei per testare questo sarebbe:

  1. Crea il tuo account di prova (https://www.patreon.com/login) e verifica la tua email.
  2. Solo ai creatori è consentito creare client OAuth. Dovresti avviare la tua campagna creator visitando https://patreon.com/create (l’email deve essere verificata affinché la campagna sia considerata lanciata).
  3. Crea un livello di prova https://patreon.com/c/yourvanity/membership.
  4. Ora puoi creare il client API v2 su https://www.patreon.com/portal/registration/register-clients

Per testare il blocco degli accessi/le funzionalità di appartenenza, dovresti creare un account di prova separato. Potresti quindi iscriverti al livello gratuito della tua campagna di prova o concedere potenzialmente un’iscrizione gratuita dal creator.

Sarò lieto di rispondere, fare squadra/aiutarti tramite messaggi diretti la prossima settimana.

1 Mi Piace

Non riesco a far abilitare il pulsante di invio in questo modulo, non importa cosa provi

È l’unico ostacolo che mi impedisce di unire la modifica

4 Mi Piace

@Falco abbiamo rilasciato una correzione per questo problema più tardi oggi, scusate! Potete riprovare? Inoltre, fantastico - rapido progresso! :tada:

2 Mi Piace

Ok, questo funziona bene sul mio sito di test, unirò la modifica all’inizio di lunedì.

3 Mi Piace

È stato veloce, grazie!

Non correlato all’aggiornamento alla v2, ma una richiesta generale mentre stai preparando questa PR: potresti impostare l’user agent su un valore personalizzato? Qualcosa come Discourse-Patreon-Plugin/vX.x? Questo potrebbe aiutarci a risolvere problemi con l’API in futuro e a identificare i client. Per la deprecazione della v1 ho visto molti user agent di Faraday ed è così che ho scoperto che Discourse era una delle ultime applicazioni ancora in v1.

2 Mi Piace

Buona idea, aggiunto al PR.

4 Mi Piace