we have no violations (likely because we upgraded to Ruby 3)
Change-Id: I64242e28afaeff72e7fbe7b972e5e9bdc1d84884
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341936
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Aaron Ogata <aogata@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
avoid using it for an imperative sense, when a method would do just fine
Change-Id: I6f30216e69c4970c779d01cf6bd0c32bdc7e963f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341931
Reviewed-by: Aaron Ogata <aogata@instructure.com>
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
this commit adds a save as draft button to the rubric form. This button
is only displayed when a rubric has no current associations. When
clicked, the rubric is saved with a new workflow_state value of "draft".
closes EVAL-3637
flag=enhanced_rubrics
test plan:
- make sure graphql is updated
- create a rubric. you should see the "Save as Draft" button
- add a title and save as draft. you should be navigated back to the
rubric list and see the rubric with a draft status
- edit the rubric and the click the "Save" button. you should be
navigated back to the rubric list and the rubric should no longer have
the draft status.
- edit the rubric. you should see the "Save as Draft" button still
available.
- add that same rubric to an assignment.
- navigate back to the edit rubric page. you should no longer see the
"Save as Draft" button.
Change-Id: Id1e68f1432cd17fab618b2c8dd0350acf0408e12
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341595
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Derek Williams <derek.williams@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Ravi Koll <ravi.koll@instructure.com>
after the jquery upgrade, the date picker on
the calendar page disappeared. The z-index
on the element was being overriden inconsitently
fixes LF-1319
flag=none
test plan:
- go to the calendar page
- with each view (month/week/agenda) open the
date picker by clicking the date on the left
side of the header
- ensure the date picker appears and functions as normal
Change-Id: I2adf124f537be7699dcac11a7f46d4e122c22e27
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341798
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Sarah Gerard <sarah.gerard@instructure.com>
flag=none
closes LF-1191
Test Plan:
- Before checking out this patchset
- Change locale to Japanese
- Go to an RCE
- Hover over the "Background color" option
- Note the Japanese hover text
- Check out this patchset
- Hover over the "Background color" option
- Note that the Japanese hover text is different
Change-Id: I89922e8a405944d40188609831ef51c34c5c4462
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341877
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Product-Review: Jacob DeWar <jacob.dewar@instructure.com>
closes LF-1280
flag = none
Test plan:
- Run `rake doc:api`
- Go to doc/api/file.data_service_canvas_course.html
- Expect the changes to be reflected to the course_progress and
course_completed sections
Change-Id: Id1949da2e1d377bf224c25ba060a66c463fcbe3b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341817
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
This file is dirty after running `rake doc:api` and should be committed
(it is autogenerated).
Test plan:
- Run `rake doc:api`
- Expect no uncommitted changes
Change-Id: I57ab8f8933dfe4ba2691c34aa4d2afa217e55e41
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341818
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
closes LF-1214
flag=differentiated_modules
Test plan:
- Go to the module page
- Open the assign to tray
- Enable voiceover
- Remove an assignee from the assignee selector
- Expect VO to announce the option was removed
- Click on the Clear All option
- Expect VO to announce, “All assignees removed”
Side issue fix:
- Using keyboard navigation
- Go to the assignee selector and press the down arrow key
- Expect to be able to navigate through the options using the arrow
keys
Change-Id: I789a21cefe7deea9aa32266b2967545eb5f38d77
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341816
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jonathan Guardado <jonathan.guardado@instructure.com>
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
- Actually enumerate columns when any are ignored to avoid loading unknown attributes
- Remove old ignored_columns so we don't unnecessary bloat queries when not ignoring
- Various minor fixes for places we do unusual AR things to ensure they work with explicit columns
- Tweak some migrations to clear column information so future migrations are happy
refs AE-747
Change-Id: I60b1c3eae73f4fa9f0b6b6ab4d2b00abd8f8395f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/339971
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Migration-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
in rails 7.1, active? will not force a connection. verify! works
in both 7.0 and 7.1, though - checking active? if it's already
connected, or connecting if it's not
Change-Id: I54b93761e8c3a5bc5e0c7943db3eb14a05c7912f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341793
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
why:
* prevents case where line item creation fails, but resource link
succeeds
* this half-migrated state means it tries to recreate the resource
link every time it launches, and breaks the assignment
* this only happens in migration jobs, which aren't already in a
transaction
* this also requires a data fixup for existing half-migrated
assignments, which "resets" the assignments by hard-deleting the
dangling resource links. this is safe because when these
assignments are migrated FRD, the resource link and line item will be
properly created with the same data
closes INTEROP-8510
flag=none
test plan:
* install the vercel lti 1.1 test tool in your root account (need
to run it locally to make the 1.3 version work)
* create a subaccount, and a course in that subaccount
* _without this commit checked out_:
* run these steps:
* clear out any installations of the 1.3 version of that test tool you
may have
* create an assignment associated with the 1.1 tool in a course
in the root account
* create another assignment associated with the 1.1 tool in that
course
* install the 1.3 version of the vercel test tool in the _sub_
account - very crucial it's here and not the root account
* in the rails console, verify that:
* the assignment in the subaccount has the right 1.3 models:
```
a.line_items # should have one
a.lti_resource_links # should have one
```
* the assignment in the root account should have a resource link but
no line item - this is the bug
* try launching the assignment in the root account - it should fail
* check out this commit
* run the data fixup: `DataFixup::Lti::RemoveDanglingResourceLinks.run`
* the assignment in the root account should no longer have a
resource link, and launching should succeed - and launch 1.1
* repeat the above steps under "run these steps" - make sure to remove
the 1.3 tool installation
* the assignment in the root account should _not_ have a resource link,
and still launch correctly
Change-Id: I64418c22546204f6be9e369832f91b623ea39794
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341706
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Tucker Mcknight <tmcknight@instructure.com>
Reviewed-by: Ryan Hawkins <ryan.hawkins@instructure.com>
QA-Review: Ryan Hawkins <ryan.hawkins@instructure.com>
Migration-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Xander Moffatt <xmoffatt@instructure.com>
closes LF-1045
flag = differentiated_modules
Test plan:
- Create a page
- In the rails console, add an `unlock_at`, `lock_at`, and an
override
- GET /api/v1/courses/:course_id/pages/:page_id/date_details
- Expect to see the base availability dates, the page id, the
override, and no due dates
- Repeat with a file using GET
/api/v1/courses/:course_id/files/:attachment_id/date_details
- Repeat with both an ungraded discussion using GET
/api/v1/courses/:course_id/discussion_topics/:discussion_topic_id
/date_details
- Create a graded discussion in the UI (or you can do it in the rails
console, but note that the base dates and overrides are applied to
the topic's assignment, not the DiscussionTopic object)
- Use the same endpoint to get date_details for the graded discussion,
and expect `due_at` in addition to availability dates
Change-Id: Ied6d65f5fbff8773d033297f8e750b34b7ac59e1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341707
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Jackson Howe <jackson.howe@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
* use Syslog::Logger instead of writing our own
* extract and share the log formatting between Syslog and file logging
Change-Id: I266713e4c390f11d1650afcf9005059995aca922
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341759
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
after the jquery upgrade, there was extra padding
on the calendar event edit dialog and the background
color only appeared on focus/hover
fixes LF-1320
flag=none
test plan:
- navigate to the calendar and add or edit an existing event
- expect the modal to appear and have the correct styling
- there should be no extra padding or border around the modal
and the background color of the tabs should appear
Change-Id: I9f289ef82fad65c46d652c875909aa2eb7d31d8e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341773
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Juan Chavez <juan.chavez@instructure.com>
QA-Review: Juan Chavez <juan.chavez@instructure.com>
Product-Review: Sarah Gerard <sarah.gerard@instructure.com>
refs EVAL-3993
flag=platform_service_speedgrader
Test Plan:
- Verify you can fetch the previewUrl from a Submission or
SubmissionHistory type. It should return the correct version number
in the URL based on the attempt number (not submitted: version = 0,
first submission: version = 1, second submission: version = 2, etc.)
Change-Id: I7d213e282a383a6b0df9589fd760a0f9232c1051
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341748
Reviewed-by: Drake Harper <drake.harper@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
Product-Review: Aaron Shafovaloff <ashafovaloff@instructure.com>
test plan: specs
flag=none
closes FOO-4299
Change-Id: Iad983020e2bdc00466e10227b9aaac786510a905
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341698
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: August Thornton <august@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
closes LF-1180
flags=none
Test plan
- Set up 2 assignments and have a student
submit to 1 of them
- Add both assignments to a module
- Check api/v1/courses/:course_id/
modules/:module_id/items and
ensure the unpublishable flag is true
for the assignment with no submissions
and false for the assignment with submissions
Change-Id: I10a2d87334e35be87434360ce83d06a71734052f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341601
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Product-Review: Mysti Lilla <mysti@instructure.com>
closes QO-1042
flag=none
Test plan:
- automated tests pass
- Open a CQ edit view. Add this to the end of the url and hit enter
?_=1&return_to=javascript:alert(`sadness`)
- Note, you NEED a parameter BEFORE the return_to param to test correctly
- Note, you NEED to load the page with that in the url (editing the url
after loading will not work)
- Hit save.
- Observe no alert appears.
Change-Id: I883a9a39d69b399c887a44e443f36140052f85b6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341686
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jared Crystal <jcrystal@instructure.com>
QA-Review: Jared Crystal <jcrystal@instructure.com>
Product-Review: James Logan <james.logan@instructure.com>
flag=none
refs LF-1146
Test Plan:
- Jenkins passes
- Content migrations work without changes
Change-Id: Ide3d75a621e097c79d30c8972df0ea27e306848f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341756
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Luis Oliveira <luis.oliveira@instructure.com>
QA-Review: Luis Oliveira <luis.oliveira@instructure.com>
Build-Review: James Butters <jbutters@instructure.com>
Product-Review: Jacob DeWar <jacob.dewar@instructure.com>
This flag has been on for all accounts for about 90 days now;
we do not expect to have to revert it. (This is a hidden flag
that customers have not been able to toggle themselves.)
This can affect open source users, who may not have been aware
of this flag before. LTI launch iframes will now have an
id with a unique, three-digit number in it. (E.g. "#tool_content_456".)
If someone was previously scraping the page and finding the iframe with
the CSS selector #tool_content, they can now find that with [id^=tool_content].
test plan:
- a page with multiple tool placements on it,
like the assignment edit page with a tool
in the assignment's description, loads all
tools that you expect it to.
fixes INTEROP-8304
flag = lti_unique_tool_form_ids
Change-Id: I840e1096f59f17851e0b0e8591e69a7a4e0f62a2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341592
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ryan Hawkins <ryan.hawkins@instructure.com>
QA-Review: Ryan Hawkins <ryan.hawkins@instructure.com>
Product-Review: Tucker Mcknight <tmcknight@instructure.com>
formatter needs to be assignable, even if we don't use it
Change-Id: I9b87b26f5f524ca795b250cce5208052391adbef
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341746
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
This fixes some failing tests when upgrading to jQuery 3.5.
In jQuery 2.2.4 when $todoDateInput.show() is called it adds
'display:block' which is how we checked for the input being
displayed. In jQuery 3.5 it affects the styles differently
depending on the case. In this particular case it removes
the 'display:none' css from the input style. This change
updates checking for the input displaying by checking it
no longer has 'display:none'.
refs FOO-4260
flag=none
Test Plan:
- Jenkins Passes
[skip-crystalball]
Change-Id: Icd55c60bcc46bf10ebe652635489f47e2077b40c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341381
Reviewed-by: Michael Hulse <michael.hulse@instructure.com>
QA-Review: Angela Gomba <angela.gomba@instructure.com>
Product-Review: Angela Gomba <angela.gomba@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
fixes LF-1244
flag=none
test plan:
- Create an event with a frequency (not select "not repeat").
- Select an event from the series.
- Edit it using the Edit page or the form modal.
- Select "Does not repeat".
- Submit it.
> Verify that the "All", "This and following" and "This" modal
is not displayed.
> Verify that all the events in the series were removed except
the selected event.
> Verify that the previous behavior of event is working as
expected.
Change-Id: Ibc95d6fcd5e4f67536c2d09a172bf44241ee455a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/341606
Reviewed-by: Robin Kuss <rkuss@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Juan Chavez <juan.chavez@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>