summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* student.html: Use separate columns for Selected and MaxRunxi Yu2024-10-091-2/+9
|
* eslint.sh: Call eslint directly rather than through npxRunxi Yu2024-10-091-1/+1
|
* *.go: Update commentsRunxi Yu2024-10-098-30/+17
|
* bench.go: Update number of coursesRunxi Yu2024-10-091-1/+1
|
* student.js: Don't N then Y the same course on selectv0.1.8Runxi Yu2024-10-091-1/+1
|
* student.{html,js}: Deselect courses in the same group when selectingRunxi Yu2024-10-092-5/+7
|
* student.html: Slightly better looks around tickboxRunxi Yu2024-10-091-8/+10
|
* tcourse.sql: Add more example CCAsRunxi Yu2024-10-091-5/+13
|
* {courses,index}.go, student.html, style.css: Group by course groupRunxi Yu2024-10-094-20/+34
|
* student.html: Simplify JSRunxi Yu2024-10-091-2/+1
|
* index.go, {login,student}.html: Use structs rather than maps for tmplRunxi Yu2024-10-093-22/+28
|
* *.go: Use sync.Map instead of map[int]*courseT for coursesRunxi Yu2024-10-096-73/+115
| | | | I'm not sure whether this is actually better than locking.
* {courses,wsc,wsp}.go: Usems should be sync.MapRunxi Yu2024-10-093-19/+12
| | | | | This is a classic few-reads, many-writes situation where a sync.Map would lead to substantially less lock contention.
* {courses,wsc,wsm}.go: map[courseGroupT](bool->struct{})Runxi Yu2024-10-083-8/+8
| | | | | This makes it use slightly less memory. Approximately courseGroupT bits per connection!
* style.css: Work around Firefox bug 217769Runxi Yu2024-10-081-0/+8
| | | | | | | Firefox eats the left, bottom, and right borders when tbody is empty. This is a bug known for 21 years (that was Firefox 37 or something). References: https://bugzilla.mozilla.org/show_bug.cgi?id=217769
* *.go: Further wrap errorsRunxi Yu2024-10-086-24/+52
|
* err.go: Create, and unify some error definitionsRunxi Yu2024-10-085-38/+55
|
* Revert "latexify-source.sh: \subsection{\texttt{%s}}"Runxi Yu2024-10-071-11/+11
| | | | This reverts commit a9916b3a7df327836f18011edcbf8cc218260f89.
* student.js: Use "let" rather than "var"v0.1.7Runxi Yu2024-10-071-2/+2
|
* latexify-source.sh: Don't set -xRunxi Yu2024-10-071-1/+1
|
* cca.scfg.example: usem_delay_shift_bits should default to 5Runxi Yu2024-10-071-1/+1
|
* Reapply "{config,wsc}.go, cca.scfg.example: Dynamic course update delay"Runxi Yu2024-10-073-17/+34
| | | | This reverts commit 831040c3d7dbc116a25848786bc5ab83fef6149b.
* Revert "{config,wsc}.go, cca.scfg.example: Dynamic course update delay"Runxi Yu2024-10-073-34/+17
| | | | This reverts commit de3f0b9e7003e4521f5ea866134e77ff859ab99b.
* {courses,wsm,wsp}.go: Make course.Selected atomicRunxi Yu2024-10-073-12/+15
|
* wsc.go: Fix race condition with usemCount atomicsRunxi Yu2024-10-071-1/+6
| | | | Atomics must be read atomically via atomic.LoadT
* postgres_run.sh: Remove as unnecessaryRunxi Yu2024-10-071-3/+0
|
* Makefile, main.go: Use cover page as iadocs/index.htmlRunxi Yu2024-10-062-3/+9
|
* {config,wsm}.go, cca.scfg.example: Configurable immediate propagationRunxi Yu2024-10-063-10/+28
|
* iadocs: ROT table should be HTMLRunxi Yu2024-10-074-23/+250
|
* main.go: -config -> -cRunxi Yu2024-10-061-1/+1
|
* latexify-source.sh: \subsection{\texttt{%s}}Runxi Yu2024-10-071-11/+11
|
* iadocs: Switch back to TeX Gyre Termes/Heros with LM MonoRunxi Yu2024-10-071-7/+7
|
* iadocs: Use Latin ModernRunxi Yu2024-10-062-10/+8
|
* .editorconfig, latexify-source.sh, student.js: Indent 4, wrap 85Runxi Yu2024-10-063-29/+57
|
* Makefile: lualatex -interaction batchmodeRunxi Yu2024-10-061-4/+4
|
* *.go: Limit to approximately 80 characters per lineRunxi Yu2024-10-069-95/+431
|
* iadocs/header.inc: link color white!40!blue!50!blackRunxi Yu2024-10-061-1/+1
|
* Makefile: lualatex -halt-on-errorRunxi Yu2024-10-061-4/+4
|
* iadocs, etc.: Add source to appendixRunxi Yu2024-10-067-4/+797
|
* iadocs: Use DejaVu Sans Mono [Scale=0.8]Runxi Yu2024-10-061-1/+1
|
* deploy.sh: Add deployment scriptRunxi Yu2024-10-061-0/+18
|
* index.go, login.html: Improve looks of session expired messageRunxi Yu2024-10-062-4/+4
|
* studnet.js: TODO about configurable WebSocket URLRunxi Yu2024-10-061-0/+17
|
* README.md: UpdateRunxi Yu2024-10-061-6/+12
|
* main.go, Makefile: Add .editorconfig and .gitignore to srcFSRunxi Yu2024-10-062-2/+2
|
* Revert "Makefile, main.go: Add vendor dependencies to srcFS"v0.1.6Runxi Yu2024-10-062-5/+2
| | | | This reverts commit a25fdc67f05cfb1b37ac750460a21ddbb18008de.
* go.mod: Fix module URLRunxi Yu2024-10-061-1/+1
|
* {config,wsc}.go, cca.scfg.example: Dynamic course update delayRunxi Yu2024-10-063-15/+24
|
* bench: Accept courseID and connections flagsRunxi Yu2024-10-061-3/+11
|
* wsm.go: "R" on multiple choices in group rather than closing connectionRunxi Yu2024-10-061-4/+5
|