| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
References: https://todo.sr.ht/~runxiyu/cca/13
|
| |
|
|
|
|
|
|
|
|
| |
- Remove sub-Makefiles; recursive make is annoying
- Just use one top-level Makefile that builds everything
- Embed templates and minified static resources into the binary
- Embed all compiled documentation into the binary and serve
- Embed all source into the binary and serve
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
References: https://todo.sr.ht/~runxiyu/cca/1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Note that this naive implementation currently allows users to submit
multiple requests for the same course. See the TODO comment below:
/*
* TODO: Ensure that the user is not already enrolled in this course
* and pay attention to relevant race conditions. It might be useful
* to restructure this part, to begin a transaction that adds the user
* to the database (and check the (currently not existing) uniqueness)
* constraint at that exact moment, and abort the transaction if the
* course limit is exceeded.
* Or perhaps choices should be also stored in an internal data
* structure, though that requires extra attention on consistency
* issues between the internal data structure and the database.
* (Sometime I should really go fix the LMDB bindings...)
*/
References: https://todo.sr.ht/~runxiyu/cca/1
|
|
|
|
|
|
|
| |
One user shall only have one session at a time. This reduces the
possibility of strange race conditions and simplifies the code a lot.
References: https://todo.sr.ht/~runxiyu/cca/4
|
|
|