Commit Graph

382 Commits

Author SHA1 Message Date
Ryan Shaw 55726526a2 Fix <Pagination> perf for accounts w/ many users
This commit fixes it for master. g/155833 is the one that we will need
to warmfix/hotfix

Closes: CORE-1576

Test plan:
* using production assets (so you are getting the minimized/optimized
  Version of react w/o propType checking)
* in an account with tons of users or courses
* go to /accounts/x and /accounts/x/users
* type some stuff in the search box
* it should not be unbearably janky

Change-Id: I6a5e9be770a9bf9d49cf7f1d5d11df935a5fc24f
Reviewed-on: https://gerrit.instructure.com/155847
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-07-05 17:20:54 +00:00
Ryan Shaw 8bfa6c58ff Upgrade axios from 0.16 to 0.18
This is so all of our pages that use axios can share the same one

Test plan:

* the selenium tests, which test pages using axios, should pass.

Change-Id: I24d15fb7fa282891b80fadb91d06d9dfa019b5d1
Reviewed-on: https://gerrit.instructure.com/155300
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-26 22:46:24 +00:00
Ryan Shaw 485e14c5d9 tinymce-a11y-checker: upgrade to 1.6.0 w/ instUI5
Closes: CORE-1436

this commit upgrades us to the latest tinymce-a11y-verision, which uses
all instUI 5 components. So that means that we are no longer using
Instui 4 anywhere in canvas’s yarn.lock. yay!

Test plan:
* check to make sure the a11y checker works the same as before
* specifically run in prod mode in Spanish or some other language and
  with a custom theme applied and:
  * make sure that the stuff in the A11y checker is translated correctly
  * make sure the buttons and stuff in the a11y checker are themed
    correctly (the same as they used to be)

Change-Id: I22c6d49a682b395a75b8323727890596d568afa0
Reviewed-on: https://gerrit.instructure.com/154547
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-26 22:43:23 +00:00
Ryan Shaw 57943ae226 fix the `yarn upgrade-and-dedupe` command
Change-Id: Iea9b5ad18493dba2c25e695889d06a98bc26c368
Reviewed-on: https://gerrit.instructure.com/155301
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
2018-06-26 20:26:04 +00:00
Ryan Shaw 5ddaf88785 instUI upgrade: upgrade ui-core in package.json
Closes: CORE-1494 CORE-1493 CORE-1492 CORE-1437

most things have already been upgraded to instUI 5
by pulling them in from their respective split-out
@instructure/ui-* repos. The last remaining things
are things like <Select> and <AutoComplete>
where if you pull them from their
new package you'll get a new component with a new
API.

They are still avaiable at ui-core but will
log deprecation warnings. So we should hopefully
be able to merge this without much trobule and
get the teams that own each page that uses something
from ui-core still to upgrade their stuff so the
deprecation warnings go away before instUI 6

Test plan:
* after you check this out, search the repo for 'ui-core'
* you'll find some pages that have:
  import Select from '@instructure/ui-core/lib/components/Select'
  eg: the CoursesToolbar, the NewCourseModal and usersToolbar in the
      user/course search stuff.
* make sure those selects work the same as they did before
* you will see deprecation warnings telling you not to get Select from
  ui-core and that you should get it from ui-menu in the browser console

Change-Id: I7b8a68584ef738caf4e4daca346c5f503afeebfd
Reviewed-on: https://gerrit.instructure.com/151789
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
QA-Review: Rohan Cheeniyil <rcheeniyil@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-06-21 17:40:21 +00:00
Clay Diffrient 9f545a5c66 Add release tracking and source map uploading to sentry
This makes it so our sentry instance can be much more detailed
in the data that it collects

Change-Id: If44ea7bc54646988d681e6ad775951eb0e35436a
Reviewed-on: https://gerrit.instructure.com/154010
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-06-15 19:40:36 +00:00
Jeremy Neander 1479a5c937 spec: increase the timeout of canvas-rce specs
Also:
 * update mocha-jsdom to eliminate a spec issue
 * fix some specs

test plan:
 * Verify Jenkins passes

Change-Id: Ib486336306719b5ca4160e15843a0aac084c5c92
Reviewed-on: https://gerrit.instructure.com/153972
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-15 17:11:19 +00:00
Clay Diffrient babb0706ca Add raven to grab errors from test runs
closes CORE-1532

Test Plan:
  - Run tests with SENTRY_URL environment variable set
  - It should attempt to send data to sentry
  - Build works otherwise

Change-Id: Ib802851a7b3ac8626033436f60399f134a8425b3
Reviewed-on: https://gerrit.instructure.com/153878
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-14 20:43:00 +00:00
Jeremy Neander 7efc1a5a38 spec: revert yarn workspace commit
test plan:
 * Verify Jenkins passes

Reverts //gerrit.instructure.com/153283

Change-Id: Id148bc7197c85ea15dcc7f2c9035a0fd8cde4803
Reviewed-on: https://gerrit.instructure.com/153800
Tested-by: Jenkins
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
2018-06-14 03:09:58 +00:00
Ryan Shaw 346458c2c9 return the right exit code in yarn workspace-run
... & fix failing package specs
closes:  CORE-1523


Test plan:
* run `yarn workspace-run test`
* it should actually run all the specs for each
  workspace (package/gem/plugin/client-app)
* if there is a failing spec it should actually
  exit with a non-zero exit code and fail the build

Change-Id: Ie09d0a3dfa343013bf7ee09e11132ef529f1b932
Reviewed-on: https://gerrit.instructure.com/153283
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-13 22:58:29 +00:00
Landon Gilbert-Bland a9dde08b7e Fix performance of new permissions page
There are several "improvements" here that make things more performant:

  * No longer using instui buttons. They have proven to be much slower
    then raw html buttons
  * No longer using instui flexbox/flexitem. Doing this in the CSS also
    proved to be much faster
  * Caching icons in LocalStorage so that we don't have to render the
    same svg 400 times
  * Not rendering the MenuItems for buttons for every button in the
    table. Only creating and rendering this component when the button is
    clicked. Note that in the trays we are still creating all the
    MenuItems on every button, otherwise there is problems with focus
    being able to escape the tray, and the performance penaltites are
    not as bad there cause there are significantly fewer buttons

Fixes COMMS-1160

Test Plan:
  * Make sure everything still works (permission button, permission
    tray, role tray, etc). Pay special attention to focus management, as
    there was a lot of hacked together stuff to get focus working
    properly when you changed a setting on any of the buttons (in the
    tray and on the table).
  * Spot check voiceover, it should be better in the tray now. Make sure
    you have the "group items within" and "speak column and row numbers"
    selected in the voiceover utility > web options.
  * Make sure performance is acceptable in the following situations.
    Note that performance will be slightly better when this is run in
    react production mode:
      - Initial Page Load
      - Searching roles
      - Searching Permissions
      - Add tray
      - Permissions Tray
      - Role tray
      - Switching between account and course tabs

Change-Id: Ic488d51ebdc031c2498d234f5d014d6368f1f84b
Reviewed-on: https://gerrit.instructure.com/153197
Tested-by: Jenkins
QA-Review: Sara Chadwick <schadwick@instructure.com>
Reviewed-by: Aaron Kc Hsu <ahsu@instructure.com>
Product-Review: Landon Gilbert-Bland <lbland@instructure.com>
2018-06-13 16:25:14 +00:00
Michael Brewer-Davis b1e8404fce fix expand/contract all buttons in new sLMGB
closes OUT-2232

Test plan:
- enable non-scoring rubrics
- load student LMGB with multiple outcome groups,
  outcomes, and outcome results
- verify that expanding and contracting the groups
  and outcomes works as expected
- verify that after contracting a group and then
  re-expanding, the outcomes within the group
  are contracted
- verify that the expand all and contract all buttons
  at the top of the page are enabled and disabled
  at the appropriate times
  - expand all: should be enabled when any element
    is contracted
  - contract all: should be enabled when any element
    is expanded
- verify that the expand all/contract all buttons
  work as expected

Change-Id: Ifbe02e900459faed8d411afb2bb9410a885a2237
Reviewed-on: https://gerrit.instructure.com/152103
Tested-by: Jenkins
Reviewed-by: Matt Berns <mberns@instructure.com>
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
QA-Review: Dariusz Dzien <ddzien@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-06-06 20:07:47 +00:00
Ryan Shaw e415eaa961 Use yarn workspaces
Run `script/nuke_node.sh` to clean everything up
Run `yarn install` it should install everything for everything
Run `yarn build` and `yarn test` they should work exactly as before

Change-Id: I11a27ff2d705c6cbb3b3f9029dd8b32138706146
Reviewed-on: https://gerrit.instructure.com/151356
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-06-04 20:02:02 +00:00
Steven Burnett e8e65cb54b fix minor issues with imports
Test Plan:
- tests pass and permissions still load

Change-Id: If459e7f1c54cb64d740366e2a8af9d5bac02b88f
Reviewed-on: https://gerrit.instructure.com/152206
Reviewed-by: Landon Gilbert-Bland <lbland@instructure.com>
Reviewed-by: Venk Natarajan <vnatarajan@instructure.com>
Tested-by: Jenkins
Product-Review: Venk Natarajan <vnatarajan@instructure.com>
QA-Review: Venk Natarajan <vnatarajan@instructure.com>
2018-06-01 17:49:26 +00:00
Ryan Shaw 0bd21c9ef9 Make all instUI 5 packages available
in the commits that follow, we start using these new packages so this 
commit has just been split out into its own so we don’t need to worry 
about commit order in the others. It does no harm to make them available
now, before they are used.

Change-Id: I553ce5ca1a81bddd17a5de428a04d424375f62e2
Reviewed-on: https://gerrit.instructure.com/151766
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-30 20:35:08 +00:00
Ryan Shaw 060e9b14c5 Put parse-link-header back in package.json
…since we use it in our code

It used to be there, but somehow someone deleted it on accident

Change-Id: Id516fdb8507887ffed9450869654fc42a4afc415
Reviewed-on: https://gerrit.instructure.com/151898
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-30 19:57:52 +00:00
Ryan Shaw 63990e024c Use ui-icons instead of inst-icons for icon font
closes: CORE-1434

Test plan:
* all the icons should look the same as they did before
* make sure that icons that should flip for RTL (like the icons on 
  The course/user search pagination arrows, the icon to open the
  Submission details tray in new gradebook, the “>” icons to expand
  a submenu for the menus in new gradebook, etc)

Change-Id: I490d2dcd91b1b7ca2a116a1416718cd797f74901
Reviewed-on: https://gerrit.instructure.com/149482
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Reviewed-by: Chris Hart <chart@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-29 20:57:04 +00:00
Brent Burgoyne 85d103df1b fix unnecessary pagination display on user search
if it ever gets in a state where the last page is unknown, then
the state we would never changed back in future searches with
a known last page, causing pagingation to show on single page results.

closes CORE-1461

test plan:
- code review of passing tests should be sufficient

Change-Id: I2067417cca71dbe2e690f60e0205ca4bd0121edf
Reviewed-on: https://gerrit.instructure.com/151752
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-05-29 20:36:19 +00:00
Ryan Shaw 900b40c78d upgrade instUI to 5.10.0 and dedupe
Test plan:
* see https://instructure.design/#CHANGELOG for what changed.
  nothing looks important to us

Change-Id: Ib3477fa160e6f7a6b8039b1c719bbbf2cee11e8e
Reviewed-on: https://gerrit.instructure.com/151522
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-25 20:07:14 +00:00
Augusto Callejas c4c9e764df Configurable proficiency ratings page
closes OUT-1856, OUT-1858, OUT-2239, OUT-2148

This adds configurable proficiency ratings on the account rubrics page.
Persisting these changes will occur in a future patchset (2252).
Validating order will be in a separate patchset (2240).

test plan:
  - with the "non-scoring rubrics" feature flag off, the account rubrics
    page should appear without the proficiency ratings tab
  - with the "non-scoring rubrics" feature flag on, the accounts rubrics
    page should appear with the proficiency tab, if visiting with an
    account with "manage_outcomes" permission (e.g. account admin)
  - create an account role that has "Create and edit assessing rubrics"
    permission enabled but "Manage learning outcomes" disabled by going
    to the account page, click on the "Permissions" link in the left menu,
    then select the "Account Roles" tab to then be able create the role
    and enable the permission above.
  - create an account user by going to the account page and then click
    on the "People" link in the left menu to then be able to
    click on "+ New User". you'll use the email address entered in
    the next step.
  - make that user an account admin by going to the account page,
    click on the "Settings" link in the left menu, then select the
    "Admins" tab, then click on "+ Account Admins". select the new
    role from the drop down menu and enter the email address you used
    in the preivous step
  - confirm with the feature flag enabled, that visiting the account
    rubrics page does not appear with the proficiency tab, if visiting
    with an account without "manage_outcomes" permission (e.g. masquerade
    as the user created above)
  - on the proficiency tab, test error handling:
    * description is required
    * points is required, should be a valid number
    * when saving changes, all fields with errors should be labelled
      with an error text, with the first field receiving focus

Change-Id: Ic52ef9fe9c58cfb215216b3a505ef1fb4b851c68
Reviewed-on: https://gerrit.instructure.com/150841
Reviewed-by: Michael Brewer-Davis <mbd@instructure.com>
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
Tested-by: Jenkins
QA-Review: Dariusz Dzien <ddzien@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-05-24 22:11:09 +00:00
Ryan Shaw efb76cf2fb Upgrade yarn from 1.6.0 to 1.7.0
if you are having problems after this commit you need to either:
“brew upgrade yarn”
Or
“apt-get install yarn” 
Or 
Rebuild your docker container
Or do whatever else you use to manage software version

Change-Id: I8428112b4a44c28edd2608124bff9e01a8e960d9
Reviewed-on: https://gerrit.instructure.com/151423
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-05-24 21:37:04 +00:00
Michael Brewer-Davis 7e70b17d1a new student learning mastery gradebook
closes OUT-1851

Test plan:
With non-scoring rubrics disabled, verify that student learning
mastery gradebook loads normally and is unchanged.

With non-scoring rubrics enabled, verify that new student
learning mastery gradebook loads and matches mockups

Change-Id: If805bc50115a0c8cd0f4b516f6541ab900991eae
Reviewed-on: https://gerrit.instructure.com/150423
Reviewed-by: Frank Murphy <fmurphy@instructure.com>
Tested-by: Jenkins
QA-Review: Andrew Porter <hporter-c@instructure.com>
Product-Review: Sidharth Oberoi <soberoi@instructure.com>
2018-05-24 21:23:07 +00:00
Marc Phillips 489b5d6ecf Add require_scopes field to DevKey Management
Can now set whether a developer key require scopes or not.
Legacy behavior of scopes is to allow dev keys to have
access to all endpoints, this allows for the continuing
behavior.

Fixes: PLAT-3345

Test Plan:
 - Go to a create/upate a key
 - Notice the require scopes checkbox
 - Click the require scopes checkbox so that it is
   toggled off
 - Scopes ui should be removed and saving the key
   persists the state
 - attempt to access an endpoint using the changed
   endpoint that had scopes, it should be able to act
   like a legacy key
 - go back to the key management modal and flip the
   require scopes back to on.
 - attempt to access an endpoint that does not have a
   scope for the dev key, should fail
 - for a legacy key, the scopes ui should be off when
   first editing.

Change-Id: I0a53ff8a44b80081b518d780a8288f4cc4c36027
Reviewed-on: https://gerrit.instructure.com/150216
QA-Review: August Thornton <august@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
Tested-by: Jenkins
2018-05-23 22:23:17 +00:00
Ryan Shaw 4fb263498c upgrade InstUI from 5.8.1 to 5.9.0
Closes:  CORE-1451

Test plan:
* look at https://instructure.design/#CHANGELOG to see if anything
  Looks interesting.
  (I couldn’t see anything that should affect us)

Change-Id: I1cee6c0db65c64fb5f827efbce8d32c03fe1b5a6
Reviewed-on: https://gerrit.instructure.com/151206
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-23 20:49:45 +00:00
Clay Diffrient 0c56a80cc5 Give more memory to karma when it's running
This should make it so our post-merge build starts working again
and reporting new coverage information.

closes CORE-1435

Test Plan:
  - Run `COVERAGE=true yarn run test:karma`
  - It should not fail because of memory issues

Change-Id: I6e103352fa25e130d0ba8072a77c9d81ac11bb85
Reviewed-on: https://gerrit.instructure.com/150666
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-05-23 16:43:37 +00:00
Ryan Shaw 5441e760e9 @inst/ui-icons -> inst-icons in course user search
This introduces @instructure/ui-icons and converts just the account
Course user search stuff to use them instead of the old
‘instructure-icons’ package

Note here is the magic regex I used:
Find: (instructure-icons/lib/)(Line|Solid)(/Icon.*)(Line|Solid)
Replace: @instructure/ui-icons/lib/$2$3

test plan:
* the icons in the course/user search stuff should look/behave (as in,
  Have same tooltips/screnreader labels/etc) the same as before.

Change-Id: I22573aaaad239a9ceef4b5c1c0a610c3e5b7b586
Reviewed-on: https://gerrit.instructure.com/149287
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-17 20:06:33 +00:00
Ryan Shaw a16325e791 Upgrade instUI from 5.7.0 to 5.8.1
Closes: CORE-1417

Even though the PSA that instUI put out about needing to update asap
doesn’t affect us because we already always set the `dir` attribute
on the <html> tag, this upgrades us to that new version so there is
no confusion

Test plan:
* automated builds should pass
* nothing should actually change since there is nothing significant
  In this upgrade other than the new thing that adds the dir=“ltr” 
  attribute for you if you haven’t already

Change-Id: Id7a471265c49c595c7a71a54258218d4062be7b6
Reviewed-on: https://gerrit.instructure.com/150156
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-14 19:14:17 +00:00
wdransfield 3f2326b682 Developer key scopes UI (functioning skeleton)
Closes PLAT-3314

Test Plan
- Enable new developer key FFs
- Navigate to the developer keys page of an account
- Verify all scope groups are rendered in the new
  scopes list component.
- Verify the filter allows filtering by scope
  group name.
- Verify the "Read Only GET" checkbox causes
  all scopes that use GET to be checked.
- Go crazy testing checkboxes and make sure they all work
  logically (i.e. selecting the group level checkbox
  checks all scopes in the group).
- Verify that each group shows a list of methods for
  all selected scopes.
- Verify you can still create developer keys in root accounts
  and site admin.

Change-Id: I5df402ca06740e8a1ff37c21b63d2d6d58720182
Reviewed-on: https://gerrit.instructure.com/149242
Reviewed-by: Marc Alan Phillips <mphillips@instructure.com>
Tested-by: Jenkins
QA-Review: August Thornton <august@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
2018-05-14 16:00:00 +00:00
Ryan Shaw 895cf6dba6 Make it so permissions opts-in to use prettier now
if you set your editor to eslint --fix on save, which is already safe 
be doing, it will also pass anything in this whitelist of dirs to
Opt-in to be prettier formatted too. So you don’t have to wait until
we prettier all the things later and can have consistency among your 
now

Test plan:
* gergich should complain if something in app/jsx/permissions is not
  Prettier formatted

Change-Id: I438d11f25b10ed58e53656e110aa0d1e7fed5660
Reviewed-on: https://gerrit.instructure.com/149583
Tested-by: Jenkins
Reviewed-by: Venk Natarajan <vnatarajan@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-05-09 15:08:32 +00:00
Ryan Shaw 3948fa015e Upgrade InstUI to 5.7.0 from 5.4.1-dev.1
Closes: CORE-1378

(Relevant) Change log / things to test:
Bug Fixes
ui-forms: Preserve FileDrop event during onDrop (e45b70d)
ui-i18n: Fix moment version dependency (b6289c2)
ui-overlays: Fix a11y issues in Tooltip and Popover (352b8ca)
Features
ui-forms,DateInput: Add support for disabled days (c1067ad)
ui-icons,IconX: Updated IconX to be a little smaller (1bdcd86)
ui-layout,View: Add style prop white list (incl backgroundImage) (d8a35ab)
ui-overlays,Tray: Replace timeout with requestAnimationFrame (ddd9096)

Change-Id: I4cc63f322e53bc2bb744d2a11bbdcfab9fbe88dc
Reviewed-on: https://gerrit.instructure.com/149270
Reviewed-by: Jennifer Stern <jstern@instructure.com>
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-08 14:39:13 +00:00
Jeremy Neander 0db6896f79 maintain precision of grades in grade input
fixes GRADE-1098

test plan:
 1. Create an Assignment
    a. with Display Grade as Percentage
    b. worth 9.5 points
 2. Open New Gradebook
 3. Grade a student on this assignment twice
    a. once with 55 (interpreted as percentage)
    b. again with 55% (explicit percentage)
 4. Verify grade is 55%
 5. Verify score is 5.225

Change-Id: Ie48ec7d5b787e864bfd3379e8dc6a4dbebebc2e5
Reviewed-on: https://gerrit.instructure.com/148848
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
Reviewed-by: Shahbaz Javeed <sjaveed@instructure.com>
QA-Review: Shahbaz Javeed <sjaveed@instructure.com>
Product-Review: Matt Goodwin <mattg@instructure.com>
2018-05-03 18:36:03 +00:00
Jeremy Stanley b4e52fff98 switch to uglifyjs-webpack-plugin
Closes: CORE-1361

Dev test plan: it should be possible to build production assets
without consuming 50GB of memory

QA test plan:
* run RAILS_ENV=production bundle exec rake canvas:compile_assets
* run app in prod mode eg: RAILS_ENV=production bundle exec rails s
  (Or however you do it with pow or whatever)
* look at the devtools and make sure you are seeing minified code and it
  no errors or 404s

Change-Id: I247080851c9df0c74b6c59432bc7086ea625df4b
Reviewed-on: https://gerrit.instructure.com/146336
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-02 21:36:55 +00:00
Ryan Shaw 8f05a581c1 Fix so we don’t include 2 copies of all InstUI stuff
If we are going to use a dev build of instUI we have to do this
To make sure everything still shares the same version.

We need to be very careful with our updates to yarn.lock that there
is only ever 1 entry per inst-ui package in the same major version
range. Otherwise our client code will get super bloated and things
will start breaking in subtle unexpected ways (from having 2 copies
of same lib on the page)


Change-Id: Iab90131bae9e10a954ca2d5aef049a90eefb9a39
Reviewed-on: https://gerrit.instructure.com/148809
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-05-01 19:59:23 +00:00
Ed Schiebel 77935f7a54 Add DateTimeInput to planner
The user can now enter a due date and time.

refs ADMIN-297

test plan:
  - load the planner
  - create a new to do
  > expect the time to default to 11:59pm
  - save
  > expect the due time of 11:59 to be shown in the planner
  - edit the item, change the time, save
  > expect the new time to show up in the planner
  - edit the item, delete the date, tab out of the date text box
  > expect a "you must provide a date and time" error message
  > expect the Save button to be disabled
  - pick a date
  > expect the error message to go away
  - save
  > expect the to do to be in the planner at the given date and time

Change-Id: I6759cca675b59acfc200574a1e313f75e1cfda2e
Reviewed-on: https://gerrit.instructure.com/145147
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Christi Wruck
2018-05-01 16:29:51 +00:00
Brent Burgoyne f91658d4bf move canvas-rce to canvas-lms/packages/canvas-rce
closes CORE-994
refs RECNVS-398
refs CORE-1224
closes CORE-1237

test plan:
- yarn install
- smoke test rce
- tests pass

Change-Id: Ieaff024fa89879fac3e7edf99381f46de921cce2
Reviewed-on: https://gerrit.instructure.com/145671
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-05-01 13:46:18 +00:00
Ryan Shaw 8db2c527b1 Get slickGrid to work in RTL
Closes: CORE-1226

This gets both the old gradebook and the new gradezilla gradebook to
work in RTL.

Test plan:
* in both old gradebook and new gradezilla gradebook:
* go to the gradebook in normal LTR interface
* everything should work exactly as before
* turn on the RTL feature flag either in your user settings or by
  turning int on in accounts/x/settings and then setting your lang
  to arabic

Specific things to test:
* try it on both the old gradebook and the new gradezilla gradebook
* try it on a really large gradebook with tons of rows and columns
* try a really small gradebook with less columns than there is screen
  width
* try it in different browsers. Since each browser has different
  scrollLeft handling in RTL, I normalized it. but verify that it
  works in each
* try resizing and reordering columns
* borders and other styles should be flipped to the opposite side in RTL
* make sure keyboard shortcuts (like the left, right, top, down arrow
  keys) work and move you in the right direction in both LTR and RTL
  (Eg: if you are on “assignment 2”, right arrow goes to “assignment 3”
  In LTR but in RTL it goes back to “assignment 1”)
* try to think of other places that might have used the .r<column index>
  or .l<column index> classnames to make sure the use the new, RTL-aware
  ‘.b’ and ‘.f’ (those stand for “back” and “front”) classnames

This change started from this pull request:
https://github.com/mleibman/SlickGrid/pull/666
but there was a lot that still needed to be done there and we needed
change things to handle our frozen columns.

Some interesting trivia:
* in RTL, different browsers have different ways of handling scrollLeft.
  they all show the element scrolled all the way to the right by default
  (So you see the first columns) but chrome tells you scrollLeft is some
  large number to reflect how far from the left you’d have to scroll to
  get there if you scrolled all the way to the right like it should.
  Safari says scrollLeft is 0 by default and then as you scroll left to
  to see the rest of the columns, it counts down and shows
  a negative number. And IE does something else.
  So you have to do some trickery to normalize them all to be a
  consistent value, and that is why this pulled in that NPM module

Change-Id: Id00025db0918cbc2d354e96af88023e70e041e58
Reviewed-on: https://gerrit.instructure.com/144672
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Spencer Olson <solson@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
QA-Review: KC Naegle <knaegle@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-04-30 21:20:54 +00:00
Ed Schiebel 3662e42ec6 Keep to do in a course with other course items
fixes ADMIN-917

test plan:
  - have a student with a course assignment on some date
  - have the student add a to do to the course on the same date
  > expect the planner to show the assignment and the todo in the same
  > grouping

Change-Id: Ice5b796935bfe3f69d05db509696fb2ce7b38cf3
Reviewed-on: https://gerrit.instructure.com/147161
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Christi Wruck
2018-04-25 14:55:21 +00:00
Mysti Sadler 77171b991e Use "build" script for packages pre-install
refs ADMIN-761

When we added canvas-planner to the packages
directory, we set up a prebuild script to
build everything we needed for Canvas that
would run during yarn install.  This causes
canvas-planner to have to do a lot that it
doesn't need to do when we just want the npm
packages to be installed (for the sync-
translations build or for other purposes)
so we're setting a specific build step
instead

Test Plan
- Specs pass

Change-Id: I72a0dc52cd9be1255985d69921d9910ba12e9ffe
Reviewed-on: https://gerrit.instructure.com/147565
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Mysti Sadler <mysti@instructure.com>
QA-Review: Mysti Sadler <mysti@instructure.com>
2018-04-20 18:02:34 +00:00
Ryan Shaw 524a8865f4 Get i18n-js and i18nliner from npm, not vendor
closes:  CORE-1201

test plan:
* the qunit & selenium tests that we have around this should still pass
  (except for that one that had to be changed because the spec was 
  actually expecting the wrong thing and the old code was erroneous)
  
* load the app in fully production build and make sure translations 
  still work

Change-Id: Id06c38f60c1670fb93e85d5479ec747035c1158b
Reviewed-on: https://gerrit.instructure.com/143456
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-04-19 21:34:33 +00:00
Derek Bender 11b30e7fea upgrade yarn to 1.6.0
Change-Id: Icc59c9c43fea079196d9a0dc29b23ac0f1da74c7
Reviewed-on: https://gerrit.instructure.com/147047
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Derek Bender <djbender@instructure.com>
QA-Review: Derek Bender <djbender@instructure.com>
2018-04-19 20:31:06 +00:00
Ryan Shaw 3ffc72eda6 Ensure code sent to browsers is es5
…so it works in safari10 & IE11

Closes: CORE-1280

test plan:
* run yarn
* go into a file in node_modules that is used in a webpack bundle 
  (Eg: node_modules/react-dom/index.js) and change a `var` to a `const` 
  or a `let` and a `function` to an arrow () => function.
* run `yarn webpack-production`
* it should fail with errors

Change-Id: Ic1589d3c1cc266eb5be22cb4716465818d0e98b6
Reviewed-on: https://gerrit.instructure.com/146496
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-04-19 16:11:15 +00:00
Clay Diffrient 3640b3b0cd Bump canvas-rce to v3.1.0-hotfix.0
closes CORE-1288

Test Plan:
  - Add an image to a page using the RCS
  - Select that image in the RCE
  - Select another image from the RCS
  - The image should be replaced with the new one

Change-Id: I83af646010d0cc3579d6d58c4da8081084f6a9af
Reviewed-on: https://gerrit.instructure.com/147106
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-04-18 23:00:52 +00:00
Clay Diffrient 9b74f11a59 Update Add People modal to Inst-UI 5.0
closes CORE-1125

Test Plan:
  - Go to the account level courses page
  - Go to the + for adding people to one of the courses
  - Activate your screen reader
  - You should not be able to escape out of the modal
    that is now open.

Change-Id: I023928990504acb4d02a912381b1fe96733932e6
Reviewed-on: https://gerrit.instructure.com/145765
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-04-05 22:09:28 +00:00
Clay Diffrient 8ddff7aef4 Use new inst-ui menu for more options
closes CORE-1122

Test Plan:
  - Go to the account level user page
  - Using a screenreader go to the "More People Options"
    button at the top.
  - Open the menu
  - VO should trap you inside that menu

Change-Id: Ic6626882625a4d034d09c96d8556c2e3c9922e9a
Reviewed-on: https://gerrit.instructure.com/145743
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-04-05 22:09:22 +00:00
Clay Diffrient c55ff773d7 Make screenreaders alert when search results are loaded
closes CORE-1116
closes CORE-1117

Test Plan:
  - Enable a screenreader
  - Go to the new account level user/course search
  - Search for something
  - The screenreader should indicate to you when results have finished loading
  - This should work for Users and Courses

Change-Id: I4e81a86fb9e9340d3acbdab3e8f28fcbfb42d2cd
Reviewed-on: https://gerrit.instructure.com/145634
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-04-05 22:09:17 +00:00
Cameron Matheson fa70851608 upgrade to apollo 2.1
closes RECNVS-377

Test plan:
  make sure student context cards work

Change-Id: Ib306e0be5d51f68afad0ff112bf745d9e0ad1d5b
Reviewed-on: https://gerrit.instructure.com/145501
Tested-by: Jenkins
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
QA-Review: Collin Parrish <cparrish@instructure.com>
Product-Review: Cameron Matheson <cameron@instructure.com>
2018-04-03 22:05:07 +00:00
Clay Diffrient 0a7c024852 Bump canvas-rce to 3.1.0
closes CORE-1012
closes CORE-1074
closes CORE-722

Test Plan:
  * Changes from 3.0.3
    - Smoke test of RCE, potential UI issues
      (This was adding support for tinymce@4.7.x)
  * Changes from 3.1.0
     - Upload an image
     - Notice that the image thumbnail loads without
       needing a page refresh

Change-Id: I0a0320b487c93b49346c1d2d730c375738b1fa2b
Reviewed-on: https://gerrit.instructure.com/143497
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-03-30 20:46:29 +00:00
Ryan Shaw 33a5bd5a0a Upgrade instUI from 4.7.3 to 4.8.0
Fixes: CORE-1105 CORE-1106 CORE-1174

Test plan (for CORE-1105 CORE-1106):
* using the keyboard, go to /accounts/x/users
* you should be able to hit “enter” to click on the “Act As” or 
  “Send Message” icon links

Test plan (for CORE-1174):
* set your feature flags so you use the RTL layout
* the navigation tray, RCE a11y checker, etc should pop in from
  the opposite side of the page than the did in normal LTR layout

Change-Id: I25d664bfd94970f4bbb37ba8ebe5c72cc9e5b3ff
Reviewed-on: https://gerrit.instructure.com/144969
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-27 20:03:14 +00:00
Ryan Shaw d8014ed53c make feature flags for Right To Left layout
Closes: CORE-1154

There are 2 feature flags here. One a specific user (internal
employees, sales people, contractors, etc) can turn on to see where we
are and what would still need to be done. And the other is for an
account to be able to turn on to let the users in their account that
have their language set to an RTL language (eg: Arabic, Farsi or Hebrew)
see the interface in RTL

This commit is part of a chain of commits. you'll need to apply the ones
that follow-on after this to see most of the actual Right To Left
features, this commit is mainly just to create the feature flag.

Test plan:
* go to your user settings page
* you should see a feature option for Force RTL Layout”
* it should show that it is “in development”
* it should should be hidden: eg: only appears for site admins and not
  For normal users
* turn it on

(if you have this checked out along with the others that follow beind
  this commit)
* navigate around canvas, most things on most pages should be RTL
* you should be able to get an idea of how much more work and what
  Kind of changes we’d still need to make to get it 100%

* now turn off that user feature flag, and go to your account's settings
* turn on the "allow users from RTL languages to see RTL layout"
  account-level feature flag.
* nothing should change for you, it should be LTR like normal
* set your language to either Arabic, Farsi or Hebrew
* now the interface should all be in right to left.
  (again, you'll need to have the follow-on commits to this to see all
  of the RTL changes)

* without either of the feature flags turned on, absolutely nothing
  should be different at all anywhere in the interface.

Change-Id: Ia78d86fa46d2d289b1913c5d1340546d7f6c3a1f
Reviewed-on: https://gerrit.instructure.com/143891
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
2018-03-21 21:09:38 +00:00
Clay Diffrient 71c7ff7160 Handle dependent variables in the theme editor
After the theme editor refactor dependant variables were not
working.  This fixes it.  This also makes it so that
override files are handled properly.

closes CORE-1085

Test Plan:
  - Go to the theme editor with a new theme
  - Change the "Primary Brand Color"
  - "Primary Button" should change as well
  - Preview the changes
  - Change should be reflected after the preview loads
  - Repeat that again, the same behavior should occur.
  - Change the "Primary Button" color and preview
  - The two items should now be "unlinked" and they change
    independent of one another
  - Upload a js override
  - Preview changes
  - Upload a css override
  - Preview changes
  - Both the js and the css fields should be populated

Change-Id: I61572a3c5bdf4f63c82078dff492dc504d0af7bf
Reviewed-on: https://gerrit.instructure.com/142395
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-03-20 20:07:30 +00:00
Ryan Shaw d65246ba97 Convert last remaining code from instUI 3 to 4
updates all the instui components used for these alerts to 4.x
Closes: CORE-762 CORE-732

Change-Id: Ia5af600b5747bfbeca4015d30d2be900700a90ae
Reviewed-on: https://gerrit.instructure.com/143337
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-12 23:20:07 +00:00
Ryan Shaw ad45370766 Upgrade tinymce-a11y-checker to 1.4.0
test plan:
* in canvas, go to a page with a text editor (like a wiki page) and
  click the "a11y checker" button in the editor toolbar
* the widgets that appear in the trays on the right of the page should
  work. look at the trays, the buttons, the text inputs, etc.

Change-Id: I43476620c5a1d8cf666e20b9495dd499791a4ee4
Reviewed-on: https://gerrit.instructure.com/143347
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-12 23:19:47 +00:00
Ryan Shaw f4f60700b8 Upgrade mediaelement to latest master of our fork
Fixes: CORE-1091
show controls when they receive focus (#39)

if controls are visibly hidden, they should still be tabbable for
accessibility, and when they get keyboard-focused, they should become
visible again.
See: https://github.com/instructure/mediaelement/commit/0402b2b76

Change-Id: Ic655d43a64d111662f8d7368f21032664a8aee74
Reviewed-on: https://gerrit.instructure.com/142693
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-12 16:18:05 +00:00
Ryan Shaw 06d3ceb331 git rid of our vendor’ed fork of mediaelement
refs: CORE-24

test plan:
* this net result of this change should mean that we are using the exact
  same code as we were using before, just pulled from github directly
  in our package.json instead of vendored into our repo.
* testing the follow-on commits should show this worked correctly

Change-Id: Ie6d022d5fe8ed1a607f66f9d426c47ec7e8f5b14
Reviewed-on: https://gerrit.instructure.com/142381
Tested-by: Jenkins
Reviewed-by: Simon Williams <simon@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-12 16:17:43 +00:00
Ryan Shaw ec0ed12ffb Use node 8.10.0 instead of 8.9.4
Test plan:
* automated builds should pass
* docker stuff should work

Change-Id: I120e5689b6b219dc295517e92047cdf3f8b5d61e
Reviewed-on: https://gerrit.instructure.com/143022
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-09 18:56:22 +00:00
Clay Diffrient 497fe4d5ea Update to yarn 1.5.1
closes GH-1250

Test Plan:
  - Everything builds

Change-Id: Id51b8997f5ae1b53c24c2b4b616c6956833ed2b5
Reviewed-on: https://gerrit.instructure.com/142553
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Derek Bender <djbender@instructure.com>
Tested-by: Jenkins
2018-03-08 19:53:13 +00:00
Ryan Shaw ff665bf9ab script to upgrade without adding dupes to yarn.lock
because yarn is silly and frequently adds duplicate entries for things
into yarn.lock when it could satisfy everything the app needs with one
version; when you make any changes to package.json, run this script:
`yarn upgrade-and-dedupe` 
to make sure that yarn.lock doesn't add needless duplicates of things.

if yarn ever fixes this issue:
https://github.com/yarnpkg/yarn/issues/579
then this can go away.


test plan:
1. check this out
2. run `yarn upgrade-and-dedupe`
3. push the change that commit makes
4. it should pass jenkins and not introduce any errors

Change-Id: I8c268cc4c7c6ac4474221ce65129a6ef8b261813
Reviewed-on: https://gerrit.instructure.com/142447
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-03-06 20:07:57 +00:00
Ryan Shaw 63a0ccf95d [npm dependencies] update all our npm dependencies
This is just the regular “update all the things” commit.
For things in package.json that we just want the latest version of,
I changed them to a simple major with a carat. (Eg: “8^” or “4^”),
that way you can see easier which things are specifically locked down
To a specific version (or range of versions) for a reason.

Test plan:
* automated specs & build tasks should work

Change-Id: Id7a3f853bd0f7537cc0f08d7dba8d6726b836c44
Reviewed-on: https://gerrit.instructure.com/141653
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-02-23 21:32:43 +00:00
Clay Diffrient 928f334cfb Convert theme editor sidebar to use instui
closes CORE-1017

Test Plan:
  - Enable Theme Editor Refactor feature flag
  - The sidebar tabs (Edit/Upload) should use InstUI
  - On the Edit tab, the accordions should use InstUI
  - When the feature flag is off the jQuery UI stuff
    should be used.

Change-Id: Ic8bfac91d644fc75618f1f0898afbcfcf411c3fd
Reviewed-on: https://gerrit.instructure.com/140561
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-02-22 20:31:59 +00:00
Ryan Shaw 465b36270c [instui 3->4] upgrade navigation_header
Closes: CORE-750

This replaces all the code for the global nav tray
That pops out when you select “courses” “groups” “Help” or your avatar.
It replaces react-tray with InstUI tray and uses instUI components
wherever possible. that means that we need much less custom one-off
css for these things and can just use the instui defaults most of the
time.

Test plan:
* do a regression test on each of the  global nav trays that pops out
  when you select “courses” “groups” “Help” or your avatar

Change-Id: Ib32c6cc9e091ec5cbdbc19ced9fbbd5e2e4bae8f
Reviewed-on: https://gerrit.instructure.com/135354
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
2018-02-21 20:10:41 +00:00
Ed Schiebel ec05f824fc Put finishing touches on planner under canvas
- update README with new instructions
- update how canvas runs sub-package tests
- remove planner's test server

closes ADMIN-742

test plan:
  - when jenkins runs, check to see that planner's tests run too

Change-Id: I2493b65f580c76b28f225f1330e99e1ceb1378b4
Reviewed-on: https://gerrit.instructure.com/139882
Tested-by: Jenkins
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
QA-Review: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-02-21 17:49:03 +00:00
Chris Hart 72c07fe5d5 Upgrade Canvas to INSTUI 4.7.2
Fixes: UIDEV-170

Updates the parts of Canvas that were using
4.7.1 to the 4.7.2 patch release to add a bugfix
for List/ListItem where two badly-scoped CSS selectors were
selecting every element on the Canvas dashboard.

Test plan:
- Confirm ToDo List on Canvas dashboard is working
  as it should
- Confirm the selectors shown in the screenshot in the
  JIRA ticket are now only targeting first and last
  items in the List component (see ToDo List in sidebar):

  https://www.screencast.com/t/cq4W4MGcemn

Change-Id: I16c4bad0ef2bac76d0e9a4d34d6ce9869ab0587c
Reviewed-on: https://gerrit.instructure.com/141100
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
QA-Review: Dan Sasaki <dsasaki@instructure.com>
Product-Review: Chris Hart <chart@instructure.com>
2018-02-15 20:37:02 +00:00
Ryan Shaw 637b8b756d [eslint] have --fix add copyright header for you
Test plan:
* Run eslint —fix against a file that doesn’t have a copyright header
  (Eg: eslint --fix app/coffeescripts/AssignmentDetailsDialog.js )
* it should add the copyright header for you
* run eslint on a file that already has a proper copyright header
* it should not duplicate it

Change-Id: I0bc05b6cc267fb74909f7a0fe0e93ecda1e2136e
Reviewed-on: https://gerrit.instructure.com/140757
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-15 20:01:41 +00:00
Brent Burgoyne 78c60b331f upgrade canvas-rce to 3.0.2
upgrades instructure-ui and fixes a microsoft edge but when inserting
equations.

closes CORE-906

test plan:
- smoke test rce sidebar for inst-ui upgrade
- open an editor in edge
- insert an equation using the equation editor
- it should show the equation, not an X with the alt text

Change-Id: Ieb44771ddbba911598d75b20367b246e6f83fc20
Reviewed-on: https://gerrit.instructure.com/140895
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-02-15 17:54:38 +00:00
Ryan Shaw 97510022cd don’t cp all of canvas-planner’s node_modules dir
this is to prevent canvas from copying everything in canvas-planner’s
node_modules dir into /node_modules/canvas-planner/node_modules

this will mimic the exact same behavior that pushing it to the npm
repository and pulling it from there in canvas’s package.json

test plan:
* do `ls node_modules/canvas-planner/node_modules/jest*`
* you should get: ls: node_modules/canvas-planner/\
  node_modules/jest*: No such file or directory

Change-Id: Ie428b3d0a5d6cc1d9bec89ae00adb3d451dfc916
Reviewed-on: https://gerrit.instructure.com/139907
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-05 22:13:31 +00:00
Brent Burgoyne e5e10b7824 upgrade a11y checker to 1.3.3
fixes untranspiled es6 that was breaking the prod build

closes CORE-972

Change-Id: Ic1068ed2eda81f0167563fb37c8d57473da30338
Reviewed-on: https://gerrit.instructure.com/139858
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-02-05 18:10:22 +00:00
Ed Schiebel 40b876493e Move planner under canvas-lms
closes: CORE-949

this also upgrades us to use what was on canvas-planner master
as of 1pm on 2/1/2018 (specifically 9569cc1)

test plan:
* canvas planner should work
* all automated builds should pass

Change-Id: Iecce81d640c8aacb79189e2b26946613a03d25f2
Reviewed-on: https://gerrit.instructure.com/135947
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-02 23:58:48 +00:00
Ryan Shaw 08b922ca3e Upgrade instUI from 4.7.0 to 4.7.1
closes: CORE-948

Change Log

4.7.1 (2018-01-25)
Bug Fixes
ui-menu: Pass href prop down to ElementType (e876404)

Test plan:
* menus should still work the same as they did before

Change-Id: Ic5817dda6d2fda3adea9905cebcd87bfa356a697
Reviewed-on: https://gerrit.instructure.com/139742
Tested-by: Jenkins
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-02-02 21:22:18 +00:00
Ryan Shaw 8d2d33489e Restore ThemeEditor to how it was before InstUI conversion
Fixes: CORE-856

This is to fix the bug that was found on beta, once we figure out a way
around that we can revert this revert and move forward

this is the result of `git revert 2fce80fe6d 96bfe1f8c2 72ca2dcacb

Test Plan:
  - Go to the theme editor for a theme
  - Make changes to the theme (including stuff inside each of the
    different hidden areas) on the Edit tab
  - Preview changes, after change those fields should reflect the
    new changes
  - Enable global css/js on the account
  - Do the same test as done previously, modifying fields, etc.
  - Switch to the Upload tab and preview changes, changes should
    still apply
  - Upload CSS/JS and preview, changes should apply
  - Upload different CSS/JS, switch to the Edit tab
  - Preview and notice that changes still apply

Revert "Convert Theme Editor Accordion to use Inst UI"
This reverts commit 2fce80fe6d.

Revert "Convert ThemeEditorAccordion to ES class"
This reverts commit 96bfe1f8c2.

Revert "Convert theme editor sidebar to use InstUI"
This reverts commit 72ca2dcacb.

Change-Id: I0ac36b144c325eaa5ae7d8c4ba86b7807aa3431b
Reviewed-on: https://gerrit.instructure.com/139594
Reviewed-by: Tucker McKnight <tmcknight@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Gentry Beckmann <gbeckmann@instructure.com>
2018-01-31 01:25:26 +00:00
Clay Diffrient 464f295a9c Bump tiny-mce-a11y checker to 1.3.2
closes CORE-907

Test Plan:
  - Load up an RCE with a color contrast issue
  - Use the a11y checker to fix that issue
  - Save the RCE entry and reload
  - The change in color should have persisted

Change-Id: Ia699175ec462f9d54c34a4adaad21135a529e8ac
Reviewed-on: https://gerrit.instructure.com/139542
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Tested-by: Jenkins
Product-Review: Robert Lamb <rlamb@instructure.com>
QA-Review: Robert Lamb <rlamb@instructure.com>
2018-01-30 22:42:26 +00:00
Cody Cutrer c715f6fcf7 bump timezone.js
closes CORE-577

test plan:
 * smoke test some datetime pickers, and maybe try a language or two

Change-Id: I808d64c20e89ed287a38fda5f00d61a8f422bae7
Reviewed-on: https://gerrit.instructure.com/139326
Tested-by: Jenkins
Reviewed-by: Rob Orton <rob@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
2018-01-30 20:29:56 +00:00
Clay Diffrient 145763fce5 Revert "Bump tiny-mce-a11y checker to 1.3.2"
This reverts commit 49f73619a8.

Change-Id: I92dacba9822065836fb444cc08d4956e5431e5c2
Reviewed-on: https://gerrit.instructure.com/139541
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
QA-Review: Clay Diffrient <cdiffrient@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
Tested-by: Cody Cutrer <cody@instructure.com>
2018-01-30 19:38:50 +00:00
Clay Diffrient 49f73619a8 Bump tiny-mce-a11y checker to 1.3.2
refs CORE-907

Test Plan:
  - Load up an RCE with a color contrast issue
  - Use the a11y checker to fix that issue
  - Save the RCE entry and reload
  - The change in color should have persisted

Change-Id: Ieabd5f50d437ce5d2bfd82841fa071dcc260e652
2018-01-30 12:21:38 -07:00
Jeremy Neander 249ac38f88 Revert "Temporarily stop running karma tests concurrently"
This reverts commit 518436d223.

Change-Id: I34726aa49a84b2794fcfa4cd020415303db27b9d
Reviewed-on: https://gerrit.instructure.com/138309
Reviewed-by: Derek Bender <djbender@instructure.com>
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-29 19:04:15 +00:00
Jeremy Neander 410e0d8e87 hash webpack module ids
This also removes md5 asset chunk hashing.

test plan:
* task force consensus

Change-Id: Id67efa204bef719fdb10b3a6d429915744ff2044
Reviewed-on: https://gerrit.instructure.com/139415
Reviewed-by: Ed Schiebel <eschiebel@instructure.com>
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-29 18:44:57 +00:00
Jeremy Neander e118ce3972 use md5 to hash webpack bundles
test plan:
* all eyes of the hot potato approve

Change-Id: Idaa349b2a5b526b46bfe72df2673093fb6ff88b3
Reviewed-on: https://gerrit.instructure.com/139120
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
2018-01-25 20:47:55 +00:00
Jeremy Stanley 4ab2e3f9eb Revert "roll back webpack to 3.8.1"
didn't solve the problem on beta

This reverts commit beec413391.

Change-Id: I5d88ee0fea47eccde45847b51c6fa43d2aacc28f
Reviewed-on: https://gerrit.instructure.com/139152
Reviewed-by: Josh Simpson <jsimpson@instructure.com>
QA-Review: Jeremy Stanley <jeremy@instructure.com>
Tested-by: Jeremy Stanley <jeremy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2018-01-25 20:22:38 +00:00
Venk Natarajan 363544197b Bump Instui to 4.7.0
This should fix the combobox in the "edit announcement" view.

Fixes COMMS-725

Test Plan:
* Use Safari and voiceover turned out.  Use the proper safari
  commands to move into the combobox.  (Get a cheatsheet from
  Nathan if needed, don't try just "tab" and "enter", etc.)
* Verify that the section names are read as you navigate up
  and down the menu.
* Here's the changelog for the instui upgrade:
  https://gerrit.instructure.com/#/c/138876/11/CHANGELOG.md
* Find a couple instances of each component mentioned in that
  changelog and make sure they didn't break.

Change-Id: Ic648fa4c50d14947a3ed5ee65a5d158152405856
Reviewed-on: https://gerrit.instructure.com/139101
Tested-by: Jenkins
Reviewed-by: Felix Milea-Ciobanu <fmileaciobanu@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Felix Milea-Ciobanu <fmileaciobanu@instructure.com>
Product-Review: Venk Natarajan <vnatarajan@instructure.com>
2018-01-25 19:41:39 +00:00
Jeremy Stanley beec413391 roll back webpack to 3.8.1
test plan: public/dist/webpack-production/webpack-manifest.json
 should not reuse chunk ids for files such as zh-tw.bundle-xxxxx.js
 that have changed since the previous release

hopefully fixes ADMIN-706

Change-Id: I8cee724422788c86627092eb0dfd7826496c3175
Reviewed-on: https://gerrit.instructure.com/139116
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
QA-Review: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
2018-01-25 19:07:39 +00:00
Ed Schiebel 1c1666191d Bump canvas-planner to v1.0.16
The big change to planner in this version is instui 4.6.0

closes ADMIN-680
refs ADMIN-679

test plan:
  - student_planner_spec.rb selenium tests pass
  - planner seems to work OK

Change-Id: Ia5fc7ad265e3110e7d53100f05446929e34e05b7
Reviewed-on: https://gerrit.instructure.com/137588
Tested-by: Jenkins
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Reviewed-by: Mysti Sadler <mysti@instructure.com>
Reviewed-by: Jon Willesen <jonw+gerrit@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2018-01-17 20:24:12 +00:00
Ryan Shaw 518436d223 Temporarily stop running karma tests concurrently
…until the gradebook team can figure out how to
fix the intermittent failure in the screenreader gradebook tests

Change-Id: Idb2c2e766855fcba747e075fdc53b21c1feaf0ea
Reviewed-on: https://gerrit.instructure.com/138142
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-17 02:43:10 +00:00
Ryan Shaw d8259be7cc speed up JS tests by running them concurrently
closes: CORE-865

In order to get accurate coverage reports (ie: so the coverage numbers 
don’t only reflect a fraction of the total tests), when the COVERAGE 
environment variable is set, it does not split them out into groups to
run concurrently. That way our linters-and-js-master build (which sets
that environment variable) will run the same as it always has and our 
patch-set builds (which run the linters-and-js) will be faster.

Test plan:
* run ‘yarn test’
* it should be a lot faster than it used to be

* look at the linters-and-js build in jenkins for this commit
* it should have test reports for all both groups (coffee, js)
  Of karma tests as well as for the jest tests.

* look at the coverage report after this gets merged. It should be
  the same as it was before

Change-Id: I35147cc84df4afae92c1a73c201667d4d44b5518
Reviewed-on: https://gerrit.instructure.com/136373
Reviewed-by: Simon Williams <simon@instructure.com>
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Tested-by: Jenkins
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-16 19:32:28 +00:00
Jeremy Neander aad75edec7 update parse-decimal-number to 1.0.0
A hack can be removed for parsing numbers now that 1.0.0
incorporates the needed behavior.

test plan:
* verify Jenkins passes

Change-Id: Ifaea8fd348f4f804e9a6042fb392c699badeea6e
Reviewed-on: https://gerrit.instructure.com/138046
Tested-by: Jenkins
Reviewed-by: Derek Bender <djbender@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Jeremy Neander <jneander@instructure.com>
QA-Review: Jeremy Neander <jneander@instructure.com>
2018-01-16 17:39:59 +00:00
Landon Gilbert-Bland 5829f0850a Fix calendar event cutoff for specific time ranges
The actual fix was applied to the fullcalendar package we are using.
This just bumps our local version to apply the fix in canvas-lms. The
fix in fullcalendar can be seen here:
https://github.com/instructure/fullcalendar/pull/1/files

fixes COMMS-268

Test Plan:
  - Navigate to the calendar
  - Create a new 50 minute even (ie, from 8:00 to 8:50) with a title
  - Switch the calendar to week view
  - Notice that the bottom half of the title is not cut off

Change-Id: I084e085d7a97039df7729870271a8691e010e4ba
Reviewed-on: https://gerrit.instructure.com/137608
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
QA-Review: Venk Natarajan <vnatarajan@instructure.com>
Product-Review: Landon Gilbert-Bland <lbland@instructure.com>
2018-01-15 17:10:29 +00:00
Ryan Shaw a33231cf0a let jest know about some of our aliases
…and prevent a giant error from being logged from ui-themable


test plan:
* the “Add Ability To Add External RSS Feeds…” commit that is based
  on top of this should pass jest
* you should not see an errors like this when jest runs:
console.error node_modules/@instructure/ui-themeable/lib/registry.js:342
      TypeError: Cannot read property 'porcelain' of undefined


Change-Id: I8a9583a3d16394a919a223cedfd577aef7f70ec1
Reviewed-on: https://gerrit.instructure.com/137778
Product-Review: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
Reviewed-by: Steven Burnett <sburnett@instructure.com>
2018-01-12 19:16:18 +00:00
Clay Diffrient 14ce1d7a80 Bump tinymce-a11y-checker to 1.3.0
closes CORE-826

Test Plan:
  - Load up an RCE instance in Canvas
  - Use the a11y checker to ensure that the following
    new features work:
      - Elements with only links don't trigger the a11y checker
        (commit: 8f88c941776583ec65dc97862fc0b30db175760e)
      - Captions with only whitespace on tables trigger it
        (commit: f22604c438e31508ca2e8f72317bbe1e07417e60)
      - Modifying a header that is in the wrong order becomes a <p>
        (commit: 5c78821102054fd060a1cf2ced76bbfd45ccb561)
      - The show learn link shouldn't show on headers too long errors
        (commit: 3df571c00fbffe2c2c49b00ab89227dc0c6fb2f5)

Change-Id: I39894cc8f8b9c3d9cbf7695be93335d84da11cfa
Reviewed-on: https://gerrit.instructure.com/137397
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Tucker McKnight <tmcknight@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2018-01-11 20:17:40 +00:00
Steven Burnett 4bcdea0497 Revert "Enforce prettier formatting with eslint"
This reverts commit 7d9ef5c77e.

Change-Id: Ibb49916220b035205609d38a7e1c6dcfee9d04a6
Reviewed-on: https://gerrit.instructure.com/137551
Reviewed-by: Venk Natarajan <vnatarajan@instructure.com>
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Tested-by: Jenkins
Product-Review: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
2018-01-11 00:10:42 +00:00
Ryan Shaw 7d9ef5c77e Enforce prettier formatting with eslint
This makes prettier errors eslint warnings. So when you 
`eslint --fix some/file.js` it will format it with prettier

to try this out, apply this commit and run eslint against your files.
this change will make it so it runs it through prettier and forces
your code to look like prettier would output. But it doesn’t force
Prettier formatting to pass eslint since they are just warnings so if
you really want to format your code differently than prettier you can.

Change-Id: I4f1cdf4962173002a7dc22138be06cc66b842190
Reviewed-on: https://gerrit.instructure.com/131773
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-10 18:09:10 +00:00
Clay Diffrient 2fce80fe6d Convert Theme Editor Accordion to use Inst UI
closes CORE-691

Test Plan:
  - Edit tab works as expected
  - You can move between "accordion" pieces in an
    accessible manner
  - Testing this also proves g/135762 is good as well
Change-Id: Iee447bc97ad5392e74b033b072179f20984e3f6e
Reviewed-on: https://gerrit.instructure.com/135893
Tested-by: Jenkins
QA-Review: Nathan Rogowski <nathan@instructure.com>
Product-Review: Nathan Rogowski <nathan@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
2018-01-08 21:39:24 +00:00
Ryan Shaw 87e15a6089 upgrade instructure-ui to 4.6.0
Closes: CORE-821

Test plan:
* the spacing between the course links in the global tray that is based 
  on this commit should be even

Change-Id: Id93d2cfef065a7bec776843ad3a65adac9e3a032
Reviewed-on: https://gerrit.instructure.com/136879
Tested-by: Jenkins
Reviewed-by: Jennifer Stern <jstern@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-04 18:10:29 +00:00
Ryan Shaw c1c93e1e14 Use node 8.9.4
If you are getting errors about “The engine "node" is incompatible with 
this module. Expected version ">=8.9.4”.” after applying this change,
It means you need upgrade your node to 8.9.4. to do so:

if you use nvm: `nvm install` inside the canvas dir
If you use brew: `brew upgrade node`
If you use apt-get: see https://github.com/nodesource/distributions
If you use docker: rebuild your docker container

Closes: CORE-704

Test plan:
* js tests should pass
* webpack and brandable_css should generate the exact same
  CSS and JS output as before.
* all of our build tooling, including docker stuff, should continue
  to work and use Node 8. 

If you know of something else that needs to be updated to use node 8 
everywhere, let me know

Change-Id: Ic019710c219d8b8c627ce03e0dffde731cfa2856
Reviewed-on: https://gerrit.instructure.com/136802
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-03 20:41:37 +00:00
Brent Burgoyne fa9e6fbc3a upgrade d3 to latest 3.x version
the previous version caused an error when building native
dependencies during the yarn install when using node 8.

refs CORE-704

test plan:
- ensure d3 charts in gradezilla/OutcomeColumnView render correctly
- ensure d3 charts in gradebook/OutcomeColumnView render correctly
- ensure d3 charts in grade_summary/OutcomeLineGraphView render
  correctly
- ensure d3 charts in client_apps/canvas_quizzes render correctly
- yarn install runs without errors using latest node 8 lts

Change-Id: Ib2f8d4acab6060795b50e545eb64f324587b6300
Reviewed-on: https://gerrit.instructure.com/134476
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Leo Abner <rabner@instructure.com>
Product-Review: Brent Burgoyne <bburgoyne@instructure.com>
2018-01-03 20:40:37 +00:00
Ryan Shaw e500f77ef0 Update yarn/npm dependencies
this will make it so we can use karma with the latest node. once the 
commit to upgrade d3 is merged, that was the only other thing we needed
to do to have everything working on node 8.


Change-Id: I820b27ee3da38818b69554c6e409a2177370ca34
Reviewed-on: https://gerrit.instructure.com/136752
Tested-by: Jenkins
Reviewed-by: Brent Burgoyne <bburgoyne@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2018-01-03 16:56:54 +00:00
Clay Diffrient 1c3b09f3a9 Bump canvas-rce to 2.6.3
closes CORE-809

Test Plan:
  - Add an equation to an RCE instance
  - There should not be a border around it

Change-Id: I9ee6ba8937035c925857825b9afe94e37c8e0f52
Reviewed-on: https://gerrit.instructure.com/136637
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Tested-by: Jenkins
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Product-Review: Clay Diffrient <cdiffrient@instructure.com>
2017-12-29 21:07:15 +00:00
Ryan Shaw f2240b0985 move jest config to it’s own file
Change-Id: I0071e39fdde33a7c14e7360e31751e5329be5fff
Reviewed-on: https://gerrit.instructure.com/136372
Tested-by: Jenkins
Reviewed-by: Clay Diffrient <cdiffrient@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2017-12-28 21:02:03 +00:00
Clay Diffrient 6b77eaebfd Add @instructure/ui-themes and @instructure/ui-themeable
Change-Id: I3b1ae6e375eb683407de7a2db68ca6db42723474
Reviewed-on: https://gerrit.instructure.com/136333
Reviewed-by: Steven Burnett <sburnett@instructure.com>
Product-Review: Steven Burnett <sburnett@instructure.com>
QA-Review: Steven Burnett <sburnett@instructure.com>
Tested-by: Jenkins
2017-12-21 16:56:39 +00:00
Ed Schiebel 11950bbeb2 Bump planner to v1.0.14
closes ADMIN-623

test plan
  - planner's selenium specs pass
  - planner seems to work like you'd expect
  - the changes in ADMIN-622, g/136011 are evident

Change-Id: I46fca8359f85dbc8ab3b0ed72769e33b9d5b1402
Reviewed-on: https://gerrit.instructure.com/136021
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
QA-Review: Deepeeca Soundarrajan <dsoundarrajan@instructure.com>
Product-Review: Ed Schiebel <eschiebel@instructure.com>
2017-12-20 18:50:44 +00:00
Jeremy Neander 8d26b51a3f update @instructure/ui-core to 4.5.0
closes GRADE-737

test plan:
* ensure Jenkins passes
* verify Canvas is not totally borked

Change-Id: I05907db24eeed2791b6dd755cca8e8a224f408df
Reviewed-on: https://gerrit.instructure.com/136186
Tested-by: Jenkins
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2017-12-20 00:23:52 +00:00
Ryan Shaw d4b0982c33 Upgrade ui-core from 4.2.0 to 4.4.0
would be good to get this in before anyone does more QA on all the
instui4 commits

Change-Id: Ief71e4a76c009836910584d4d05cc219f6d38565
Reviewed-on: https://gerrit.instructure.com/135768
Tested-by: Jenkins
Reviewed-by: Jeremy Neander <jneander@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2017-12-18 17:59:33 +00:00
Ryan Shaw 4e64e18fd5 publish jUnit test result file from karma tests
Test plan:
* run `yarn test`
* there should be xml file in coverage-js/karma-test-results.xml
  With the spec results that we will use for Jenkins builds

Change-Id: Ic68de197d2b52dbccdf58dc2d148aef1f2ca2646
Reviewed-on: https://gerrit.instructure.com/135949
Tested-by: Jenkins
Reviewed-by: Robert Lamb <rlamb@instructure.com>
Product-Review: Ryan Shaw <ryan@instructure.com>
QA-Review: Ryan Shaw <ryan@instructure.com>
2017-12-18 15:44:53 +00:00