Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pretalx support #190

Merged
merged 27 commits into from
Jan 9, 2024
Merged

Pretalx support #190

merged 27 commits into from
Jan 9, 2024

Conversation

Half-Shot
Copy link
Contributor

@Half-Shot Half-Shot commented Oct 13, 2023

Fixes #189

This is now based upon the FOSDEM 2024 schema, and correctly parses the production conference data. I chose in the end to use the public JSON schedule format combined with a handful of calls to the API to populate the speaker information. This now mostly works, and is missing:

  • More thorough testing that the output conference is exactly right.
  • Plug gaps that were covered by the pentabarf DB. Currently I believe this is only QA names and Matrix IDs.
  • Write a e2e test.

@Half-Shot Half-Shot changed the base branch from hs/integration-testing to main January 3, 2024 16:51
@Half-Shot Half-Shot marked this pull request as ready for review January 3, 2024 16:51
@Half-Shot Half-Shot requested a review from a team as a code owner January 3, 2024 16:51
config/default.yaml Outdated Show resolved Hide resolved
config/default.yaml Outdated Show resolved Hide resolved
@H-Shay
Copy link
Contributor

H-Shay commented Jan 4, 2024

This seems pretty sane to me - happy to approve as-is to keep things moving or should I wait until the checklist is complete - those could possibly be done in follow-up PRs?

@Half-Shot Half-Shot requested a review from H-Shay January 8, 2024 18:17
Copy link
Contributor

@H-Shay H-Shay left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Bar the two tiny nit questions LGTM!

@@ -206,7 +206,7 @@ export class Scheduler {
// Rationale: Sometimes schedules get changed at short notice, so we try our best to accommodate that.
// Rationale for adding 1 minute: so we don't cut it too close to the wire; whilst processing the refresh,
// time may slip forward.
await this.conference.backend.refreshShortTerm((minVar + 1) * 60);
await this.conference.backend.refreshShortTerm?.((minVar + 1) * 60);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would it make sense to alert the end-user here if there is no refreshShortTerm function? (Not sure how likely it is that the lack of this will result in an out-of-date schedule)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think for this section it's okay. This part runs every 8s to check for new tasks, and optionally refreshes it's cache of the conference when doing so. It's probably not a good idea to tell the user every time, and it's more of a technical detail imo.

for (const pEvent of arrayLike(pRoom.event)) {
if (!pEvent) continue;
// Prefer code, which maps to pretalx. If not available then fall back to @_id.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this comment still relevant - I think it might not be?

@Half-Shot Half-Shot enabled auto-merge (squash) January 9, 2024 08:54
@Half-Shot Half-Shot merged commit 864ec25 into main Jan 9, 2024
5 checks passed
@Half-Shot Half-Shot deleted the hs/pretalx branch January 9, 2024 08:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Support pretalx
2 participants