| Commit message (Expand) | Author | Age | Files | Lines |
* | {courses,wsc}.go: Atomic 64-bit alignment | Runxi Yu | 2024-10-09 | 1 | -1/+1 |
* | wsc.go: Use sync.Map for cancelPool to reduce lock contention | Runxi Yu | 2024-10-09 | 1 | -21/+10 |
* | *.go: Update comments | Runxi Yu | 2024-10-09 | 1 | -0/+1 |
* | *.go: Use sync.Map instead of map[int]*courseT for courses | Runxi Yu | 2024-10-09 | 1 | -15/+28 |
* | {courses,wsc,wsp}.go: Usems should be sync.Map | Runxi Yu | 2024-10-09 | 1 | -10/+2 |
* | {courses,wsc,wsm}.go: map[courseGroupT](bool->struct{}) | Runxi Yu | 2024-10-08 | 1 | -1/+1 |
* | *.go: Further wrap errors | Runxi Yu | 2024-10-08 | 1 | -3/+7 |
* | Reapply "{config,wsc}.go, cca.scfg.example: Dynamic course update delay" | Runxi Yu | 2024-10-07 | 1 | -1/+11 |
* | Revert "{config,wsc}.go, cca.scfg.example: Dynamic course update delay" | Runxi Yu | 2024-10-07 | 1 | -11/+1 |
* | wsc.go: Fix race condition with usemCount atomics | Runxi Yu | 2024-10-07 | 1 | -1/+6 |
* | *.go: Limit to approximately 80 characters per line | Runxi Yu | 2024-10-06 | 1 | -10/+57 |
* | {config,wsc}.go, cca.scfg.example: Dynamic course update delay | Runxi Yu | 2024-10-06 | 1 | -1/+6 |
* | {courses,wsc,wsm,wsp}.go: Send course number immediately on user interaction | Runxi Yu | 2024-10-06 | 1 | -9/+2 |
* | *: Overhaul structure again and embed everything | Runxi Yu | 2024-10-06 | 1 | -0/+266 |
* | *.go: Move to backend | Runxi Yu | 2024-10-05 | 1 | -266/+0 |
* | {,u}sem.go, ws*.go: Restructure files | Runxi Yu | 2024-10-05 | 1 | -0/+266 |