Commit Graph

200 Commits

Author SHA1 Message Date
Guangcong Luo
e22f49ef04 Fix REPL crashing on startup
The problem is that we were cleaning up old REPL sockets after
launching new ones. This moves the cleanup step to before Artemis
and Friends processes are launched.
2023-12-29 17:08:58 -06:00
urkerab
cd7aa49a16
Deep freeze an object's values directly (#10022) 2023-12-28 07:10:32 -08:00
Guangcong Luo
9cd64cba15 Freeze cached Sim objects
We're hunting ~~wabbits~~ validator bugs.

Honestly, this has been a long time coming, but Object.freeze perf
used to not be good enough for us to use it here. Here's hoping!
2023-12-07 01:26:51 -05:00
Guangcong Luo
6b42b4f6b2 Experimental direct replay uploading
We have a new replay server on a new engine using a new schema.

Everything's gone remarkably well, considering.
2023-12-02 11:07:08 -05:00
Mia
4b79ee1276 Net: Expose response data to consumers
Headers are useful for a couple of Net consumers (rate limit data, that sort of thing.)
2023-11-28 12:27:38 -06:00
Mia
effb8ed103 Utils: Explicitly traverse the module tree to ensure no references are held long-term 2023-11-20 22:19:49 -06:00
Mia
071d7e3c94 Process-manager: Don't hold unnecessary module references past their expiry 2023-11-20 21:28:42 -06:00
Mia
56a5175d00 Fix typo
Didn't mean to commit this.
2023-11-04 16:43:55 -05:00
Mia
d6c78db0dd SQL: Account for dist files in loading extensions 2023-11-04 16:41:47 -05:00
Mia
5f6d9029ac Prevent chat processes from nesting 2023-11-04 16:37:49 -05:00
Mia
0211066723
Add offline messaging (#8440) 2023-11-04 14:45:18 -05:00
Mia
f190b1c8a7
Add a chat plugin for storing teams remotely (#9513) 2023-09-24 11:22:26 -05:00
Mia
8caf1b7932 Process-manager: Respawn timed-out processes 2023-06-12 13:17:58 -05:00
Annika
0bc78dddf5 TypeScript 5! 2023-04-09 13:02:19 -07:00
Mia
35c7c62566 Fix Postgres config loading 2022-12-22 15:57:05 -06:00
Mia
b11177d530
Migrate to esbuild for compilation (#9203) 2022-12-22 15:19:29 -06:00
Mia
93a0a0f61c
Rooms: Only lockdown after restarts when battles crash (#9110) 2022-12-04 12:45:31 -05:00
Mia
8bdebea6e4 Fix eslint errors 2022-11-17 16:18:39 -06:00
Annika
9c5d654b89
Revert "Improved typing for utils.ts, and for iterating over base stats (#8919)" (#8938)
This reverts commit c589fb5a5a.
2022-10-16 18:27:25 -07:00
GregLyons
c589fb5a5a
Improved typing for utils.ts, and for iterating over base stats (#8919) 2022-10-16 18:08:11 -07:00
PartMan
161b48daff
Scavengers: Add Speedrun Twist (#8852) 2022-08-06 17:48:46 -07:00
Mia
0860a6e036 Remove accidental debug print 2022-07-28 03:10:12 -05:00
Mia
a0963b8f32 Postgres: Ensure table version is always inserted 2022-07-28 00:12:23 -05:00
Mia
922a7bf8a9 Postgres: Fix bugs in migration API 2022-07-27 23:57:31 -05:00
Mia
67fcc14bf4
Rooms: Ensure battles save all data correctly (#8851)
* Rooms: Ensure battles save all data correctly

* Standardize migration code for future use
2022-07-27 21:08:19 -07:00
Mia
ec4cb6a6fa
Support persisting battles in a Postgres database (#8442) 2022-07-22 18:07:10 -07:00
Annika
bc6e0dcdb7 REPL: Fix heapdump path
The `path` identifier referred to the module `path`, not the path that the heapdump should be written to
2022-03-02 19:48:22 -08:00
Annika
6e91e22740 Improve typing and fix build 2022-02-28 19:49:08 -08:00
Mia
1c8381113f
SQL: Expose an sql-template-strings API
Necessary for consumers of the DatabaseTable API wishing to use the delete etc functions. And this solution is much nicer than `tableinstance.SQL\`\``.
2022-02-01 12:36:31 -06:00
Mia
29cef961c6
SQL: Add an abstraction for typed queries (#8565) 2022-02-01 10:02:53 -08:00
Mia
fa8f7a3e50
SQL: Propagate errors to the parent process (#8613) 2022-01-05 17:56:52 -08:00
Mia
971a02061a
Fix build
I don't know why this counts as a variable.
2021-11-27 22:43:36 -06:00
Mia
5649bc5f30 Crashlogger: Don't crash if there's no Config global 2021-11-27 14:34:20 -06:00
Guangcong Luo
57554dc283 Stop using fs.exists
`fs.exists` should in practice be replaced with try-catch (since the
latter isn't susceptible to race conditions).
2021-10-09 15:53:30 -04:00
Mia
a4e81e29d3 Crashlogger: Support passing nodemailer configuration
This is useful for the new loginserver.
2021-10-03 19:58:13 -05:00
Mia
e08e1a9cf0 Repl: Create file directory if it doesn't exist 2021-09-13 20:26:11 -05:00
Mia
7811795344
Handle new TypeScript version (#8449)
Co-authored-by: Guangcong Luo <guangcongluo@gmail.com>
2021-08-30 20:11:44 -07:00
Mia
d9b342745c Process-Manager: Allow undefined responses in QueryProcessManager 2021-08-21 13:20:06 -05:00
Mia
b70bf3fa17
ProcessManager: Crashlog bad JSON responses (#8438) 2021-08-20 18:18:34 -07:00
Mia
8cf1035ee2
SQL: Automatically prepare statements unless told otherwise (#8439) 2021-08-18 12:51:39 -07:00
Mia
0a2ed42d13 SQL: Support turning SQL.Statements to JSON 2021-08-15 15:17:45 -05:00
Annika
a7ddaa1b63 SQL library: Support loading extensions at will 2021-08-14 20:35:08 -07:00
Annika
f13609e721
SQL library: Improve typing of #run() 2021-08-14 18:58:13 -07:00
Mia
ca1400ddc3 Fix build 2021-08-14 20:24:23 -05:00
Mia
d63e647a95 Fix typo 2021-08-14 19:58:24 -05:00
Mia
c8991c3d9d SQL: Overhaul database/statement not found errors 2021-08-14 19:58:02 -05:00
Mia
77861ceae6
SQL: Use a QueryProcessManager subclass (#8422) 2021-08-14 17:45:51 -07:00
Mia
a43d3f66a9 SQL: Properly support named parameters 2021-08-13 21:08:43 -05:00
Annika
33ad1a0a50 Move Modlog.formatArray to Utils 2021-08-12 16:38:14 -07:00
Annika
e9990080d3 FS: Fix build 2021-08-04 21:12:37 -07:00