Notas de la versión Discourse 2.5.0.beta5

Nuevas funciones en 2.5.0.beta5

Miniaturas de temas y modificadores de temas

La capacidad de mostrar miniaturas para los temas ha sido una función solicitada desde hace mucho tiempo. Históricamente, para mostrar estas imágenes se requería un complemento. En la beta5 hemos añadido soporte para modificadores de temas, incluyendo miniaturas de temas, iconos SVG y extractos de temas. Los desarrolladores de temas pueden aprovechar estas nuevas opciones al desarrollar o actualizar su tema. Para más detalles sobre los modificadores de temas, consulte: Theme modifiers: A brief introduction.

Soporte para accesos directos de aplicaciones

Discourse ahora soporta el nuevo Menú de accesos directos de aplicaciones, una función emergente de los navegadores relacionada con las PWA instaladas. Los accesos directos de aplicaciones están actualmente disponibles en Android y Windows.

Al hacer clic con el botón derecho o mantener presionado en plataformas táctiles sobre el icono de su PWA de Discourse, aparecerá un menú de acceso rápido con atajos útiles:

Para más detalles y capturas de pantalla, consulte App Shortcut Menu support

Eliminación de webhooks obsoletos

El año pasado (Discourse 2.3.0.beta7) lanzamos la Cola de revisión, una vista única para todos los elementos revisables como banderas, usuarios, publicaciones y temas. Los webhooks existentes, incluyendo flag y queued post, se mantuvieron, pero fueron duplicados por el webhook reviewable. Ahora hemos eliminado los webhooks antiguos en favor del único webhook reviewable.

Selector de iconos y cargador de imágenes para el distintivo de avatar

Para facilitar aún más la adición de distintivos de avatar, hemos reemplazado el campo de URL de imagen con opciones para seleccionar un icono de Font Awesome o cargar una imagen directamente.

Mensaje personal cuando se acepta la membresía de un grupo

Actualmente, los usuarios reciben una notificación cuando se acepta su solicitud para unirse a un grupo privado. Ahora, en su lugar, enviamos un MP, de modo que los usuarios que no accedan al sitio también reciban un correo electrónico. El texto predeterminado del MP es:

Su solicitud para unirse a @group_name ha sido aceptada y ahora es miembro.

Como con todo el texto en Discourse, esto puede ser personalizado por los administradores del sitio según sea necesario.

Soporte para PostgreSQL 12

Nuestra imagen base se ha actualizado para soportar PostgreSQL 12. PostgreSQL 12 trae muchas mejoras que serán aprovechadas automáticamente por Discourse. Para actualizar su sitio a PostgreSQL 12, se necesitarán dos reconstrucciones consecutivas. Para más detalles, incluida información sobre el espacio en disco requerido, la actualización de instalaciones de dos contenedores y las actualizaciones manuales, consulte PostgreSQL 12 update.

Lanzamiento de Discourse 2.5 a finales del próximo mes - Fin del soporte para IE 11

El soporte para Internet Explorer 11 finalizará pronto. Planeamos lanzar Discourse 2.5 a finales de este mes, permitiendo a los sitios con usuarios aún atrapados en IE11 una versión completa para la transición. Discourse 2.6.beta1 y las versiones futuras no soportarán IE11.

35 Me gusta

¡Aún más!

Pero espera, hay más. Hacemos todo lo posible por resaltar las nuevas funciones y cambios para ti, pero siempre hay demasiados cambios para detallar todos. Para obtener una lista completa de nuevas funciones, correcciones de errores, mejoras en la experiencia de usuario (UX) y más, asegúrate de revisar las Funciones Adicionales y Correcciones listadas a continuación.

Actualizaciones de Seguridad

Esta versión beta incluye 4 correcciones de seguridad para problemas reportados por nuestra comunidad y HackerOne.

  • Se vuelve a agregar el commit revertido accidentalmente:
  • Asegura que embed_url contenga una URI http(s) válida
  • Ejecución de ERB en estilos de correo electrónico personalizados
  • Actualización de jquery a la versión 3.5.0

Mejoras de Plugins

Muchos Plugins

  • Se agrega rubocop-discourse
  • Correcciones de errores
    • Hemos parcheado numerosos errores en muchos de nuestros plugins

Encrypt

  • Se eliminan las instrucciones de respuesta por correo electrónico de las notificaciones de MP encriptadas: la respuesta no está soportada

Policy

  • Las notificaciones de recordatorio de políticas ahora son de alta prioridad: se usa el icono de notificación verde en lugar del azul

Font Awesome Pro

Integración de Chat

  • Se agrega GroupMe como proveedor de chat compatible

Knowledge Explorer

  • Se muestra si un tema está cerrado en la lista no visible

Affiliate

  • Se agrega soporte para URLs de búsqueda

Data Explorer

  • Se agregan consultas adicionales

Assign

  • Las notificaciones de asignación ahora son de alta prioridad: se usa el icono de notificación verde en lugar del azul
  • Se muestra el avatar asignado en el botón y el menú desplegable

Subscriptions

  • Se usan modelos para almacenar datos
    • Esto permite que el plugin muestre solo la información de suscripción generada en Discourse. El almacenamiento de datos de suscripción se limita a los identificadores externos que genera Stripe para poder interactuar con la API.

Zoom

  • Se agrega la opción de usar la URL de unión en lugar del SDK
  • Se agrega la capacidad de actualizar el título/fecha de las entradas de seminarios web pasados

Voting

  • Se mueven los votos archivados al fusionar temas

Code Review

  • Se agrega la opción de silenciar por defecto las nuevas categorías creadas por el plugin
  • Se agrega la opción de establecer una categoría padre para las nuevas categorías creadas por el plugin

Discourse Hub App (Android e iOS)

  • Se agrega soporte para nuevas notificaciones de alta prioridad (por ejemplo, marcadores con recordatorios)
  • Mejora la accesibilidad de los botones
  • Corrige un problema con una pantalla en blanco en algunos casos raros al regresar a la aplicación desde el fondo

Funciones Adicionales y Correcciones

Haz clic para expandir

Nuevas Funciones

  • Se agrega una configuración para desactivar la instalación automática de reglas CORS en los buckets de S3
  • Permalinks para etiquetas
  • Configuración de categoría para el filtro de lista predeterminado.
  • Se actualiza el extracto del tema cuando el OP se vuelve a hornear
  • Se agrega la configuración del sitio para la longitud máxima del extracto del tema
  • Se agrega la opción de cookie ‘None’ para same site para hacer posibles los sistemas de dominio cruzado
  • Se expone Composer.serializeToTopic en la API del plugin del lado del cliente.
  • Se extiende la duración permitida para la descarga
  • Se agrega un punto de acceso para iconos SVG individuales
  • Se agregan datos estructurados para seguir las directrices de Google
  • Se introduce una clave de anulación solo para personal para discourse-presence.
  • Se agrega la cabecera noindex a las páginas de etiquetas
  • Se permite la autenticación mediante parámetros para UserApiKeys
  • Se permite que los plugins registren una función de retorno para ignorar DraftSequence.
  • URL canónica predeterminada
  • Se pasa una instancia de revisor al evento post_edited de Discourse.
  • Se agrega la cabecera noindex a insignias, grupos y páginas /my
  • Se permite que Google indexe las páginas para que pueda eliminarlas
  • Se agrega la cabecera no_index si los robots están desactivados
  • Se filtran las configuraciones por plugin
  • Se endurecen las reglas de limitación de velocidad para la contraseña olvidada
  • Se excluyen las categorías silenciadas de la lista de temas “top”
  • Opcionalmente, se elimina el marcador cuando se envía el recordatorio
  • Se incluye la posición de la categoría al exportar categorías
  • Onebox para videos de Reddit
  • Onebox para videos de Facebook
  • Nokogumbo

Correcciones de Errores

  • Se mejora el script de reducción de tamaño de imágenes
  • Devuelve false si la URL de subida es un enlace mailto inválido
  • Revisión de estilo para la advertencia del tema dominante
  • Error de concurrencia al crear miniaturas de temas
  • No se responde con el error 500 si el dominio es inválido al agregar un dominio de membresía automática
  • No se permite una etiqueta con el nombre ‘none’
  • Se prohíbe correctamente a los usuarios no humanos del sistema de borradores
  • Se incluye lazyYT-container en el HTML del mensaje cocinado
  • La documentación estaba usando una función incorrecta
  • Los estilos de correo electrónico se evaluaron en un orden incorrecto
  • Al crear un nuevo MP, el nombre de usuario/grupo debe ser insensible a mayúsculas y minúsculas
  • No es necesario convertir a minúsculas por segunda vez
  • Se omite el trabajo único para grupos con una URL de emblema inválida.
  • No se vuelve a caer a la columna flair_url
  • Se mantiene el título y la respuesta del compositor al cambiar a MP
  • La destrucción de un usuario falló cuando tenía un título
  • La tarjeta de grupo no se muestra si el usuario no puede ver sus miembros.
  • Se llama explícitamente al método getURL para evitar la anulación del contexto this.
  • Alineación doble de botones en móvil
  • Mejor alineación de botones de pie de tema entre navegadores
  • No creamos un objeto Post si el mensaje en cola es rechazado. Necesitamos contar los elementos de revisión directamente.
  • Recarga en vivo de CSS en desarrollo
  • Se elimina la clave foránea del post de control de acceso de las subidas
  • La entrada de etiquetas dice que las etiquetas son opcionales cuando son obligatorias
  • Se permite que el client_id de la aplicación de GitHub se use para la configuración de OAuth
  • Se asegura que el selector de categorías sea insensible a mayúsculas y minúsculas
  • Se agregan etiquetas faltantes al encabezado de la página publicada
  • El otorgador de insignias estaba desactivado por defecto.
  • Sidekiq está usando _forim_session
  • Se muestran los contadores del personal si el recuento de mensajes rechazados es el único valor a mostrar
  • Las solicitudes no se estaban registrando correctamente
  • La ruta debería ser addon y no app
  • Se permite que la deprecación funcione con Ember CLI
  • Select-kit estaba en el lugar incorrecto
  • Se actualiza default_template.html
  • guidFor no es parte de Ember.Object
  • No se parametriza tag_id
  • No se produce un error al intentar analizar URLs inválidas o no ASCII
  • Se emiten webhooks para banderas
  • No se establece un valor predeterminado para webhooks sin eventos
  • Las migraciones no deben fallar cuando la base de datos está parcialmente migrada
  • Se cambia discobot para extraer el avatar de Gravatar.
  • Se purgan todos los datos asociados al eliminar un usuario
  • has_been_uploaded? del almacén S3 no tenía en cuenta la ruta del bucket de S3
  • La restauración de copias de seguridad podría fallar para volcados de bases de datos > 8 GiB
  • Se verifica la traza de la pila y backtrace_locations antes de intentar imprimir un error
  • La descripción para la categoría ‘sin categorizar’ estaba en blanco
  • Se muestra un mensaje útil cuando falla el inicio de un plugin sin una traza de la pila
  • GroupArchivedMessage pertenece a Group, no a User
  • Se aplica flex en topic-footer-main-buttons
  • Se une la migración de marcadores a usuarios para evitar registros de usuarios faltantes
  • Se aleatoriza el nombre del archivo al crearlo desde fixtures
  • Se usa la carpeta /tmp/pid para mantener archivos de fixtures
  • Se actualiza la versión de rack de 2.0.8 a 2.2.2
  • La restauración de la copia de seguridad no borraba las anulaciones de traducción en caché
  • La reversión de múltiples anulaciones de traducción no borraba la caché
  • Mejora y corrige una regresión con el selector de categorías
  • Carga más resistente y consistente del selector de fechas
  • Se asegura que no haya descargas de imágenes durante la serialización de miniaturas de temas
  • Permite eliminar un temporizador de tema con delete_replies como tipo
  • Se asegura que hide se llame cuando se destruye la tarjeta
  • No se eliminan las palabras vacías al usar el idioma inglés
  • Se extrae reset_last_seen_cache! en user_spec
  • Cambiar la acción del compositor no actualiza el contenido de las acciones del compositor
  • El componente todavía era usado por Data Explorer
  • Se incluyen los activos CSS del plugin al previsualizar temas
  • Se muestra un título en el encabezado de sk si no hay un nombre seleccionado
  • Se corrige el aumento de la versión de la API del plugin.
  • Se usan URLs de CDN para las miniaturas de temas
  • Se permiten migraciones de mensajes usando #change para realizar migraciones inseguras
  • Siempre se devuelve 0 para el DraftSequence actual de usuarios no humanos.
  • La acuñación de WebAPK estaba rota debido a los iconos de acceso directo
  • Caída aleatoria de user_spec
  • Solución temporal para el error del servidor WebAPK con imágenes sin tamaños
  • No se calcula el borrador para bots en la ruta de índice de categorías
  • Se aplica la cita de código sin resaltado de sintaxis
  • Se usan iconos apropiados para el menú de acceso directo de la aplicación
  • Se ejecutan las pruebas de cookies solo después de iniciar sesión
  • Se permiten que las miniaturas de lazy-yt sean extraídas por pull_hotlinked_images
  • Se elimina la migración antigua
  • No se calcula el borrador para (ro)bots :robot: en la lista de temas
  • Error de correo electrónico específico para respuestas a correos electrónicos de resumen
  • Se detecta Wayback Machine usando el agente de usuario
  • Se carga la primera localidad en la aplicación del asistente
  • Se actualiza mini racer para volcados de memoria correctos
  • Nunca se guarda un borrador mientras se está guardando
  • No se publica la presencia de escritura si el compositor no está abierto.
  • Se evita que Safari haga scroll al cerrar el compositor
  • Se evita que SvgSprite.bundle consulte ThemeField dos veces
  • La presencia del compositor muestra al usuario como editando al responder.
  • Se limita la función de escritura en discourse-presence.
  • Se cambia la URL /bookmarks de nuevo a la lista de temas y se agregan avatares de los autores de los marcadores
  • Se maneja la URL de retorno de sso faltante del proveedor
  • Se previenen conflictos de nombres de columnas en el código revisable
  • Se asegura que la vista previa calcule correctamente la zona horaria para el usuario actual
  • Se agrega tipo a los iconos del menú de acceso directo
  • No se lanza una excepción si no se puede crear un TopicLink
  • Se agregan rutas RSS faltantes a la lista blanca de parámetros de la API
  • Se muestra el botón de Configuración si el plugin tiene configuraciones
  • Guardar borradores aumenta incondicionalmente la secuencia
  • Se eliminan barras diagonales innecesarias en expresiones regulares
  • Se agrega tabindex=-1 en los enlaces de mensajes de tabLoc
  • Mejora la accesibilidad de la navegación del pie de página en móviles
  • Se establece un título para el botón de notificaciones
  • Múltiples mejoras de schema.org
  • El título debe intentar recurrir a la etiqueta antes que al nombre
  • Se maneja un tema eliminado en la generación de miniaturas
  • Se muestra el nombre de la categoría en la vista previa de la insignia al editar
  • Se evita la renderización de topic-category si está vacío
  • Se evita borrar el título por error
  • Por defecto, título en blanco al abrir
  • Se resuelven problemas con el Próximo Lunes para marcadores que no funcionan en ciertas localidades
  • CurrentUser ahora debe pasarse a resolveTimezone y problemas de hora local de la tarjeta de usuario
  • ESC para descartar el compositor de tema de borrador vacío
  • Entrada modal de marcador
  • Se soporta la transpilación de JS en plugins con una carpeta raíz de administrador
  • Algunos ajustes para la UI de la tabla
  • No se dispara el evento user_updated para usuarios bot.
  • Se elimina URI.escape obsoleto
  • No se permiten opciones nulas para el administrador de marcadores
  • Migración para establecer la columna NOT NULL para delete_when_reminder_sent en marcadores
  • Clase CSS incorrecta
  • Los paréntesis eran incorrectos, resultando en una expresión siempre verdadera
  • preload-store fue eliminado
  • Mejora la posición de sk en móviles cuando está dentro de un modal
  • Se muestra el botón de Marcador para temas de MP
  • Mejora la lógica de cálculo de la línea de tiempo del tema
  • Se corrige el nombre de usuario de la notificación de edición para MPs
  • El uso de default_locale en las alternativas de localización causó problemas
  • Se hace que can_invite_to_forum sea robusto contra interferencias de plugins
  • Se muestra la fecha de cierre de la encuesta en hora local
  • Preload-store fue movido
  • La fecha final de los rangos en la vista previa HTML era incorrecta
  • Se cambia el cálculo total de notificaciones no leídas en el correo electrónico de resumen de usuario
  • Discobot no se ha creado con nuestro avatar personalizado.
  • Se preservan los bloques de código al citar
  • Pruebas inestables. Debido a las transiciones de CSS, la opacidad podría no ser 0 todavía.
  • Corrige el envoltorio de botones con botones más grandes
  • Evita usar una tabla temporal en la migración de la base de datos de URL de imágenes
  • Resuelve problemas de validación de Schema.org
  • Se aplica sameWidth desde un ancho de pantalla de 450px
  • Se pre-selecciona «Más tarde hoy» en la edición de marcadores si la hora es la misma
  • La alternativa de PostgreSQL estaba rota debido a que Rails ocultaba la excepción
  • Mejora el estilo del correo electrónico de resumen en Outlook 2016
  • Se revierte al uso de un observador para soportar la carga de más notificaciones

Cambios en la Experiencia de Usuario (UX)

  • Se elimina la vista previa de temas en vivo en favor de la actualización
  • Nombre de usuario en lugar de nombre de usuario para el título del enlace de perfil
  • Se agrega un título para el enlace de perfil de usuario
  • Estilos más consistentes de banner/alerta móvil, limpieza de CSS
  • Se mueve editFirstPost en los MP etiquetables en el menú desplegable en móviles
  • Se elimina el texto de los botones de marcador y compartir de MP
  • Se renombra «Editar mensaje» a «Editar»
  • Se elimina la negrita del texto de la insignia de categoría
  • Mejora el comportamiento de carga del botón de notificaciones del tema
  • Se agrega retroalimentación visual al cambiar el nivel de notificaciones del tema
  • Se elimina la flecha del botón de notificaciones.
  • Se permiten que las URLs de medios seguros se almacenen en caché por un corto período de tiempo
  • Se muestra la flecha solo en los cuadros de selección del menú desplegable de los botones del pie de tema
  • Se permite que dropdown-select-box muestre una flecha
  • Se obtienen miniaturas de YouTube de mayor resolución donde estén disponibles
  • Se enfoca el nombre de la categoría al editar la categoría
  • Se agrega el texto copiado al hacer clic en el botón copiar
  • Mejor icono de acción del compositor al crear un nuevo tema.
  • Se agrega un símbolo en el informe TL3 si el recuento de respuestas del tema está limitado
  • No se usan imágenes pequeñas de onebox como imágenes de mensajes/temas
  • Se limitan los cambios de teclado modal de iOS al compositor
  • Se introducen acciones del compositor al editar un mensaje.
  • No se desactiva el botón «crear cuenta» y se muestra el mensaje de error para campos obligatorios.
  • Se corrige el valor codificado en la descripción de la insignia Crazy in Love
  • Mejora la visualización del mensaje de validación de la configuración del sitio.
  • Se elimina el subrayado de los elementos del & ins
  • Se evita que la línea de tiempo se superponga con los botones del pie de tema
  • Mejora la alineación y consistencia del botón de cierre de banner y alerta
  • Se corrige la posición del modal cuando el teclado de iOS es visible
  • Se ajusta el menú de administración para que se ajuste mejor a las vistas horizontales cortas
  • Se elimina el relleno superior de la descripción del onebox de Reddit
  • Se elimina la negrita para desenfocar los nombres de las categorías en los temas visitados
  • Se corrige la alineación de la hora en las páginas de actividad del usuario
  • Se agrega una propiedad con prefijo para que Firefox también obtenga pestañas de 4 espacios en el código
  • Se intenta hacer un mejor uso del espacio disponible con sk
  • Ajustes en la eliminación de marcadores
  • Mejora la interfaz de usuario del segundo factor

Rendimiento

  • Se evita recorrer el DOM en loadScript
  • Se eliminan las claves foráneas de los marcadores
  • Se asegura que se ejecute el GC completo en los contextos
  • Se desmaterializa topic_reply_count
  • Se evitan condiciones de carrera al crear enlaces de temas
  • Se evita ejecutar la misma consulta dos veces.
  • Se evita acceder a la BD al obtener la secuencia de borrador de un usuario bot.
  • Se reduce el bloqueo exclusivo al cambiar tablas
  • Se mueve la obtención del avatar a hijack para el certificado de discobot
33 Me gusta