Actualicé a Discourse 3.5.0.beta6-dev (da0b303568) esta mañana.
Después de la actualización, me encontré con un banner rojo en la parte superior del sitio que decía:
Aviso de administrador: estás usando el componente de tema discourse-add-groups-to-about. Esta función ahora está disponible en el núcleo de Discourse. Deberías eliminar este componente de tema.
Luego fui a la configuración de mi sitio de Discourse y volví a aplicar todas las configuraciones de la página “acerca de” que usé en el componente anterior:
No puedo reinstalar el tema ahora porque el gran banner de advertencia rojo es visible para todos los usuarios, incluso para las personas que no han iniciado sesión
No, pero no he instalado el componente. Quizás por eso no se produjo la migración para mí. Pero realmente no me interesaba porque no uso la función.
De hecho, sigo las PR en GitHub principalmente porque las capturas de pantalla ayudan con la traducción, especialmente para funciones como esta que no están disponibles en la interfaz al principio.
Está en el núcleo, pero la configuración show_additional_about_groups sigue siendo una configuración oculta del sitio, por lo que no es visible.
Creo que la migración la habilitó para los sitios que usaban el componente antes. No estoy seguro de si se habilitará para todos o simplemente se eliminará. Creo que solo es necesario durante el proceso de migración.
Si he entendido correctamente, la idea es que la configuración show_additional_about_groups se agregue al núcleo. Luego, se agrega una verificación al componente del tema para que los grupos solo se muestren si show_additional_about_groups es falso. Esto significa que simplemente continúa funcionando como antes. Después, todo se construye en el núcleo, pero solo se muestra si show_additional_about_groups es verdadero.
Después de que la configuración se haya migrado automáticamente, se activa show_additional_about_groups. Ahora el código del núcleo muestra los grupos y ya no el componente.
Esta migración se agregó hace 3 días. Luego, hace 2 días, se agregó el aviso en el componente que se te mostró.
No sé por qué la migración obviamente no funcionó para ti (ni la configuración se aplicó automáticamente, ni se activó show_additional_about_groups).
Creo que definitivamente es un descuido que la advertencia global no compruebe si el usuario es un administrador.
Pensé que la migración debería haber movido la configuración de @Richie del componente a la configuración central y también debería haber habilitado la configuración oculta del sitio show_additional_about_groups. Una razón por la que no funcionó podría ser que cambió el nombre, porque eso es fácilmente factible en la interfaz.
¿Hay alguna razón por la que la migración se basa únicamente en el nombre en lugar de también verificar un componente donde el remote_url de la tabla remote_themes coincida? Eso capturaría los componentes renombrados siempre y cuando se instalaran desde el repositorio oficial.
La configuración oculta del sitio, que no se habilitó porque la migración no ocurrió, impidió que el núcleo mostrara los grupos y, en cambio, el componente todavía mostraba los grupos. Pero el aviso global del componente le dijo que eliminara el componente. Entonces, el núcleo todavía no mostraba los grupos porque show_additional_about_groups todavía estaba deshabilitado, y no era fácilmente posible habilitarlo.
Entonces, si la migración automática no funcionó, ¿cómo migran los administradores manualmente? Copiar la configuración no es el problema. Pero, ¿cuándo cambian entre el componente que muestra los grupos y el núcleo que muestra los grupos sin necesidad de habilitar la configuración oculta?
Tal vez hubiera sido mejor habilitar show_additional_about_groups para todos o mostrarlo en la interfaz antes de agregar un aviso al componente de que debe eliminarse. Entonces, una migración manual habría funcionado, y el núcleo mostraría los grupos después, por lo que eliminar el componente no dejaría a los administradores sin ningún grupo en la página “acerca de”.
En este momento, cuando un administrador agrega grupos a la configuración del sitio about page extra groups, no sucede nada porque la configuración oculta show_additional_about_groups no está habilitada. Eso se siente como un error, aunque desde la perspectiva de un desarrollador, todo funciona como se espera. Creo que sería más fácil para un administrador entender lo que sucede si la configuración fuera visible en lugar de oculta.
Ninguna de mis configuraciones se copió y, cuando las copié, los grupos aún no eran visibles en la página /about porque la configuración oculta impedía que aparecieran y tuve que usar la consola de Rails para resolver el problema.
@ted / @kris.kotlarek / @hugh ¿alguna opinión al respecto? ¿La migración que hizo Ted necesita un refinamiento?
Esto se siente muy extraño, ¿por qué no simplemente eliminar la configuración del sitio mostrar_grupos_adicionales_acerca_de y simplemente dejarla en verdadero?
Una configuración menos de la que preocuparse y la configuración de grupos adicionales de la página acerca de siempre funcionará como se espera.
Hemos utilizado esta configuración oculta del sitio en el proceso de portar el componente de tema. Debido a un problema con la migración, no se habilitó correctamente cuando se migraron los datos.
Ahora que se ha completado la portabilidad, ya no necesitamos esta configuración, como señaló @sam. Simplemente podemos ver la lista de grupos configurados.
¡Genial! Pensé que tendría que quedarse hasta la próxima versión estable para asegurarme de que el componente no muestre los grupos además del núcleo para aquellos que migren entonces.