Gregor Kleen
a314f64a70
fix: weight random token impersonation towards active users
2021-03-17 00:19:45 +01:00
Gregor Kleen
600bbe5d7e
feat: admins can efficiently generate many tokens for random users
2021-03-16 16:02:00 +01:00
Wolfgang Witt
9b0adab023
chore: extende random distribution with nudges
2021-03-15 10:45:37 +00:00
Wolfgang Witt
9c928b0375
fix: make sure to report NoUsers, regardless of rule
2021-03-15 10:45:37 +00:00
Wolfgang Witt
e13049d958
chore(test): inform test about changed type signature
2021-03-15 10:45:37 +00:00
Wolfgang Witt
163715afc8
chore: hlint
2021-03-15 10:45:37 +00:00
Wolfgang Witt
a7671dbec6
chore: remove TODO marker
2021-03-15 10:45:37 +00:00
Wolfgang Witt
767090ded1
chore: check for no users first
2021-03-15 10:45:37 +00:00
Wolfgang Witt
5dc37a07c1
chore: improve error messages
2021-03-15 10:45:37 +00:00
Wolfgang Witt
0765f4b925
chore: chasing type-errors
...
messages are still temporary
2021-03-15 10:45:37 +00:00
Wolfgang Witt
e03326e1ac
chore: examAutoOccurrence converted to Either
2021-03-15 10:45:37 +00:00
Wolfgang Witt
72d42baec5
chore: remove redundant seq
2021-03-15 10:45:37 +00:00
Wolfgang Witt
6dedb2b2a0
Apply 1 suggestion(s) to 1 file(s)
2021-03-15 10:45:37 +00:00
Wolfgang Witt
6ae1aeaeb0
Apply 5 suggestion(s) to 1 file(s)
2021-03-15 10:45:37 +00:00
Wolfgang Witt
85e3941538
chore: add my name to contributers + create changelog files
2021-03-15 10:45:37 +00:00
Wolfgang Witt
ad67c2e0e2
chore: remove trailing 'A' from surname-range-start
...
- still add it if the previous end was too short
- this way overall shorter descriptions are possible
- in rare cases (at maxTagLength) this prevented a description to be created
2021-03-15 10:45:37 +00:00
Wolfgang Witt
c99d96ecb8
fix: handle rare cases where a mappingDescription with start>end would be produced
2021-03-15 10:45:37 +00:00
Wolfgang Witt
cd07a56a9f
fix: correctly calculate maximum user name length
2021-03-15 10:45:37 +00:00
Wolfgang Witt
daceac95fc
chore(test): relax requirements for justified nullResult
...
Instances with bigger user buckets than the smallest room might correctly fail
Thus, don't report an error for them.
2021-03-15 10:45:37 +00:00
Wolfgang Witt
7e1b75c2e1
fix: shown ranges "include" special mappings
...
previously, they stopped just before leading to clashes with the next range
e.g. Äm would cause Am as mapping end with the next starting at An
Now, the mapping end is AZ with the next starting at BA
2021-03-15 10:45:37 +00:00
Wolfgang Witt
4f4cd394db
chore: add missing+remove redundant imports
2021-03-15 10:45:37 +00:00
Wolfgang Witt
b974942f07
chore: matriculation numbers limited same length again
...
- this time as suffixes
- also start range description with full used length
otherwise suffix-description is confusing
2021-03-15 10:45:37 +00:00
Wolfgang Witt
f0a79dff65
chore: rewrite ExamRoomRandom mapping, so it actually respects room sizes
2021-03-15 10:45:37 +00:00
Wolfgang Witt
a559ac74cb
chore: include non-ascii names in range-calculation
2021-03-15 10:45:37 +00:00
Wolfgang Witt
8e4cb0917d
fix: make sure unfortunate combination doesn't only produce 0-9 ranges for matrikelnummer
2021-03-15 10:45:37 +00:00
Wolfgang Witt
fc35fd26c1
fix: mappingDescription doesn't overlap for the first n rooms/with small names/matrikelnummer
2021-03-15 10:45:37 +00:00
Wolfgang Witt
6ccc192426
chore: remove -Wwarn
2021-03-15 10:45:37 +00:00
Wolfgang Witt
5480e2d7b7
chore: names with non-ascii prefix get a ExamOccurrenceMappingSpecial
2021-03-15 10:45:37 +00:00
Wolfgang Witt
d60f93561f
fix: make sure it compiles again + add 2-letter name
2021-03-15 10:45:37 +00:00
Wolfgang Witt
873d5a02ad
fix: ensure termination for non-{'A'..'Z']-names
2021-03-15 10:45:37 +00:00
Wolfgang Witt
344bd420cd
chore: don't use suffix of a prefix for mapping description
2021-03-15 10:45:37 +00:00
Wolfgang Witt
8f2b31acef
chore: add padding to mappingRange if names are too short
2021-03-15 10:45:37 +00:00
Wolfgang Witt
5a3b2881c4
chore: rewrite resultAscList
2021-03-15 10:45:37 +00:00
Wolfgang Witt
f0f6706bcf
chore: remove redundant MultiWayIf
2021-03-15 10:45:37 +00:00
Wolfgang Witt
479f4326b2
chore: filter out all empty/prefilled rooms
...
They might produce unnecessary null-results
2021-03-15 10:45:37 +00:00
Wolfgang Witt
317b95be31
fix: check if number of relevant user is >0 to prevent crash
2021-03-15 10:45:37 +00:00
Wolfgang Witt
44a52e034f
chore: filter out pre-filled rooms
2021-03-15 10:45:37 +00:00
Wolfgang Witt
4fc05351fa
fix: user with a pre-assigned room count towards the capacity limit
2021-03-15 10:45:37 +00:00
Wolfgang Witt
e487ceff58
fix: make sure line-break algorithm respects available lines
2021-03-15 10:45:37 +00:00
Wolfgang Witt
eaf245beaa
fix: examAutoOccurence no longer user >100% of a room
2021-03-15 10:45:37 +00:00
Wolfgang Witt
7b0fd61f7f
fix: spelling plugin had a suggestion; actually Hello World commit :p
2021-03-15 10:45:37 +00:00
Gregor Kleen
65814c005e
fix(authorisation): inverted logic for empty
2021-03-13 17:53:44 +01:00
Gregor Kleen
e88b6d6bab
fix: invalidate nav caches
2021-03-12 18:39:00 +01:00
Gregor Kleen
6fbef0433c
perf: additional/improved auth caching
2021-03-12 14:59:38 +01:00
Gregor Kleen
896bd41e3b
fix(auth-caching): submission-group
...
Also improve metrics wrt. auth tag eval
2021-03-11 16:22:52 +01:00
Gregor Kleen
683a7da5fe
refactor: hlint
2021-03-08 13:08:54 +01:00
Gregor Kleen
55a9c8a5ae
perf: skip favouriteQuickActions under db conn pressure
2021-03-08 12:55:48 +01:00
Gregor Kleen
63f0d3c37a
feat(auth): user independent authorisation caching
...
BREAKING CHANGE: additional authorisation caching
2021-03-08 12:08:43 +01:00
Gregor Kleen
38f16ebac3
refactor: hlint
2021-03-08 09:24:59 +01:00
Gregor Kleen
ea33d844cc
feat(messages): mkMessageAddition
2021-03-06 22:31:20 +01:00
Gregor Kleen
bb877eb813
feat(messages): implement custom parser for message files
2021-03-06 20:13:55 +01:00
Gregor Kleen
6d93e3e8bc
refactor: hlint
2021-03-01 13:12:30 +01:00
Gregor Kleen
cf33f0af84
fix: build
2021-03-01 07:50:08 +01:00
Gregor Kleen
23ff9d9222
feat(db): track source of database accesses
2021-02-26 11:00:44 +01:00
Gregor Kleen
6115b83bb3
fix(jobs): wake more often during waitUntil
2021-02-24 12:46:06 +01:00
Gregor Kleen
b9cc5b9970
feat(transaction-log): more details about submission files
2021-02-24 12:39:32 +01:00
Gregor Kleen
56e9212e65
chore: reduce logging
2021-02-24 10:12:48 +01:00
Gregor Kleen
d801a2f84a
feat(monitoring): observe database connection opening/closing
2021-02-23 20:33:05 +01:00
Gregor Kleen
50fdcb4540
feat(db): provide our own implementation of connection pooling
...
Also allows monitoring pool status (available/in use connections,
total number of takes from pool)
This reverts commit 35ac503bf9 .
2021-02-23 16:30:24 +01:00
Gregor Kleen
35ac503bf9
feat(db): optionally disable some db connection pooling
2021-02-21 20:44:45 +01:00
Gregor Kleen
fb6ae089c6
feat(bot-mitigations): only logged in table sorting
2021-02-21 13:39:47 +01:00
Gregor Kleen
db48bbb776
fix(jobs): use more read only/deferrable transactions
2021-02-20 11:16:47 +01:00
Gregor Kleen
c272618aa6
fix(missing-files): properly account for workflows
2021-02-19 13:42:23 +01:00
Gregor Kleen
e54b985815
fix(files): count personalised sheet files as alive
2021-02-19 09:27:12 +01:00
Gregor Kleen
e179c0ff6c
refactor: hlint
2021-02-17 15:12:56 +01:00
Gregor Kleen
8d1f216b5b
feat(caching): introduce cache prewarming
2021-02-17 14:31:30 +01:00
Gregor Kleen
c76794f7c8
chore: fix tests
2021-02-15 15:31:23 +01:00
Gregor Kleen
e2eddc93c5
chore(changelog): bump
2021-02-15 14:29:17 +01:00
Gregor Kleen
a8f268852a
feat(personalised-sheet-files): restrict download by exam
2021-02-15 14:24:36 +01:00
Gregor Kleen
854fa6b968
fix(exam-bonus): fix rounding
...
Fixes #672
2021-02-15 12:55:12 +01:00
Gregor Kleen
0fd7e86695
fix(exam-bonus): avoid divide by zero if all sheets are bonus
...
Fixes #671
2021-02-15 12:28:04 +01:00
Gregor Kleen
1cd79d35e2
feat(minio): use separate bucket for temporary files
2021-02-15 11:44:00 +01:00
Gregor Kleen
1be391f5f5
fix(arc): reduce lock contention
2021-02-11 15:10:36 +01:00
Gregor Kleen
8ecb460f39
fix: unbreak arc
2021-02-10 22:58:01 +01:00
Gregor Kleen
dc5a9fda9d
refactor: hlint
2021-02-10 20:52:17 +01:00
Gregor Kleen
36debd865f
feat: implement in-memory cache for file download
2021-02-10 20:06:59 +01:00
Gregor Kleen
e61b5611b1
fix(jobs): prevent offloading instances from deleting cron last exec
2021-02-10 16:55:27 +01:00
Gregor Kleen
7027a3dd2d
chore: allow AdminCrontabR from any approot
2021-02-09 11:00:51 +01:00
Gregor Kleen
8798f547a6
feat: ensure cached study feature relevance is up to date
2021-02-08 19:53:00 +01:00
Gregor Kleen
5698e9ca0b
fix: restore storting for exam-office exams
2021-02-08 14:35:26 +01:00
Gregor Kleen
03e9f5be56
refactor: switch everything to cached relevant study features
2021-02-04 23:12:27 +01:00
Gregor Kleen
23fdf4af6d
refactor: switch exams list to cached study features only
2021-02-04 11:07:25 +01:00
Gregor Kleen
500b0bba6f
refactor(exam-office): try to make list performance more predictable
2021-02-03 18:26:55 +01:00
Gregor Kleen
f4f95e1494
chore(profiling): restore prof-auto and test build
...
Revert "chore(profiling): switch to prof-auto-top to hopefully fix build"
This reverts commit 07bde5b012 .
2021-02-03 09:06:55 +01:00
Gregor Kleen
09ce1bb035
chore(profiling): remove all newtype-deriv PersistFieldSql instances
2021-02-02 19:48:11 +01:00
Gregor Kleen
c90dcba1a7
chore(profiling): remove all cost centres to hopefully fix build
2021-02-02 18:12:01 +01:00
Gregor Kleen
e0173908b4
chore(profiling): remove -fprof-auto-top to hopefully fix build
2021-02-01 22:45:12 +01:00
Gregor Kleen
90e3965b92
Merge branch 'master' into profile
2021-02-01 19:37:02 +01:00
Gregor Kleen
b814bc094a
refactor(workflows): shared workflow graphs
2021-02-01 17:37:55 +01:00
Gregor Kleen
09fb26f1a8
feat(jobs): batch job offloading
...
BREAKING CHANGE: Job offloading
2021-02-01 09:52:47 +01:00
Gregor Kleen
07bde5b012
chore(profiling): switch to prof-auto-top to hopefully fix build
...
Also build only once, again
2021-02-01 09:26:59 +01:00
Gregor Kleen
cb1e715e9b
fix(workflows): don't cache instance-list empty for correctness
2021-01-29 14:38:40 +01:00
Gregor Kleen
c7c4f50f5b
refactor: hlint
2021-01-27 22:22:12 +01:00
Gregor Kleen
48028c4053
fix: more verbose watchdog notification failures
2021-01-27 20:14:54 +01:00
Gregor Kleen
2c0fc63be1
feat(dbtable): extra representations
2021-01-21 13:22:22 +01:00
Gregor Kleen
500000ba0f
feat(exams): exam sheets
2021-01-18 14:19:02 +01:00
Gregor Kleen
bce2c953e0
chore: bump tests
2021-01-11 16:27:10 +01:00
Gregor Kleen
ae3f2aa703
chore: version bumps
2021-01-11 14:16:39 +01:00
Gregor Kleen
8939a8b90a
fix(tokens): introduce clock leniency and remove start for downloads
2020-12-13 00:36:11 +01:00
Gregor Kleen
13b6fe1db5
chore: setup for profiling
2020-12-12 17:12:50 +01:00