plom-finish

Plom script for post-grading tasks.

usage: plom-finish [-h] [--version]
                   {status,csv,reassemble,webpage,solutions,rubric,audit,clear}
                   ...

Positional Arguments

command

Possible choices: status, csv, reassemble, webpage, solutions, rubric, audit, clear

Named Arguments

--version

show program’s version number and exit

Sub-commands

status

List progress and which tests that have been completed.

plom-finish status [-h] [--dangling-check] [-s SERVER[:PORT]] [-w PASSWORD]

Named Arguments

--dangling-check

Check for “dangling pages” that are attached papers that are not completely scanned. This can be slow for 1000s of papers so is disabled by default.

Default: False

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

csv

Create a spreadsheet of grades named “marks.csv”.

plom-finish csv [-h] [-s SERVER[:PORT]] [-w PASSWORD]

Named Arguments

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

If grading is not yet complete, the spreadsheet contains partial info and any warnings so far.

reassemble

After papers have been ID’d and marked, this command builds PDFs to return to students. A special case deals with the online-return of papers that were marked offline (before scanning).

plom-finish reassemble [-h] [--skip-existing] [--tmpdir TMPDIR] [--ided_only]
                       [-s SERVER[:PORT]] [-w PASSWORD]
                       [testnum]

Positional Arguments

testnum

Which test number to reassemble or omit to reassemble all papers.

Named Arguments

--skip-existing

If a file already exists, don’t rebuild it. Careful: does not check if the file is out of date! Thus turned off by default.

Default: False

--tmpdir

By default, we use OS-provided temporary space for downloads. You can override that. Then its your reasponsible to clean up. Caution: its undefined whether two runs will reuse the images etc, although currently it probably downloads them again (because they could have changed).

--ided_only

Reassemble PDF files for ID’ed (but offline-graded) papers.

Default: False

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

webpage

Prepare HTML page for return using out-of-band per-student secret codes.

plom-finish webpage [-h] [--solutions] [--hex] [--digits N] [--salt SALT]
                    [-s SERVER[:PORT]] [-w PASSWORD]

Named Arguments

--solutions

Add a ‘get solutions’ button to the return website.

Default: False

--hex

Use a string of hexadecimal instead of decimal digits for the secret codes. More secure but may cause problems if you use certain Canvas workarounds to distribute the codes.

Default: False

--digits

Length of the secret code. Defaults to 9.

Default: 9

--salt

Instead of random codes, use a hash of the student ID, salted with the string SALT. The codes will then be reproducible by anyone who knows this string (and the student IDs). As its susceptible to offline attacks, a longer string is recommended: you can put quotes around a phrase e.g., –salt “Many a slip twixt the cup and the lip”.

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

The webpage will be in codedReturn and the secret codes in return_codes.csv.

There may be scripts in share/plom/contrib to assist with distributing the secret codes.

This command must have access to the results of reassemble.

solutions

If all solution images present, then this will build individualised solution PDFs for the students (based on the particular q/v of their test.

plom-finish solutions [-h] [-m] [-s SERVER[:PORT]] [-w PASSWORD] [testnum]

Positional Arguments

testnum

Build a solution for this particular test, or omit to reassemble solutions for all identified and marked papers.

Named Arguments

-m, --mark

Watermark the solutions with the student number.

Default: False

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

rubric

Download list of rubrics as json and the test-rubric use matrix (indexed by test-number and rubric-key) also as json.

plom-finish rubric [-h] [-s SERVER[:PORT]] [-w PASSWORD]

Named Arguments

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

audit

Download an audit of all files + bundles used. Saved as ‘audit.json’.

plom-finish audit [-h] [-s SERVER[:PORT]] [-w PASSWORD]

Named Arguments

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

clear

Clear “manager” login after a crash or other expected event.

plom-finish clear [-h] [-s SERVER[:PORT]] [-w PASSWORD]

Named Arguments

-s, --server

Which server to contact, port defaults to 41984. Also checks the environment variable PLOM_SERVER if omitted.

-w, --password

for the “manager” user, also checks the environment variable PLOM_MANAGER_PASSWORD.

See help for each subcommand or consult online documentation for an overview reassembling and returning work to students.

Most subcommands communicate with a server, which can be specified on the command line or by setting environment variables PLOM_SERVER and PLOM_MANAGER_PASSWORD.