Presentando Próximos Cambios, un sistema para gestionar nuevas funciones y modificaciones a la funcionalidad existente en tu comunidad

A medida que continuamos a mejorar Discourse, hemos creado una nueva página de configuración de Cambios Próximos (Upcoming Changes) para ayudar a los administradores a comprender qué cambios se avecinan en Discourse y permitirles gestionar cómo se implementan esos cambios en su comunidad. Creemos que este sistema nos ayudará a seguir mejorando Discourse de una manera segura y transparente.

En este tema, explicaremos cómo funciona este nuevo sistema y cómo usarlo para introducir de forma segura nuevas funciones y otros cambios en su comunidad.

Descripción general de cómo funciona Cambios Próximos

A medida que trabajamos en nuevas funciones u otros cambios, los añadiremos a la página de configuración de Cambios Próximos en /admin/config/upcoming-changes. Cada cambio incluirá una descripción, estado, indicador de qué usuarios se ven afectados por él y para qué usuarios (si los hay) está habilitado en su comunidad.

Dependiendo del estado del cambio, puede decidir si activarlo o desactivarlo para su comunidad, al menos temporalmente, ya que algunos cambios se activarán permanentemente con el tiempo.

Desactivar temporalmente un cambio le da tiempo para abordar cualquier personalización del sitio o proceso afectado, informar a su base de miembros sobre el cambio, o designar ciertos grupos de miembros para pruebas.

Desglose de un Cambio Próximo

Analicemos un Cambio Próximo y definamos la información que verá en cada sección.

1 - Nombre y descripción

El nombre y la descripción le ofrecen una breve explicación del cambio y, a menudo, contendrán enlaces a contenido relacionado (como un tema de Meta) para obtener más detalles.

2 - Estado

El estado comunica su posición en el ciclo de vida del desarrollo. El estado afecta directamente a si el cambio es de activación voluntaria (es decir, desactivado por defecto, pero puede activarlo), de desactivación voluntaria (es decir, activado por defecto, pero puede desactivarlo) o forzado (es decir, activado y no se puede desactivar).

Utilizamos los siguientes estados en Cambios Próximos:

  • Experimental (Experimental): Un posible cambio que se encuentra en desarrollo/pruebas tempranas y se espera que evolucione rápidamente, o que incluso se elimine si finalizamos el experimento (momento en el que pasará al estado Inactive (Inactivo); consulte a continuación). Puede activar voluntariamente los cambios Experimental para probarlos.
  • Alpha (Alfa): Un cambio probado que es seguro de usar, aunque puede haber algunas actualizaciones menores en su diseño o funcionalidad. Puede activar voluntariamente los cambios Alpha para usarlos antes.
  • Beta (Beta): Un cambio probado que es seguro de usar y es poco probable que cambie mucho antes de pasar al estado Stable (Estable) o posiblemente Permanent (Permanente). Para la mayoría de los sitios, los cambios Beta se activan automáticamente para todos (si no lo ha habilitado previamente), pero aún puede desactivarlos voluntariamente.
  • Stable (Estable): Un cambio completado[1], pero sigue siendo de desactivación voluntaria (es decir, los administradores pueden desactivarlo). Se advertirá a los administradores en su panel de control cuando hayan desactivado un cambio Stable.
  • Permanent (Permanente): Un cambio que ha completado las pruebas y está forzado (es decir, los administradores no pueden desactivarlo).
  • Inactive (Inactivo): Un experimento abandonado. No puede activarlo voluntariamente.

A veces, los cambios avanzarán linealmente a través de estos estados (es decir, comenzarán en Experimental y terminarán en Permanent), pero no siempre. Algunos cambios pueden introducirse en estado Alpha o Beta, y algunos terminarán en estado Stable (si no se forzarán).

No hay un tiempo fijo para cuánto tardará un cambio concreto en progresar de un estado a otro, pero se notificará a los administradores cuando:

  • Haya un nuevo cambio disponible para probar
  • Se haya activado un cambio automáticamente
  • Haya desactivado un cambio que pronto se forzará

3 - Usuarios afectados

La etiqueta de usuarios afectados describe qué usuarios de su comunidad pueden ver o interactuar con el cambio de alguna manera. Para decirlo de forma sencilla: ¿quién podría notar este cambio? Hay varios tipos de usuarios afectados:

  • Admins (Administradores): El cambio solo es visible para los administradores.
  • Staff (Personal): El cambio solo es visible para los administradores y moderadores.
  • All members (Todos los miembros): El cambio es visible para todos los miembros de su sitio.
  • Developers (Desarrolladores): En raras ocasiones, un cambio solo será perceptible para aquellos que interactúan con el código en el núcleo, temas o complementos.

4 - Habilitado para…

Este menú desplegable es donde usted, como administrador del sitio, puede controlar si y cómo introducir este cambio en su comunidad habilitándolo para:

  • No one (Nadie): Desactiva el cambio para todos en el sitio.
  • Everyone (Todos): Habilita el cambio para todos en el sitio, incluidos los usuarios anónimos. Cuando el cambio se activa automáticamente (normalmente en estado Beta), será para Everyone.
  • Staff only (Solo personal): Habilita el cambio para el personal del sitio (es decir, administradores y moderadores).
  • Specific groups (Grupos específicos): Habilita el cambio para los grupos seleccionados.

Por ahora, hemos movido la mayoría de los cambios Experimental de /admin/config/experimental a Cambios Próximos, y pronto comenzará a ver nuevas actualizaciones aquí. Esperamos escuchar sobre el impacto que esto tendrá en su comunidad, ¡y agradecemos cualquier pregunta o comentario!


  1. En la medida en que cualquier software está completo! ↩︎

17 Me gusta

Tengo curiosidad: ¿cómo controla el despliegue del cambio? ¿Se puede modificar después de que se introduzca la función? Gracias.

1 me gusta

¡Funcionalidades nativas de Feature Flags! Muy bien :clap:

Sería genial tener una API para plugins.

1 me gusta

¡Esa es una característica muy esperada! ¡Gracias!

1 me gusta

Esto es genial, tener la capacidad de cambiar las banderas de esta manera es increíble para personas a la vanguardia como yo, especialmente al desarrollar un tema.

¿“Cambios próximos” es realmente el mejor nombre para esto? Por ejemplo, HomeAssistant usa “labs” (laboratorios) y muchas otras personas simplemente usan cosas como “experimentos”, que se sienten mejor que cambios próximos.

Se le notificará sobre las nuevas funciones mientras se encuentren en un estado en el que pueda probarlas anticipadamente (opt-in) y desactivarlas temporalmente para solucionar cualquier problema causado por el cambio (opt-out). Si un cambio va a ser permanente (lo que significa que no puede desactivarlo) y actualmente lo ha desactivado, se lo haremos saber.

Esta sección lo describe con un poco más de detalle:

Por ahora, solo está viendo cambios experimentales porque migramos esos desde el área de configuración a Cambios Próximos, pero en el futuro también habrá actualizaciones no experimentales aquí. Por lo tanto, “labs” no parece preciso para cómo estamos utilizando este sistema.

1 me gusta