gristlabs_grist-core/app
Alex Hall 276adc5f51 (core) Starting to make webhooks more robust
Summary:
- Puts events on a queue in memory and ensures they are sent in the order they were generated.
- Makes the caller (Sharing.ts) wait until changed records have been fetched from the DB, but allows it to continue after while remaining work happens asynchronously.
- Gathers all new webhook events into an array so they can be backed up to the queue on redis in a single command (in a future diff).
- Uses changes in isReady to determine event type, no more 'existed before'

The structure of the code has changed a lot, so I think the scope of the diff needs to stop here. Lots of work is still deferred in TODOs.

Test Plan: Updated existing test. Actually dropped testing of retry on failures and slowness because it no longer made sense to keep that as part of the current test, so a new test for that will be added in a future diff.

Reviewers: paulfitz

Reviewed By: paulfitz

Differential Revision: https://phab.getgrist.com/D3074
2021-10-15 20:01:15 +02:00
..
client (core) Fix pie sectors order according to section sort spec 2021-10-15 08:38:48 +02:00
common (core) Use GristObjCode in CellValue 2021-10-11 14:11:32 +02:00
gen-server (core) flesh out "View As" feature 2021-10-08 12:00:40 -04:00
plugin (core) Use GristObjCode in CellValue 2021-10-11 14:11:32 +02:00
server (core) Starting to make webhooks more robust 2021-10-15 20:01:15 +02:00
tsconfig.json (core) move home server into core 2020-07-21 20:39:10 -04:00