Skip to content

v2.10.0: LTI Integration, Generalized Feedback, and Streaming Output

Compare
Choose a tag to compare
@michellexliu michellexliu released this 13 Jan 17:32
· 277 commits to master since this release
67f6644

Breaking Changes

  • Table migrations needed due to schema changes for new features
  • Upgrade of old gems
  • A new required config file config/lti_settings.yml has been added for LTI integration. This is also required to be done manually for the docker-compose installation as well. Please initialize the file by running
cp config/lti_settings.yml.template config/lti_settings.yml

New Features

LTI Integration

#1635, #1649, #1657, #1678
Autolab now supports roster syncing with courses on Canvas and other LTI (Learning Tools Interoperability) services. For full instructions on setup, see the documentation.
image

Once a course is linked, instructors can go to [Course] > Manage Course > Manage Course Users to refresh the roster:
image

Instructors can also edit "Linked Course Settings" to configure whether or not to auto-drop students who are not enrolled in a linked course.
image

Streaming Output

#1622, #1645, #1671, #1679, Tango #223, Tango #225

Updated feedback interface

image
The feedback interface now features a two-column panel for displaying feedback. The left-hand side features the autograding output as well as a status (Queued, In-Progress, or Completed) badge, and the right-hand side features a results panel, with the student's scores for a submission.

Partial Output

image
Submissions being graded are now clickable with a clock icon rather than a plaintext dash. Once clicked, partial output from Tango can now be viewed on the feedback page as a submission is being graded. Partial feedback will be updated when the user clicks on the refresh icon.
image

Assignments that have been added to the autograding queue, but haven't started grading yet will be displayed as such:
image

Generalized Feedback

#1617, #1629
image
Instructors and CA's are able to leave "general" feedback on each problem, not tied to any specific line number or file. These can be accessed by pressing the plus button next to a problem header.

image
Once added, the general feedback comments will be displayed with a badge indicating the number of points. When hovered over, they can be edited or deleted.

Improvements

Grading

#1658 - Correctly display orphaned annotations on the viewFeedback page
#1643 - Don't mark error-initialized scores as graded by autograder
#1639 - API endpoints to create problems and query/update scores for an assessment
#1618 - Positive grading for assessments
#1617 - Filename, line number, better collapsibility for annotations
#1610 - Allow linebreaks in remarks; new UI for remarks in viewFeedback
#1590 - Fix order of annotations on feedback view and file view to be consistent
#1660 - Annotations Improvements:
New features

  • Display current max score on edit problem page
  • Add problem max score to annotation panel
  • Allow multiple annotations per line

Breaking changes

  • Make shared comments operate on a per-problem basis

Others

  • Optimize performance of updating grades and annotation panes

Metrics

#1655 - Export metrics to CSV
#1651 - Ability For Instructors to Enable Student Metrics for Course Assistants
#1630 - Exclude dropped students from watchlist during refresh and updates

Roster

#1640 - bulk import & assign roles to users from emails
#1637 - Add course number column to roster
#1585 - Standardize roster upload tables
#1580 - Mononym support

UI Improvements

#1633 - Refactor manage course statistics table
#1631 - Remove extraneous span padding on metrics page
#1626 - Rework watchlist top button visibility, allow student names to be copied
#1624 - Make submission summary fill up space
#1615 - Hide view writeup button when no writeup exists
#1609 - Compact submission history, increased visibility of "see all submissions"
#1607 - Make attachment uploads more understandable, indicate if attachment is unreleased
#1606 - Overflow scroll within feedback div instead of flow through entire page
#1602 - Improved formatting of handin history page
#1601 - Updated heading sizes
#1598 - "Beautify" user profile

Other

#1672 - Catch invalid assessment config on import assignment tar
#1662 - Allow admins to edit school and major of users
#1638 - Check for handin file type when uploading file to assignment
#1623 - Show revised due date for manage extensions
#1619 - Extension support for non-english names
#1592 - Update extension functionality
#1587 - Add reset layout button to student view of speedgrader

Bug Fixes

#1647 - Fix codebox highlighting after switching files
#1621 - Fix annotation switching problems not updating score
#1660 - Prevent selection of autograded problems when editing annotation, persist shared comments checkbox for global annotations, preserve newlines in descriptions, add handling for nil problem max_score
#1620 - Force flatpicker interface for date/datetime picker on mobile
#1616 - Use correct files list for sorting annotations when viewing an archive
#1614 - Show only one download option in assessment submission summary
#1613 - Retry loading file viewer with new header position when render error occurs
#1596 - Make grades section scrollable, delete unnecessary headings in speedgrader
#1595 - Fix enroll student for existing students
#1589 - Remove possibility of having a submission time in the future when bulk importing grades
#1588 - Parameterize category names for metrics allowlist
#1584 - Fix creation of missing submissions
#1579 - Fix remarks for annotations on autograder support

Security Advisories

File disclosure via remote handin feature
RCE via MOSS functionality