o
Handin lists will be cleared; assignment will now be considered to be "on time."
l
List of on-time submissions will be created; assignment will now be considered "late."
n
All lists will be generated; assignment will no longer be accepted.
X
o is run, the directory /u/csXXX
/handin/X
is created if it does not already exist. For students to be able to submit files, the file .subfiles
must exist in the aforementioned directory. Students will only be able to submit those files listed in .subfiles
. The structure of this file is one file name per line, with glob patterns like *.cpp
allowed (which would allow students to submit any file ending in .cpp
).
This script is designed so that it is valid to run it with any mode, regardless of the existing state of the assignment. For example, if there is only one deadline, with no late submissions whatsoever allowed, deadline may be run once only, with a mode of "n" at that single deadline, and it will correctly switch the assignment from being on-time to completely closed. Similarly, if it is decided for whatever reason to resume accepting on-time submissions for an assignment after the on-time deadline has passed, running deadline with a mode of "o" will correctly re-open on-time submissions and remove all record of lates associated with the assignment.
Normally this script is run from the command line to set up the assignments, and from a crontab file at the deadline or deadlines. It is recommended to set the time to about 5-10 minutes after the deadline in the crontab file to allow for any minor machine clock discrepancies (and just to be nice).
Reminder: To edit a crontab file, use crontab -e. Make sure that you use the same server consistently and that you choose a CPU server; hopefully this will be documented somewhere obvious on your course account (and if not, you should be sure to do this).
Tip: If your course allows resubmits, probably the best way to allow this is by creating an assignment called Xresubmit
or something similar, where X
is the original assignment. Do this by using the deadline command. Doing so will make things easier for both you and the students. If your course is going to create automatic late assignments as a mechanism for handling cases where submit becomes unavailable to the students, then use the command makelateclone instead of deadline.