during a previous commit
(SHA 10e7b5b003bea9aea3286b9170f5e04b8a9e3735)
we removed indentation of gems, but this indentation
had semantic significance for us: any gem which was
not required by canvas but was required by another
gem required by canvas was indented. This allowed us
to clarify that canvas didn't actually use the gems
while still locking into specific versions of each
Also added a comment explaining this to Gemfile
Change-Id: I0f476e1bed6156f2f5969e54d56d44ded5442a0f
Reviewed-on: https://gerrit.instructure.com/32588
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Anthus Williams <awilliams@instructure.com>
QA-Review: Anthus Williams <awilliams@instructure.com>
this is a proof-of-concept to see if partitioning
our Gemfile helps more than it hurts. It's modeled
after the way the Squash team handles its dependencies
this doesn't implement any of the particularly nice
things that can be found in the Squash set up, such
as conditionally loading gems based on the contents
of our configuration files (we can already sort of
do this with groups in bundler), but it's a start.
In particular, it allows us to add non-OSS gems to
Gemfile.d without necessarily having to release it
as part of our open-source packaging
Change-Id: If7ff1fe97409de4cd09867ad5be1c4134c5d0117
Reviewed-on: https://gerrit.instructure.com/32442
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Nick Cloward <ncloward@instructure.com>
Product-Review: Anthus Williams <awilliams@instructure.com>
QA-Review: Anthus Williams <awilliams@instructure.com>
test plan:
* run specs
Change-Id: Ic2a76e3c6290c06f68f06796babbdc5ff3b405d9
Reviewed-on: https://gerrit.instructure.com/29733
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Change-Id: I1b20b2d3a8e452a803bf4be03325c4ab27d1b24f
Reviewed-on: https://gerrit.instructure.com/32184
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
test plan:
verify conference type is moved to plugin config and out of
conferences
Change-Id: Ia483a5d4e1d605ac064e1361fef98ce80cb579d4
Reviewed-on: https://gerrit.instructure.com/32134
Reviewed-by: Jake Sorce <jake@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Adam Phillipps <adam@instructure.com>
QA-Review: Adam Phillipps <adam@instructure.com>
Change-Id: I6b80bfcea591bb5d29981b3db00b7a1131112d8e
Reviewed-on: https://gerrit.instructure.com/31792
Reviewed-by: James Williams <jamesw@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
allows the creation of zip files over 4GB
fixes #CNVS-10492
Change-Id: Ia7bb37937572d8b11be3d0072a807217ab480ef3
Reviewed-on: https://gerrit.instructure.com/31069
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
We don't want to load the test-unit gem, and we also need to tell rails
that we're using rspec not test-unit.
Change-Id: Ia8d9ef1e8adaab5a4c55c1324cca541a664c1b02
Reviewed-on: https://gerrit.instructure.com/31742
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
QA-Review: Brian Palmer <brianp@instructure.com>
also move the RAILS3 sentinel into the config folder, for easier
deploys, and normalize how sub-gems decide on rails 3
Change-Id: I39fda434bb3d94cf72e66774b6b9d11c968a3d5a
Reviewed-on: https://gerrit.instructure.com/31632
Reviewed-by: Brian Palmer <brianp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
webrat is abandonware, and doesn't work properly with rails 3
Change-Id: I34db6c150b6715e33a30d531941b76458090ce63
Reviewed-on: https://gerrit.instructure.com/31457
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Updates ActiveModel::Serializers for rails 2 and rails 3.
Change-Id: I1203069cd921ca975788d5b3c2088bdcff3f5e77
Reviewed-on: https://gerrit.instructure.com/31113
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jason Madsen <jmadsen@instructure.com>
QA-Review: Myller de Araujo <myller@instructure.com>
Product-Review: Stanley Stuart <stanley@instructure.com>
fixes CNVS-11460
test plan
regression tests on these notification messages:
- new announcement (text email and summary)
- new discussion topic (text email and summary)
- new discussion entry (text email and summary)
- summaries (text and html emails
- updated wiki page (text email, html email, and summary)
regression test on calendar event desrciption in ics
regression test on aria-labels for multiple choice quiz answer
inputs. radio and checkboxes
Change-Id: I229837357a8e1bc1bb887a1b047f86636a62209a
Reviewed-on: https://gerrit.instructure.com/31045
Reviewed-by: Braden Anderson <banderson@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: Trevor deHaan <tdehaan@instructure.com>
Product-Review: Joel Hough <joel@instructure.com>
test plan:
* colors on the old calendar still display correctly
* click assignments top nav button
* sidebar colors should be displayed correctly
fixes CNVS-11423
Change-Id: I07677569d121797ba52382e5e29be7b16878031e
Reviewed-on: https://gerrit.instructure.com/30700
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Mark Severson <markse@instructure.com>
QA-Review: Mark Severson <markse@instructure.com>
test plan:
* smoke test (incl. publishing, unpublishing, deleting)
fixes CNVS-11422
Change-Id: I5e66f9ef0742359938529d08338a94c98cef9bec
Reviewed-on: https://gerrit.instructure.com/30695
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Mark Severson <markse@instructure.com>
QA-Review: Mark Severson <markse@instructure.com>
Also fix rails2 not sending the error_report_id back with the api json
response in test/development mode. This was already working in rails3
due to the different error response codepath.
Change-Id: If94d3a8a85e2d1cd1fb372076c02a058ec9c82cc
Reviewed-on: https://gerrit.instructure.com/30811
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: James Williams <jamesw@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
QA-Review: Brian Palmer <brianp@instructure.com>
Change-Id: Ic226e61e900532cc3acf08444b316b6e2bb6b368
Reviewed-on: https://gerrit.instructure.com/30049
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
Change-Id: Ib79b1f1bc396b295f74690d2398c9edb4c6ee271
Reviewed-on: https://gerrit.instructure.com/29905
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
refs CNVS-6040
This gem will help us output json error responses in the API using error
codes, since by itself ActiveRecord::Errors just deals in human-readable
i18n'd strings, and doesn't store detailed machine-readable information
on the error.
BetterErrors is mostly compatible, there's a few differences that mean I
had to change some unrelated code:
* errors[field_name] always returns an array, even if there's only one
error on the field. This is an improvement IMO.
* errors is indexed by symbol, not by string
* iterating over the errors object now yields
|attr, error_object| rather than |attr, string_message|
This includes a backport of the gem to rails 2.3.
On rails 3, we just use the vanilla gem.
The error codes aren't yet documented in the API docs, support for doing
that will come in a subsequent commit.
test plan: specs, plus you can hit the one api endpoint i've converted
so far -- account authorization configs. try to create an invalid
config, such as adding both cas and ldap configs to the same account,
and verify the error response formatting
Change-Id: Iaadd843ca9ff3f52c64e0256d82b64595c5559fb
Reviewed-on: https://gerrit.instructure.com/26178
Reviewed-by: Brian Palmer <brianp@instructure.com>
Product-Review: Brian Palmer <brianp@instructure.com>
QA-Review: Brian Palmer <brianp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
refs CNVS-9522
replace our hokey ActiveRecord::Base.suspend_callbacks implementation
with something that integrates nicely with ActiveSupport::Callbacks in
general, as a gem.
include it into ActiveRecord::Base and use it to implement
save_without_callbacks for rails3 (rails2 still needs to do it the way
we had it before, because the notifications callback isn't handled
through ActiveSupport::Callbacks).
test-plan:
- make sure ActiveRecord callbacks still run in most cases (e.g. after
creating a course through the UI, it should have a value in the uuid
column in the database)
- make sure callbacks don't run while suspended (e.g. have a user
enrolled in two courses. call user.delete_enrollments. both
enrollments should be deleted, but only one delayed job for due date
caching should be created)
Change-Id: Iecd1cc0346e218261677d16ee44bae9cb9149ddd
Reviewed-on: https://gerrit.instructure.com/29809
Reviewed-by: Anthus Williams <awilliams@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
this was used by collections (which no longer exist)
Test plan:
make sure there are no references to embedly on the account settings
page
Change-Id: Ia599877523a26560392ca554a2e760930f65deb6
Reviewed-on: https://gerrit.instructure.com/30148
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
QA-Review: Cameron Matheson <cameron@instructure.com>
things fixed:
- erubis is in actionpack gemspec in rails3, so we don't need it in the gemfile
- don't directly initialize a SafeBuffer, and instead initialize OutputBuffer
- Fix comparison of hash with indifferent access in quizzes spec
- plugins in rails3 aren't loaded in init.rb so rails_xss is still being
loaded in rails3. However we have parts of the code that actually reference
rails_xss classes directly so we want to keep the RailsXss::Erubis constant
defined in erubis.rb. However we don't want to actually monkey patch
the activesupport or string methods anymore for xss (rails3 takes care of
this for us)
Change-Id: I327bf042dfa7dcedd39acb463eda1420d3dbd98c
Reviewed-on: https://gerrit.instructure.com/30108
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cameron Matheson <cameron@instructure.com>
Product-Review: Derek DeVries <ddevries@instructure.com>
QA-Review: Derek DeVries <ddevries@instructure.com>
adds error_messages and error_messages_for helpers
Change-Id: I209ed14a0b764190b3f06e5d107a4261144a25a8
Reviewed-on: https://gerrit.instructure.com/30015
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
also refactored add_variable_mapping to be more explicit
Change-Id: I38b21975ae80cf510f81bfba84ece7b3b568bfa9
Reviewed-on: https://gerrit.instructure.com/29241
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Stephan Hagemann <stephan@pivotallabs.com>
Product-Review: Stephan Hagemann <stephan@pivotallabs.com>
QA-Review: Brad Humphrey <brad@instructure.com>
* vendoring gems to allow the gems that we own to reference a locked
* down version in their gemspecs. Specifically, with the old version of
* ActiveSupport that we were getting from the LTS Rails repo, there is
* no way to tell bundler to install a gem that is a subdirectory of a
* git repo.
Change-Id: I32d9d0fae15da1fcf27f11e5cd8fca26af18d383
Signed-off-by: David Julia <djulia@pivotallabs.com>
Reviewed-on: https://gerrit.instructure.com/29438
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Stephan Hagemann <stephan@pivotallabs.com>
Product-Review: Stephan Hagemann <stephan@pivotallabs.com>
QA-Review: Stephan Hagemann <stephan@pivotallabs.com>