refs CNVS-48876
flag = none
make all auditors pass
backend strategy from dynamic
settings
configure indexes in
event_streams with columns
on db tables to search by
use a bookmarked collection
to return results with a simple
paginator
TEST PLAN:
1) use a dual-writing system for a while
2) examine API or UI results from auditor
endpoints
3) enable reading from postgres
4) API and UI results from auditor endpoints
should be equivalent
(and loaded via SQL queries)
Change-Id: If5b10736077b7721348ede323a34dd843d08c75f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/236498
Reviewed-by: Simon Williams <simon@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>
don't cache a collation key for a different locale if
it switches across requests
test plan:
* specs run
refs #USERS-448
Change-Id: I411710bea4eb8755ac6fc6ad7de8e60956f081ab
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/231195
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Keith Garner <kgarner@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Clint Furse <cfurse@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Change-Id: I5e35efeeb5258939e9e404cd90d35764659c1a87
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/223384
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Derek Bender <djbender@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Change-Id: Ie137c1040260b363979160e1f0558883577ebebd
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/222510
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
test plan:
* enrollments API index should sort like before
closes #CORE-3405
Change-Id: I5673d6fe73896334a285049b0df8009ccc0cd2ae
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/213750
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
if it filters out at least 2 items from the first subpage
so we don't fill up the main page, we'll try to grab the next
but if that one happens to be the last subpage it will leave
next_bookmark alone (since has_more! is not called)
so it will grab the same subpage again and again until
the filtered items fill up the main page or,
in the unfortunate case that the last subpage is
completely filtered out, it will call it forever
refs #ADMIN-2964
Change-Id: Icce81a69574fffccad219cbff2871759994792d7
Reviewed-on: https://gerrit.instructure.com/211918
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
sqlite3 released a new version yesterday, but active record is pinned to
a previous version in a way that just errors. the version pins here can
be reverted once rails releases a compatibility update. see
https://github.com/rails/rails/pull/35154
Change-Id: If9edc76058d96a75b8731422407ecea2afb4ce29
Reviewed-on: https://gerrit.instructure.com/180583
Reviewed-by: James Butters <jbutters@instructure.com>
Tested-by: Jenkins
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Todo items uses 3 different scopes, so using
BookmarkedCollections we can paginate it.
Test Plan:
- As a teacher, with at least 10 assignments
that need grading
- Hit the todo items api with a per_page less than 10
- It should return pagination headers and using the
next link should give you the rest of your todo items
- As a student have more than 10 assignments that you need
to submit in the next week
- Hit the todo items api with a per_page less than 10
- It should return pagination headers and using the next
link should give you the rest of your todo items
- Have ungraded quizzes that you need to take as a student
- Hit the todo items api with a per_page less than 10 and
include[]=ungraded_quizzes
- It should return pagination headers and using the next
link should give you the rest of your todo items
Change-Id: I725c2489d42e46f6b4165a3ac93ddc8fbb8b5faa
Reviewed-on: https://gerrit.instructure.com/134699
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Heath Hales <hhales@instructure.com>
Product-Review: Matthew Sessions <msessions@instructure.com>
Rails 4+ returns timestamps as actual values, not just
strings. They end up serializing to json as strings, so we
need to support both strings and objects
Change-Id: I131c780b8efe18db5bae3c1d7902c1f1f58c2655
Reviewed-on: https://gerrit.instructure.com/133922
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
fixes CNVS-39916
test plan:
* enable page views (repeat once each for db, cassandra, pv4)
* have a user associated with multiple root accounts
* as that user, browse around both accounts
* as a site admin, view the user; you should see all page views
* as an admin in only one of the accounts, you should see only
the page views from the same account
Change-Id: I79c5788c30ef87c7ff6a2ad31a909f9947e7b35c
Reviewed-on: https://gerrit.instructure.com/129850
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
the thread_safe gem has deprecations too, but they'll require Rails 5.1
until they're fixed (when both activesupport and tzinfo no longer
depend on it)
Change-Id: Ic53839d911ba8ed4d463d17f9dd7207673510f3a
Reviewed-on: https://gerrit.instructure.com/100499
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
as of this commit, all canvas gems should be on rspec 3.5, and pass
without deprecation warnings.
closes CNVS-34040
test plan: specs should pass without deprecation warnings
Change-Id: I556b1a4a5aeb791c6ddd50ee35b51c513e025019
Reviewed-on: https://gerrit.instructure.com/98414
Reviewed-by: Landon Wilkins <lwilkins@instructure.com>
Product-Review: Landon Wilkins <lwilkins@instructure.com>
QA-Review: Landon Wilkins <lwilkins@instructure.com>
Tested-by: Jenkins
Change-Id: Id1900160375644ea33badaa9d9f9185fab6b81ac
Reviewed-on: https://gerrit.instructure.com/92726
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
refs #CNVS-26056
Change-Id: I1ad89e2d9922e9994937963b0ad783eccebc5bc5
Reviewed-on: https://gerrit.instructure.com/70759
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
rely on test_all_gems.sh to output header and trailer,
and use `set -e` in each test.sh to simplify passing
through errors
Change-Id: I3ba724ad2539ddfe31195394c43f646acfc73920
Reviewed-on: https://gerrit.instructure.com/70469
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
refs #CNVS-26056
Change-Id: Ia94ee2fcfded1ec66cb77a19085b005c81304800
Reviewed-on: https://gerrit.instructure.com/70251
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
closes #CNVS-26001
Change-Id: I4604992b32bdbf7bfbe34332010bac8ba5101889
Reviewed-on: https://gerrit.instructure.com/69183
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Fixes https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2013-6459&cid=1
Changelog is @ https://github.com/mislav/will_paginate/commits/3-0-stable
will_paginate usage in canvas is wrapped in our folio gem, so this
actually involves updating folio. I've removed the direct dependency on
will_paginate in canvas, since folio defines that depenency and versioning.
test plan: regression test on api pagination links, including bookmarked apis
such as page views.
Change-Id: I8b7a07870d5280c307f368707a5e60aa900ba9f5
Reviewed-on: https://gerrit.instructure.com/55348
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
refs #CNVS-21596
Change-Id: I5dedaab90a2abe6bf288ff30401c9b31629b45b2
Reviewed-on: https://gerrit.instructure.com/59220
Tested-by: Jenkins
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
* add test runner for broadcast_policy and fix a couple of tests that
had been broken by accident
* add test runner for canvas_quiz_statistics and add a reference to
iconv to it's Gemfile to allow tests to run in ruby 2
* add a test runner for canvas_sanitize
* remove leftover cruft from running gem builds in both rails 2 and 3
Change-Id: Iab2a0986f277a82c096e1fff2dab1d3a55b91733
Reviewed-on: https://gerrit.instructure.com/54518
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
they're likely already installed, and it will save a ton of trips
to rubygems.org
Change-Id: I9ccf2194619a6e8f97d7f21b4e232dac7ff20d3c
Reviewed-on: https://gerrit.instructure.com/35694
Reviewed-by: Bryan Madsen <bryan@instructure.com>
QA-Review: Bryan Madsen <bryan@instructure.com>
Product-Review: Bryan Madsen <bryan@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Change-Id: I0dad5345aae75e552af97f5b54ded10bbfebbe37
Reviewed-on: https://gerrit.instructure.com/33925
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Mike Nomitch <mnomitch@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
fixes: CNVS-11645
Test Plan:
Test the groups api endpoint at
api/v1/users/self/groups?context_type=Account
Make sure its not broken.
Change-Id: I2a17672f0e81530aa8623c5ed16b9cb0bb6b3ce5
Reviewed-on: https://gerrit.instructure.com/31417
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>