Commit Graph
260 Commits
Author SHA1 Message Date
Tau 4db3d94ee8 idz: Un-hardcode result limit in repo layer
Minor design nit but I should probably take my own code review
advice.
2019-11-30 14:13:49 -05:00
Tau e195cf77cd idz: Wire up TA topTen team results 2019-11-30 14:05:36 -05:00
Tau ac9622f1bd idz: Extend Time Attack topTen result set 2019-11-30 14:05:14 -05:00
Tau e8535b1a80 idz: Label additional team info in topTen response 2019-11-30 13:35:37 -05:00
07bea96aed831abce88a9591d3ff86af19babd79 d81b763d9b chuni: save and load user course result 2019-11-28 11:19:39 -05:00
Matt Bilker 1c5726be4c chunithm: Save and load user duel list 2019-11-28 07:04:33 +00:00
85be42b2ce67a8e34b32793360824b056c0c2444 6da5abcefc IDZ: Add support for player auras 2019-11-27 02:22:03 +00:00
07bea96aed831abce88a9591d3ff86af19babd79 c5e39f104f chuni: Add recent rating response to fix rating calculation 2019-11-27 01:49:05 +00:00
Tau 0ac8b44ce0 idz/sql/teamMember.ts: Fix another ignored result set
That should cover all the leftover uses of forUpdate() ...
2019-11-09 14:00:24 -05:00
Tau 4f89894fd1 chunithm: Raise POST payload size limit 2019-11-08 19:39:03 -05:00
Tau c50a0093fd idz/sql/teamReservation.ts: Fix ignored result set
Apparently the latest SQLite driver doesn't like it if you do that.
2019-11-06 17:29:07 -05:00
Tau 1b41b82745 Tiny cosmetic change 2019-11-06 17:29:07 -05:00
Tau d1d63e1ef9 chunithm: Initial implementation code drop
No cleaner development history than this exists. It's difficult to
methodically design something when you don't yet know what it is
you're designing.
2019-11-06 17:29:07 -05:00
Tau beb9144e9b sql/util.ts: Add a simple SQL record mapper
sql-bricks can write queries for us, and the mapper handles type
conversions to and from SQL-friendly strings.
2019-11-06 17:29:07 -05:00
Tau 125e4d8ca7 sql/sqlite.ts: Fix NULL handling 2019-11-06 17:29:07 -05:00
Tau b096a79f95 Simplify aime_player schema 2019-11-06 17:29:07 -05:00
Tau 04b0ccfda3 Force UTC for all internal date processing 2019-11-06 17:29:07 -05:00
Tau 82bd9ad7bb Additional assorted layering cleanups 2019-11-06 17:29:07 -05:00
Tau 6a4ac795b2 Heal the layer break around the Id<> type 2019-11-06 17:29:07 -05:00
Tau 650e05310d Flip-flop on debug logging code style 2019-11-06 17:29:07 -05:00
Tau 3aee0f611c sql/sqlite.ts: Make FK constraints do something
They don't by default, because they didn't in older versions of
SQLite and some older applications might rely on that. You have to
send an explicit pragma prior to opening a transaction to make them
take effect.
2019-11-06 17:29:07 -05:00
Tau 9acc375d99 Tweak switchboard defaults 2019-11-06 17:28:31 -05:00
Tau 799ace06d7 Wire up schema automation 2019-11-06 17:28:31 -05:00
Tau 6d91659b24 Add automated schema management 2019-11-06 17:28:31 -05:00
Tau 151dd41e64 sql: Add db compaction method 2019-11-06 17:28:31 -05:00
Tau 13e234a68c sql: Add raw SQL interface method 2019-11-06 17:28:31 -05:00
Tau f348feff62 sql/sqlite.ts: Fix type check 2019-11-06 17:28:30 -05:00
Tau 6603b6aaa6 Rename database file 2019-11-06 17:28:30 -05:00
Tau a96924c24f Abbreviate startup msg logging 2019-11-06 17:28:30 -05:00
Tau aa53fd8146 allnet: Add some environment fallbacks 2019-11-06 17:28:30 -05:00
Tau bbb5a3b408 aimedb/pipeline.ts: Silence a deprecation warning 2019-11-06 17:28:30 -05:00
Tau 072d70b42a Migrate to SQLite3
We'll keep the door open for side-by-side support of Postgres in
the background, but due to SQLite's type system quirks we cannot
use the same DDL for both databases, so we would have to maintain
two sets of DDL (schema init and schema migration scripts) at once.

Interested future contributors can shoulder this maintenance burden
if they so choose.
2019-11-06 17:28:30 -05:00
Tau f9970fa81c Force explicit conversion of rows fetched from SQL DB
Everything is a scalar value now, and while this does involve more
boilerplate it will also catch type conversion issues like
"1" + 0 === "10" in the future.
2019-11-06 17:28:30 -05:00
Tau 30d42bd832 Store array colums as CSV text
This is in preparation for a transition to SQLite, which sadly does
not support array-valued columns (or indeed have much of a type
system in general).
2019-11-06 17:28:30 -05:00
Tau 3e6b4f4798 Add an SQL DB abstraction layer
Because what self-respecting Enterprise(R) project doesn't have
one of those?
2019-11-06 17:28:30 -05:00
Tau 4dd3f39472 Fix sql-bricks import style 2019-11-06 17:28:30 -05:00
Tau 6ab2112ea9 Stop using SQL namespaces ("schemas")
This is in preparation for a transition to SQLite. SQLite does have
a similar concept called "attached databases", but it's kind of a
pain to deal with if you're casually browsing a database from the
`sqlite3` CLI so we'll just use some slightly uglier explicitly
namespaced table name identifiers instead.
2019-11-06 17:28:30 -05:00
Tau 6be23145d8 Crack Diva handlers 2019-11-06 17:28:30 -05:00
Tau cc0cd06c92 Crack Chunithm handlers 2019-11-06 17:28:30 -05:00
Tau 9697b4b06e Use debug package for logging 2019-11-06 17:28:30 -05:00
Tau db260d5f2f idz/decoder: Drop RequestCode typedef
This is just boilerplate for its own sake.
2019-11-06 17:28:30 -05:00
Tau 3f62f1683b idz/handler/createTeam.ts: Fix incomplete refactor
This looks like duplicated code that wasn't deleted after being
factored out into a helper proc.
2019-11-06 17:28:30 -05:00
Tau 7118a72b3b Use esModuleInterop 2019-11-06 17:28:30 -05:00
Tau a5256c97d3 Fix SQL column capitalization 2019-11-06 17:28:30 -05:00
Tau 84023e2eb8 chunithm.ts: Beat compression m/ware with a wrench
Force unconditional compression of responses harder.
2019-11-06 17:28:30 -05:00
Tau 4298810728 aimedb: Defensively close connection after a Goodbye
We should probably also add request timeouts and such.
2019-11-06 17:28:30 -05:00
Tau 3fea2dae56 allnet.ts: Restrict request filter to PowerOn
PowerOn uses HTTP slightly incorrectly, but other endpoints use
HTTP incorrectly in different ways (or maybe even correctly, who
knows). Scope the current request interceptor to just PowerOn.
2019-11-06 17:28:30 -05:00
Tau 4a2b3f51a4 allnet.ts: Rename from startup.ts 2019-11-06 17:28:30 -05:00
Tau 355f20c50b Add host/port "switchboard" module
Centrally list all hostnames and port numbers here. Need to push
this into IDZ further but I'm a bit short on time (so what else is
new).
2019-11-06 17:28:30 -05:00
Tau ff4545d468 aimedb: Return decimal IDm as access code 2019-11-06 17:28:30 -05:00