10. Reference

Quick-lookup tables. Everything here is a real limit or format enforced by the platform, not a recommendation.


10.1 File size limits

What you are uploading

Limit

Student programming submission (per file)

20 KB

Instructor “additional file” on a programming activity

20 KB

Student file upload in a lab quiz

No size limit; .pdf, .jpg, .jpeg, .png only

Email recipients CSV / XLSX import

5 MB

Gradebook CSV import

5 MB

Video upload

Chunked automatically above 1 MB; overall cap is set by the course owner’s plan

Course import archive

Chunked automatically in 2 MB pieces

The 20 KB submission limit is the one students hit. Files over it are silently skipped in a bulk ZIP upload and reported afterwards; warn students who submit large data files alongside their code.


10.2 Code execution limits

Defaults applied to student submissions:

C / C++

Python

Java

CPU time

10 s

20 s

15 s

Wall-clock time

10 s

20 s

15 s

Memory

32 MB

48 MB

48 MB

Stack

8 MB

8 MB

8 MB

Child processes

0

0

0

Open files

15

15

15

Output file size

3 MB

3 MB

3 MB

Child processes are 0: a submission that forks or spawns a thread pool will fail regardless of your time limit.

What you may change

Setting

Minimum

Maximum

CPU time / clock time

1 s

240 s

Memory

15 MB

256 MB

Stack

8 MB

64 MB

Language groups are C (C, C++, Simplecpp), Python (Python3), and Java; you set limits per group, not per language.

Output shown to students

Results are truncated at 200 lines or 50,000 characters, whichever comes first, and are labelled as truncated, so a chatty program is still readable.

The limit that actually bites is the output file size in the table above. A program writing more than 3 MB is killed by the sandbox, and the student sees a failure rather than an output problem.


10.3 Attempt limits

Setting

Default

Maximum submission attempts

100

Maximum “run without submit” attempts

100

Students see their remaining counts in a banner, which turns red at 3 or fewer. Exhausting submissions produces a “Maximum Submissions Reached” modal; they cannot submit again.


10.4 CSV formats

Gradebook extra-columns import

First column must be email. Headers define the column:

Header

Creates

Midterm[100]

Number column out of 100

Viva[12.5]

Decimals are permitted

Comments[text]

Text column (max 255 characters)

Attendance

Must match an existing column name exactly

Values --, -, N/A, n/a, NA, na, or blank are skipped, not zeroed.

Full details: §7.7

Gradebook export

email, Name, Roll No,
MB: <item> …, MB Total,
Lab: <item> …, Lab Total,
<ExtraColumn>[100] …, Extra Total

⚠️ The export is not directly re-importable. Import accepts only email, plus columns headed Name[100], Name[text], or the exact name of an existing extra column. The export’s Name, Roll No, MB: and Lab: headers match none of those, and a single unrecognised header rejects the whole file. To round-trip, delete every column except email and your extra columns first.

Email recipients import

  • .csv or .xlsx accepted

  • Must contain a column headed email: anywhere in the header row, not necessarily first

  • CSV must be UTF-8: “CSV file must be UTF-8 encoded.”

  • Offered in the interface to instructors and STAs, not JTAs. The endpoint itself checks only that the account is flagged as an instructor and never verifies a role on this course, so do not treat it as a security boundary (§8.2)

Results are grouped into matched, not enrolled, invalid emails (with row numbers), and duplicates removed. The final step adds matched people as recipients; it does not send anything.


10.5 Quiz question file (SAFE ODT format)

Blocks are separated by a line of = characters.

QUESTION= singlecorrect, MARKS=2, NEG= -1, CATEGORY=easy
What is the capital of France?
OPTIONS=
    A. London
    B. Paris
ANSWER=B
ANSDESC =
Paris is the capital of France

================================================================================

Keyword

Question type

singlecorrect

Single correct answer (radio)

setcorrect

Multiple correct: ANSWER=A, C

numeric

Numeric: ANSWER=42 or a range ANSWER=[0.88,0.89]

fillblanks

Fill in the blanks: BLANKS=n in the header, then one BLANK=text, MARKS=1.5, ANSWER='...' line per blank

paper

Descriptive, graded manually; the student uploads a photo. No ANSWER

text

Same syntax as paper, but the student types into a textbox

module

Groups questions: QUESTION= module, COUNT=2, CATEGORY=General, where COUNT is how many following questions belong to it

Any type except module may take a :var suffix — QUESTION= numeric:var — for a parameterised question whose values differ per student. Variable questions are not allowed inside a module.

⚠️ Questions inside a module can only be edited or deleted from the Module Editor, not from the flat question list.


10.6 Roles at a glance

Capability

INSTRUCTOR

STA

JTA

Create / edit / delete activities, quizzes, and testcases

✅

✅

❌

Add / edit / delete / publish multimedia book content

✅

✅

❌

See hidden activities, solutions, execution settings

✅

✅

❌

Submit on a student’s behalf

✅

✅

❌

Change code execution resource limits

✅

✅

view only

Edit manual marks

✅

✅

✅

Comment on submissions (everyone deletes their own only)

✅

✅

✅

Export lab / activity

✅

✅

✅

See hidden testcases

✅

✅

✅

Access the gradebook

✅

✅

❌

Moderate the discussion forum

✅

✅

❌

Import email recipients

✅

✅

❌

Delete content (with content protection on)

creator only

❌

❌

INSTRUCTOR and STA are otherwise identical. The only distinctions are course ownership and creation, not the role name.

⚠️ This table describes the interface, not enforcement. JTAs are recorded as course “owners” internally, and the permission class behind much of the multimedia book and the quiz endpoints checks only that ownership flag. The JTA exclusions above are applied by the UI; they are not a security boundary.


10.7 Time and scheduling

Setting

Default

Submission grace period after a lab closes

60 seconds

Quiz question attempts

1

Imported labs (available from)

Now

Imported labs (available till)

Now + 365 days

Platform time zone is Asia/Kolkata. All times you enter and see are in that zone.


10.8 Account and session limits

Limit

Value

Concurrent sessions per user

2; a third login ends all others

Session validity

1 week, auto-refreshed while in use

Password

≥ 8 characters, ≥ 1 capital, ≥ 1 special character

Students per course

Set by the course owner’s plan

Courses per owner

Set by the plan

The two-session cap and the one-week token lifetime are separate mechanisms; the token itself carries no per-user count limit.


10.9 Features that are not available

Documented so you stop looking for them.

Not available

Note

Single sign-on / Google login

Backend exists but is disabled; no button is rendered

Site-wide search

The search subsystem is not enabled

Category weighting in the gradebook

Flat unweighted average only

Excel export of grades

CSV only

Quiz Statistics

Shows a “Coming soon” placeholder

Recycle Bin for Other activities

Only Programming activities can be restored; lab quizzes are deleted permanently

Export of Other activities

Lab export covers Programming only

Student Grades V2 view

Feature flag is off in every environment

Certificates and brochures

Show “Coming Soon”

A “Labs” checkbox in the course import dialog

Labs import with a whole-archive import; there is no separate selector


Previous: 9. Analytics and Statistics · Back to: Documentation home