Upcoming Canvas Changes
LTI Developer Update to lis_result_sourcedid: January 6
On January 6, the basic grade passback service LTI parameter will be updated, which historically includes a combination of known information such as course id, tool id, and assignment id. To more closely follow the specification, an opaque ID will be sent for the lis_result_sourcedid passed during assignment launches. LTI tools currently parsing and storing the lis_result_sourcedid will be impacted; although the ID is still required for grade passback, the ID will no longer include identifiable information.
Deprecated Users API Attribute: January 6
On January 6, the deprecated sis_login_id attribute in the Users API will be removed from Canvas. Any applications using the sis_login_id attribute should replace the deprecated attribute with the login_id attribute.
Canvas Login Path POST Requests: January 6
On January 6, the /login path will stop accepting direct POST requests. Any custom LDAP forms should be updated to avoid using this path. Please see the Platform/Integration section for additional details.
In this production release (December 9), the Analytics link has been moved to the Account Navigation Menu for admins. In courses, assignment group settings include an option to move all assignments to another assignment group, and instructors can view a label for inactive enrollments in groups.
For instructors using the New Gradebook, the Grade Detail Tray indicates concluded student enrollments when concluded enrollments are visible.
Canvas customers with Turnitin, Unicheck, Urkund, or Vericite accounts can use a new plagiarism framework in their courses.
Small design updates have been made in the Canvas interface for Collaborations, the Dashboard, and the Rich Content Editor, and Italian is a supported language in Canvas. Other updates have also been made to various APIs and other integration documentation.
Production release notes also include fixed bugs.
Features are subject to change throughout the release based on user feedback and testing. Please follow the release notes for the latest information.
Next release schedule (modified for the upcoming holidays)
Production release notes indicate Canvas updates that will be included with Saturday’s release and are subject to change. However, some features may already be deployed to production as indicated in the release notes. New features may differ from those available in your beta environment. Learn more about the Canvas Release Schedule.
Account-level features are not available in Free-for-Teacher accounts unless otherwise indicated.
Flash Content Reminder: Canvas displays Flash content as supported within major browsers. Microsoft Edge, Safari, Chrome, and Firefox default to HTML5 as the preferred method for displaying website content, which promotes a faster, more secure browsing experience. These browsers will eventually block all Flash content. For best performance in Canvas, course content should be designed to support HTML5. Any affected content can still be accessed by manually allowing permission for flash content in the browser. Using the camera and microphone to record media content within the Canvas Rich Content Editor currently still relies on Flash and is being addressed by Canvas engineers.
At the account level, the Analytics link has been moved from the Course and People page sidebars to the Account Navigation Menu. This link is only viewable to admins who have permission to view account analytics.
The Assignment Group Settings menu includes a Move Content option, which moves all assignment content items in an assignment group to another group. This functionality is designed for consistency with other Move-To menus in Canvas.
Note: Move-To option for assignment groups has been renamed to the Move Group option. This change helps clarify functionality between moving an assignment and moving an assignment group.
When a user selects the Move Content option, the sidebar menu asks the user to select the new assignment group, then select the placement of all assignment group contents. If the Before or After option is selected, the user can select the placement of the assignments collectively within the assignment group.
Any individual assignments that need to be moved within the new assignment group can be moved using drag and drop or using the Move-To option in the assignment's Settings menu.
Instructors can view the inactive label for students within a group. This change helps instructors identify inactive students in a group and move group memberships, if necessary.
In the student Groups page, students can view the names of other students in their same group, even if a student is inactive. However, the inactive status is not identified to students.
Canvas Community contributions: https://community.canvaslms.com/ideas/9723-add-inactive-label-on-the-groups-page
This change resolves a fixed bug in Canvas:
When a student tried to join a self-signup group with a group limit, and the group included an inactive student, the group displayed one fewer member than was actually in the group. If the group was full, the group did not display a lock icon to students indicating the group was full, and attempting to join the group did not retain membership after the page was refreshed. Canvas code has been updated to display all user names in the student signup group and display the full group count to students. For users with instructor roles, the inactive label displays for inactive students.
This update applies to institutions using the New Gradebook. Canvas admins can enable this feature option in Account Settings and enable the New Gradebook on a course-by-course basis. For questions about the New Gradebook, please reference New Gradebook Users Group.
When the New Gradebook displays concluded enrollments, all grades for those enrollments are read only. The Grade Detail Tray cannot be opened for a concluded student. However, if the Grade Detail Tray is open for an assignment and an instructor switches to the concluded student, the Grade Detail Tray displays a message that the student’s enrollment has been concluded.
Canvas customers with Turnitin, Unicheck, Urkund, or Vericite accounts will soon be able to use the new plagiarism framework in their production environments. A few remaining items are being addressed with these vendors and they are currently testing closed beta implementations of the new framework, which must be configured as a LTI tool.
When enabled, the plagiarism framework and configuration allows instructors to enable a LTI assignment to be sent for evaluation within the assignment settings page, and students can submit assignments the same way as other assignment types. When submissions are received, vendors will process the submissions and return the results directly in the Canvas assignment.
Specific questions about the plagiarism framework and a vendor’s integration should be sent directly to the plagiarism vendor. For more information, please reach out to your provider representative.
Small design changes have been made to the following Canvas feature areas:
Italian (Italiano) has been added as an available language in Canvas.
For details about using Canvas API documentation, please see the Canvas API Policy page.
In the Assignments API, the List Assignments endpoint includes the order_by parameter, which determines the order of assignments. Assignments can be ordered by position or alphabetically by name.
The Courses API returns the sis_import_id for a course object. This field is only included if the user has permission to manage SIS information.
In the Discussion Topics API, the List Discussion Topics endpoint supports the title value in the order_by=title parameter, which allows discussions to be ordered alphabetically by title.
The Enrollment Terms API returns the sis_import_id for a term. This field is only included if the user has permission to manage SIS information.
In the Sections API, the Edit Course Section endpoint supports the course_section[integration_id] parameter, which returns the integration ID for a section. This parameter can only be used by users with permission to manage SIS information.
This change involves a deprecation that requires user attention.
The /login path will stop accepting direct POST requests in the 2018-01-06 release. Any custom LDAP forms should be updated to avoid using this path. This completes the restructuring of login paths as noted in the 2015-06-06 release. This behavior only affects institutions with a login form on a non-Canvas page making a POST request to Canvas with a username and password.
For institutions not using Canvas authentication, posting to /login/canvas will not be valid if Canvas authentication is disabled. The URL endpoint must be updated for the authentication type:
In the OAuth2 Documentation, the OAuth2 flow supports the replace_tokens parameter. This value is optional. When enabled, existing access tokens issued for a developer key/secret will be destroyed and replaced with the new token that is returned from the request.
In the SIS Import Format Documentation, the Accounts, Terms, Courses, and Sections CSV files support the integration_id field. This field was previously only documented in the Users CSV file.
The Enrollments CSV supports the user_integration_id field.
In the Courses CSV, the account_id field is sticky.
Account-level tabs indicate focus with a border.
In the Identity Provider menu, focus for each social media option is placed in the heading for each respective option.
Recent announcement table headers are defined for screen readers.
Course Navigation items disabled in Course Settings can be read by screen readers.
For courses that allow self registration, keyboard users can click the Join This Course button and view the course enrollment page.
The User Dashboard page source title has been renamed to Dashboard.
When a discussion is duplicated, focus is retained in the link for the duplicated discussion. When a discussion is deleted, focus is retained in the link of the previous discussion.
The footer links in the Login and Forgot Password pages have an alternative focus indicator. Additionally, the Stay Signed In checkbox indicates active focus with a border.
When a module item is duplicated, focus is retained in the link for the duplicated item. When an item is deleted just below a header, focus is retained in the header’s Settings menu. When an item is deleted elsewhere, focus is retained in the link of the previous item.
The Next button in the Module sequence footer does not display an aria-disabled attribute if the sequence includes additional items.
MathML is not read by screen readers if the Rich Content Editor also includes formulas created as an equation editor image.
YouTube links with no alt text do not display the alt text as undefined.
Changing a video to full-screen mode does not affect the size of video captions.
Selected cells within a table are indicated by a background color.
Rubric criteria are only noted to screen readers as being linked to a learning outcome if an associated link exists.
Navigation links and activity indicators display in high contrast when the High Contrast Mode is enabled in User Settings.
The Act as User page retains focus in the Close button.
In the Discussion Topics API, the Create a new discussion endpoint lists allow_rating as a request parameter.
Explanation: When a user created an API call to create a new discussion, allow_rating was not documented as a request parameter and allows whether or not users can rate entries in the discussion topic. Canvas code has been updated to display allow_rating as a request parameter.
The Enrollments API clarifies that only main account admins can make user-specific enrollment API calls.
Explanation: When a subaccount admin tried to make a user-specific enrollment API call, the call was not able to be completed because user information is housed at the main account level. Canvas code has been updated to clarify the documentation that user-specific enrollment API calls can only be made by main account admins.
When a quiz is changed from graded to ungraded in a course with assignment group drop rules, grades in the Enrollments API match the grades in the Gradebook.
Explanation: When a course with assignment group drop rules included a quiz that was changed from graded to ungraded, the Enrollments API generated stale grades that did not match the grades in the Gradebook. Canvas code has been updated to recompute grades when a quiz is changed.
In the Files API, thumbnail images are deleted when the API file deletion process has been completed.
Explanation: When a user deleted an image using the Files API, the thumbnail for the image was retained in the user’s files. Canvas code has been updated to delete thumbnail images when a file is deleted through the API.
The Submission API does not return a student’s grade when an assignment is muted.
Explanation: When a student used the Submission API to view grades, students were able to view muted assignments. Canvas code has been updated to hide student grades for muted assignments.
Assignment group rules do not allow negative values.
Explanation: When a user created an assignment group rule, clicking the down arrow allowed a negative value to be created for the rule. Canvas code has been updated to not allow negative values.
File Upload submissions previously uploaded to Canvas are associated for all group members.
Explanation: When a student uploaded a file to Canvas and submitted that file as a group assignment file upload, the submission was only associated with the student who submitted the file and not the entire group. Canvas code has been updated to associate previously uploaded files for all members of a group assignment.
Automatically assigned peer reviews distribute peer reviews on the assign date.
Explanation: When an instructor tried to automatically assign peer reviews, the automatic process randomly failed when the assign date was within the next hour. Canvas code has been updated to confirm the assign date for peer reviews and assign them accordingly.
Students in multiple course sections only display once for each assigned assignment.
Explanation: When a student was added to multiple sections, and all those sections were added to an assignment, the student’s name showed up multiple times in the Assign To field. Canvas code has been updated to only display a student’s name once even if they are in multiple sections.
The Submission Details page shows the total point value of an assignment.
Explanation: When a user viewed an assignment, the Submission Details page did not display the total point value for the assignment. Canvas code has been updated to display the total point value field for the assignment.
Calendar dates are ordered by the language selected in Canvas.
Explanation: When a user selected a language that set a different day of the week to begin the Calendar, the days of the week were not updated to reflect the selected language. Canvas code has been updated to display date arrangement consistently according to the language selected in Canvas.
Calendar Scheduler appointment groups can be viewed by all students.
Explanation: When an instructor created a Scheduler appointment group assigned to an entire course, and the same group was also assigned to individual sections in another course, the individual sections overrode the entire course option and did not allow some students to view the appointment group. Canvas code has been updated to display Scheduler appointment groups to all students.
The next available appointment notification matches the date of the next available appointment group.
Explanation: When a student viewed the Scheduler, future availability for appointment groups sometimes displayed a date in the past. Canvas code has been updated to confirm the date of the next appointment group and display the date appropriately.
This change was deployed to the production environment on December 1.
Canvas supports up to 100 users in conversation replies or conversations forwarded to other users.
Explanation: When a user replied to a conversation and added a significant number of additional users, or if the user forwarded a conversation to a significant number of users, Canvas was unable to effectively process the conversation for all users in the group. Canvas code has been updated to only allow 100 users in replies or forwarded conversations. This behavior supports consistency in existing behavior where new conversations with more than 100 users are sent as individual messages to each user.
This change was deployed to the production environment on November 28.
Long conversations do not affect the Conversations interface or require horizontal scrolling to star a conversation.
Explanation: When a user created a long conversation, the user had to scroll horizontally to view the number of replies in the conversation thread or star the conversation. Canvas code has been updated to support the Conversations interface for long conversations.
Google links and embedded files configure correctly when a previously copied course was copied into another course. This change only applies to new course imports with newly added Google LTI integrations or existing integrations that include a new configuration variable.
Explanation: When Google links and embedded files were imported into a course, and then the course was copied into another course, the links were no longer authenticated and displayed a tool misconfiguration message. Canvas code has been updated to maintain Google file configurations in multiple imported courses. Newly added Google LTI integrations include this functionality by default. Existing integrations require the LTI tool to be edited before course copies can be made, as the configuration file must include the following variable: previous_context_ids=$Canvas.course.previousContextIds.
Previous edits to question banks are included in Blueprint course syncs.
Explanation: When a student took a quiz with a question group linked to a question bank in a Blueprint course, the quiz prevented any future Blueprint syncs from updating the question bank questions within the quiz. Canvas code has been updated to always update question banks and show students the most updated version of each quiz question.
Blueprint course syncs do not remove rubric-outcome associations.
Explanation: When a Blueprint course included outcomes linked to a rubric, syncing the Blueprint course removed the rubric-outcome association. Canvas code has been updated to retain rubric-outcome associations within a Blueprint course.
Users can return to the Course Settings page in a Blueprint course from the sidebar.
Explanation: When a user opened a Blueprint course and viewed the Blueprint Associations page or Sync History page, clicking the Done or Close buttons did not close the sidebar and return the user to the Course Settings page. Canvas code has been updated to correctly close the sidebar in the Course Settings page.
Notifications for discussions only display for students if they have been assigned to the discussion.
Explanation: When a student was not included in a differentiated discussion, the student was able to view unread notifications in the dashboard for those discussions. This behavior also occurred when a student was individually assigned to a discussion then later removed from the discussion. Canvas code has been updated to only display notifications to students if they have been assigned to the discussion.
Group discussion peer reviews can only be assigned to users within the same group.
Explanation: When an instructor created a group discussion with automatic peer reviews, Canvas assigned peer reviews to users outside the group. This functionality is separate from intra-group peer reviews, which are allowed as an option in assignments. Canvas code has been updated to only automatically assign peer reviews to users within the same group.
Discussions only display a Last Post date for discussion topics that include replies.
Explanation: When a discussion was created in a course, the Last Post date displayed for discussions even if the discussion did not yet include any replies. Canvas code has been updated to only display a Last Post date for discussion topics that include replies.
For self-enrolled parents in a trust account, parents can view course enrollments as an observer role regardless of the observee’s originating account.
Explanation: When a student’s course was associated with a trust account, and a parent was able to self-enroll for an account in an observer role, parents could only view the courses for an observee if they logged in directly to the account where the course was located. Canvas code has been updated to display all courses for an observee regardless of the course’s originating account.
Instructors restricted to a specific section can only view the grading history for users within the same section.
Explanation: If an instructor can only interact with users in the same section, and the instructor viewed the Gradebook History page, the page displayed all student results regardless of the instructor’s section restriction. Canvas code has been updated to honor section limitations for instructor enrollments and only display grading history for users within the same section.
Courses that include Multiple Grading Periods allow grades to be entered for cross-listed students.
Explanation: When a course included Multiple Grading Periods, and students were cross-listed into the course, the Gradebook did not allow grades to be entered for the cross-listed students. Canvas code has been updated to display and grade submissions for students cross-listed into the course.
If the Gradebook is set to hide student names, student names are still hidden in the assignment’s Submission Details window.
Explanation: When a grader set the option to hide student names in the Gradebook, and the grade opened the individual submission details window from within a grading cell, the student’s name was able to be viewed. Canvas code has been updated to hide student names in the Submission Details window.
Instructors can view the status of inactive students in groups.
Explanation: When a student tried to join a self-signup group with a group limit, and the group included an inactive student, the group displayed one fewer member than was actually in the group. If the group was full, the group did not display a lock icon to students indicating the group was full, and attempting to join the group did not retain membership after the page was refreshed. Canvas code has been updated to display all user names in the student signup group and display the full group count to students. For users with instructor roles, the inactive label displays for inactive students.
Module items display the same height with or without due dates.
Explanation: When a module included a graded assignment without a due date, the module item displayed a smaller height than module items that included due dates. Canvas code has been updated to retain the same height for module items with or without due dates.
The Settings menu for a module item can be opened with one click in Internet Explorer 11 and Edge browsers.
Explanation: When a user accessed Canvas using Internet Explorer 11 or Edge and tried to open the Settings menu for a module item, the user had to click the menu multiple times before the menu would expand. Canvas code has been updated to open the Settings menu with one click in Internet Explorer 11 and Edge.
Newly added module items include the Next and Previous buttons in the modules progression bar.
Explanation: When a new assignment, quiz, discussion, or page was created in a course and added to a previously existing module, the new item did not include the Next and Previous buttons in the modules progression bar. Canvas code has been updated to display Next and Previous buttons for newly added module items.
The New Gradebook can be exported as a CSV file.
Explanation: When a user tried to export the New Gradebook as a CSV file, the New Gradebook generated an error message. Canvas code has been updated to correctly export the New Gradebook.
The New Gradebook loads all users and context.
Explanation: When the New Gradebook submissions loaded before the assignment groups, the New Gradebook failed to populate. Canvas code has been updated to manage content loads to display all Gradebook users and context.
The Sync Grades to SIS option is only visible for institutions with a student information system integration.
Explanation: When a user viewed the Actions menu in the New Gradebook, the Sync Grades to SIS option displayed whether or not an institution was using a student information system. Canvas code has been updated to only display the Sync Grades to SIS option for institutions with a student information system integration.
Student Context Cards can be used in the New Gradebook.
Explanation: When an institution had enabled the Student Context Card feature option, context cards were not able to be viewed in the New Gradebook. Canvas code has been updated to support Student Context Cards in the New Gradebook.
The Total Grade column is persistent when moved to the front of the Gradebook.
Explanation: When a user moved the Total Grade column to the front of the Gradebook, the column would return to the end of the Gradebook when the page was refreshed. Canvas code has been updated to make the Total Grade column persistent with its placement.
Discussion table formatting is preserved in notification emails.
Explanation: When a user received a notification about a discussion that included a table, the email formatting did not retain some of the HTML formatting. Canvas code has been updated to preserve table formatting in notification emails.
Email notification footers note that attachments are not supported in external replies.
Explanation: When a user received a notification outside of Canvas and tried to reply to the notification with an attachment, attachments were not included with the reply. Canvas code has been updated to include a note in notification footers that attachments are not supported in external replies. Replies that require an attachment must be sent directly within Canvas.
The All Submissions notification for instructors and admins does not include submissions and resubmissions for quizzes.
Explanation: When an instructor admin enabled the All Submissions notification, quiz submissions and resubmissions were not included. Canvas code has been updated to indicate that quizzes are not included in the All Submissions notification.
Quiz titles in the User Access Report are updated if the title of the quiz is changed.
Explanation: When a user changed the title of a quiz, and a student accessed the quiz, the updated title was not reflected in the User Access Report for the student. Canvas code has been updated to reflect any changes to quiz titles in the User Access Report.
Admins can add assignment groups and enable assignment group weighting without the Manage Courses permission.
Explanation: When an admin tried to add an assignment group in a course, and the admin did not have permission to manage courses, the admin could not create the assignment group. Canvas code has been updated to allow admin roles to add assignment groups without the Manage Courses permission.
Changes to a user’s enrollment status can be viewed automatically without refreshing the page.
Explanation: When Profiles were enabled for an account, and a user’s enrollment status was changed, the page had to be refreshed before the enrollment change was reflected in the page. Canvas code has been updated to display changes to a user’s enrollment without refreshing the page.
All outcomes in a course can be aligned to a question bank.
Explanation: When a user created a quiz and aligned a question bank to an outcome, only the first 10 outcomes were displayed, and the remaining outcomes could not be accessed until any outcomes group folder (if available) was viewed. Canvas code has been updated to display all outcomes in a course to align to a question bank.
Instructors in a course with more than 100 students can use the Message Students Who option in a quiz.
Explanation: When an instructor in a course with more than 100 students tried to use the Message Students Who option, the message was not sent. This behavior did not affect the Message Students Who option in the Gradebook. Canvas code has been updated to message more than 100 students from a quiz.
Files added with a LTI tool use the name of the file for the link.
Explanation: When a user entered and highlighted text into the Rich Content Editor and then selected the option to add a file to the Rich Content Editor using a LTI tool, the link inherited the highlighted text as the filename instead of using the name of the selected file. Canvas code has been updated to use the selected filename for links added with a LTI tool.
Editing a quiz with at least 26 questions does not insert the MathML attribute into questions that contain an equation.
Explanation: When a quiz included more than 26 questions, and a user edited a question that contained an equation, the data MathML attribute was inserted as an image tag. In copied courses, the image HTML rendered as plain text.
Users can reply to a discussion even after canceling a previous reply.
Explanation: When a user replied to a discussion but canceled the reply before it was saved, the Rich Content Editor did not display if the user tried to reply to the discussion again. Canvas code has been updated to display the Rich Content Editor for any discussion reply, even if a previous reply had been canceled.
Images in tables are displayed according to their actual size.
Explanation: When a user included a table with images and text in the Rich Content Editor, typing additional text caused the images to continuously appear smaller until the page was saved and displayed the actual image size. Canvas code has been updated to display images in tables according to their actual size.
New page links created through the Content Selector with special characters can be viewed in Canvas mobile apps.
Explanation: When a user clicked the option to create a link to a new page, and the page title included a space or other special character, the special character escaped the page title and broke the link when viewed in the Canvas mobile apps. Canvas code has been updated to not escape special characters in page titles and retain page links.
SpeedGrader updates and persists the grading status for each student.
Explanation: When an instructor selected the option to sort students by submission status, students who received a grade during the SpeedGrader session no longer displayed the graded submission icon once an instructor navigated to another student. Additionally, moving to the next student’s submission temporarily updated that student’s grading status, even when the instructor had not yet entered a grade. Canvas code has been updated to update and persist the grading status for each student.
When a rubric is used for grading and saved in SpeedGrader, SpeedGrader only creates one assessment result.
Explanation: When an instructor used a rubric for grading and clicked the Save button, clicking the Save button multiple times created multiple assessments listed for the same instructor. Canvas code has been updated to disable the Save button until SpeedGrader has processed the rubric assessment for the student.
If instructors choose to view a specific section in SpeedGrader, Canvas generates an error message if students cannot be found in the section.
Explanation: When an instructor selected the option the show all sections in the student list, SpeedGrader generated an incorrect error message stating that no students could be found in a section. This behavior occurred even if the instructor had selected the option to view all sections. Canvas code has been updated to fix section loading in SpeedGrader.
The Theme Editor displays an informational icon for multiple active themes containing the same values.
Explanation: When an admin created a new theme based on the current theme and saved the theme without any changes, both themes displayed as the current theme for the account. Canvas code has been updated to display an informational icon for multiple active themes containing the same values.
Unauthenticated users do not view a different theme shown to authenticated users.
Explanation: When an unauthenticated user viewed a public course, mobile CSS was overriding the global CSS in a theme. Canvas code has been updated to display the same theme to both unauthenticated and authenticated users.
For users in a trust account, account admins can only view user page views for course activity within the same account.
Explanation: When a user participated in courses associated with a trust account, any page views for the user’s course activity would only display within the user’s original account. Canvas code has been updated to show page views to admins for course activity within the admin’s same account.