Commit Graph

43006 Commits

Author SHA1 Message Date
Rob Orton 8e110479d0 copy all favorites on merge
test plan
 - use api or mobile app to set favorite for a group
 - merge with another user
 - the favorite should come over

fixes FOO-1441
flag=none

Change-Id: I6f1cdd3e0287b1d286b87bde739edb9addcf46b6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256066
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-08 18:42:56 +00:00
Wagner Gonçalves 28fc3f8991 persist custom params from the rich content editor (RCE)
closes INTEROP-6312
flag=none

test plan:
* Have an LTI 1.3 installed with the editor button enabled into the
  related  developer key;
* Have a Course recorded;
* When creating/editing an Assignment/Discussion/Pages/etc, into the RCE
  add an integration with the LTI tool and check:
  * A new LTI:ResourceLink was recorded to this Course;
  * The URL link generate must have the resource_link_lookup_id
    parameter;

Change-Id: I080ee4ebde49b5aa4301e4261cce94f5792cdc56
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256029
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
2021-01-08 17:36:33 +00:00
Jeff Largent 29dbbf2d21 Skip flaky new RCE link options spec
refs LS-1744
flag = rce_enhancements

Test plan: none

Change-Id: Ie871673a3bf75cb9503d7978a699b5a84a1b524f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256247
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Product-Review: Jeff Largent <jeff.largent@instructure.com>
2021-01-08 14:17:42 +00:00
Aaron Ogata 5db206b722 skip Quiz LTI contract tests
refs QUIZ-8109

Change-Id: I2debd5dcbc159b2097248ff66195c8caf8cc9680
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256297
Reviewed-by: Alex Slaughter <aslaughter@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-08 06:39:21 +00:00
Jenkins 3b72ed8145 update nn translation
Change-Id: I4103b8ce23a09e8b34cc2755ccb2432dc405d773
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256295
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-08 05:55:59 +00:00
Ethan Vizitei 8ff0a32f86 use an existing logger for screencap
closes FOO-1440
flag=none

TEST PLAN:
  1) make cutycapt fail with non-200 response
  2) log entry gets written

Change-Id: Ib9b40536e5a6fa597a3f0a305c2254b4612db2e1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256274
Reviewed-by: Jacob Burroughs <jburroughs@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2021-01-07 23:27:15 +00:00
Charley Kline d0693ea69c Turn off transactions for granular admin users migration
Refs FOO-171
flag = none

There's no reason this migration has to tie everything up by
running in a transaction

Test plan:
* this makes more sense

Change-Id: Ib489616235c5797dc6ebb48b8a21fd81a5f2c89e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256270
Reviewed-by: Ethan Vizitei <evizitei@instructure.com>
QA-Review: Charley Kline <ckline@instructure.com>
Product-Review: Charley Kline <ckline@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-07 23:10:10 +00:00
Caleb Guanzon 9916664b23 get all_conversations for sent scope
this makes it match the sent scope logic in
api v1 conversations

flag=none
fixes VICE-1038

test plan:
- as a user, send a message to another user
- make a graphql query as that user for your
conversations with the sent scope
- verify that only and all messages you have
sent out shows

see the spec addition, it verifies the same thing

Change-Id: I9e43b4b166d86d65a4de9266f71ad8d3af657af0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256249
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
QA-Review: Matthew Lemon <mlemon@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
2021-01-07 21:01:41 +00:00
Ethan Vizitei 6b1a46fed1 use inst-jobs periodic cleanup as proc
refs FOO-1204
flag=none

TEST PLAN:
  1) run a bunch of workers with periodic jobs
  2) cleanups stop dead jobs from still existing
  3) cleanup JOBS don't exist anymore

Change-Id: I522ffa643d9f9375f6f04b5edccd011e41e74c85
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256168
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2021-01-07 20:52:32 +00:00
Cody Cutrer dd5614fb0c improve logic re: overwriting requested identifier format from saml refresh
also default to unspecified for new configs

test plan:
 * set up a new SAML config against an ADFS server, specifying a metadata url
 * the identifer format should stay as unspecified
 * logins should work

Change-Id: I9cdf106aa3a708984a1eb3985b2520210ee6a606
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256225
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2021-01-07 20:33:13 +00:00
Syed Hussain 305f58757e Fix the link to the guide
Fixes EVAL-1391
flag=none

test plan:
 - confirm guide link is correct on the gradebook_upload page

Change-Id: Idecd51f910b30c44b7e214cb2b655540193c31d4
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256250
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Adrian Packel <apackel@instructure.com>
QA-Review: Syed Hussain <shussain@instructure.com>
Product-Review: Syed Hussain <shussain@instructure.com>
2021-01-07 20:15:16 +00:00
Weston Dransfield 972fb4c954 Add some useful comments describing LTI 1.3 implementation
flag=none

Test Plan:
New comments are clear and correct

Change-Id: Ib568a7767ddaf23552a3bdae09515849dc19a0f9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256190
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
2021-01-07 19:41:53 +00:00
Ethan Vizitei 78216630d6 catch inst-fs errors from any controller
closes FOO-1438
flag=none

TEST PLAN:
  1) break inst-fs so it returns 502s
  2) try to submit a submission using inst-fs
  3) you get a 502, but sentry doesn't get an error

Change-Id: I9a78cb9c9826ac6ae5dfa96a444bbf3937f5d78e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256241
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Michael Ziwisky <mziwisky@instructure.com>
QA-Review: Michael Ziwisky <mziwisky@instructure.com>
Product-Review: Michael Ziwisky <mziwisky@instructure.com>
2021-01-07 19:23:00 +00:00
Aaron Ogata 38abe8dd28 introduce docker image sync job
refs DE-368

When the images are rebuilt, it changes the image digest causing the cache to become invalid. It can also break the build and is not easily revertable to the previous image. Work around this issue by mirroring the dockerhub image on starlord, and update it via a cron job.

Change-Id: I2f3f80ea53c7c306a126805b429781743df85aa6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256167
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
QA-Review: Aaron Ogata <aogata@instructure.com>
Product-Review: Aaron Ogata <aogata@instructure.com>
2021-01-07 19:13:51 +00:00
Jacob Burroughs b65478c088 Render html in feature flag descriptions
(safe because these descriptions are managed by instructure engineers
even though they come from the api)

fixes FOO-1415

Change-Id: I9135061653c4f44d001845e37190dd2001963c6a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256178
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Michael Ziwisky <mziwisky@instructure.com>
QA-Review: Jacob Burroughs <jburroughs@instructure.com>
Product-Review: Jacob Burroughs <jburroughs@instructure.com>
2021-01-07 19:01:57 +00:00
Jacob Burroughs 53a2c7f414 Fix lazyi18n in local dev with spring
Ensures that the base backend is already loaded because otherwise
things get sad sometimes

Change-Id: I37306327466d0bbdda8126d79fb96695a52675a3
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256224
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-07 18:33:34 +00:00
Ethan Vizitei 524148d394 cap users in groups json
closes FOO-1436
flag=none

TEST PLAN:
  1) make a giant group with more memberships than your setting value
  2) ask for the groups index with "include[]=users"
  3) you only get the first N users in each group
  4) you can still paginate through group memberships
     from the memberships endpoint successfully

Change-Id: I211c48d7adcc444b9d9e05d22b38131add66be41
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256219
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Ethan Vizitei <evizitei@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
2021-01-07 18:19:46 +00:00
Michael Ziwisky e70901c100 fix prototype pollution vuln
fixes FOO-1349
flag=none

test plan:
 - log in and visit /calendar#view_name=month&view_start=2020-12-13&__proto__%5Bdiv%5D%5B0%5D=1&__proto__%5Bdiv%5D%5B1%5D=<img/src/onerror%3dalert(document.domain)>&__proto__%5Bdiv%5D%5B2%5D=1
 - you should not see an alert pop up

Change-Id: I3e13be0f25fde8826028422f7dc14a5a89f7491b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256153
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2021-01-07 17:04:44 +00:00
Robin Kuss 6006fe3ceb spec: unskip conditional release spec
Closes LS-1684

Test Plan:  run flakey_spec_catcher over 100 times in docker and
retrigger in jenkins multiple times. Also test with latest
canvas-rce-api when merged

Change-Id: I9412d765122e5e860b8d62a58e496c3398aeec55
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255686
Reviewed-by: Ryan Norton <rnorton@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Robin Kuss <rkuss@instructure.com>
2021-01-07 16:53:46 +00:00
Ethan Vizitei 6f0c448dbe explicitly drop connections from async threads
closes FOO-1414
flag=none

TEST PLAN:
  1) run a huge fleet of servers
  2) none of them should accidentally share connections between the
     passenger processes and the live events emitter

Change-Id: Ib121e4c5df2dc4c25867c9636cd035121304ee2c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256072
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2021-01-07 16:52:42 +00:00
Jeff Largent acd09b0421 Fix media player caption font and move to bottom
fixes LS-1742
flag = rce_enhancements

Test plan:
  - Edit something in the new RCE
  - Upload a video and add captions (or find an existing captioned
    video somewhere)
  - Play the video and ensure that captions appear at the bottom of
    the player and are displayed with a sans-serif font
  - View the video outside of the RCE and ensure that this is still
    true

Change-Id: Ide57770c34abb84655ed2a2bfd55e38b37d42922
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256192
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
QA-Review: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Jeff Largent <jeff.largent@instructure.com>
2021-01-07 16:26:37 +00:00
Ed Schiebel a5035038b1 Fancy HTML editor for the RCE
closes LS-1733
flag=rce_pretty_html_editor

requires rce_enhancements to be on as well. I'm not sure the
new flag is necesary, and as of PS1, it doesn't fully hide the
new html editor functionality.

The INSTUI CodeEditor component uses CodeMirror v5, which sadly
is not accessible. https://github.com/codemirror/codemirror.next,
or https://codemirror.net/6/ for details on a future version.

For now, the RCE still provides access to the raw textarea if
KB access is needed by the user.

BONUS FEATURE! the html editors can now be viewed fullscreen

test plan:
  - with the Pretty html editor feature flag off
  - click the </> button
  > expect the old boring html editor

  - turn on Pretty HTML Editor feature flag
  - click the </> button
  > expect the deluxe new html editor
  - click the "Raw HTML Editor" link
  > expect the old boring editor
  - click the "Pretty HTML Editor" link
  > expect the pretty editor
  - click the </>
  > expect to be back in the rce
  - shift-click the </>
  > expect the old editor
  - from anywhere, click the fullscreen button (except in safari
    when in the old editor, safari won't fullscreen the textarea so
    the button should be hidden)
  > expect to be in fullscreen
  - if you fullscreened the RCE, you can select "View > HTML Editor"
    from the menubar
  > expect to be in the html editor, fullscreened
  - ESC
  > expect to exit fullscreen
  - edit your content anywhere
  > expect the changed to be reflected everywhere else
  - try it on a discussions or quizzes page with >1 RCE
  > the editors and fullscreen should work as you expect

Change-Id: If5b17b2357a4ff5521f0cb9c42bd6a5a096f2436
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255928
Reviewed-by: Jeff Largent <jeff.largent@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Jeff Largent <jeff.largent@instructure.com>
Product-Review: Peyton Craighill <pcraighill@instructure.com>
2021-01-07 16:03:16 +00:00
Ahmad Amireh 9af1badd2f decentralize i18nliner configuration
fixes FOO-1408

this allows us to control which files i18nliner processes completely
through config and without having to modify hardcoded paths in source
file, which is something we need for FOO-1265

.i18nrc files can include other directories through the "include"
directive:

    // file: canvas-lms/.i18nrc
    { "include": [ "public/javascripts/.i18nrc" ] }

    // file: public/javascripts/.i18nrc
    { "files": [...] }

:: test plan

aside of Jenkins exercising the i18n tasks, I ran a diff by hand over
the set of files that i18nliner processses before and after the patch,
with the new code processing a few more files: some handlebars in the
analytics plugin and the 3 client_apps/canvas_quizzes source files

if you really want to, you can do the same or find another way to verify
the output

on master, edit canvas_i18nliner/js/main.js somewhere before the
exports:

    Check.prototype.checkWrapper = f => console.warn(f)

run it:

    ./gems/canvas_i18nliner/bin/i18nliner check 2>
      tmp/i18nliner-upstream-files.txt

    cat tmp/i18nliner-upstream-files.txt | sort >
      tmp/i18nliner-upstream.txt

now do similar on our branch (although we need to massage teh output
because the paths are absolute:)

    ./gems/canvas_i18nliner/bin/i18nliner check 2>
      tmp/i18nliner-patched-files.txt

    cat tmp/i18nliner-patched-files.txt | sort >
      tmp/i18nliner-patched.txt

    sed -i "s{$PWD/{{" tmp/i18nliner-patched.txt

now look for differences:

    git diff --no-index \
      tmp/i18nliner-upstream.txt \
      tmp/i18nliner-patched.txt

Change-Id: Ic73cbc7261ab597deb567fc5d0af1e3014875da1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255952
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2021-01-07 15:58:18 +00:00
Ed Schiebel ab7872159c Don't drop entries in calendar AgendaView
closes LS-1701
flag=none

When loading the page from agenda view, there are a number of api
requests for calednar_events
- AgendView.coffee queries from the "target date" (the current day, or
  the date you clicked on in the mini-calendar) to the same day in
   the year 3000, but only retrieves the 1st page
- Calendar.js queries from the end of the previous month to the target
  date and exhausts all pages

Trouble happens when the singlePage requests don't return all the
necessary data and the paginated requests don't overlap to pick
them up.  Also, for some odd reason, if select only 1 course in the
calendar, you'll get >50 results in the first page (of 50?!?), so selecting
2 courses is necesary to see the bug in the example URL in the ticket.
(though this is not a bug in calendar, probably in pagination
using bookmarks)

To _really_ fix this, the AgendaView would have to query data something like
planner does, keep getting pages until some end date is fully satisfied,
but no more. That's beyond the scope of this ticket. This is probably
a rare case, so I've addressed it by bumping the per_page count for
AgendaView's singlePage requests to 100. This fixes the issue on the
calendar referenced in the ticket, and I bet it fixes it in general.

test plan:
  - I haven't been able to recreate the problem locally yet.

Change-Id: I7454b6ab58ce369176e948b6a5ab33c08903347c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255885
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2021-01-07 15:36:19 +00:00
Jeff Largent e1e29a5f46 Allow direct sharing concluded courses
This change allows courses that have ended (a.k.a. the course has an
end date in the past or the associated term has an end date in the
past) to be copied and sent via direct share. The main issue here is
that the copy and import trays were not including an additional query
param required to make conclucded courses show up.

fixes LS-1624
flag = direct_share

Test plan:
  - Create a course with at least one assignment
  - Create a second course with an end date in the past
  - Ensure a teacher has an active enrollment in both courses
  - In Course 1, select the "Copy To..." option for an assignment
  - In the tray that appears, ensure that Course 2 appears in the
    typeahead list
  - Back in Course 1, select the "Send To..." option for an assignment
  - Choose the current teacher as a recipient for the assignment
  - Go to "Account" > "Shared Content" for the teacher
  - Under the received content actions, choose "Import"
  - On the tray that appears, ensure that Course 2 appears in the
    typeahead list
  - Update Course 2 to have an end date in the future, and update the
    term associated with the course to have an end date in the past
  - Ensure that both "Copy To..." and "Send To..." scenarios still
    show Course 2 in their options

Change-Id: Ie7b6655f0b9926297248b093e9273b07d6e97c07
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255725
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Jackson Howe <jackson.howe@instructure.com>
QA-Review: Robin Kuss <rkuss@instructure.com>
Product-Review: Jeff Largent <jeff.largent@instructure.com>
2021-01-07 14:57:24 +00:00
August Thornton a05e0e2cb2 spec: unskip flaky search api controller caching spec
refs FOO-1234

test plan:
 • unleash the kraken
 • monitor spec failures in splunk
 • submit to pr to fix flakiness

Change-Id: Ia566ae7209ac53d8ba51fd5bf84583de979f46ae
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256208
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-07 14:28:58 +00:00
August Thornton 37a8be4c81 spec: fix computed_scores users api spec flakiness
don't rely on possibly mutated instance variable state
for spec consistency.

fixes FOO-1293

test plan:
 • specs should pass with a 100% success rate

Change-Id: Iaf662f7a3be63f44d187330f0f2c78d46c60d8e0
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256200
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
2021-01-07 14:17:34 +00:00
Michael Ziwisky d39b927c3a update JS testing docs
flag=none

this commit also removes the phantomjs docker-compose service which has
been broken for years, ever since PhantomJS was removed from
karma.conf.js in https://gerrit.instructure.com/c/canvas-lms/+/102169

test plan:
 - follow the docs to ensure you can run a targeted JS test in docker

Change-Id: Ifa1647897a7a9605e097aeaf89e718c167d379fc
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256179
Reviewed-by: Nate Armstrong <narmstrong@instructure.com>
QA-Review: Nate Armstrong <narmstrong@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Michael Ziwisky <mziwisky@instructure.com>
2021-01-06 22:47:53 +00:00
Davis Hyer 8fa830aacf add batch deletion mutation for ConversationMessage
refs VICE-1044
flag=react_inbox

test plan:
  - create a conversation with messages between two users
  - as a user not in the conversation
    - navigate to /graphiql
    - add a new mutation
    - use the deleteConversationMessage to attempt to
      delete a message from the conversation
      - this should fail due to insufficient permissions
  - as a user in the conversation
    - navigate to /graphiql
    - attempt to delete a message that doesn't exist
      - this should fail to unfound ConversationMessage
    - attempt to delete a message that does exist
      - this should succeed
  - try the above with multiple conversation ids at a time
    - if any ids don't exist, it should error
    - if any ids are tied to different Conversations, it should error
    - it should otherwise succeed

qa risk: low

Change-Id: I0e9a5b73f4e4f16f1ae3da6e1c25053223a72a0b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256116
Reviewed-by: Rob Orton <rob@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
2021-01-06 22:42:09 +00:00
Caleb Guanzon 028e1c2215 removes createdAt conversations and participants connections
flag=none
fixes VICE-1020

updatedAt exists in these but createdAt do not, so
createdAt is removed

TEST PLAN:
- perform a legacyNode query on User with user id
who has existing inbox conversations
- in graphiql, make sure that in conversationsConnection
and conversationParticipantsConnection, there is no createdAt field
but there is an updatedAt field

Change-Id: I7776bc7b3efd9fbf55878d71bdfec15989edb5dd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256183
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
QA-Review: Matthew Lemon <mlemon@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
2021-01-06 22:20:22 +00:00
Tucker McKnight 40955fd02f spec: Add root_account_id to web_conference fixture
The web_conference table has a root_account_id on it in prod now.

Change-Id: Ieea0b1873f0ed36a08886918837c732af2d6a4c6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256117
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Wagner Goncalves <wagner.goncalves@instructure.com>
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Product-Review: Tucker Mcknight <tmcknight@instructure.com>
2021-01-06 21:18:36 +00:00
Caleb Guanzon 45e02034e8 removes updated_at from ConversationMessages gql
flag=none
fixes VICE-1021

TEST PLAN:
- visit /graphiql
- lgacy node, on User, use user id of your current user
- conversationsConnection all the way down to
conversationMessagesConnection
- expand nodes, notice you no longer see updatedAt
but still see createdAt
- add createdAt and Body and other fields
- make the query
- query successful if you have expected messages

Change-Id: I50039f9d1e08536450e63c53cafa3834afc4358a
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256182
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 19:06:53 +00:00
James Butters 1df82228af update docker documentation
closes: DE-438
flag = none

Test Plan:
-Jenkins passes
- following steps in documents results in successful
  docker dev environment

Change-Id: Iedb37b244f5da56568c8f8b29c397bfb271b83e8
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255730
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Kyle Rosenbaum <krosenbaum@instructure.com>
QA-Review: James Butters <jbutters@instructure.com>
Product-Review: James Butters <jbutters@instructure.com>
2021-01-06 18:29:18 +00:00
Evan Battaglia 723118c433 ResourceLink custom params in assignment launch
Sends those custom parameters that were returned from a Deep Linking
response. Overrides tool-level custom parameters if they conflict.

closes INTEROP-6318
flag=none

Test plan:
- Create an assignment with a External Tool Submission with custom
  parameters, including some using variable expansion (such as
  $Canvas.assignment.id). This can be done by using the LTI 1.3 test
  tool, creating an assignment, choosing External Tool, and adding JSON
  in the "Custom Params (JSON)" field
- Launch the assignment
- Check the JWT for the custom parameters you added. The LTI 1.3 test
  tool shows you the Decoded JWT on the page, or you should be able to
  use Dev Tools to look at the JWT payload.
- Set up the LTI tool with custom parameters of its own (at the tool
  level) and check that those are also given but the link-specific params
  (returned by deep linking) take precendence if they have the same name.
- Check with a Lti::ResourceLink with null params to make sure that
  works (not sure if this is possible but it's easy to test by modifying
  the Lti::ResourceLink in a rails console)

Change-Id: I9eb950c371027e1152fefc0fe2d1955bcbb22f3d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/255908
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Wagner Goncalves <wagner.goncalves@instructure.com>
QA-Review: Wagner Goncalves <wagner.goncalves@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
2021-01-06 17:34:38 +00:00
Ethan Vizitei 5b33cba1f9 handle pv4 timeouts gracefully
closes FOO-1413
flag=none

TEST PLAN:
  1) hobble pv4
  2) request page view history
  3) get a "bad_gateway" instead of a 500,
     and a reasonable error message

Change-Id: Ib6f1ec4425f422978b4879e4c0525ea57215d47f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256063
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2021-01-06 15:40:38 +00:00
Jenkins d9cfa4b038 update zh-Hant translation
Change-Id: I33a6cf08f366e8f0685686169991a77a0584c362
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256152
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:58:00 +00:00
Jenkins 85edd01b4c update zh-Hans translation
Change-Id: I8e7a2f1f414ee483785ed1c3b1cc25a65686b9bb
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256151
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:57:35 +00:00
Jenkins 1d2fd5bd37 update sv-x-k12 translation
Change-Id: I963f83d006499a78d9cd2dcc068159649c93be07
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256150
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:57:10 +00:00
Jenkins 5a144f156c update sv translation
Change-Id: I4b4844ad8049fad253a8917128cdb2fd987394cd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256149
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:56:49 +00:00
Jenkins 636b27fd61 update ru translation
Change-Id: Iab207fefaf414b6441261e45b065cef32fa368b1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256148
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:56:26 +00:00
Jenkins 27388b9a7f update pt-BR translation
Change-Id: Ie8d663906356b99a4fd76d9056a05a5f0e539634
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256147
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:56:02 +00:00
Jenkins fc76a83d4d update pt translation
Change-Id: I10ac874cf14d18491f6eb75869bac541d5134492
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256146
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:55:40 +00:00
Jenkins fae8bf417a update pl translation
Change-Id: I32535e6a96a78e9563012035d6cd5175c1e08f69
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256145
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:55:17 +00:00
Jenkins 9e56abee59 update nl translation
Change-Id: Ia3b67e3a2fa4a9bc9e68fd64815c8e49bd7d9b49
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256144
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:54:55 +00:00
Jenkins 918bb82aec update nb-x-k12 translation
Change-Id: I03abf1007e4589f930920b671fc50e7983d7cc7e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256143
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:54:32 +00:00
Jenkins f79bd85456 update nb translation
Change-Id: I92058c540b80f8145b331f7f04ba733912311411
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256141
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:54:12 +00:00
Jenkins 0248de34b9 update mi translation
Change-Id: I1cbbd778dc0cfd244d856ffba63a6edee0285c94
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256140
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:53:48 +00:00
Jenkins 14ea58eeaf update ja translation
Change-Id: Ia2e4c586b4933d19e770137255c247a257116f4b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256139
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:53:26 +00:00
Jenkins 777631dd1c update it translation
Change-Id: Idd371e7f375f9de118224a97220b00fb1d034e6f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256138
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:53:01 +00:00
Jenkins 85caf62cd9 update is translation
Change-Id: I9a616204c7ae479932f6e6788d17bf066669305c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/256137
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
2021-01-06 05:52:40 +00:00