berkeley-cs162 / ob2 Goto Github PK
View Code? Open in Web Editor NEWAn autograder and grade database for GitHub-based courses
License: BSD 2-Clause "Simplified" License
An autograder and grade database for GitHub-based courses
License: BSD 2-Clause "Simplified" License
Once github3.py merges sigmavirus24/github3.py#911 and releases that fix, we can upgrade github3.py. That should fix another bug in github3.py that causes add_collaborator to return False even if adding a collaborator succeeds. Someone should review/revert commit 0013444 when we do upgrade, since that very ugly workaround probably won't be necessary anymore.
Currently, slip days are calculated statically, meaning the data is hard written into a database. This only gets updated when a student makes a new submission.
This is problematic when we want to retroactively give a student an extension (i.e. after they have already completed the assignment). From the student's perspective, it shows they've used slip days even though the deadlines are not like that.
A possible issue that might arise from this is calculating slip days for projects. Every semester, there are students who change project groups due to dropping group members, so this may affect that. A fool proof way of dynamic slip day calculation would be to take a student's most recent submission that is affiliated with them (i.e. instead of associating with a specific group).
Some students don't receive repo invites at all when they sign up for the autograder. Currently unsure why this is happening or what group of students this happens to.
The following is the log from journalctl
that for a student that did not receive an invite.
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: Traceback (most recent call last):
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: File "/work/cs162/ob2/ob2/util/resumable_queue.py", line 107, in run
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: self.process_job(operation, payload)
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: File "/work/cs162/ob2/ob2/repomanager/__init__.py", line 18, in process_job
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: _assign_repo(*payload)
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: File "/work/cs162/ob2/ob2/util/github_api.py", line 112, in _assign_repo
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: "Unable to add member %s to %s" % (repr(member), repr(fq_repo_name))
Jan 18 17:12:56 cs162 run-autograder.sh[95713]: AssertionError: Unable to add member 'awang193' to 'Berkeley-CS162/student376'
See https://piazza.com/class/kyb0uwsl9mj4oj?cid=16_f3 for students who are having this issue.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.