Commit Graph
358 Commits
Author SHA1 Message Date
Tau eb276128c2 sql: Add "maintenance transaction" system
SQLite's ALTER TABLE functionality leaves a lot to be desired, so
in practice the way you alter SQLite schema is to create a new
table, migrate the data into it, then drop the old table. However,
this is potentially complicated by the presence of foreign key
constraints.

In order to resolve the foreign key constraint issue we add a
`maintenance()` method to the `DataSource` abstraction layer. This
operates similarly to the existing `transaction()` method, but the
SQLite implementation of this method defers enforcement of foreign
keys until the transaction is about to commit.
2021-02-03 23:43:38 +00:00
Tau 6090a60467 sql: Drive-by method documentation 2021-02-03 23:43:38 +00:00
Tau 2099622b0f sql: Throw conventionally... 2021-02-03 23:43:38 +00:00
Tau 9494f3026b checkdb: Use single transaction 2021-02-03 23:43:38 +00:00
Tau f7ceb6bcda idz: Prettier compliance 2021-02-03 23:43:38 +00:00
Tau 04dac7279e idz: Remove some dead code 2021-02-03 23:43:37 +00:00
Tau 8c164b6130 idz: Use string I/O helpers 2021-02-03 23:43:37 +00:00
Tau 27b229e1c2 idz: Remove iffy redundant NUL termination op 2021-02-03 23:43:37 +00:00
Tau c877d9d214 idz: Fix apparent buffer stride bug 2021-02-03 23:43:37 +00:00
Tau 636789b8bf idz: Delete dead imports 2021-02-03 23:43:37 +00:00
Tau 48aeb1c9d2 types: Declare ON CONFLICT ... DO NOTHING clause 2021-02-03 23:43:36 +00:00
Tau 5f09c00eb4 Add explicit vscode formatter conf 2021-02-03 23:43:36 +00:00
Tau bf28710000 v013 v013 2020-12-15 18:05:28 -05:00
Tau 8c61bda865 Apply Prettier to CHANGELOG 2020-12-15 18:05:09 -05:00
Felix 1fa268e6ba chunithm: stub GetUserFavoriteMusicApi 2020-12-15 22:59:23 +00:00
e76cd2ec3a63f11710dc9fa0bc5b66176521af0a 4fe69077fc chuni: limit response size of getUserActivity 2020-11-08 23:54:28 -08:00
Tau 4f5eb97309 Fix npm audit noise 2020-09-01 01:10:32 +00:00
Tau 122c397b59 idz: Add utilities for binary I/O 2020-09-01 01:10:32 +00:00
Tau d3984dcd5d idz: Use Switchboard config for some ports 2020-09-01 01:10:31 +00:00
Tau 4abc04e9f6 idz: Port userdb/ onto common/ 2020-09-01 01:10:31 +00:00
Tau c01dbb50f7 idz: Factor out common TCP obfuscation 2020-09-01 01:10:31 +00:00
Tau fa5ed284e1 util: Add promise-based stream wrapper
You'd think something like this would exist on npm somewhere.
2020-09-01 01:10:31 +00:00
Tau 76583f17ce idz: Fix userdb msg 00AD block alignment 2020-09-01 01:10:31 +00:00
Tau f959993197 idz: Hoist userdb code 2020-09-01 01:10:31 +00:00
Tau 6dceb7c48a Fix CHANGELOG attribution 2020-08-19 18:44:29 -04:00
Tau 1869c37949 Add CHANGELOG up to v012 v012 2020-08-17 21:26:40 -04:00
e76cd2ec3a63f11710dc9fa0bc5b66176521af0a 1d8fd582c9 chuni: sort user activity response 2020-08-17 21:11:00 -04:00
e76cd2ec3a63f11710dc9fa0bc5b66176521af0a 9b22318934 chuni: Fix upsert with an empty userRecentRating 2020-08-09 01:18:31 -07:00
e76cd2ec3a63f11710dc9fa0bc5b66176521af0a 71a7cd7eed chuni: Correctly implement recent rating requests 2020-08-02 12:22:01 -04:00
5ebef5658c5fcb6f5a62e75318bdc7fad90b21bc 6c22c4287e chuni: implement UserCharge APIs, add table for purchased tickets 2020-08-02 11:24:21 -04:00
5ebef5658c5fcb6f5a62e75318bdc7fad90b21bc a8539b475e chuni: enable ticket system 2020-08-02 11:24:21 -04:00
340f81fd089d20627f63fce796e939b691538bc5 abcccfb9a0 chuni: add new felica lookup mode 2020-08-01 12:55:25 -04:00
643161de4220f1bc925fbb05bde805fd8ec95c63 b2288b9b8f idz: Fix team-leader, add leader name and shop name 2020-08-01 12:50:09 -04:00
cd6c1fd2d946dff292b101ca3305fc7f31d2dce5 e61b103221 chuni: Changes to make compatible with old CHUNITHM 2020-08-01 12:41:55 -04:00
Tau 94ed27503a Add tests to CI build 2020-08-01 12:38:47 -04:00
Tau ad1b48c210 Fix? long-broken test 2020-08-01 12:38:47 -04:00
Tau 75b35e09e2 Add GitLab CI 2020-08-01 12:38:47 -04:00
cd6c1fd2d946dff292b101ca3305fc7f31d2dce5 834804b2ea chuni: fix lost scores for real 2020-04-19 23:03:31 +08:00
Matt Bilker ac9cf50d28 chuni: Fix maintenance timer 2020-03-22 23:16:33 +00:00
Matt Bilker cb4743f86f chuni: Add remaining Chunithm Amazon event IDs 2020-03-22 23:16:30 +00:00
Matt Bilker cef7e99e46 chuni: Put event IDs in separate static file 2020-03-22 23:15:01 +00:00
Matt Bilker 4b007b446d chuni: Enable all events 2020-03-22 23:15:00 +00:00
Matt Bilker 4c5122d163 chuni: Prevent recursive item calls if user has more than 600 items 2020-03-22 23:15:00 +00:00
Tau 01198d546a sql: Add NULL support to database wrappers 2020-03-22 22:38:54 +00:00
07bea96aed831abce88a9591d3ff86af19babd79 bc5f26d768 chuni: Add the api endpoint use in older chunithm 2020-01-30 18:26:36 +00:00
07bea96aed831abce88a9591d3ff86af19babd79 9a652e1ace chuni: lower max result per page to prevent game fail to read content. Fix #6 2020-01-30 16:52:31 +00:00
Tau 7b21a0bdae idz: Implement multi-page Garage fetch v011 2020-01-25 19:26:42 -05:00
Tau 5311618d1d Fix new DB initialization, AGAIN. v010 2020-01-05 10:45:40 -05:00
Tau 37ce14dda7 Switch to @decafcode/sqlite for database access 2020-01-05 10:00:12 -05:00
Tau 0d8d5845c9 schema: Fix M0011 for newly-created databases v009 2019-12-09 23:06:20 -05:00