Commit graph

618 commits

Author SHA1 Message Date
Hazelnoot
e81c8b075b make sure validation errors in background update-featured are returned to the job queue 2025-11-15 14:08:35 -05:00
Hazelnoot
5db73f86df fix logic errors in collection fetch and featured posts validation 2025-11-15 14:08:35 -05:00
Hazelnoot
f9a6a8d214 fix MockResolver failing on calls to secureResolve 2025-11-15 14:08:35 -05:00
Hazelnoot
a903d77a3f fix ImmediateApPersonService producing duplicate calls to updateFeatured 2025-11-15 14:08:35 -05:00
Hazelnoot
8b3ea577da limit unbounded parallel async maps 2025-11-15 14:08:35 -05:00
Hazelnoot
4b08e978ce implement background task queue 2025-11-15 14:08:29 -05:00
Hazelnoot
79289f1a87 separate get into get and getMaybe 2025-11-12 01:00:16 -05:00
Hazelnoot
a2ddeb28c3 separate get into get and getMaybe 2025-11-12 00:53:39 -05:00
Hazelnoot
a1265f4c45 implement refreshMaybe 2025-11-12 00:44:38 -05:00
Hazelnoot
ca2de630b9 fix fetchMaybe tests 2025-11-12 00:44:24 -05:00
Hazelnoot
ece03bef61 QuantumKVCache upgrades:
* Implement optionalFetcher callback
* Allow rate limits for all fetcher types
* De-duplicate concurrent fetch operations
* Stricter type checks for cache value types
* Add abort-on-dispose support for all fetcher types
* Dispose terminates and awaits all in-progress fetches
* Throw on attempts to use a disposed cache
* Unit test cleanup
* Reduced overhead for async operations
* More normalized exception handling
2025-11-11 23:59:03 -05:00
Hazelnoot
815bb2234e fix broken import in MockRedis 2025-11-11 23:13:54 -05:00
Hazelnoot
d6071853ca fix TS errors when checking unit tests
(it was loading the setup files, then following the imports into "built" directory. as those are compiled JS, it produced lots of type errors.)
2025-11-11 23:13:11 -05:00
Hazelnoot
39f291cdeb move CacheManagementServiceTests to correct location 2025-11-11 22:45:17 -05:00
Hazelnoot
6387b36dc3 implement callAllAsync and callAllOnAsync utilities 2025-11-11 22:40:26 -05:00
Hazelnoot
c777b79431 implement assert.isNotNullish, assert.throws, assert.throwsAsync, and assert.rejectsAsync testing utilities 2025-11-11 20:19:08 -05:00
Hazelnoot
b013649a41 prefer type-only imports in testing utilities 2025-11-09 00:51:34 -05:00
Hazelnoot
e54b8c4b72 fix typo in QuantumKVCache unit tests 2025-11-06 22:12:23 -05:00
Hazelnoot
3e1668348e implement QuantumKVCache.reset 2025-11-06 22:11:21 -05:00
Hazelnoot
3e90b211ba fix "duplicate cache" errors in SkRateLimiterServiceTests 2025-11-05 22:33:57 -05:00
Hazelnoot
83134775f0 fix rebase errors 2025-11-05 19:51:56 -05:00
Hazelnoot
8271dc199e normalize cache constructors and detect duplicate cache names 2025-11-05 19:42:31 -05:00
Hazelnoot
151550602c handle errors from cache management callbacks 2025-11-05 19:42:31 -05:00
Hazelnoot
c53bb126ef fix MockEnvService not properly reverting overrides 2025-11-05 19:42:31 -05:00
Hazelnoot
86ca3921c9 use platform services in startup routines 2025-11-05 19:42:30 -05:00
Hazelnoot
14db6444b1 fix test errors about event emitter 2025-11-05 19:42:30 -05:00
Hazelnoot
effdea5658 update unit tests and mocks 2025-11-05 19:42:30 -05:00
Hazelnoot
6e36462c80 update SkRateLimiterServiceTests.ts to use standard mocks and fakes 2025-11-05 19:42:30 -05:00
Hazelnoot
48984908e7 implement multi() in MockRedis 2025-11-05 19:42:30 -05:00
Hazelnoot
a55649e89a move global services to "global" directory 2025-11-05 19:42:28 -05:00
Hazelnoot
8e000ae313 implement MockEnvService and fix tests 2025-11-05 19:41:09 -05:00
Hazelnoot
05be2596ea update backend to the new templates 2025-11-05 19:41:08 -05:00
Hazelnoot
9beeca5942 modernize backend to target the same ES and TS standards as the rest of the app 2025-11-05 19:40:49 -05:00
Hazelnoot
1b98ed0e06 fix sporraddic test failures due to Postgres deadlock 2025-11-05 19:40:48 -05:00
Hazelnoot
2bbd5be646 fix type errors (again) 2025-11-05 19:40:48 -05:00
Hazelnoot
542b99244a fix backend unit tests: migrate delete({}) to deleteAll() 2025-11-05 19:40:48 -05:00
Hazelnoot
4e7b2be730 add eslint rule to ban .delete({}) and .update({}, {...}) 2025-11-05 19:40:48 -05:00
Hazelnoot
86a8614ef8 fix backend ESLint 2025-11-05 19:40:45 -05:00
Hazelnoot
0f2ae5e3dc fix type of "body" in test/e2e/reversi-game.ts 2025-11-05 19:40:07 -05:00
Hazelnoot
8cc3b8dd1e fix TypeORM error "Empty criteria(s) are not allowed for the delete method."
- https://github.com/typeorm/typeorm/issues/11455
- https://github.com/typeorm/typeorm/pull/11459
2025-11-05 19:38:06 -05:00
Hazelnoot
48edf3d71f fix type error in test/e2e/reversi-game.ts 2025-11-05 19:35:31 -05:00
Hazelnoot
3702729f26 update all dependencies 2025-11-05 19:29:50 -05:00
Hazelnoot
2f4270b8f7 manage GC timers in CacheManagementService 2025-11-05 19:21:51 -05:00
Hazelnoot
acf29ff40b rename MockInternalEventService methods to match other utilities 2025-11-05 19:21:51 -05:00
Hazelnoot
a1ef776f6f fix repeating timers in GodOfTimeService 2025-11-05 19:21:51 -05:00
Hazelnoot
598c43945a use GlobalModule in chart tests 2025-11-05 19:21:50 -05:00
Hazelnoot
3a92471b68 convert all remaining backend code to TimeService 2025-11-05 19:21:50 -05:00
Hazelnoot
2b4b5fd32c fix ESLint errors when opening a configuration file in the IDE 2025-11-05 19:21:50 -05:00
Hazelnoot
6cceca90f9 use TimeService everywhere in the backend 2025-11-05 19:21:46 -05:00
Hazelnoot
64745a41e5 use TimeService in charts 2025-11-05 19:20:25 -05:00