codegrade 16.1.70__tar.gz → 16.1.73__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (591) hide show
  1. {codegrade-16.1.70 → codegrade-16.1.73}/PKG-INFO +1 -1
  2. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/__init__.py +1 -1
  3. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/client.py +2 -2
  4. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/__init__.py +6 -0
  5. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/all_site_settings.py +10 -0
  6. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_perm_map.py +15 -0
  7. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_permission.py +1 -0
  8. codegrade-16.1.73/codegrade/models/first_day_of_week_from_locale_setting.py +56 -0
  9. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/frontend_site_settings.py +41 -0
  10. codegrade-16.1.73/codegrade/models/output_viewer_auto_expand_failed_steps_setting.py +57 -0
  11. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/site_setting_input.py +10 -0
  12. {codegrade-16.1.70 → codegrade-16.1.73}/pyproject.toml +1 -1
  13. {codegrade-16.1.70 → codegrade-16.1.73}/setup.py +1 -1
  14. {codegrade-16.1.70 → codegrade-16.1.73}/README.md +0 -0
  15. {codegrade-16.1.70 → codegrade-16.1.73}/cg_dt_utils/__init__.py +0 -0
  16. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/__init__.py +0 -0
  17. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/_just.py +0 -0
  18. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/_maybe.py +0 -0
  19. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/_nothing.py +0 -0
  20. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/_type_helpers.py +0 -0
  21. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/cg_maybe_plugin.py +0 -0
  22. {codegrade-16.1.70 → codegrade-16.1.73}/cg_maybe/utils.py +0 -0
  23. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/__init__.py +0 -0
  24. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_any_value.py +0 -0
  25. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_base.py +0 -0
  26. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_convert.py +0 -0
  27. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_enum.py +0 -0
  28. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_form.py +0 -0
  29. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_lazy.py +0 -0
  30. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_list.py +0 -0
  31. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_literal.py +0 -0
  32. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_mapping.py +0 -0
  33. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_multipart.py +0 -0
  34. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_nullable.py +0 -0
  35. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_parse_utils.py +0 -0
  36. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_query.py +0 -0
  37. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_rich_value.py +0 -0
  38. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_set.py +0 -0
  39. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_swagger_utils.py +0 -0
  40. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_swaggerize.py +0 -0
  41. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/_utils.py +0 -0
  42. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/exceptions.py +0 -0
  43. {codegrade-16.1.70 → codegrade-16.1.73}/cg_request_args/request_args_plugin.py +0 -0
  44. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/__init__.py +0 -0
  45. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/about.py +0 -0
  46. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/assignment.py +0 -0
  47. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/auto_test.py +0 -0
  48. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/comment.py +0 -0
  49. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/course.py +0 -0
  50. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/course_price.py +0 -0
  51. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/file.py +0 -0
  52. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/git_provider.py +0 -0
  53. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/group.py +0 -0
  54. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/group_set.py +0 -0
  55. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/login_link.py +0 -0
  56. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/lti.py +0 -0
  57. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/notification.py +0 -0
  58. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/oauth_provider.py +0 -0
  59. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/oauth_token.py +0 -0
  60. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/permission.py +0 -0
  61. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/plagiarism.py +0 -0
  62. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/role.py +0 -0
  63. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/saml.py +0 -0
  64. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/section.py +0 -0
  65. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/site_settings.py +0 -0
  66. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/snippet.py +0 -0
  67. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/sso_provider.py +0 -0
  68. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/submission.py +0 -0
  69. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/task_result.py +0 -0
  70. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/tenant.py +0 -0
  71. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/transaction.py +0 -0
  72. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/user.py +0 -0
  73. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/user_setting.py +0 -0
  74. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/_api/webhook.py +0 -0
  75. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/errors.py +0 -0
  76. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/_base_price.py +0 -0
  77. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/_saml_ui_logo_info.py +0 -0
  78. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/_submission_rubric_item_data_parser.py +0 -0
  79. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/about.py +0 -0
  80. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/abstract_role.py +0 -0
  81. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/access_token_modal_warning_time_setting.py +0 -0
  82. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/access_token_toast_warning_time_setting.py +0 -0
  83. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/add_users_section_data.py +0 -0
  84. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/ai_assistant_enabled_setting.py +0 -0
  85. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/all_auto_test_results.py +0 -0
  86. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/always_update_pii_with_lti_setting.py +0 -0
  87. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/analytics_enabled_setting.py +0 -0
  88. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/any_auto_test_step_as_json.py +0 -0
  89. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/any_error.py +0 -0
  90. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/any_non_redacted_auto_test_step_as_json.py +0 -0
  91. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/any_redacted_auto_test_step_as_json.py +0 -0
  92. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/api_codes.py +0 -0
  93. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment.py +0 -0
  94. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_anonymization_algo.py +0 -0
  95. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_default_grading_scale_points_setting.py +0 -0
  96. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_default_grading_scale_setting.py +0 -0
  97. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_description_enabled_setting.py +0 -0
  98. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_description_on_teachers_submissions_page_setting.py +0 -0
  99. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_done_type.py +0 -0
  100. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_export_column.py +0 -0
  101. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_feedback.py +0 -0
  102. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_grader.py +0 -0
  103. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_grading_scale_points_enabled_setting.py +0 -0
  104. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_kind.py +0 -0
  105. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_login_link.py +0 -0
  106. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_max_points_enabled_setting.py +0 -0
  107. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_peer_feedback_connection.py +0 -0
  108. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_peer_feedback_settings.py +0 -0
  109. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_percentage_decimals_setting.py +0 -0
  110. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_percentage_grading_settings.py +0 -0
  111. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_point_decimals_setting.py +0 -0
  112. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_points_grading_settings.py +0 -0
  113. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_section_timeframe.py +0 -0
  114. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_state_enum.py +0 -0
  115. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_submission_mode.py +0 -0
  116. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_template.py +0 -0
  117. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/assignment_timeframes.py +0 -0
  118. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/at_image_caching_enabled_setting.py +0 -0
  119. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test.py +0 -0
  120. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_capture_points_message_setting.py +0 -0
  121. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_checkpoint_message_setting.py +0 -0
  122. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_code_quality_message_setting.py +0 -0
  123. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_enabled_setting.py +0 -0
  124. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_fixture.py +0 -0
  125. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_global_setup_output.py +0 -0
  126. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_global_setup_script.py +0 -0
  127. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_heartbeat_interval_setting.py +0 -0
  128. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_heartbeat_max_missed_setting.py +0 -0
  129. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_io_test_message_setting.py +0 -0
  130. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_io_test_sub_message_setting.py +0 -0
  131. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_concurrent_batch_runs_setting.py +0 -0
  132. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_global_setup_time_setting.py +0 -0
  133. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_jobs_per_runner_setting.py +0 -0
  134. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_per_student_setup_time_setting.py +0 -0
  135. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_result_not_started_setting.py +0 -0
  136. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_time_command_setting.py +0 -0
  137. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_max_unit_test_metadata_length_setting.py +0 -0
  138. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_quality_comment.py +0 -0
  139. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_result.py +0 -0
  140. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_result_state.py +0 -0
  141. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_result_with_extra_data.py +0 -0
  142. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_run.py +0 -0
  143. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_run_program_message_setting.py +0 -0
  144. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_runner.py +0 -0
  145. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_runner_state.py +0 -0
  146. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_set.py +0 -0
  147. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_base.py +0 -0
  148. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_base_as_json.py +0 -0
  149. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_base_input_as_json.py +0 -0
  150. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_log_base.py +0 -0
  151. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_result.py +0 -0
  152. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_result_state.py +0 -0
  153. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_step_validation_exception.py +0 -0
  154. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_suite.py +0 -0
  155. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/auto_test_unit_test_message_setting.py +0 -0
  156. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/automatic_lti1p3_assignment_import_setting.py +0 -0
  157. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/automatic_lti_role_enabled_setting.py +0 -0
  158. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_about.py +0 -0
  159. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_auto_test_quality_comment.py +0 -0
  160. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_comment_base.py +0 -0
  161. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_comment_base_with_extended_replies.py +0 -0
  162. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_comment_base_with_normal_replies.py +0 -0
  163. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_comment_reply.py +0 -0
  164. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_course_coupon.py +0 -0
  165. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_directory.py +0 -0
  166. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_error.py +0 -0
  167. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_file.py +0 -0
  168. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_lms_capabilities.py +0 -0
  169. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_lti1p1_provider.py +0 -0
  170. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_lti1p3_provider.py +0 -0
  171. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_lti_provider.py +0 -0
  172. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_notification.py +0 -0
  173. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_release_info.py +0 -0
  174. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_rubric_item.py +0 -0
  175. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/base_tenant_coupon.py +0 -0
  176. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/blackboard_zip_upload_enabled_setting.py +0 -0
  177. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/bulk_enroll_course_data.py +0 -0
  178. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/canvas_course_id_copying_enabled_setting.py +0 -0
  179. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/cg_ignore_version.py +0 -0
  180. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/change_user_role_course_data.py +0 -0
  181. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/check_points_as_json.py +0 -0
  182. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/check_points_data.py +0 -0
  183. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/check_points_extra.py +0 -0
  184. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/check_points_input_as_json.py +0 -0
  185. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/clone_result.py +0 -0
  186. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_editor_output_viewer_title_setting.py +0 -0
  187. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_editor_start_on_assignment_description_setting.py +0 -0
  188. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_quality_as_json.py +0 -0
  189. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_quality_base_data.py +0 -0
  190. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_quality_data.py +0 -0
  191. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_quality_extra.py +0 -0
  192. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_quality_input_as_json.py +0 -0
  193. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/code_quality_penalties.py +0 -0
  194. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/column_range.py +0 -0
  195. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/comment_base.py +0 -0
  196. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/comment_reply.py +0 -0
  197. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/comment_reply_edit.py +0 -0
  198. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/comment_reply_type.py +0 -0
  199. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/comment_type.py +0 -0
  200. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/community_library_publishing_setting.py +0 -0
  201. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/community_library_setting.py +0 -0
  202. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/connect_repository_git_provider_data.py +0 -0
  203. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/copy_auto_test_data.py +0 -0
  204. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/copy_rubric_assignment_data.py +0 -0
  205. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/coupon_data_parser.py +0 -0
  206. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/coupon_with_code.py +0 -0
  207. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/coupon_without_code.py +0 -0
  208. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course.py +0 -0
  209. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_bulk_enroll_result.py +0 -0
  210. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_bulk_register_enabled_setting.py +0 -0
  211. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_coupon.py +0 -0
  212. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_coupon_usage.py +0 -0
  213. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_gradebook_enabled_setting.py +0 -0
  214. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_gradebook_render_warning_size_setting.py +0 -0
  215. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_of_course_price.py +0 -0
  216. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_of_tenant_coupon_usage.py +0 -0
  217. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_price.py +0 -0
  218. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_register_enabled_setting.py +0 -0
  219. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_registration_link.py +0 -0
  220. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_role.py +0 -0
  221. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_role_as_json_with_perms.py +0 -0
  222. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_section.py +0 -0
  223. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_section_division.py +0 -0
  224. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_section_division_connection.py +0 -0
  225. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_section_division_user.py +0 -0
  226. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_snippet.py +0 -0
  227. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_state.py +0 -0
  228. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/course_statistics_as_json.py +0 -0
  229. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_assignment_course_data.py +0 -0
  230. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_auto_test_data.py +0 -0
  231. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_comment_data.py +0 -0
  232. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_comment_reply_data.py +0 -0
  233. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_course_data.py +0 -0
  234. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_division_section_data.py +0 -0
  235. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_group_group_set_data.py +0 -0
  236. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_group_set_course_data.py +0 -0
  237. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_lti_data.py +0 -0
  238. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_output_html_proxy_auto_test_data.py +0 -0
  239. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_proxy_submission_data.py +0 -0
  240. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_repository_git_provider_data.py +0 -0
  241. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_role_course_data.py +0 -0
  242. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_section_course_data.py +0 -0
  243. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_snippet_course_data.py +0 -0
  244. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_snippet_data.py +0 -0
  245. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_sso_provider_data.py +0 -0
  246. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/create_tenant_data.py +0 -0
  247. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/csv_large_file_limit_setting.py +0 -0
  248. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/csv_too_many_errors_limit_setting.py +0 -0
  249. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/currency.py +0 -0
  250. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/custom_output_as_json.py +0 -0
  251. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/custom_output_data.py +0 -0
  252. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/custom_output_extra.py +0 -0
  253. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/custom_output_input_as_json.py +0 -0
  254. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/custom_output_log.py +0 -0
  255. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/custom_output_log_base.py +0 -0
  256. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/default_course_ta_role_setting.py +0 -0
  257. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/default_course_teacher_role_setting.py +0 -0
  258. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/default_submission_page_tab_setting.py +0 -0
  259. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/deleted_comment_reply.py +0 -0
  260. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/deletion_type.py +0 -0
  261. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/directory_with_children.py +0 -0
  262. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/disabled_setting_exception.py +0 -0
  263. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/display_grades_enabled_setting.py +0 -0
  264. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/editor_enabled_for_teachers_setting.py +0 -0
  265. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/editor_enabled_setting.py +0 -0
  266. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/email_notification_types.py +0 -0
  267. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/email_students_enabled_setting.py +0 -0
  268. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/email_users_course_data.py +0 -0
  269. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/exam_login_max_length_setting.py +0 -0
  270. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/export_assignment_csv_data.py +0 -0
  271. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/export_assignment_data.py +0 -0
  272. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/export_assignment_files_data.py +0 -0
  273. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_auto_test_result.py +0 -0
  274. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_auto_test_run.py +0 -0
  275. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_course.py +0 -0
  276. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_course_registration_link.py +0 -0
  277. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_course_section.py +0 -0
  278. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_group.py +0 -0
  279. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_job.py +0 -0
  280. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_non_deleted_comment_reply.py +0 -0
  281. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_tenant.py +0 -0
  282. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_transaction.py +0 -0
  283. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_user.py +0 -0
  284. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extended_work.py +0 -0
  285. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extract_file_tree_directory.py +0 -0
  286. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/extract_file_tree_file.py +0 -0
  287. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/failed_to_send_email_exception.py +0 -0
  288. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/feedback_base.py +0 -0
  289. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/feedback_threads_initially_collapsed_setting.py +0 -0
  290. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/feedback_with_replies.py +0 -0
  291. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/feedback_without_replies.py +0 -0
  292. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/file_deletion.py +0 -0
  293. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/file_rule.py +0 -0
  294. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/file_rule_input_data.py +0 -0
  295. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/file_tree.py +0 -0
  296. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/file_type.py +0 -0
  297. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/finalized_lti1p1_provider.py +0 -0
  298. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/finalized_lti1p3_provider.py +0 -0
  299. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/first_phase_lti_launch_exception.py +0 -0
  300. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/fixed_availability.py +0 -0
  301. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/fixed_grade_availability.py +0 -0
  302. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/fixture_like.py +0 -0
  303. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/fraction.py +0 -0
  304. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/general_feedback_comment_base.py +0 -0
  305. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/general_feedback_comment_base_with_extended_replies.py +0 -0
  306. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/general_feedback_extra.py +0 -0
  307. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/git_repositories_page.py +0 -0
  308. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/git_repository_like.py +0 -0
  309. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/git_user_info.py +0 -0
  310. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/github_template_repo_enabled_setting.py +0 -0
  311. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/global_perm_map.py +0 -0
  312. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/global_permission.py +0 -0
  313. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/grade_history.py +0 -0
  314. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/grade_origin.py +0 -0
  315. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/grading_notifications_enabled_setting.py +0 -0
  316. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/group.py +0 -0
  317. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/group_not_ready_for_submission_exception.py +0 -0
  318. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/group_set.py +0 -0
  319. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/groups_enabled_setting.py +0 -0
  320. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/has_unread_notifcation_json.py +0 -0
  321. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/health_information.py +0 -0
  322. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/hide_code_editor_filetree_controls_with_only_quiz_steps_setting.py +0 -0
  323. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/hide_code_editor_output_viewer_with_only_quiz_steps_setting.py +0 -0
  324. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/hide_empty_rubric_row_description_setting.py +0 -0
  325. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/hide_no_deadline_enabled_setting.py +0 -0
  326. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/hubspot_syncing_enabled_setting.py +0 -0
  327. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/ignore_handling.py +0 -0
  328. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/ignored_files_exception.py +0 -0
  329. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/import_into_assignment_data.py +0 -0
  330. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/import_into_course_data.py +0 -0
  331. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/incremental_rubric_submission_enabled_setting.py +0 -0
  332. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/inline_feedback_comment_base.py +0 -0
  333. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/inline_feedback_comment_base_with_extended_replies.py +0 -0
  334. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/inline_feedback_extra.py +0 -0
  335. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/inline_rubric_viewer_enabled_setting.py +0 -0
  336. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/invalid_group_exception.py +0 -0
  337. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/invalid_io_cases_exception.py +0 -0
  338. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/invalid_options_exception.py +0 -0
  339. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_as_json.py +0 -0
  340. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_base_data.py +0 -0
  341. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_data.py +0 -0
  342. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_extra.py +0 -0
  343. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_input_as_json.py +0 -0
  344. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_input_case.py +0 -0
  345. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_log.py +0 -0
  346. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_option.py +0 -0
  347. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_step_log.py +0 -0
  348. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/io_test_step_log_base.py +0 -0
  349. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/is_admin_permission_enabled_setting.py +0 -0
  350. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/job.py +0 -0
  351. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/json_create_auto_test.py +0 -0
  352. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/json_create_tenant.py +0 -0
  353. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/json_patch_auto_test.py +0 -0
  354. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/json_patch_submit_types_assignment.py +0 -0
  355. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_as_json.py +0 -0
  356. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_base_data.py +0 -0
  357. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_data.py +0 -0
  358. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_extra.py +0 -0
  359. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_input_as_json.py +0 -0
  360. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_log.py +0 -0
  361. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/junit_test_log_base.py +0 -0
  362. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/jwt_access_token_expires_setting.py +0 -0
  363. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/legacy_features.py +0 -0
  364. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/line_range.py +0 -0
  365. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/linters_enabled_setting.py +0 -0
  366. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lms_capabilities.py +0 -0
  367. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/login_token_before_time_setting.py +0 -0
  368. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/login_user_data.py +0 -0
  369. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/logout_response.py +0 -0
  370. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/logout_user_data.py +0 -0
  371. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p1_provider.py +0 -0
  372. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p1_provider_data.py +0 -0
  373. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_nonce_and_state_validation_enabled_setting.py +0 -0
  374. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_parse_most_privileged_role_setting.py +0 -0
  375. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_prevent_nonce_reuse_enabled_setting.py +0 -0
  376. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_provider.py +0 -0
  377. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_provider_data.py +0 -0
  378. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_provider_presentation_as_json.py +0 -0
  379. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti1p3_system_role_from_context_role_setting.py +0 -0
  380. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti_enabled_setting.py +0 -0
  381. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti_first_launch_content_id_enabled_setting.py +0 -0
  382. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti_launch_data_logging_setting.py +0 -0
  383. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti_lock_date_copying_enabled_setting.py +0 -0
  384. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti_provider_base.py +0 -0
  385. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/lti_unset_deadline_lock_date_enabled_setting.py +0 -0
  386. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_document_update_size_setting.py +0 -0
  387. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_dynamo_file_size_setting.py +0 -0
  388. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_dynamo_submission_size_setting.py +0 -0
  389. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_file_size_setting.py +0 -0
  390. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_large_upload_size_setting.py +0 -0
  391. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_lines_setting.py +0 -0
  392. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_normal_upload_size_setting.py +0 -0
  393. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_number_of_files_setting.py +0 -0
  394. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_plagiarism_matches_setting.py +0 -0
  395. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/max_user_setting_amount_setting.py +0 -0
  396. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/min_password_score_setting.py +0 -0
  397. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/mirror_file_result.py +0 -0
  398. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/missing_cookie_error.py +0 -0
  399. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/missing_file.py +0 -0
  400. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/name_and_email_from_nrps_only_setting.py +0 -0
  401. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_allowed_initial_build_ids_setting.py +0 -0
  402. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_build_max_command_time_setting.py +0 -0
  403. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_build_output_limit_setting.py +0 -0
  404. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_copying_enabled_setting.py +0 -0
  405. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_current_initial_build_ids_setting.py +0 -0
  406. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_diff_viewer_enabled_setting.py +0 -0
  407. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_enabled_setting.py +0 -0
  408. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_initial_build_id_setting.py +0 -0
  409. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_max_dynamodb_size_setting.py +0 -0
  410. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_max_file_size_setting.py +0 -0
  411. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_max_output_files_size_setting.py +0 -0
  412. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_max_storage_size_setting.py +0 -0
  413. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_old_submission_age_setting.py +0 -0
  414. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_test_max_command_time_setting.py +0 -0
  415. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_test_output_limit_setting.py +0 -0
  416. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/new_auto_test_uncollapsing_step_output_delay_setting.py +0 -0
  417. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/no_permissions.py +0 -0
  418. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/non_deleted_comment_reply.py +0 -0
  419. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/non_finalized_lti1p1_provider.py +0 -0
  420. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/non_finalized_lti1p3_provider.py +0 -0
  421. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/non_present_preference.py +0 -0
  422. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification.py +0 -0
  423. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification_comment_reply_notification_as_json.py +0 -0
  424. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification_general_feedback_reply_notification_as_json.py +0 -0
  425. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification_poll_time_setting.py +0 -0
  426. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification_reasons.py +0 -0
  427. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification_setting.py +0 -0
  428. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notification_setting_option.py +0 -0
  429. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/notifications_json.py +0 -0
  430. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/oauth_provider.py +0 -0
  431. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/oauth_token.py +0 -0
  432. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/option.py +0 -0
  433. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/options_input_data.py +0 -0
  434. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/output_viewer_animation_limit_lines_count_setting.py +0 -0
  435. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/parse_api_exception.py +0 -0
  436. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch1_p1_provider_lti_data.py +0 -0
  437. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch1_p3_provider_lti_data.py +0 -0
  438. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_all_notification_data.py +0 -0
  439. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_assignment_data.py +0 -0
  440. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_auto_test_data.py +0 -0
  441. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_comment_reply_data.py +0 -0
  442. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_course_data.py +0 -0
  443. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_grader_submission_data.py +0 -0
  444. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_notification_data.py +0 -0
  445. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_notification_setting_user_setting_data.py +0 -0
  446. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_provider_lti_data.py +0 -0
  447. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_role_course_data.py +0 -0
  448. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_role_data.py +0 -0
  449. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_role_tenant_data.py +0 -0
  450. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_rubric_category_type_assignment_data.py +0 -0
  451. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_rubric_result_submission_data.py +0 -0
  452. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_section_data.py +0 -0
  453. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_settings_tenant_data.py +0 -0
  454. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_site_settings_data.py +0 -0
  455. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_snippet_course_data.py +0 -0
  456. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_snippet_data.py +0 -0
  457. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_submission_data.py +0 -0
  458. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_submit_types_assignment_data.py +0 -0
  459. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_tenant_data.py +0 -0
  460. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_ui_preference_user_setting_data.py +0 -0
  461. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/patch_user_data.py +0 -0
  462. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/pay_with_coupon_course_price_data.py +0 -0
  463. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/pearson_templates_setting.py +0 -0
  464. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/peer_feedback_enabled_setting.py +0 -0
  465. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/permission_exception.py +0 -0
  466. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_bulk_export_enabled_setting.py +0 -0
  467. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_bulk_export_max_cases_setting.py +0 -0
  468. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_case.py +0 -0
  469. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_pdf_export_enabled_setting.py +0 -0
  470. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_run.py +0 -0
  471. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_run_plagiarism_assignment_as_json.py +0 -0
  472. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_run_plagiarism_course_as_json.py +0 -0
  473. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/plagiarism_state.py +0 -0
  474. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/post_oauth_token_data.py +0 -0
  475. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/present_preference.py +0 -0
  476. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/proxy.py +0 -0
  477. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/put_description_assignment_data.py +0 -0
  478. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/put_enroll_link_course_data.py +0 -0
  479. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/put_price_course_data.py +0 -0
  480. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/put_price_tenant_data.py +0 -0
  481. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/put_rubric_assignment_data.py +0 -0
  482. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/quality_comment_severity.py +0 -0
  483. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/quality_comments_in_code_editor_setting.py +0 -0
  484. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/quality_test_log.py +0 -0
  485. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/quality_test_log_base.py +0 -0
  486. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/register_enabled_setting.py +0 -0
  487. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/register_user_data.py +0 -0
  488. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/register_user_with_link_course_data.py +0 -0
  489. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/release_info.py +0 -0
  490. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/release_message_max_time_setting.py +0 -0
  491. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/removed_permissions.py +0 -0
  492. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rename_group_group_data.py +0 -0
  493. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/render_html_enabled_setting.py +0 -0
  494. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/repository_connection_limit_reached_exception.py +0 -0
  495. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/reset_token_time_setting.py +0 -0
  496. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/result_data_get_auto_test_get.py +0 -0
  497. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/result_data_get_task_result_get_all.py +0 -0
  498. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/result_data_post_login_link_login.py +0 -0
  499. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/result_data_post_section_create_division.py +0 -0
  500. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/result_data_post_user_login.py +0 -0
  501. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/result_data_post_user_register.py +0 -0
  502. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/retry_group_submission_grade_passback_enabled_setting.py +0 -0
  503. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/role_as_json_with_perms.py +0 -0
  504. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/root_file_trees_json.py +0 -0
  505. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_description_type.py +0 -0
  506. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_enabled_for_teacher_on_submissions_page_setting.py +0 -0
  507. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_item.py +0 -0
  508. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_item_input_as_json.py +0 -0
  509. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_lock_reason.py +0 -0
  510. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_row_base.py +0 -0
  511. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_row_base_input_as_json.py +0 -0
  512. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubric_row_base_input_base_as_json.py +0 -0
  513. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rubrics_enabled_setting.py +0 -0
  514. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/rule_type.py +0 -0
  515. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/run_program_as_json.py +0 -0
  516. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/run_program_data.py +0 -0
  517. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/run_program_extra.py +0 -0
  518. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/run_program_input_as_json.py +0 -0
  519. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/run_program_log.py +0 -0
  520. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/saml2_provider_json.py +0 -0
  521. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/saml_ui_info.py +0 -0
  522. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/sections_in_submission_list_enabled_setting.py +0 -0
  523. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/send_registration_email_setting.py +0 -0
  524. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/server_time_correction_enabled_setting.py +0 -0
  525. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/server_time_diff_tolerance_setting.py +0 -0
  526. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/server_time_sync_interval_setting.py +0 -0
  527. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/session_restriction_context.py +0 -0
  528. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/session_restriction_data.py +0 -0
  529. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/setting_token_time_setting.py +0 -0
  530. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/setup_oauth_result.py +0 -0
  531. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/simple_submission_mode_enabled_setting.py +0 -0
  532. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/simple_submission_navigate_to_latest_editor_session_setting.py +0 -0
  533. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/site_email_setting.py +0 -0
  534. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/snippet.py +0 -0
  535. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/sso_infer_global_staff_role_setting.py +0 -0
  536. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/sso_username_decollision_enabled_setting.py +0 -0
  537. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/staged_assignment_importer_enabled_setting.py +0 -0
  538. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/start_payment_course_price_close_tab_data.py +0 -0
  539. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/start_payment_course_price_data.py +0 -0
  540. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/start_payment_course_price_redirect_data.py +0 -0
  541. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/started_transaction.py +0 -0
  542. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/student_payment_enabled_setting.py +0 -0
  543. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/student_payment_main_option_setting.py +0 -0
  544. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/student_view_enabled_setting.py +0 -0
  545. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/submission_validator_input_data.py +0 -0
  546. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/submissions_per_page_enabled_setting.py +0 -0
  547. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/task_result_state.py +0 -0
  548. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tax_behavior.py +0 -0
  549. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant.py +0 -0
  550. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_coupon.py +0 -0
  551. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_coupon_usage.py +0 -0
  552. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_coupon_with_code.py +0 -0
  553. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_coupon_without_code.py +0 -0
  554. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_course_statistics.py +0 -0
  555. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_of_tenant_price.py +0 -0
  556. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_permissions.py +0 -0
  557. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_price.py +0 -0
  558. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_role_as_json_with_perms.py +0 -0
  559. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/tenant_statistics.py +0 -0
  560. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/test_submission_copying_on_import_enabled_setting.py +0 -0
  561. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/timed_availability.py +0 -0
  562. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/timeframe_like.py +0 -0
  563. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/token_revoked_exception.py +0 -0
  564. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/transaction.py +0 -0
  565. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/transaction_state.py +0 -0
  566. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/types.py +0 -0
  567. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/update_peer_feedback_settings_assignment_data.py +0 -0
  568. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/update_set_auto_test_data.py +0 -0
  569. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/update_suite_auto_test_base_data.py +0 -0
  570. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/update_suite_auto_test_data.py +0 -0
  571. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/upgraded_lti_provider_exception.py +0 -0
  572. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/upload_submission_assignment_data.py +0 -0
  573. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/user.py +0 -0
  574. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/user_course.py +0 -0
  575. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/user_info_with_role.py +0 -0
  576. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/user_input.py +0 -0
  577. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/user_login_response.py +0 -0
  578. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/user_without_group.py +0 -0
  579. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/weak_password_exception.py +0 -0
  580. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/weak_password_feedback.py +0 -0
  581. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/webhook_base.py +0 -0
  582. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/webhook_configuration_disabled_as_json.py +0 -0
  583. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/webhook_configuration_enabled_as_json.py +0 -0
  584. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/work.py +0 -0
  585. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/work_origin.py +0 -0
  586. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/work_rubric_item.py +0 -0
  587. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/work_rubric_result_as_json.py +0 -0
  588. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/models/work_rubric_result_points_as_json.py +0 -0
  589. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/parsers.py +0 -0
  590. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/py.typed +0 -0
  591. {codegrade-16.1.70 → codegrade-16.1.73}/codegrade/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: codegrade
3
- Version: 16.1.70
3
+ Version: 16.1.73
4
4
  Summary: A client library for accessing CodeGrade
5
5
  License: AGPL-3.0-only OR BSD-3-Clause-Clear
6
6
  Requires-Python: >=3.8.0,<4.0
@@ -7,7 +7,7 @@ from functools import wraps
7
7
  from .client import AuthenticatedClient, Client
8
8
 
9
9
  __all__ = ("login", "AuthenticatedClient", "Client", "login_from_cli")
10
- __version__ = "16.1.70"
10
+ __version__ = "16.1.73"
11
11
 
12
12
 
13
13
  @wraps(AuthenticatedClient.get)
@@ -538,7 +538,7 @@ class Client(_BaseClient):
538
538
  return httpx.Client(
539
539
  base_url=self.base_url,
540
540
  headers={
541
- "User-Agent": "CodeGradeAPI/16.1.70",
541
+ "User-Agent": "CodeGradeAPI/16.1.73",
542
542
  },
543
543
  follow_redirects=True,
544
544
  )
@@ -558,7 +558,7 @@ class AuthenticatedClient(_BaseClient):
558
558
  base_url=self.base_url,
559
559
  headers={
560
560
  "Authorization": f"Bearer {self.token}",
561
- "User-Agent": "CodeGradeAPI/16.1.70",
561
+ "User-Agent": "CodeGradeAPI/16.1.73",
562
562
  },
563
563
  follow_redirects=True,
564
564
  )
@@ -317,6 +317,9 @@ from .file_tree import FileTree
317
317
  from .file_type import FileType
318
318
  from .finalized_lti1p1_provider import FinalizedLTI1p1Provider
319
319
  from .finalized_lti1p3_provider import FinalizedLTI1p3Provider
320
+ from .first_day_of_week_from_locale_setting import (
321
+ FirstDayOfWeekFromLocaleSetting,
322
+ )
320
323
  from .first_phase_lti_launch_exception import FirstPhaseLTILaunchException
321
324
  from .fixed_availability import FixedAvailability
322
325
  from .fixed_grade_availability import FixedGradeAvailability
@@ -528,6 +531,9 @@ from .options_input_data import OptionsInputData
528
531
  from .output_viewer_animation_limit_lines_count_setting import (
529
532
  OutputViewerAnimationLimitLinesCountSetting,
530
533
  )
534
+ from .output_viewer_auto_expand_failed_steps_setting import (
535
+ OutputViewerAutoExpandFailedStepsSetting,
536
+ )
531
537
  from .parse_api_exception import ParseAPIException
532
538
  from .patch1_p1_provider_lti_data import Patch1P1ProviderLTIData
533
539
  from .patch1_p3_provider_lti_data import Patch1P3ProviderLTIData
@@ -842,6 +842,10 @@ class AllSiteSettings(FrontendSiteSettings):
842
842
  res["OUTPUT_VIEWER_ANIMATION_LIMIT_LINES_COUNT"] = to_dict(
843
843
  self.output_viewer_animation_limit_lines_count.value
844
844
  )
845
+ if self.output_viewer_auto_expand_failed_steps.is_just:
846
+ res["OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS"] = to_dict(
847
+ self.output_viewer_auto_expand_failed_steps.value
848
+ )
845
849
  if self.lti_lock_date_copying_enabled.is_just:
846
850
  res["LTI_LOCK_DATE_COPYING_ENABLED"] = to_dict(
847
851
  self.lti_lock_date_copying_enabled.value
@@ -1016,6 +1020,10 @@ class AllSiteSettings(FrontendSiteSettings):
1016
1020
  res["AI_ASSISTANT_ENABLED"] = to_dict(
1017
1021
  self.ai_assistant_enabled.value
1018
1022
  )
1023
+ if self.first_day_of_week_from_locale.is_just:
1024
+ res["FIRST_DAY_OF_WEEK_FROM_LOCALE"] = to_dict(
1025
+ self.first_day_of_week_from_locale.value
1026
+ )
1019
1027
  if self.auto_test_heartbeat_interval.is_just:
1020
1028
  res["AUTO_TEST_HEARTBEAT_INTERVAL"] = to_dict(
1021
1029
  self.auto_test_heartbeat_interval.value
@@ -1235,6 +1243,7 @@ class AllSiteSettings(FrontendSiteSettings):
1235
1243
  assignment_percentage_decimals=parsed.ASSIGNMENT_PERCENTAGE_DECIMALS,
1236
1244
  assignment_point_decimals=parsed.ASSIGNMENT_POINT_DECIMALS,
1237
1245
  output_viewer_animation_limit_lines_count=parsed.OUTPUT_VIEWER_ANIMATION_LIMIT_LINES_COUNT,
1246
+ output_viewer_auto_expand_failed_steps=parsed.OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS,
1238
1247
  lti_lock_date_copying_enabled=parsed.LTI_LOCK_DATE_COPYING_ENABLED,
1239
1248
  assignment_max_points_enabled=parsed.ASSIGNMENT_MAX_POINTS_ENABLED,
1240
1249
  course_gradebook_enabled=parsed.COURSE_GRADEBOOK_ENABLED,
@@ -1277,6 +1286,7 @@ class AllSiteSettings(FrontendSiteSettings):
1277
1286
  student_view_enabled=parsed.STUDENT_VIEW_ENABLED,
1278
1287
  code_editor_start_on_assignment_description=parsed.CODE_EDITOR_START_ON_ASSIGNMENT_DESCRIPTION,
1279
1288
  ai_assistant_enabled=parsed.AI_ASSISTANT_ENABLED,
1289
+ first_day_of_week_from_locale=parsed.FIRST_DAY_OF_WEEK_FROM_LOCALE,
1280
1290
  auto_test_heartbeat_interval=parsed.AUTO_TEST_HEARTBEAT_INTERVAL,
1281
1291
  auto_test_heartbeat_max_missed=parsed.AUTO_TEST_HEARTBEAT_MAX_MISSED,
1282
1292
  auto_test_max_jobs_per_runner=parsed.AUTO_TEST_MAX_JOBS_PER_RUNNER,
@@ -306,6 +306,9 @@ class CoursePermMap:
306
306
  #: retrieving assistant conversation messages, which could be the user
307
307
  #: themselves, or other users.
308
308
  can_view_assistant_message_author: "bool"
309
+ #: Users with this permission can create, edit, and delete assignment
310
+ #: assistants.
311
+ can_manage_assignment_assistants: "bool"
309
312
 
310
313
  raw_data: t.Optional[t.Dict[str, t.Any]] = field(init=False, repr=False)
311
314
 
@@ -1095,6 +1098,14 @@ class CoursePermMap:
1095
1098
  " users."
1096
1099
  ),
1097
1100
  ),
1101
+ rqa.RequiredArgument(
1102
+ "can_manage_assignment_assistants",
1103
+ rqa.SimpleValue.bool,
1104
+ doc=(
1105
+ "Users with this permission can create, edit, and delete"
1106
+ " assignment assistants."
1107
+ ),
1108
+ ),
1098
1109
  ).use_readable_describe(True)
1099
1110
  )
1100
1111
 
@@ -1281,6 +1292,9 @@ class CoursePermMap:
1281
1292
  "can_view_assistant_message_author": to_dict(
1282
1293
  self.can_view_assistant_message_author
1283
1294
  ),
1295
+ "can_manage_assignment_assistants": to_dict(
1296
+ self.can_manage_assignment_assistants
1297
+ ),
1284
1298
  }
1285
1299
  return res
1286
1300
 
@@ -1382,6 +1396,7 @@ class CoursePermMap:
1382
1396
  can_send_assistant_messages_for_others_in_section=parsed.can_send_assistant_messages_for_others_in_section,
1383
1397
  can_send_assistant_messages=parsed.can_send_assistant_messages,
1384
1398
  can_view_assistant_message_author=parsed.can_view_assistant_message_author,
1399
+ can_manage_assignment_assistants=parsed.can_manage_assignment_assistants,
1385
1400
  )
1386
1401
  res.raw_data = d
1387
1402
  return res
@@ -115,3 +115,4 @@ class CoursePermission(str, Enum):
115
115
  )
116
116
  can_send_assistant_messages = "can_send_assistant_messages"
117
117
  can_view_assistant_message_author = "can_view_assistant_message_author"
118
+ can_manage_assignment_assistants = "can_manage_assignment_assistants"
@@ -0,0 +1,56 @@
1
+ """The module that defines the ``FirstDayOfWeekFromLocaleSetting`` model.
2
+
3
+ SPDX-License-Identifier: AGPL-3.0-only OR BSD-3-Clause-Clear
4
+ """
5
+
6
+ import typing as t
7
+ from dataclasses import dataclass, field
8
+
9
+ import cg_request_args as rqa
10
+
11
+ from ..utils import to_dict
12
+
13
+
14
+ @dataclass
15
+ class FirstDayOfWeekFromLocaleSetting:
16
+ """ """
17
+
18
+ name: "t.Literal['FIRST_DAY_OF_WEEK_FROM_LOCALE']"
19
+ value: "t.Optional[bool]"
20
+
21
+ raw_data: t.Optional[t.Dict[str, t.Any]] = field(init=False, repr=False)
22
+
23
+ data_parser: t.ClassVar = rqa.Lazy(
24
+ lambda: rqa.FixedMapping(
25
+ rqa.RequiredArgument(
26
+ "name",
27
+ rqa.StringEnum("FIRST_DAY_OF_WEEK_FROM_LOCALE"),
28
+ doc="",
29
+ ),
30
+ rqa.RequiredArgument(
31
+ "value",
32
+ rqa.Nullable(rqa.SimpleValue.bool),
33
+ doc="",
34
+ ),
35
+ ).use_readable_describe(True)
36
+ )
37
+
38
+ def to_dict(self) -> t.Dict[str, t.Any]:
39
+ res: t.Dict[str, t.Any] = {
40
+ "name": to_dict(self.name),
41
+ "value": to_dict(self.value),
42
+ }
43
+ return res
44
+
45
+ @classmethod
46
+ def from_dict(
47
+ cls: t.Type["FirstDayOfWeekFromLocaleSetting"], d: t.Dict[str, t.Any]
48
+ ) -> "FirstDayOfWeekFromLocaleSetting":
49
+ parsed = cls.data_parser.try_parse(d)
50
+
51
+ res = cls(
52
+ name=parsed.name,
53
+ value=parsed.value,
54
+ )
55
+ res.raw_data = d
56
+ return res
@@ -187,6 +187,9 @@ class FrontendSiteSettings:
187
187
  #: How many lines of output we will still animate using the collapseable
188
188
  #: body in ATv2 output viewer.
189
189
  output_viewer_animation_limit_lines_count: Maybe["int"] = Nothing
190
+ #: How many steps in the failed state to expand automatically. Set to a
191
+ #: negative value to automatically expand all steps.
192
+ output_viewer_auto_expand_failed_steps: Maybe["int"] = Nothing
190
193
  #: Should the lock date be copied from the LMS through LTI, or should we
191
194
  #: allow the user to set it in CodeGrade.
192
195
  lti_lock_date_copying_enabled: Maybe["bool"] = Nothing
@@ -337,6 +340,10 @@ class FrontendSiteSettings:
337
340
  #: The main feature flag for all the AI assistant capabilities in
338
341
  #: codegrade, whether we enable the ai assistant to be inside the app.
339
342
  ai_assistant_enabled: Maybe["bool"] = Nothing
343
+ #: Whether to get the first day of the week in calendars from the user's
344
+ #: configured locale. If disabled the first day of the week will default to
345
+ #: Sunday.
346
+ first_day_of_week_from_locale: Maybe["bool"] = Nothing
340
347
 
341
348
  raw_data: t.Optional[t.Dict[str, t.Any]] = field(init=False, repr=False)
342
349
 
@@ -767,6 +774,15 @@ class FrontendSiteSettings:
767
774
  " collapseable body in ATv2 output viewer."
768
775
  ),
769
776
  ),
777
+ rqa.OptionalArgument(
778
+ "OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS",
779
+ rqa.SimpleValue.int,
780
+ doc=(
781
+ "How many steps in the failed state to expand"
782
+ " automatically. Set to a negative value to automatically"
783
+ " expand all steps."
784
+ ),
785
+ ),
770
786
  rqa.OptionalArgument(
771
787
  "LTI_LOCK_DATE_COPYING_ENABLED",
772
788
  rqa.SimpleValue.bool,
@@ -1135,6 +1151,15 @@ class FrontendSiteSettings:
1135
1151
  " assistant to be inside the app."
1136
1152
  ),
1137
1153
  ),
1154
+ rqa.OptionalArgument(
1155
+ "FIRST_DAY_OF_WEEK_FROM_LOCALE",
1156
+ rqa.SimpleValue.bool,
1157
+ doc=(
1158
+ "Whether to get the first day of the week in calendars"
1159
+ " from the user's configured locale. If disabled the first"
1160
+ " day of the week will default to Sunday."
1161
+ ),
1162
+ ),
1138
1163
  ).use_readable_describe(True)
1139
1164
  )
1140
1165
 
@@ -1284,6 +1309,9 @@ class FrontendSiteSettings:
1284
1309
  self.output_viewer_animation_limit_lines_count = maybe_from_nullable(
1285
1310
  self.output_viewer_animation_limit_lines_count
1286
1311
  )
1312
+ self.output_viewer_auto_expand_failed_steps = maybe_from_nullable(
1313
+ self.output_viewer_auto_expand_failed_steps
1314
+ )
1287
1315
  self.lti_lock_date_copying_enabled = maybe_from_nullable(
1288
1316
  self.lti_lock_date_copying_enabled
1289
1317
  )
@@ -1418,6 +1446,9 @@ class FrontendSiteSettings:
1418
1446
  self.ai_assistant_enabled = maybe_from_nullable(
1419
1447
  self.ai_assistant_enabled
1420
1448
  )
1449
+ self.first_day_of_week_from_locale = maybe_from_nullable(
1450
+ self.first_day_of_week_from_locale
1451
+ )
1421
1452
 
1422
1453
  def to_dict(self) -> t.Dict[str, t.Any]:
1423
1454
  res: t.Dict[str, t.Any] = {}
@@ -1617,6 +1648,10 @@ class FrontendSiteSettings:
1617
1648
  res["OUTPUT_VIEWER_ANIMATION_LIMIT_LINES_COUNT"] = to_dict(
1618
1649
  self.output_viewer_animation_limit_lines_count.value
1619
1650
  )
1651
+ if self.output_viewer_auto_expand_failed_steps.is_just:
1652
+ res["OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS"] = to_dict(
1653
+ self.output_viewer_auto_expand_failed_steps.value
1654
+ )
1620
1655
  if self.lti_lock_date_copying_enabled.is_just:
1621
1656
  res["LTI_LOCK_DATE_COPYING_ENABLED"] = to_dict(
1622
1657
  self.lti_lock_date_copying_enabled.value
@@ -1791,6 +1826,10 @@ class FrontendSiteSettings:
1791
1826
  res["AI_ASSISTANT_ENABLED"] = to_dict(
1792
1827
  self.ai_assistant_enabled.value
1793
1828
  )
1829
+ if self.first_day_of_week_from_locale.is_just:
1830
+ res["FIRST_DAY_OF_WEEK_FROM_LOCALE"] = to_dict(
1831
+ self.first_day_of_week_from_locale.value
1832
+ )
1794
1833
  return res
1795
1834
 
1796
1835
  @classmethod
@@ -1854,6 +1893,7 @@ class FrontendSiteSettings:
1854
1893
  assignment_percentage_decimals=parsed.ASSIGNMENT_PERCENTAGE_DECIMALS,
1855
1894
  assignment_point_decimals=parsed.ASSIGNMENT_POINT_DECIMALS,
1856
1895
  output_viewer_animation_limit_lines_count=parsed.OUTPUT_VIEWER_ANIMATION_LIMIT_LINES_COUNT,
1896
+ output_viewer_auto_expand_failed_steps=parsed.OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS,
1857
1897
  lti_lock_date_copying_enabled=parsed.LTI_LOCK_DATE_COPYING_ENABLED,
1858
1898
  assignment_max_points_enabled=parsed.ASSIGNMENT_MAX_POINTS_ENABLED,
1859
1899
  course_gradebook_enabled=parsed.COURSE_GRADEBOOK_ENABLED,
@@ -1896,6 +1936,7 @@ class FrontendSiteSettings:
1896
1936
  student_view_enabled=parsed.STUDENT_VIEW_ENABLED,
1897
1937
  code_editor_start_on_assignment_description=parsed.CODE_EDITOR_START_ON_ASSIGNMENT_DESCRIPTION,
1898
1938
  ai_assistant_enabled=parsed.AI_ASSISTANT_ENABLED,
1939
+ first_day_of_week_from_locale=parsed.FIRST_DAY_OF_WEEK_FROM_LOCALE,
1899
1940
  )
1900
1941
  res.raw_data = d
1901
1942
  return res
@@ -0,0 +1,57 @@
1
+ """The module that defines the ``OutputViewerAutoExpandFailedStepsSetting`` model.
2
+
3
+ SPDX-License-Identifier: AGPL-3.0-only OR BSD-3-Clause-Clear
4
+ """
5
+
6
+ import typing as t
7
+ from dataclasses import dataclass, field
8
+
9
+ import cg_request_args as rqa
10
+
11
+ from ..utils import to_dict
12
+
13
+
14
+ @dataclass
15
+ class OutputViewerAutoExpandFailedStepsSetting:
16
+ """ """
17
+
18
+ name: "t.Literal['OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS']"
19
+ value: "t.Optional[int]"
20
+
21
+ raw_data: t.Optional[t.Dict[str, t.Any]] = field(init=False, repr=False)
22
+
23
+ data_parser: t.ClassVar = rqa.Lazy(
24
+ lambda: rqa.FixedMapping(
25
+ rqa.RequiredArgument(
26
+ "name",
27
+ rqa.StringEnum("OUTPUT_VIEWER_AUTO_EXPAND_FAILED_STEPS"),
28
+ doc="",
29
+ ),
30
+ rqa.RequiredArgument(
31
+ "value",
32
+ rqa.Nullable(rqa.SimpleValue.int),
33
+ doc="",
34
+ ),
35
+ ).use_readable_describe(True)
36
+ )
37
+
38
+ def to_dict(self) -> t.Dict[str, t.Any]:
39
+ res: t.Dict[str, t.Any] = {
40
+ "name": to_dict(self.name),
41
+ "value": to_dict(self.value),
42
+ }
43
+ return res
44
+
45
+ @classmethod
46
+ def from_dict(
47
+ cls: t.Type["OutputViewerAutoExpandFailedStepsSetting"],
48
+ d: t.Dict[str, t.Any],
49
+ ) -> "OutputViewerAutoExpandFailedStepsSetting":
50
+ parsed = cls.data_parser.try_parse(d)
51
+
52
+ res = cls(
53
+ name=parsed.name,
54
+ value=parsed.value,
55
+ )
56
+ res.raw_data = d
57
+ return res
@@ -132,6 +132,9 @@ from .exam_login_max_length_setting import ExamLoginMaxLengthSetting
132
132
  from .feedback_threads_initially_collapsed_setting import (
133
133
  FeedbackThreadsInitiallyCollapsedSetting,
134
134
  )
135
+ from .first_day_of_week_from_locale_setting import (
136
+ FirstDayOfWeekFromLocaleSetting,
137
+ )
135
138
  from .github_template_repo_enabled_setting import (
136
139
  GithubTemplateRepoEnabledSetting,
137
140
  )
@@ -247,6 +250,9 @@ from .notification_poll_time_setting import NotificationPollTimeSetting
247
250
  from .output_viewer_animation_limit_lines_count_setting import (
248
251
  OutputViewerAnimationLimitLinesCountSetting,
249
252
  )
253
+ from .output_viewer_auto_expand_failed_steps_setting import (
254
+ OutputViewerAutoExpandFailedStepsSetting,
255
+ )
250
256
  from .pearson_templates_setting import PearsonTemplatesSetting
251
257
  from .peer_feedback_enabled_setting import PeerFeedbackEnabledSetting
252
258
  from .plagiarism_bulk_export_enabled_setting import (
@@ -391,6 +397,7 @@ SiteSettingInput = t.Union[
391
397
  AssignmentPercentageDecimalsSetting,
392
398
  AssignmentPointDecimalsSetting,
393
399
  OutputViewerAnimationLimitLinesCountSetting,
400
+ OutputViewerAutoExpandFailedStepsSetting,
394
401
  LtiLockDateCopyingEnabledSetting,
395
402
  AssignmentMaxPointsEnabledSetting,
396
403
  CourseGradebookEnabledSetting,
@@ -446,6 +453,7 @@ SiteSettingInput = t.Union[
446
453
  StudentViewEnabledSetting,
447
454
  CodeEditorStartOnAssignmentDescriptionSetting,
448
455
  AiAssistantEnabledSetting,
456
+ FirstDayOfWeekFromLocaleSetting,
449
457
  ]
450
458
  SiteSettingInputParser = rqa.Lazy(
451
459
  lambda: make_union(
@@ -531,6 +539,7 @@ SiteSettingInputParser = rqa.Lazy(
531
539
  ParserFor.make(AssignmentPercentageDecimalsSetting),
532
540
  ParserFor.make(AssignmentPointDecimalsSetting),
533
541
  ParserFor.make(OutputViewerAnimationLimitLinesCountSetting),
542
+ ParserFor.make(OutputViewerAutoExpandFailedStepsSetting),
534
543
  ParserFor.make(LtiLockDateCopyingEnabledSetting),
535
544
  ParserFor.make(AssignmentMaxPointsEnabledSetting),
536
545
  ParserFor.make(CourseGradebookEnabledSetting),
@@ -586,5 +595,6 @@ SiteSettingInputParser = rqa.Lazy(
586
595
  ParserFor.make(StudentViewEnabledSetting),
587
596
  ParserFor.make(CodeEditorStartOnAssignmentDescriptionSetting),
588
597
  ParserFor.make(AiAssistantEnabledSetting),
598
+ ParserFor.make(FirstDayOfWeekFromLocaleSetting),
589
599
  ),
590
600
  )
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "codegrade"
3
- version = "16.1.70"
3
+ version = "16.1.73"
4
4
  description = "A client library for accessing CodeGrade"
5
5
  license = "AGPL-3.0-only OR BSD-3-Clause-Clear"
6
6
  authors = []
@@ -21,7 +21,7 @@ install_requires = \
21
21
 
22
22
  setup_kwargs = {
23
23
  'name': 'codegrade',
24
- 'version': '16.1.70',
24
+ 'version': '16.1.73',
25
25
  'description': 'A client library for accessing CodeGrade',
26
26
  'long_description': '# CodeGrade API\n\nThis library makes it easier to use the CodeGrade API. Its API allows you to\nautomate your usage of CodeGrade. We are currently still busy documenting the\nentire API, but everything that is possible in the UI of CodeGrade is also\npossible through the API.\n## Installation\nYou can install the library through [pypi](https://pypi.org/), simply run\n`python3 -m pip install codegrade`. If you want to get a dev version with support\nfor the latest features, simply email [support@codegrade.com](mailto:support@codegrade.com)\nand we\'ll provide you with a dev version.\n## Usage\nFirst, create a client:\n\n```python\nimport codegrade\n\n# Don\'t store your password in your code!\nwith codegrade.login(\n username=\'my-username\',\n password=os.getenv(\'CG_PASSWORD\'),\n tenant=\'My University\',\n) as client:\n pass\n\n# Or supply information interactively.\nwith codegrade.login_from_cli() as client:\n pass\n```\n\nNow call your endpoint and use your models:\n\n```python\nfrom codegrade.models import PatchCourseData\n\ncourses = client.course.get_all()\nfor course in courses:\n client.course.patch(\n PatchCourseData(name=course.name + \' (NEW)\'),\n course_id=course.id,\n )\n\n# Or, simply use dictionaries.\nfor course in courses:\n client.course.patch(\n {"name": course.name + \' (NEW)\'},\n course_id=course.id,\n )\n```\n\nFor the complete documentation go to\nhttps://python.api.codegrade.com.\n## Backwards compatibility\nCodeGrade is constantly upgrading its API, but we try to minimize backwards\nincompatible changes. We\'ll announce every backwards incompatible change in the\n[changelog](http://codegrade.com/changelog). A new version of the API\nclient is released with every release of CodeGrade, which is approximately every\nmonth. To upgrade simply run `pip install --upgrade codegrade`.\n## Supported python versions\nWe support python 3.6 and above, `pypy` is currently not tested but should work\njust fine.\n## License\nThe library is licensed under AGPL-3.0-only or BSD-3-Clause-Clear.',
27
27
  'author': 'None',
File without changes