Roster

Timeline
Login

Timeline

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

50 most recent check-ins

2026-08-19
18:26
When removing a user's system account, use `userdel` instead of `deluser`, as the latter has a bug when deleting users with hyphens in their user names (or their group names, or if they're in a group *with* a user with a hyphen...) leaf check-in: 0ef955fd9b user: andy tags: trunk
18:26
Removed a redundant warning from the `verify` command. check-in: 79361bee07 user: andy tags: trunk
18:25
Added a new `run` utility function to run a shell command but print a message if it fails. check-in: 9316522a3b user: andy tags: trunk
2026-08-17
23:06
Added support for the `block_student_vscode` config option which, if True, blocks student users from using the VSCode Remote SSH extension to access the server. check-in: b3fda0fe83 user: andy tags: trunk
23:06
In `roster verify` check if disk quotas are enabled, and if they are, check each student user for their quota. check-in: ea30857d36 user: andy tags: trunk
23:05
Added some utility functions for detecting support for disk quotas. check-in: e8eb5dfbe4 user: andy tags: trunk
23:05
Added a stub function for setting a user's disk quota (not currently implemented/used) check-in: 0e5aa07f65 user: andy tags: trunk
23:04
Removed the old, unused text formatter. check-in: a74c6b86f6 user: andy tags: trunk
23:04
Fixed a query to not error out if a user does not exist in the database (but does exist on the system). check-in: c72ee8f3c5 user: andy tags: trunk
23:03
Clarified language of some command-line options. check-in: e674fcb5b9 user: andy tags: trunk
2025-08-18
19:23
Adding missing imports. check-in: 47e7977919 user: andy tags: trunk
17:01
Make the email address a required argument to the `add` command. check-in: 0651710c69 user: andy tags: trunk
17:00
When creating a student user, create their ~/.gitconfig file populated with their full name and email address (so that git doesn't complain when run). check-in: 19eae07fe1 user: andy tags: trunk
2024-08-26
15:13
Fix the `list sections` command. check-in: a145a93fa6 user: andy tags: trunk
15:13
Add help text for the add-instructor command. check-in: ab6d071d8b user: andy tags: trunk
2024-08-25
23:33
Commit transaction after changing the current semester. check-in: bd401581e4 user: andy tags: trunk
23:29
TODO updates. check-in: cf5744e2dc user: andy tags: trunk
23:29
Fixed username creation for students whose names include an apostrophe (e.g., O'Connell). check-in: 2dbe1a202c user: andy tags: trunk
23:28
Added a method to run a shell command while ignoring its exit status. check-in: 7ce7ccf4a3 user: andy tags: trunk
23:27
Try to kill processes running by a user before removing their user account. check-in: fe4271eda9 user: andy tags: trunk
2024-08-23
21:54
Don't use cursor after closing it. check-in: 1734708ca1 user: andy tags: trunk
21:50
More work on the `purge --old` command, although it still doesn't work. check-in: 09c5acf593 user: andy tags: trunk
21:50
Added the global -v/--verbose flag, to enable printing of some extra information. check-in: cfcf63aaee user: andy tags: trunk
21:50
Added the set_semester() function. check-in: 4721e036e3 user: andy tags: trunk
21:49
Enabled the backup command. Added the set-semester command to change the current semester. check-in: 6909e4bdbf user: andy tags: trunk
2024-03-07
17:08
Added preliminary sorting by external columns (currently only works on displayed columns). check-in: 6cb7405a13 user: andy tags: trunk
04:42
Make the `list` command use `\n` as its line terminator (the CSV module defaults to \r\n). check-in: f46bc22688 user: andy tags: trunk
04:42
Removed the old Colors class. check-in: b09c6acf22 user: andy tags: trunk
04:41
Consistent formatting. check-in: 6e437afa77 user: andy tags: trunk
04:41
Be consistent in using the `cmd` variable. check-in: a123aadc50 user: andy tags: trunk
2024-02-07
17:30
Replace use of TRUE in queries with 1 to be compatible with older versions of SQLite. check-in: 2181049e24 user: andy tags: trunk
17:18
Fixed the help message for the `sql` subcommand. check-in: 0b15751209 user: andy tags: trunk
2024-02-06
23:51
In `list students --unenrolled`, ignore the `instructor` condition because unenrolled students all have their instructor as NULL. check-in: a2635037d0 user: andy tags: trunk
23:44
Started work on `import --update` and the `update` command. check-in: 8da28b5f46 user: andy tags: trunk
17:20
Added support for --unenrolled. check-in: 6d2ca5301c user: andy tags: trunk
17:19
Allowed the --table, --sort, --sort-desc arguments to appear before or after the sub-subcommand. Added support for `list student --unenrolled`. check-in: 8ff44b420d user: andy tags: trunk
00:30
Added `list students` columns for `du` (total home directory size). `userhome` and `lastlog` are now implemented via the new extensible ExternalColumn class. Query the list of column names from the `query` module (which includes the names of the ExternalColumns). check-in: cd3e3097fb user: andy tags: trunk
2024-02-03
20:56
Fixed a bug where the --table option on `list instructors` and `list sections` would print 0 results. check-in: 814c92d46c user: andy tags: trunk
20:56
Function call formatting. check-in: f9f51b7ebb user: andy tags: trunk
2024-02-02
00:03
Added the `--table` option to `list`. Added the `lastlog` column to `list students`, gives the last login time of that user. check-in: 104ac6f97e user: andy tags: trunk
00:03
Allow wrapping with screen widths greater than 80 cols. check-in: 7b6c368bf6 user: andy tags: trunk
2024-02-01
22:14
Tweak to the way `list students`/`run` computes columns internally, to make it easier to display output as tabular rather than CSV. check-in: a14396be7b user: andy tags: trunk
22:03
Made whoami use the CSV writer for its output. check-in: 5489299996 user: andy tags: trunk
19:45
Fixed a bug where `add` would show '<builtin function>' instead of the student's ID number (the password and ID were being stored correctly internally, only the display was wrong). check-in: c89293ee13 user: andy tags: trunk
17:21
Started on the test suite. check-in: a9dd87f510 user: andy tags: trunk
17:13
TODO updates. check-in: 88d6998f52 user: andy tags: trunk
16:53
If a command needs root and we're not root, print an error message and exit; don't run the command. check-in: 6f41353162 user: andy tags: trunk
16:52
Marked commands that need root, as needing root. check-in: 90be4a82ba user: andy tags: trunk
16:47
Formatting. check-in: 80fe9037d2 user: andy tags: trunk
2024-01-31
22:36
TODO updates. check-in: ceef0ec759 user: andy tags: trunk