¿Qué rebake se requiere para el nuevo estilo de autocompletado?

¿Qué cambios aquí, si los hay, requerirán volver a procesar las publicaciones con hashtags?

¿Se volverá a procesar automáticamente algún procesamiento requerido al habilitar esto, o habrá un paso de migración explícito para volver a procesar?

1 me gusta

Después de habilitar la función, simplemente ejecuté “rebake all posts” a través de rails.

Tengo muchas publicaciones, la gran mayoría de las cuales no necesitarán ser modificadas. Tenía la esperanza de que hubiera una capacidad de volver a hornear solo las publicaciones afectadas, ya sea explícita o implícitamente.

3 Me gusta

Incluso parece que volver a hornear puede dañar publicaciones antiguas:
¿Cómo evitar posibles problemas al volver a hornear todas las publicaciones?

2 Me gusta

Esta función está recién salida del horno. No hay ninguna capacidad incorporada para volver a procesar todas las publicaciones que incluyan menciones de categorías/etiquetas en este momento. Estaré atento a lo que la gente considere necesario y/o a las soluciones que se propongan mientras tanto.

3 Me gusta

¿Hay algún patrón que podamos usar para rebaking todas las publicaciones excepto las que tienen un embed/onebox?

4 Me gusta

Lo que queremos volver a hornear son todas las publicaciones para las que la representación cocida coincide con class=\"hashtag\", hasta donde yo sé.

No creo que rebake_match ayude aquí porque coincide con el texto sin procesar, y no hay opción para coincidir con el texto cocido en las tareas existentes de Rails. Así que esto, creo, requerirá codificación real, ya sea en la consola de Rails o en una nueva tarea.

2 Me gusta

Algo como

 Post.where("cooked like '%class=\"hashtag\"%'").each do |p| p.rebake! end
6 Me gusta

¡Algo muy parecido! Acabo de probar con éxito exactamente eso en mi sitio de staging.

Estaba pensando en la opción de retraso para posts:rebake_match, pero probablemente no importe.

Por supuesto, está insistiendo en reprocesar todas las imágenes de las publicaciones afectadas, lo cual es innecesario, por lo que una solución automática solo para esto podría evitarlo razonablemente, pero mientras tanto hay un camino a seguir.

Puede que quiera hacer esto invirtiendo el orden y añadiendo un retraso si un sitio tiene muchas publicaciones afectadas.

1 me gusta

@mcwumbly Ahora que se anunció la versión 3.0 con esto como característica principal, ¿qué opinarías sobre una migración que solo arreglara el texto sin reprocesar las imágenes, o alternativamente, que te permita volver a procesar solo las publicaciones afectadas con un retraso para que no sature las colas con el reprocesamiento de imágenes?

3 Me gusta

@martin ¿puedes compartir algunas ideas sobre cómo podrías abordar este problema?

En resumen, creo que lo que la gente quiere idealmente es algo como:

  • cuando activo la nueva función de hashtag, quiero una forma de actualizar el estilo de todos mis hashtags antiguos para que coincidan, sin cambiar de otro modo el contenido de las publicaciones existentes

Y quizás también:

  • cuando la desactivo, quiero una forma fácil de hacer lo contrario.
3 Me gusta

Ya puedes hacer algo así.

Post.where("cooked like '%class=\\\"hashtag\\\"%'").update_all(baked_version: 0)

Luego, procesará las cosas en los trabajos programados en segundo plano.

Anticipo que aumentaremos nuestra baked_version en algún momento del próximo año.

5 Me gusta

Crearé una tarea rake para hacer lo que @sam sugiere arriba y que los autoalojadores puedan ejecutar.

No creo que esto sea necesario, ya que ahora lo hemos hecho predeterminado para los sitios nuevos y pronto eliminaremos la opción por completo. Si la gente quiere probarlo, podría habilitar la configuración, volver a hornear un par de publicaciones manualmente en la interfaz de usuario, luego, si no les gusta, desactivar la configuración y volver a hornear las mismas publicaciones.

Sin embargo, pronto no habrá opción.

4 Me gusta

¿Sabes si la idea de enlaces de categoría coloreados todavía se está considerando?

1 me gusta

Sí, pero creemos que es más grande de lo que parece a primera vista y todavía hay una serie de detalles de diseño que resolver primero, por lo que no sucederá de inmediato.

¡Genial, suena bien!

4 Me gusta

Acabo de fusionar una tarea de rake para esto:

bundle exec rake hashtags:mark_old_format_for_rebake

7 Me gusta

¿Podrías proporcionar una guía completa para principiantes sobre cómo usar ese comando?

¿Hay alguna forma de cambiar publicaciones individuales como usuario (por ejemplo, editar/guardar con una edición menor)?

Gracias.

Este es el patrón habitual para las tareas de rake:

cd /var/discourse
./launcher enter app
bundle exec rake hashtags:mark_old_format_for_rebake
1 me gusta

Eso debería funcionar. Si eres personal, puedes hacer clic en la llave inglesa y reconstruir el HTML.

1 me gusta

Eso funcionó bien, gracias. Para mis propósitos, parecía un riesgo menor que intentar la tarea de rake.

1 me gusta