Releases: redkyn/assigner
Assigner 3.1.2
This release changes the default Canvas column used for the git backend (i.e., Gitlab) username to login_id
. It also adds a flag, --username-column
to canvas import
to override this default if necessary.
In addition, exception handling is once again improved, and we are now looking for bug reports if unexpected exceptions arise!
Assigner 3.1.1
This release fixes a bug with assigner commit -S
where changes staged for commit were not actually committed. We also officially support Python 3.9!
Assigner 3.1.0
This release adds some improvements to the assigner score
workflow. assigner commit
now features a -S
option to sign its git commits with your gpg key, allowing you to commit improvements to the CI files after an assignment has been created. A couple minor bugs have also been fixed.
Assigner 3.0.0
This release features a brand new score
command that lets you upload scores from an auto-grader to Canvas! It also features a few updates to various bits of documentation.
Assigner 2.0.2
This release is a bugfix: Assigner can now properly parse the timestamps returned by Gitlab when running assigner status
.
Assigner 2.0.1
This release is a bugfix: if your terminal could only display ASCII characters, Assigner would rudely throw an exception and exit. It now gracefully falls back to using vintage ASCII art when Unicode can't be used.
Assigner 2.0.0
There's a lot in this release! Most exciting is the commit
and push
commands which allow you to modify student repositories, for example to add a gradesheet to submitted assignments.
There are also a handful of papercuts that have been fixed, a few bugs, and some under the hood refactoring to make future modifications easier. Enjoy!
Changes from 1.2.0:
- Added 'commit' command to commit changes to student repos
- Added 'push' command to push commits to student repos
- Retry clones that fail with 'Connection reset by peer' using exponential backoff
- Offer to create GitLab group in
assigner init
- Version configuration; automatically upgrade old configs to latest version
- Make GitLab backend configuration generic
- Tidy up progress bars with logging output
- Test all supported python versions (3.4-3.7) automatically
- Added
BackendBase
,RepoBase
,StudentRepoBase
, andTemplateRepoBase
. - Base Repos are now called Template Repos.
- Separated Gitlab backend from most of the code. Added Base implementations for Gitlab.
- Added
requires_backend_and_config
decorator with backend config option to load the desired backend. - Renamed
config_context
decorator torequires_config
. - pyflakes 1.6.0 upgrade for type annotations fixes.
- Improved canvas error handling.
Assigner 1.2.0
This version primarily provides some performance improvements that make operating on large rosters much faster -- we're seeing about a 50% speedup in our testing. These improvements should also reduce TLS handshake errors.
We've also added a few UI tweaks: assigner status
prints each student's branch names on their own line and there's now a --version
flag!
Changes from 1.1.1:
- Branch names are shown each on their own line in
assigner status
to make output more legible - Send GitLab authentication token in HTTP header rather than request parameters
- Print informative message if
git
is not installed - Use a shared HTTPS session for API calls to speed up operations
- Add
--version
flag to Assigner
Assigner 1.1.1
Version 1.1.0 introduced a bug where assigner get
failed to clone new repositories. That bug is now fixed.
Assigner 1.1.0!
We've added a --open
flag to assign
which assigns and opens assignments in one step. It's handy for assigning homework to new students who added the class after the assignment was posted.
We've also fixed a bug where attempting to open
an assignment twice for a student resulted in an exception.
Changes from 1.0.0:
- Warn when an assignment is already open for a student when running
open
- Calling
assign
with the--open
flag assigns and opens an assignment in one step - Removed remaining lint as specified by pylint.
- Removed old baserepo standalone code.
- Added Travis CI config for pylint and pyflakes.
- Added unittest scaffolding with nose
- Added
AssignerTestCase
, tests forassigner
,assigner get
, and all--help
uses.