Plugin de eventos 📅

El plugin parece causar un error al actualizar Discourse:

I, [2025-01-04T22:51:50.065854 #1]  INFO -- :
I, [2025-01-04T22:51:50.066464 #1]  INFO -- : > cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate'
2025-01-04 22:52:07.682 UTC [1886] discourse@discourse ERROR:  null value in column "created_at" of relation "discourse_events_event_topics" violates not-null constraint
2025-01-04 22:52:07.682 UTC [1886] discourse@discourse DETAIL:  Failing row contains (1, 1, 1239, null, events, null, null).
2025-01-04 22:52:07.682 UTC [1886] discourse@discourse STATEMENT:
              INSERT INTO discourse_events_event_topics (topic_id, event_id, client, series_id)
              SELECT ec.topic_id, ec.event_id, ec.client, ec.series_id
              FROM discourse_events_event_connections ec

rake aborted!
StandardError: An error has occurred, this and all later migrations canceled: (StandardError)

PG::NotNullViolation: ERROR:  null value in column "created_at" of relation "discourse_events_event_topics" violates not-null constraint
DETAIL:  Failing row contains (1, 1, 1239, null, events, null, null).

Con el plugin deshabilitado, la actualización se ejecuta como se esperaba.

3 Me gusta

Gracias por el aviso. He implementado una solución para esto. ¿Podrías intentar actualizar ahora con el plugin instalado?

4 Me gusta

¡Gracias por la rápida solución, @Angus! Puedo confirmar que vuelve a funcionar sin problemas.

5 Me gusta

¡Solo para que sepas, el plugin vale la pena!

3 Me gusta

Hola

¿Alguien podría explicarme el efecto (y el beneficio) de esta opción?

Mi cerebro no entiende… :brain:

GRACIAS

image

Sí, podría explicarse mejor.

Un evento recurrente es una “serie” de eventos. Cuando creas un evento recurrente en un servicio externo conectado por este plugin (por ejemplo, Google Calendar), este plugin importará todos los eventos de la serie (dentro de los parámetros de importación que establezcas).

Si tienes una sincronización automática de temas configurada para tus eventos importados, esta configuración determina si creas un tema para esa serie de eventos o varios. Si la configuración está habilitada, tendrás un tema para la serie que se actualizará con el siguiente evento de la serie una vez que haya pasado el anterior. Si la configuración está deshabilitada, tendrás un tema para cada evento de la serie.

Pero sí, necesita una mejor descripción.

2 Me gusta

Hola Angus,

Realicé una actualización en el UKDHC Discourse, después de la cual la aplicación web Discourse no pudo cargarse. Después de investigar un poco, parece que fue el plugin de eventos lo que causó esto. Tuve que deshabilitar el plugin para que la aplicación web pudiera cargarse de nuevo. ¿Puedes investigar y aconsejarme? Gracias de antemano.

François

5 Me gusta

Angus, en la última versión, hay un problema que puede impedir que TC funcione (3.5.0.beta2-dev, Theme component have become nonoperative due to the discourse-events plugin).

Uncaught Error: Could not find module `discourse/mixins/singleton` imported from `discourse/plugins/discourse-events/discourse/models/provider`
    at loader.js:247:1
    at h (loader.js:258:1)
    at u.findDeps (loader.js:168:1)
    at h (loader.js:262:1)
    at u.findDeps (loader.js:168:1)
    at h (loader.js:262:1)
    at requireModule (loader.js:24:1)
    at y (app.js:170:18)
    at b (app.js:193:19)
    at app.js:156:29
    at g.start (app.js:167:1)
    at HTMLDocument.<anonymous> (start-app.js:5:7)
    at discourse-boot.js:13:12
    at discourse-boot.js:1:1

Creo que está relacionado con este cambio donde el mixin ha sido refactorizado a un decorador de clase: DEV: refactor singleton mixin to class decorator by tyb-talks · Pull Request #30498 · discourse/discourse · GitHub.

4 Me gusta

Gracias @Arkshine, revertiremos este commit: Revert "DEV: remove singleton mixin (#31823)" by jjaffeux · Pull Request #31857 · discourse/discourse · GitHub

@kelv reevaluará la situación más adelante esta semana.

6 Me gusta

Gracias @j.jaffeux por la corrección :slight_smile:

El error se producía desde aquí: discourse-events/assets/javascripts/discourse/models/provider.js at b38f3258115110c07951f18e2c3562ac3e68a301 · angusmcleod/discourse-events · GitHub

Dejamos de usar ese mixin Singleton a principios de año. Esta PR debería proporcionar alguna referencia sobre cómo refactorizar una clase para usar Singleton como decorador.

@angus, ¿podrías echarle un vistazo? Debería ser un cambio bastante mínimo, el decorador se puede aplicar en RestModel.

3 Me gusta

Gracias a todos. He actualizado este plugin para usar el decorador singleton.

5 Me gusta

@G4sD0c ¿Podrías intentar actualizar y avisarme si tu problema se ha solucionado?

4 Me gusta

Hola,

Estoy encontrando un error al crear un tema utilizando tanto el plugin Events como el plugin Location.
El error es que el tema se crea sin el valor de fecha introducido en Events.

Detalles:

  • Puedes reabrir el tema e introducir la fecha.
  • Si creas un tema sin ubicación, la fecha se guarda correctamente.

Versión de Discourse: 3.5.0.beta1-dev
(402ec6bf5c)

Versión de Events: 0.9.5
c49ec2a

Versión de Location: 6.8.2
7eb7be3

Ejemplo:


Un gran AGRADECIMIENTO por estos dos plugins que me permiten gestionar un mapa y un calendario para convenciones de juegos de rol.

Me permito etiquetar a @merefield para informarle.

2 Me gusta

@G4sD0c Solo un amable recordatorio para actualizar el Plugin de Eventos a la última versión compatible con el último Discourse :slight_smile:

2 Me gusta

@G4sD0c lo ha hecho y está funcionando bien.

Sin embargo, he notado otro pequeño problema: cuando el plugin de Eventos está instalado pero no activo, todavía logra agregar inapropiadamente enlaces de agenda a los menús superiores.

1 me gusta

Hola equipo, desde ayer, el panel de administración de Eventos no funciona.

He pegado a continuación diferentes informaciones.


El problema adjunto apareció esta mañana en iOS Safari PWA


mi versión de discourse es

v3.5.0.beta7 +463

ayer por la mañana era

v3.5.0.beta7 +422

mi versión de iOS es

el último error que apareció en los registros de Discourse ayer fue

mi Sidekiq aparece como

mi Sidekiq apareció ayer como

1 me gusta

Hola equipo:

Esta es una actualización de que la interfaz de usuario funcionó transitoriamente.

Aparece la interfaz de administración

Extraño: tenía los enlaces de encabezado personalizados (iconos) deshabilitados y en esta captura de pantalla se muestran. ¿Se está utilizando una configuración predeterminada compatible con versiones anteriores?

Sidekiq aparece como

el último error en /logs fue


Discourse que estoy ejecutando es última versión +463, 21 commits atrás.

1 me gusta

antes de actualizar discourse, tuve el mismo problema que antes, y luego el mismo problema de nuevo después de habilitar “Custom Header Links (Icons)”


después de actualizar

1 me gusta

Esta discusión continúa desde: Discourse-events 'this.router' error - #11 by david


También tengo Discourse completamente actualizado, pero los errores han cambiado ligeramente:

Captura de pantalla

Tengo muchos eventos en el calendario que utiliza este plugin, pero desde entonces lo he deshabilitado.


Creemos que este plugin está roto y debería etiquetarse como broken.

Esto es coherente con otros informes:


También vale la pena señalar: @Ethsim2 ha propuesto soporte de sincronización de feed iCal como una característica nativa en el plugin discourse-calendar. Ese tema ya tiene dos “me gusta” de miembros del equipo de Discourse, por lo que si otros se ven afectados por esto, es uno bueno para seguir o apoyar.

2 Me gusta

quizás valga la pena señalar también, @Halden42


Sin embargo, no puedo deducir realmente si esta actualización de la biblioteca proporcionará la función, muchos usuarios de este plugin pudieron confiar o saber cómo solucionar