He estado ejecutando algunos sitios de Discourse durante algún tiempo y tengo una serie de scripts que interactúan directamente con algunas de las API de Discourse y descubro que periódicamente las cosas dejan de funcionar después de una actualización. Generalmente, esto está bien si las cosas son detectables de inmediato, pero cuando no aparecen durante un tiempo, se vuelve difícil de solucionar y, a menudo, resulta en problemas de producción en lugar de instancias de desarrollo.
Por ejemplo: Recurring events in Upcoming Events calendar fail to handle daylight saving change
Recientemente eliminé la opción include_expired, desafortunadamente el comportamiento de solo tener eventos devueltos desde la API del calendario que no han expirado era algo en lo que confiaba y causó que una serie de procesos fallaran en una fecha posterior a la actualización. Para este ejemplo en particular, fallar si un llamador especificaba el parámetro ahora eliminado al menos habría detenido el problema en mi script particular ![]()
Entonces, lo que me pregunto es, como usuario posterior de Discourse, ¿cuál es la mejor manera de identificar cambios en la API como este antes de que lleguen a mi instancia? Anteriormente recurrí a duplicar el repositorio de discourse-calendar y actualizarlo con menos frecuencia en mi propio tiempo para evitar estos problemas, ahora que está integrado decidí abandonar ese enfoque y me está volviendo a morder.
Agradezco todo el trabajo y la mejora que Discourse experimenta constantemente y estoy bien si la respuesta es “regístrate para obtener la versión empresarial y estas cosas sucederán con menos frecuencia”, o agrega más pruebas de tu parte, pero quería ver si tal vez hay otras opciones o enfoques de los que no soy consciente.
Gracias.