Commit Graph
24 Commits
Author SHA1 Message Date
ereti 1af9942147 feat: the monorepo man 2022-12-01 21:10:23 +00:00
ereti 98a74e12cf feat: make monorepo sane 2022-11-28 00:58:38 +00:00
zkldi 0e36b17827 fix(critical): Pin prudence to an exact version
This is a long one.

So, `instanceof` in Typescript is incredibly flimsy. There's a
documented bug with what happens when you extend built-in classes, such
as Error or Array. You can read more about it here: https://github.com/Microsoft/TypeScript/wiki/FAQ#why-doesnt-extending-built-ins-like-error-array-and-map-work

However, this normally works fine. A previous commit moved some schemas
from server/ to common/, our gameSpecific UGPT settings schemas. This
caused them to break in an interesting way. For any schema recursive
with a depth greater than 1, all errors would be ignored. Why on earth
was this happening?

Well Prudence passes errors up the stack with a "return Err" -> "if
ret instanceof Err: return Err" kind of approach. This normally works
fine.

The real kicker here is that because server/ and common/ were on 0.9.7
and 0.9.8 respectively, the "Err" instance in question would actually be
erased when ran at runtime. The "if ret instance of Err" would fail,
because the Err would be from 0.9.7, not 0.9.8. This subtle difference
in file results in catastrophic damage.

In short. InstanceOf is a footgun. I hate it. Lets never do it again.
Thanks.
2022-10-14 01:09:31 +01:00
zkldi eeb7d21602 fix: pin server ts target at es2020
I'm *pretty* sure it should be inheriting this from the parent tsconfig,
but it doesn't seem like it is. instanceof doesn't work if we're
compiling for ES3, and I think we might be doing that?
2022-08-30 13:43:59 +01:00
zkldi caf0b2e9d5 feat: dependency management is hell and you are all going to it 2022-07-15 19:56:39 +01:00
zkldi d1dcffb6de refactor: apply cadence to bot and make it compile 2022-07-04 02:16:10 +01:00
zkldi e55a0eb129 fix: get tachi-server to atleast boot and sync with common 2022-07-04 02:15:43 +01:00
zkldi af2fa826a4 experimental: mass-hollis-refactor 2022-05-10 03:21:09 +01:00
zkldi fa06eb3158 docs: document why we have two tsconfigs 2022-04-25 08:32:45 +01:00
zkldi 4e19023b36 Seeds Update Scripts
Fixes #658
2022-03-01 03:50:47 +00:00
zkldi 357aa7c2a8 Move scripts into src/ 2022-02-09 16:19:45 +00:00
zkldi b577e28b7b Update dependencies. This took forever. 2022-02-07 16:46:13 +00:00
zkldi e6ba94a86b ESLint whining about src files 2021-11-25 06:03:14 +00:00
zkldi a962f3dfec Fix critical accident in RequestLoggerMiddleware 2021-07-23 19:10:32 +01:00
zkldi 5c7e7c68c1 Add Player Stats and a bunch of tests and groundwork for #219 2021-07-22 23:53:08 +01:00
zkldi 652333d3b4 Massive Update to sync with client 2021-07-21 04:51:31 +01:00
zkldi 20fb635791 revert baseUrl Change 2021-07-02 19:10:03 +01:00
zkldi a237f6251a config refactors 2021-07-02 19:05:35 +01:00
zkldi 7f21312bd1 we buildin for es2020 now 2021-04-20 23:40:09 +01:00
zkldi 7c850befb4 More Error Logging stuffs 2021-04-18 00:41:02 +01:00
zkldi 3482804f5b separate tsconfig and tsconfig.build so as to not distribute test files 2021-04-04 17:56:11 +01:00
zkldi 91ddbceab7 Big testing stability updates 2021-04-03 16:25:19 +01:00
zkldi 6d9c59ceb7 More testing 2021-04-02 18:35:21 +01:00
zkldi c725b40994 Initial Commit 2021-04-02 10:01:09 +01:00