Skip to content

Releases: ucfopen/canvasapi

3.2.0 - 2023-05-25

25 May 14:45
v3.2.0
524bfd7
Compare
Choose a tag to compare

New Endpoint Coverage

General

  • Added support for pagination with metadata when headers are missing (Thanks, @bennettscience)
  • Added support for Python 3.11

Bugfixes

  • Fixed an issue where Course.create_discussion_topic wouldn't accept attachment files.

3.1.0 - 2023-04-21

21 Apr 23:08
v3.1.0
edaf85f
Compare
Choose a tag to compare

New Endpoint Coverage

  • Account Calendars (Thanks, @dmols)
    • List available account calendars
    • Get a single account calendar
    • Update a calendar's visibility
    • Update many calendars' visibility
    • List all account calendars
  • Enrollments (Thanks, @svanderwulp)
    • Accept Course Invitation
    • Reject Course Invitation
  • File (Thanks, @bennettscience)
    • Update File
  • JWTs (Thanks @dmols)
    • Create JWTs
    • Refresh JWTs
  • Moderation Grading (Moderation Set)
    • List students selected for moderation
    • Select students for moderation
  • Query Course Events (Thanks, @dmols)
    • Query by course
    • Query by account
  • Rubrics (Thanks, @bennettscience)
    • Create, Update, and Delete Rubric Assessments
    • Create a Rubric Association
  • Users

General

  • Updated Codecov action to v3

Bugfixes

  • Fixed an issue where kwargs were not passed along to Canvas in Course.get_module(). (Thanks, @bennettscience)
  • Fixed an issue where not all functions allowed arbitrary keyword arguments. Added a test to detect and prevent this for the future.
  • Fixed an issue with Course.get_enabled_features() where it would throw an error trying to paginate. It now returns a list of strings directly. (Thanks, @bennettscience)
  • Added missing docs for AssignmentOverride. (Thanks, @lafent)
  • Fixed a typo in Canvas.create_calendar_event() where an error message improperly listed the missing key as 'context_codes' instead of 'context_code'. (Thanks, @dmols and @mikesuhan)

3.0.0 - 2022-09-21

21 Sep 22:02
v3.0.0
2859820
Compare
Choose a tag to compare

New Endpoint Coverage

General

  • Added support for Python 3.10
  • Smart DateTimes now support any ISO 8601 format, including time offsets. (Thanks, @kailukaitisBrendan)

Bugfixes

  • Fixed an issue where kwargs were not passed along to Canvas in User.get_profile(). (Thanks, @breed)

Breaking Changes

  • Dropped support for Python 3.6
  • Update QuizSubmission.get_submission_events to return a PaginatedList. (Thanks, @stevenbell)
  • Update Course.get_course_level_student_summary_data to return a PaginatedList of CourseStudentSummary items instead of a dictionary. (Thanks, @craigdsthompson)
  • Update Course.get_outcome_results to return a PaginatedList of OutcomeResult items instead of a dictionary. (Thanks, @bennettscience)
  • Remove unnecessary id parameter from delete, reorder_question_group, and update methods in QuizGroup class. (Thanks, @kailukaitisBrendan)
  • Update Submission to return attachments as File objects instead of dictionaries. (Thanks, @laitingsheng)

2.2.0 - 2021-03-25

25 Mar 18:41
v2.2.0
2ac9979
Compare
Choose a tag to compare

New Endpoint Coverage

General

  • Added support for Python 3.9
  • Added RateLimitExceeded exception to distinguish between being rate limited and being otherwise forbidden from accesing a resource. It is a subclass of the Forbidden exception.
  • File uploads now accept path-like objects (Thanks, @theunkn0wn1)
  • Add list of CanvasAPI Projects to README (Thanks, @deundrewilliams)
  • PyPI Package Description now uses README (Thanks, @bennettscience)
  • Replaced Travis CI with GitHub Actions

Bugfixes

  • Fixed an issue where Canvas.create_poll() did not work due to an incorrect parameter.
  • Canvas.get_todo_items() now correctly returns a PaginatedList of Todo items (Thanks, @bennettscience)
  • Fixed an issue where Favorite.remove() did not handle parameters properly. (Thanks, @deundrewilliams)

2.1.0 - 2020-12-04

04 Dec 16:56
v2.1.0
a35fea6
Compare
Choose a tag to compare

New Endpoint Coverage

General

  • Added missing documentation for the get_current_user method and clarifications to the CurrentUser class. (Thanks, @Xx-Ashutosh-xX)
  • Canvas.get_announcement now has a required parameter context_codes, which accepts a list of course IDs or Course objects.
  • Updated contributing guide
  • Added missing documentation for the "Smart DateTimes" feature
  • Added basic troubleshooting guide to documentation

Bugfixes

  • Fixed an issue where an Announcement object sometimes didn't have an associated course ID. (Thanks, @bennettscience)
  • Fixed an issue where an encoding problem could lead to file downloads hanging indefinitely. (Thanks, @blepabyte)

Deprecation Warnings

  • The enrollment_type argument on Course.enroll_user is now deprecated. Pass this information to enrollment[type] as a keyword argument instead. e.g. enroll_user(enrollment={'type': 'StudentEnrollment'})

2.0.0 - 2020-08-14

14 Aug 15:14
v2.0.0
ab1ec27
Compare
Choose a tag to compare

General

  • Added support for arbitrary keyword arguments across the entire library

New Endpoint Coverage

Bugfixes

  • Fixed an issue where Quiz.get_quiz_group incorrectly set course_id to the quiz ID. (Thanks,@hcolclou)
  • Fixed an issue where Course.create_external_tool didn't accept client_id (LTI 1.3 support).
  • Fixed an issue where Module.create_module_item didn't (Thanks,@aileenpongnon and @onomou)
  • Fixed an issue where Page.revert_to_revision would incorrectly always set group_id to the page ID. Now correctly sets group_id or course_id appropriately.

Breaking Changes

  • Course.create_external_tool no longer supports positional arguments for its required parameters. Use keyword arguments instead.

1.0.0 - 2020-07-09

09 Jul 17:29
v1.0.0
Compare
Choose a tag to compare

General

  • Added support for Python 3.8
  • Dropped support for Python 3.4, 3.5, and 2.7
  • Removed all previously deprecated methods and attributes.
  • Upgraded Ubuntu version for Travis (Thanks, @jonespm)
  • Set up automatic deployments to PyPI via Travis
  • Set up nightly build

0.16.1 - 2020-07-06

06 Jul 20:34
v0.16.1
c6b825c
Compare
Choose a tag to compare

Bugfixes

  • Fixed an issue where the user-provided API_URL/base_url wasn't run through cleanup.

Deprecation Warnings

  • Using /api/v1/ in the API_URL has been deprecated since v0.8.0 and legacy support will be removed in the next release. Ensure your provided url doesn't contain api/v1/. See deprecation warning in changelog for v0.8.0.
  • ⚠️ This is the final release with support for Python 3.5 ⚠️

0.16.0 - 2020-06-26

26 Jun 18:08
v0.16.0
42606eb
Compare
Choose a tag to compare

New Endpoint Coverage

General

  • Updated README to use updated parameters for getting a user's courses by enrollment state (Thanks,@Vishvak365)

Deprecation Warnings

  • ⚠️ This is the final release with support for Python 2.7 ⚠️
  • ⚠️ This is the final release with support for Python 3.4 ⚠️
  • This is the final deprecation warning for all methods marked as deprecated in this changelog or in our documentation. They will be removed in the next release.

Bugfixes

  • Fixed an issue where Quiz.get_submission() ignored data added from using the include kwarg. (Thanks,@Mike-Nahmias)
  • Fixed the broken __str__ method on the ChangeRecord class (Thanks,@Mike-Nahmias)
  • Fixed an issue where printing an AccountReport would fail due to not having an ID (Thanks,@Mike-Nahmias)
  • Fixed an issue where "report_type" was passed improperly (Thanks,@brucespang)
  • Fixed some new flake8 issues (Thanks,@dsavransky and @jonespm)
  • Fixed an incorrect docstring for Course.create_page() (Thanks,@dsavransky)
  • Fixed an issue where extra whitespace in the user-supplied canvas URL would break PaginatedList (Thanks,@amorqiu)

0.15.0 - 2019-11-19

19 Nov 17:04
v0.15.0
7d3527d
Compare
Choose a tag to compare

New Endpoint Coverage

General

  • Throw IndexError when using negative indexes on PaginatedList objects (Thanks, @UniversalSuperBox)
  • Assignment.overrides now returns a list of AssignmentOverride objects.

Deprecation Warnings

  • CanvasObject.attributes is now deprecated and will be removed in a future version.
  • CanvasObject.to_json() is now deprecated and will be removed in a future version. To view the original attributes sent by Canvas, enable logs from the requests library.

Bugfixes

  • Fixed an issue where util.clean_headers() would throw a ValueError if a user accidentally included a space in their API token. (Thanks, @keeeeeegan)
  • Fixed an issue where QuizSubmission objects sometimes wouldn't have a course_id, making some methods unusable. (Thanks, @bennettscience)
  • Fixed an issue where get_user() did not accept arbitrary keyword arguments (Thanks, @eriktews)
  • Fixed an issue where an import was triggering a DeprecationWarning (Thanks, @Screeeech)
  • Fixed an issue where a GroupedSubmission wasn't saving the submissions attribute properly