Skip to content

Conversation

@nicknytko
Copy link
Contributor

Fixes #38 by renaming the option allowDangerousHTML to allowDangerousHtml. The old option is still acceptable, but outputs a deprecation warning on the first call to factory(). Also updates docs and adds a test case for the renamed option.

Copy link
Member

@wooorm wooorm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wonderful! One suggestion

Co-Authored-By: Titus <tituswormer@gmail.com>
@nicknytko nicknytko requested a review from wooorm April 3, 2020 16:02
@wooorm wooorm merged commit 15d9c87 into syntax-tree:master Apr 3, 2020
@wooorm wooorm added ⛵️ status/released 🗄 area/interface This affects the public interface 🦋 type/enhancement This is great to have 🧒 semver/minor This is backwards-compatible change labels Apr 3, 2020
@wooorm
Copy link
Member

wooorm commented Apr 3, 2020

Released, thanks @nicknytko!

nicknytko added a commit to PrairieLearn/PrairieLearn that referenced this pull request Nov 9, 2020
This was changed in syntax-tree/mdast-util-to-hast#39

Currently emits a harmless warning, but the option has been renamed and the old name is deprecated.
mwest1066 pushed a commit to PrairieLearn/PrairieLearn that referenced this pull request Nov 13, 2020
This was changed in syntax-tree/mdast-util-to-hast#39

Currently emits a harmless warning, but the option has been renamed and the old name is deprecated.
mwest1066 pushed a commit to PrairieLearn/PrairieLearn that referenced this pull request Jan 2, 2021
* Update deprecated mdast option

This was changed in syntax-tree/mdast-util-to-hast#39

Currently emits a harmless warning, but the option has been renamed and the old name is deprecated.

* Fix leading, trailing code in Python grader

* nit

* fix newline
frankyhao added a commit to PrairieLearn/PrairieLearn that referenced this pull request Jan 19, 2021
* Python autograder: Add tensorflow v2.3.0 (#3365)

* Revert "Python autograder: Add tensorflow v2.3.0 (#3365)"

This reverts commit 46e6c5578cc8dffa9c229f4bb8a9332ca902316e.

* Add PuLP package to grader-python (#3371)

* C grader: formatting changes, output size limit and better null handling (#3366)

* C Grader: better formatting of default message if expected string has line breaks.

* C Grader: minor changes to avoid null name or message in tests.

* C Grader: program output limit size.

* Added documentation for size_limit argument in C grader.

* Better handling of non-string outputs in C grader.

* Python autograder: Upgrade pip (#3372)

* Python autograder: Upgrade pip

* Python grader: Add tensorflow

Co-authored-by: ctessum <ctessum@penguin>

* Update FAQ for Docker Toolbox deprecation (#3375)

* Add script to reassign questions to subdirectories (#3378)

* Add subdirectory reassignment.

* rename

* Add access control example for CBTF exams with outside students (#3381)

* Add access control example for CBTF exams with outside students

* Clarify order and timing

* Split the extra-CBTF-rules into its own section

* Fix section hierarchy in docs (#3382)

* Fix section links in docs (#3383)

* Bump chokidar from 3.4.2 to 3.4.3 (#3446)

Bumps [chokidar](https://github.com/paulmillr/chokidar) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/paulmillr/chokidar/releases)
- [Commits](https://github.com/paulmillr/chokidar/compare/3.4.2...3.4.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.744.0 to 2.783.0 (#3444)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.744.0 to 2.783.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.744.0...v2.783.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/fs-extra from 9.0.1 to 9.0.2 (#3443)

Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.1 to 9.0.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sinon from 9.0.3 to 9.2.1 (#3442)

Bumps [sinon](https://github.com/sinonjs/sinon) from 9.0.3 to 9.2.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinonjs/sinon/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump fabric from 4.1.0 to 4.2.0 (#3441)

Bumps [fabric](https://github.com/fabricjs/fabric.js) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/fabricjs/fabric.js/releases)
- [Changelog](https://github.com/fabricjs/fabric.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fabricjs/fabric.js/compare/v4.1.0...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nodemon from 2.0.4 to 2.0.6 (#3439)

Bumps [nodemon](https://github.com/remy/nodemon) from 2.0.4 to 2.0.6.
- [Release notes](https://github.com/remy/nodemon/releases)
- [Commits](https://github.com/remy/nodemon/compare/v2.0.4...v2.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @fortawesome/fontawesome-free from 5.14.0 to 5.15.1 (#3438)

Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 5.14.0 to 5.15.1.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/5.14.0...5.15.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.3.3 to 8.4.2 (#3437)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.3.3 to 8.4.2.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.3.3...pg@8.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump bootstrap from 4.5.2 to 4.5.3 (#3436)

Bumps [bootstrap](https://github.com/twbs/bootstrap) from 4.5.2 to 4.5.3.
- [Release notes](https://github.com/twbs/bootstrap/releases)
- [Commits](https://github.com/twbs/bootstrap/compare/v4.5.2...v4.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump jsdoc from 3.6.5 to 3.6.6 (#3435)

Bumps [jsdoc](https://github.com/jsdoc/jsdoc) from 3.6.5 to 3.6.6.
- [Release notes](https://github.com/jsdoc/jsdoc/releases)
- [Changelog](https://github.com/jsdoc/jsdoc/blob/3.6.6/CHANGES.md)
- [Commits](https://github.com/jsdoc/jsdoc/compare/3.6.5...3.6.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ajv from 6.12.4 to 6.12.6 (#3433)

Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.12.4 to 6.12.6.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](https://github.com/ajv-validator/ajv/compare/v6.12.4...v6.12.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.4 to 7.14.5 (#3431)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.4 to 7.14.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump chart.js from 2.9.3 to 2.9.4 (#3430)

Bumps [chart.js](https://github.com/chartjs/Chart.js) from 2.9.3 to 2.9.4.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v2.9.3...v2.9.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump uuid from 8.3.0 to 8.3.1 (#3428)

Bumps [uuid](https://github.com/uuidjs/uuid) from 8.3.0 to 8.3.1.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v8.3.0...v8.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump highlight.js from 10.1.2 to 10.3.2 (#3426)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 10.1.2 to 10.3.2.
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/10.3.2/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/10.1.2...10.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump moment from 2.27.0 to 2.29.1 (#3421)

Bumps [moment](https://github.com/moment/moment) from 2.27.0 to 2.29.1.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.27.0...2.29.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump socket.io-client from 2.3.0 to 2.3.1 (#3417)

Bumps [socket.io-client](https://github.com/Automattic/socket.io-client) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/Automattic/socket.io-client/releases)
- [Changelog](https://github.com/socketio/socket.io-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Automattic/socket.io-client/compare/2.3.0...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.1 to 2.7.2 in /graders/python (#3412)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump beautifulsoup4 from 4.9.2 to 4.9.3 in /graders/python (#3389)

Bumps [beautifulsoup4](http://www.crummy.com/software/BeautifulSoup/bs4/) from 4.9.2 to 4.9.3.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 59.0.0 to 64.0.0 (#3461)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 59.0.0 to 64.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v59.0.0...v64.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @octokit/rest from 18.0.4 to 18.0.9 (#3460)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.4 to 18.0.9.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.4...v18.0.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.4 to 7.14.6 (#3457)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.4 to 7.14.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.8.1 to 7.13.0 (#3456)

Bumps [eslint](https://github.com/eslint/eslint) from 7.8.1 to 7.13.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.8.1...v7.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mocha from 8.1.3 to 8.2.1 (#3454)

Bumps [mocha](https://github.com/mochajs/mocha) from 8.1.3 to 8.2.1.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v8.1.3...v8.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump passport-azure-ad from 4.2.1 to 4.3.0 (#3425)

Bumps [passport-azure-ad](https://github.com/AzureAD/passport-azure-ad) from 4.2.1 to 4.3.0.
- [Release notes](https://github.com/AzureAD/passport-azure-ad/releases)
- [Changelog](https://github.com/AzureAD/passport-azure-ad/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/AzureAD/passport-azure-ad/compare/v4.2.1...v4.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump three from 0.120.1 to 0.122.0 (#3424)

Bumps [three](https://github.com/mrdoob/three.js) from 0.120.1 to 0.122.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @prairielearn/prairielib from 1.10.4 to 1.11.0 (#3423)

Bumps @prairielearn/prairielib from 1.10.4 to 1.11.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump archiver from 5.0.0 to 5.0.2 (#3420)

Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.0.0 to 5.0.2.
- [Release notes](https://github.com/archiverjs/node-archiver/releases)
- [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/archiverjs/node-archiver/compare/5.0.0...5.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump http-proxy-middleware from 1.0.5 to 1.0.6 (#3419)

Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 1.0.5 to 1.0.6.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v1.0.5...v1.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/chai from 4.2.12 to 4.2.14 (#3418)

Bumps [@types/chai](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chai) from 4.2.12 to 4.2.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chai)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.0.2 to 4.0.5 (#3414)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.2 to 4.0.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.2...v4.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mathjax from 3.1.0 to 3.1.2 (#3416)

Bumps [mathjax](https://github.com/mathjax/MathJax) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/mathjax/MathJax/releases)
- [Commits](https://github.com/mathjax/MathJax/compare/3.1.0...3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump bokeh from 2.2.1 to 2.2.3 in /graders/python (#3400)

Bumps [bokeh](https://github.com/bokeh/bokeh) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/bokeh/bokeh/releases)
- [Changelog](https://github.com/bokeh/bokeh/blob/2.2.3/CHANGELOG)
- [Commits](https://github.com/bokeh/bokeh/compare/2.2.1...2.2.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pulp from 2.3 to 2.3.1 in /environments/centos7-plbase (#3402)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3 to 2.3.1.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pulp from 2.3 to 2.3.1 in /graders/python (#3401)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3 to 2.3.1.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.1 to 2.7.2 in /environments/centos7-plbase (#3404)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Update deprecated mdast option (#3453)

This was changed in https://github.com/syntax-tree/mdast-util-to-hast/pull/39

Currently emits a harmless warning, but the option has been renamed and the old name is deprecated.

* Bump mkdocs-material from 6.0.1 to 6.1.4 in /environments/centos7-plbase (#3464)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.0.1 to 6.1.4.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.0.1...6.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.4.2 to 8.5.1 (#3462)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.4.2 to 8.5.1.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.4.2...pg@8.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/node from 14.6.3 to 14.14.7 (#3455)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.6.3 to 14.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Fix sync info button refreshing page on click (#3471)

* Fix client files access when no filename provided (#3474)

* Fix client files access when no filename provided

Fixes #3349

* Fix missing require()

* Fix array_agg call in groups_uid_list sproc (#3481)

* Fixes array_agg call in groups_uid_list sproc.

* Typo

* More elegant solution.

* Set submission to gradable when uploading grades (#3521)

* Fix thin lines in math on Chrome/Windows (#3520)

* Fix thin lines in math on Chrome/Windows

Fixes #3086

* remove svg hack

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Fix pl-dropdown to allow unescaped values (#3524)

* Fix pl-dropdown to allow unescaped values

* Updated submitted and correct values.

Co-authored-by: Jonatan Schroeder <jonatan@cs.ubc.ca>

* Fix unicode characters in server.py (#3523)

* Fix unicode characters in server.py

* add unicode flag to py trampoline

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Set instance question to complete when new grade is uploaded. (#3522)

* Set submission to gradable if grade uploaded.

* Set instance question to complete if grade uploaded.

* Fix Show/Hide answer button in instructor panel with Edge Chromium (#3528)

* Bump ini from 1.3.5 to 1.3.7 (#3527)

Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Security] Bump highlight.js from 10.3.2 to 10.4.1 (#3519)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 10.3.2 to 10.4.1. **This update includes a security fix.**
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/master/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/10.3.2...10.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.6 to 7.14.7 (#3514)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.6 to 7.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump debug from 4.1.1 to 4.3.1 (#3511)

Bumps [debug](https://github.com/visionmedia/debug) from 4.1.1 to 4.3.1.
- [Release notes](https://github.com/visionmedia/debug/releases)
- [Commits](https://github.com/visionmedia/debug/compare/4.1.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump three from 0.122.0 to 0.123.0 (#3510)

Bumps [three](https://github.com/mrdoob/three.js) from 0.122.0 to 0.123.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.783.0 to 2.800.0 (#3509)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.783.0 to 2.800.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.783.0...v2.800.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/mocha from 8.0.3 to 8.0.4 (#3506)

Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump archiver from 5.0.2 to 5.1.0 (#3505)

Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.0.2 to 5.1.0.
- [Release notes](https://github.com/archiverjs/node-archiver/releases)
- [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/archiverjs/node-archiver/compare/5.0.2...5.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 64.0.0 to 65.0.0 (#3504)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 64.0.0 to 65.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v64.0.0...v65.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump http-status from 1.4.2 to 1.5.0 (#3503)

Bumps [http-status](https://github.com/adaltas/node-http-status) from 1.4.2 to 1.5.0.
- [Release notes](https://github.com/adaltas/node-http-status/releases)
- [Changelog](https://github.com/adaltas/node-http-status/blob/master/CHANGELOG.md)
- [Commits](https://github.com/adaltas/node-http-status/compare/v1.4.2...v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.13.0 to 7.14.0 (#3500)

Bumps [eslint](https://github.com/eslint/eslint) from 7.13.0 to 7.14.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.13.0...v7.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.0.5 to 4.1.2 (#3496)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.5 to 4.1.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.5...v4.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sphinx from 3.2.1 to 3.3.1 in /environments/centos7-plbase (#3497)

Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 3.2.1 to 3.3.1.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/3.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v3.2.1...v3.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pycryptodome from 3.9.8 to 3.9.9 in /environments/centos7-plbase (#3498)

Bumps [pycryptodome](https://github.com/Legrandin/pycryptodome) from 3.9.8 to 3.9.9.
- [Release notes](https://github.com/Legrandin/pycryptodome/releases)
- [Changelog](https://github.com/Legrandin/pycryptodome/blob/master/Changelog.rst)
- [Commits](https://github.com/Legrandin/pycryptodome/compare/v3.9.8...v3.9.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mkdocs-material from 6.1.4 to 6.1.6 in /environments/centos7-plbase (#3494)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.1.4 to 6.1.6.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.1.4...6.1.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.14.0 to 7.15.0 (#3536)

Bumps [eslint](https://github.com/eslint/eslint) from 7.14.0 to 7.15.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.14.0...v7.15.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/mocha from 8.0.4 to 8.2.0 (#3535)

Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.4 to 8.2.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 64.0.0 to 66.0.0 (#3531)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 64.0.0 to 66.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v64.0.0...v66.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs from 15.4.1 to 16.1.1 (#3515)

Bumps [yargs](https://github.com/yargs/yargs) from 15.4.1 to 16.1.1.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v15.4.1...v16.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump supports-color from 7.2.0 to 8.0.0 (#3501)

Bumps [supports-color](https://github.com/chalk/supports-color) from 7.2.0 to 8.0.0.
- [Release notes](https://github.com/chalk/supports-color/releases)
- [Commits](https://github.com/chalk/supports-color/compare/v7.2.0...v8.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump file-type from 15.0.0 to 16.0.1 (#3459)

Bumps [file-type](https://github.com/sindresorhus/file-type) from 15.0.0 to 16.0.1.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v15.0.0...v16.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs-parser from 19.0.4 to 20.2.4 (#3463)

Bumps [yargs-parser](https://github.com/yargs/yargs-parser) from 19.0.4 to 20.2.4.
- [Release notes](https://github.com/yargs/yargs-parser/releases)
- [Changelog](https://github.com/yargs/yargs-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs-parser/compare/v19.0.4...v20.2.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/fs-extra from 9.0.2 to 9.0.5 (#3534)

Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.2 to 9.0.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/node from 14.14.7 to 14.14.13 (#3532)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.7 to 14.14.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump diff from 4.0.2 to 5.0.0 (#3490)

Bumps [diff](https://github.com/kpdecker/jsdiff) from 4.0.2 to 5.0.0.
- [Release notes](https://github.com/kpdecker/jsdiff/releases)
- [Changelog](https://github.com/kpdecker/jsdiff/blob/master/release-notes.md)
- [Commits](https://github.com/kpdecker/jsdiff/compare/v4.0.2...v5.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Use SVG output for MathJax on Safari (#3545)

* Use SVG output for MathJax on Safari

Resolves #3540

* Fix linter

* Check for empty user-agent

* Check for non-null userAgent

* Add setting to change course git repos and branches (#3262)

* Adding remote address update for any repos that have been cloned

* Editing types to git sync options

* Updating comment

* Reverting sync4 --> sync2, as unintentionally modified

* Adding some branch column scaffolding

* Adding new branch entry to pl_courses

* Adding branch to courses insert query

* Now switches to configured branch during cloning or syncing

* Adding branch form submission when creating new course

* Adding branch in as option for course creation

* Updating database expectation

* Reverting data accidentally introduced on merge

* Reverting additional line

* Optimizing code and renaming config variable

* Adding default migration value of "master"

* Updating description of sync set

* Updating database table schema

* Adding default variable to include placeholder

* Adding placeholder back in

* Renamed default to placeholder, added in typeof checks as assuming variables is delicate in EJS

* Abstracting placeholder logic to higher level

* Fixed bug

* Making coding style consistent

* Adding remote address update for any repos that have been cloned

* Editing types to git sync options

* Updating comment

* Reverting sync4 --> sync2, as unintentionally modified

* Adding some branch column scaffolding

* Adding new branch entry to pl_courses

* Adding branch to courses insert query

* Now switches to configured branch during cloning or syncing

* Adding branch form submission when creating new course

* Adding branch in as option for course creation

* Updating database expectation

* Reverting data accidentally introduced on merge

* Reverting additional line

* Optimizing code and renaming config variable

* Adding default migration value of "master"

* Updating description of sync set

* Updating database table schema

* Adding default variable to include placeholder

* Adding placeholder back in

* Renamed default to placeholder, added in typeof checks as assuming variables is delicate in EJS

* Abstracting placeholder logic to higher level

* Fixed bug

* Making coding style consistent

* Update courses_update_column.sql

* Removing placeholder logic

* Assuming locals.course.branch is always valid

* Removing branch column validation

* Removing missed placeholder logic

* Removing missed placeholder logic

* Removed config default branch option, as locals.course.branch should be trusted

* Making more succinct

* Adding fallback default back to stop failure when branch not defined

* Took out config option

* Update pages/administratorOverview/courseInsertForm.ejs

Co-authored-by: Matthew West <mwest@illinois.edu>

* Adding default course repo branch to config

* Fixing syntax

Co-authored-by: Matthew West <mwest@illinois.edu>

* Add trust proxy config option (#3517)

* C autograder: minor fixes in cases where a test is worth more than one point. (#3544)

* C Grader: better formatting of default message if expected string has line breaks.

* C Grader: minor changes to avoid null name or message in tests.

* C Grader: program output limit size.

* Added documentation for size_limit argument in C grader.

* Better handling of non-string outputs in C grader.

* C Grader: minor change to support compilation worth no points.

* C autograder bugfix: proper handling of test_run if max_points is not the default 1.

* Use numeric version of points instead of boolean.

* Better message if program's output is blank.

* Allow course-level extensions for elements (#2507)

* initial draft

* lint lint lint

* be more sneaky with extensions in data

* remove yucky whitespace

* remove spurious whitespace deletion

* change caching behaviour, return python modules as namedtuple

* add example question to assessment

* Apply suggestions from code review

Co-authored-by: Nathan Walters <nwalters512@gmail.com>

* allow extension client files

* add initial docs draft

* fix formatting

* missing doublequote

* Update elementExtensions.md

* rewrite with async/await

* lint

* add tests

* update demo question text

* Apply suggestions from code review

Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>

* fixes from James's review

* add example extension to pl-graph

* clean up code to use async lib

* remove courseData param

* fix typechecker

* lint lint lint

* allow extension chunks

* clean code and fix silly mistakes

* ok i'm pretty certain this should be working now

* use centered fd

* add back checks for nondirectories

* update migration number

Co-authored-by: Nathan Walters <nwalters512@gmail.com>
Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>

* Add doc note about preventing 100 credit from locking question (#3285)

As noted in https://github.com/PrairieLearn/PrairieLearn/issues/3191 it would be ideal to get a real option for this rather than a workaround...

* Store user files in S3 rather than on disk (#3091)

* Introducing S3 extension to file store API

* Adding default storage type to file-store API

* Removing question ID from insert

* Reverting assessment id

* Reverting assessment id

* Changing fileStore function to anticipate buffer data type

* Removing next, as introduces front-end bug and adding error handling

* Removing unneeded code

* Removing on casecade delete

* Removing comment

* Removed unnecessary relationship and field

* Fixing semantic and syntax error

* Removing unnecessary code

* Adding back in error

* Unify AWS config loading

* Remove stale module

* Introducing new mock s3 bucket

* Importing S3/AWS packages from lib/aws.js

* Adding GET s3 method and TEMPORARILY hardcoding s3rver configuration for development

* Remove redundant load

* Convert lib/aws.init() to async

* Fixing type error

* Removing hardcoded development purpose code, adding new GET method commenting

* Taking out AWS object instantiation as now in lib/aws.js

* Renaming migration

* Removing code comments and error from typo

* Assuming buffer type for S3 uploads

* Running init in each s3 function

* Renaming enum file

* Fixing typo

* Moving init() to file-store

* Removing init function calls

* Declaring enum instead of text field in sql file insert

* Fix: Casting storage_type text to enum

* Moving init() and adding await

* Fixing enum naming mistake

* Using filesystem storage when editing file contents

* Restoring b64 encode unicode logic that I accidentally took out

* Removing extra param for query

* Making get return type consistent in api, fixing likely async error

* Fixing async issue with s3.getObject()

* Removing createReadStream now that promisified

* Returning s3 object buffer from promise

* Anticipating s3 files as buffers

* Fixing linting

* Expecting buffer as return type

* Moving line that storage_type falls on for db test diff

* Taking init() out for aws config

* Taking init() out for aws config (linting)

* Updating function comment and adding back init()

* Moving errors into s3 and filesystem branches

* Restoring original data structure on fileStore.get()

* Removing unnecessary code

* Removing old return statement

* Update pages/studentAssessmentInstanceFile/studentAssessmentInstanceFile.js

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Adding new line

* Fixing bug

* Writing new test to ensure deprecated files can be fetched

* Removing lint

* Removing deprecated file after test, as interferes with later assertions

* Adding additional test for instance question

* Initializing AWS library in test harness

* Incremening test numbers

* Update lib/config.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Update docker/start_s3rver.sh

Co-authored-by: Matthew West <mwest@illinois.edu>

* Update lib/file-store.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Keeping comment together with function

* Re-using else/if logic

* Updating config property reference

* Renaming filename

* Adding default storage type

* Removing unused block

* Removing extra line

* Adding option to return readable stream from file store API

* Removing duplicate code

* Implementing stream for reading files

* Defaulting to false for get() to return file with buffer

* Changing param boolean to return stream

* Fixing missed call param

* Replacing boolean with string for param option

* Fixing bug

* Update lib/workspace.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Adding default arg

* Update tests/testHomework.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Substiting sync logic for async

* Renaming migration

* Fixing comment

* Using promises property for async filesystem calls

* rename bucket prairielearn.dev.file-store -> file-store

* rename enum_file_storage -> enum_file_storage_type

* fix error handling in lib/aws

* remove circular require() config<->file-store

* small cleanups

* fix filename in get()

* remove spurious change to lib/workspace

* remove duplicate aws.init() in helperServer

* fix repeated migration index

* fix async route handler

* fix tests to do full FileStorage and S3 uploads

* fix linter

Co-authored-by: Tim Yang <timothy.d.yang@gmail.com>
Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>
Co-authored-by: Matthew West <mwest@illinois.edu>

* Add old feedback to manual grading download file (#3543)

* Fix repeated migration index 221 (#3554)

* Upgrade to Python 3.8, R 4.0, and NodeJS 14 (#3541)

* Upgrade to Python 3.8 and NodeJS 14

This changes the base image from CentOS (discontinued) to Amazon Linux.

Python is now being installed with https://github.com/conda-forge/miniforge

* Update python path for linter

* Remove need for init files to set PATH

* Update graders/python to Python 3.8

* Fix warning in questions/demo/randomPlot

* Add news item

* Use R 3.6 from EPEL, rather than 3.4

* Install CLI-only version of emacs

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Use R 4.0 from conda, rather than 3.6

* Re-enable installation of r-requirements.R

* Simplify R package installation

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Bump pulp from 2.3.1 to 2.4 in /environments/plbase (#3563)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3.1 to 2.4.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3.1...2.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump recommonmark from 0.6.0 to 0.7.1 in /environments/plbase (#3561)

Bumps [recommonmark](https://github.com/rtfd/recommonmark) from 0.6.0 to 0.7.1.
- [Release notes](https://github.com/rtfd/recommonmark/releases)
- [Changelog](https://github.com/readthedocs/recommonmark/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rtfd/recommonmark/compare/0.6.0...0.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.2 to 2.7.3 in /environments/plbase (#3560)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.2 to 2.7.3.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.2...2.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sympy from 1.6.2 to 1.7.1 in /environments/plbase (#3559)

Bumps [sympy](https://github.com/sympy/sympy) from 1.6.2 to 1.7.1.
- [Release notes](https://github.com/sympy/sympy/releases)
- [Commits](https://github.com/sympy/sympy/compare/sympy-1.6.2...sympy-1.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mkdocs-material from 6.1.6 to 6.1.7 in /environments/plbase (#3562)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.1.6 to 6.1.7.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.1.6...6.1.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump lxml from 4.5.2 to 4.6.2 in /environments/centos7-plbase (#3495)

Bumps [lxml](https://github.com/lxml/lxml) from 4.5.2 to 4.6.2.
- [Release notes](https://github.com/lxml/lxml/releases)
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt)
- [Commits](https://github.com/lxml/lxml/compare/lxml-4.5.2...lxml-4.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ansi2html from 1.5.2 to 1.6.0 in /environments/centos7-plbase (#3492)

Bumps [ansi2html](https://github.com/pycontribs/ansi2html) from 1.5.2 to 1.6.0.
- [Release notes](https://github.com/pycontribs/ansi2html/releases)
- [Changelog](https://github.com/pycontribs/ansi2html/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pycontribs/ansi2html/compare/1.5.2...1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump numpy from 1.19.2 to 1.19.4 in /environments/centos7-plbase (#3489)

Bumps [numpy](https://github.com/numpy/numpy) from 1.19.2 to 1.19.4.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/master/doc/HOWTO_RELEASE.rst.txt)
- [Commits](https://github.com/numpy/numpy/compare/v1.19.2...v1.19.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump regex from 2020.9.27 to 2020.11.13 in /environments/centos7-plbase (#3486)

Bumps [regex](https://bitbucket.org/mrabarnett/mrab-regex) from 2020.9.27 to 2020.11.13.
- [Commits](https://bitbucket.org/mrabarnett/mrab-regex/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump flake8 from 3.8.3 to 3.8.4 in /environments/centos7-plbase (#3409)

Bumps [flake8](https://gitlab.com/pycqa/flake8) from 3.8.3 to 3.8.4.
- [Release notes](https://gitlab.com/pycqa/flake8/tags)
- [Commits](https://gitlab.com/pycqa/flake8/compare/3.8.3...3.8.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pyquaternion from 0.9.5 to 0.9.9 in /environments/centos7-plbase (#3391)

Bumps [pyquaternion](https://github.com/KieranWynn/pyquaternion) from 0.9.5 to 0.9.9.
- [Release notes](https://github.com/KieranWynn/pyquaternion/releases)
- [Commits](https://github.com/KieranWynn/pyquaternion/compare/v0.9.5...v0.9.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump rpy2 from 3.3.5 to 3.3.6 in /environments/centos7-plbase (#3390)

Bumps [rpy2](https://github.com/rpy2/rpy2) from 3.3.5 to 3.3.6.
- [Release notes](https://github.com/rpy2/rpy2/releases)
- [Changelog](https://github.com/rpy2/rpy2/blob/master/NEWS)
- [Commits](https://github.com/rpy2/rpy2/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pandas from 1.1.2 to 1.1.5 in /environments/centos7-plbase (#3537)

Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.1.2 to 1.1.5.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Changelog](https://github.com/pandas-dev/pandas/blob/master/RELEASE.md)
- [Commits](https://github.com/pandas-dev/pandas/compare/v1.1.2...v1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump requests from 2.24.0 to 2.25.1 in /graders/python (#3566)

Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.25.1.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/master/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.25.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sympy from 1.6.2 to 1.7.1 in /graders/python (#3565)

Bumps [sympy](https://github.com/sympy/sympy) from 1.6.2 to 1.7.1.
- [Release notes](https://github.com/sympy/sympy/releases)
- [Commits](https://github.com/sympy/sympy/compare/sympy-1.6.2...sympy-1.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pandas from 1.1.2 to 1.1.5 in /graders/python (#3538)

Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.1.2 to 1.1.5.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Changelog](https://github.com/pandas-dev/pandas/blob/master/RELEASE.md)
- [Commits](https://github.com/pandas-dev/pandas/compare/v1.1.2...v1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump matplotlib from 3.3.2 to 3.3.3 in /graders/python (#3485)

Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](https://github.com/matplotlib/matplotlib/compare/v3.3.2...v3.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scipy from 1.5.2 to 1.5.4 in /environments/centos7-plbase (#3484)

Bumps [scipy](https://github.com/scipy/scipy) from 1.5.2 to 1.5.4.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.5.2...v1.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump matplotlib from 3.3.2 to 3.3.3 in /environments/centos7-plbase (#3482)

Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](https://github.com/matplotlib/matplotlib/compare/v3.3.2...v3.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pillow from 7.2.0 to 8.0.1 in /graders/python (#3407)

Bumps [pillow](https://github.com/python-pillow/Pillow) from 7.2.0 to 8.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/7.2.0...8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ipython from 7.16.1 to 7.19.0 in /graders/python (#3392)

Bumps [ipython](https://github.com/ipython/ipython) from 7.16.1 to 7.19.0.
- [Release notes](https://github.com/ipython/ipython/releases)
- [Commits](https://github.com/ipython/ipython/compare/7.16.1...7.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump numpy from 1.19.2 to 1.19.4 in /graders/python (#3487)

Bumps [numpy](https://github.com/numpy/numpy) from 1.19.2 to 1.19.4.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/master/doc/HOWTO_RELEASE.rst.txt)
- [Commits](https://github.com/numpy/numpy/compare/v1.19.2...v1.19.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nbformat from 5.0.7 to 5.0.8 in /graders/python (#3393)

Bumps [nbformat](http://jupyter.org) from 5.0.7 to 5.0.8.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scipy from 1.5.2 to 1.5.4 in /graders/python (#3488)

Bumps [scipy](https://github.com/scipy/scipy) from 1.5.2 to 1.5.4.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.5.2...v1.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nbconvert from 5.6.1 to 6.0.7 in /graders/python (#3370)

Bumps [nbconvert](https://github.com/jupyter/nbconvert) from 5.6.1 to 6.0.7.
- [Release notes](https://github.com/jupyter/nbconvert/releases)
- [Commits](https://github.com/jupyter/nbconvert/compare/5.6.1...6.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump supports-color from 8.0.0 to 8.1.0 (#3594)

Bumps [supports-color](https://github.com/chalk/supports-color) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/chalk/supports-color/releases)
- [Commits](https://github.com/chalk/supports-color/compare/v8.0.0...v8.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.15.0 to 7.16.0 (#3593)

Bumps [eslint](https://github.com/eslint/eslint) from 7.15.0 to 7.16.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.15.0...v7.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @octokit/rest from 18.0.9 to 18.0.12 (#3592)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.9 to 18.0.12.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.9...v18.0.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.1.2 to 4.1.3 (#3590)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.1.2 to 4.1.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.1.2...v4.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs from 16.1.1 to 16.2.0 (#3591)

Bumps [yargs](https://github.com/yargs/yargs) from 16.1.1 to 16.2.0.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v16.1.1...v16.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump uuid from 8.3.1 to 8.3.2 (#3588)

Bumps [uuid](https://github.com/uuidjs/uuid) from 8.3.1 to 8.3.2.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v8.3.1...v8.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.800.0 to 2.814.0 (#3587)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.800.0 to 2.814.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.800.0...v2.814.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.3.3 to 8.5.1 in /prairielib (#3586)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.3.3 to 8.5.1.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.3.3...pg@8.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @prairielearn/prairielib from 1.10.4 to 1.11.0 in /grader_host (#3585)

Bumps @prairielearn/prairielib from 1.10.4 to 1.11.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump js-yaml from 3.14.0 to 3.14.1 in /prairielib (#3584)

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.0 to 3.14.1.
- [Release notes](https://github.com/nodeca/js-yaml/releases)
- [Changelog](https://github.com/nodeca/js-yaml/blob/3.14.1/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.0...3.14.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump file-type from 16.0.1 to 16.1.0 (#3583)

Bumps [file-type](https://github.com/sindresorhus/file-type) from 16.0.1 to 16.1.0.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v16.0.1...v16.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.744.0 to 2.814.0 in /grader_host (#3582)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.744.0 to 2.814.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.744.0...v2.814.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump jest from 26.4.2 to 26.6.3 in /prairielib (#3580)

Bumps [jest](https://github.com/facebook/jest) from 26.4.2 to 26.6.3.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v26.4.2...v26.6.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scikit-image from 0.17.2 to 0.18.0 in /graders/python (#3574)

Bumps [scikit-image](https://github.com/scikit-image/scikit-image) from 0.17.2 to 0.18.0.
- [Release notes](https://github.com/scikit-image/scikit-image/releases)
- [Changelog](https://github.com/scikit-image/scikit-image/blob/master/RELEASE.txt)
- [Commits](https://github.com/scikit-image/scikit-image/compare/v0.17.2...v0.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* [Security] Bump node-notifier from 8.0.0 to 8.0.1 in /grader_host (#3573)

Bumps [node-notifier](https://github.com/mikaelbr/node-notifier) from 8.0.0 to 8.0.1. **This update includes a security fix.**
- [Release notes](https://github.com/mikaelbr/node-notifier/releases)
- [Changelog](https://github.com/mikaelbr/node-notifier/blob/v8.0.1/CHANGELOG.md)
- [Commits](https://github.com/mikaelbr/node-notifier/compare/v8.0.0...v8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump debug from 4.1.1 to 4.3.1 in /prairielib (#3572)

Bumps [debug](https://github.com/visionmedia/debug) from 4.1.1 to 4.3.1.
- [Release notes](https://github.com/visionmedia/debug/releases)
- [Commits](https://github.com/visionmedia/debug/compare/4.1.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-pr…
frankyhao added a commit to PrairieLearn/PrairieLearn that referenced this pull request Jan 19, 2021
* Python autograder: Add tensorflow v2.3.0 (#3365)

* Revert "Python autograder: Add tensorflow v2.3.0 (#3365)"

This reverts commit 46e6c5578cc8dffa9c229f4bb8a9332ca902316e.

* Add PuLP package to grader-python (#3371)

* C grader: formatting changes, output size limit and better null handling (#3366)

* C Grader: better formatting of default message if expected string has line breaks.

* C Grader: minor changes to avoid null name or message in tests.

* C Grader: program output limit size.

* Added documentation for size_limit argument in C grader.

* Better handling of non-string outputs in C grader.

* Python autograder: Upgrade pip (#3372)

* Python autograder: Upgrade pip

* Python grader: Add tensorflow

Co-authored-by: ctessum <ctessum@penguin>

* Update FAQ for Docker Toolbox deprecation (#3375)

* Add script to reassign questions to subdirectories (#3378)

* Add subdirectory reassignment.

* rename

* Add access control example for CBTF exams with outside students (#3381)

* Add access control example for CBTF exams with outside students

* Clarify order and timing

* Split the extra-CBTF-rules into its own section

* Fix section hierarchy in docs (#3382)

* Fix section links in docs (#3383)

* Bump chokidar from 3.4.2 to 3.4.3 (#3446)

Bumps [chokidar](https://github.com/paulmillr/chokidar) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/paulmillr/chokidar/releases)
- [Commits](https://github.com/paulmillr/chokidar/compare/3.4.2...3.4.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.744.0 to 2.783.0 (#3444)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.744.0 to 2.783.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.744.0...v2.783.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/fs-extra from 9.0.1 to 9.0.2 (#3443)

Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.1 to 9.0.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sinon from 9.0.3 to 9.2.1 (#3442)

Bumps [sinon](https://github.com/sinonjs/sinon) from 9.0.3 to 9.2.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinonjs/sinon/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump fabric from 4.1.0 to 4.2.0 (#3441)

Bumps [fabric](https://github.com/fabricjs/fabric.js) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/fabricjs/fabric.js/releases)
- [Changelog](https://github.com/fabricjs/fabric.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fabricjs/fabric.js/compare/v4.1.0...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nodemon from 2.0.4 to 2.0.6 (#3439)

Bumps [nodemon](https://github.com/remy/nodemon) from 2.0.4 to 2.0.6.
- [Release notes](https://github.com/remy/nodemon/releases)
- [Commits](https://github.com/remy/nodemon/compare/v2.0.4...v2.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @fortawesome/fontawesome-free from 5.14.0 to 5.15.1 (#3438)

Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 5.14.0 to 5.15.1.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/5.14.0...5.15.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.3.3 to 8.4.2 (#3437)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.3.3 to 8.4.2.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.3.3...pg@8.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump bootstrap from 4.5.2 to 4.5.3 (#3436)

Bumps [bootstrap](https://github.com/twbs/bootstrap) from 4.5.2 to 4.5.3.
- [Release notes](https://github.com/twbs/bootstrap/releases)
- [Commits](https://github.com/twbs/bootstrap/compare/v4.5.2...v4.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump jsdoc from 3.6.5 to 3.6.6 (#3435)

Bumps [jsdoc](https://github.com/jsdoc/jsdoc) from 3.6.5 to 3.6.6.
- [Release notes](https://github.com/jsdoc/jsdoc/releases)
- [Changelog](https://github.com/jsdoc/jsdoc/blob/3.6.6/CHANGES.md)
- [Commits](https://github.com/jsdoc/jsdoc/compare/3.6.5...3.6.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ajv from 6.12.4 to 6.12.6 (#3433)

Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.12.4 to 6.12.6.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](https://github.com/ajv-validator/ajv/compare/v6.12.4...v6.12.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.4 to 7.14.5 (#3431)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.4 to 7.14.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump chart.js from 2.9.3 to 2.9.4 (#3430)

Bumps [chart.js](https://github.com/chartjs/Chart.js) from 2.9.3 to 2.9.4.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v2.9.3...v2.9.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump uuid from 8.3.0 to 8.3.1 (#3428)

Bumps [uuid](https://github.com/uuidjs/uuid) from 8.3.0 to 8.3.1.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v8.3.0...v8.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump highlight.js from 10.1.2 to 10.3.2 (#3426)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 10.1.2 to 10.3.2.
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/10.3.2/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/10.1.2...10.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump moment from 2.27.0 to 2.29.1 (#3421)

Bumps [moment](https://github.com/moment/moment) from 2.27.0 to 2.29.1.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.27.0...2.29.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump socket.io-client from 2.3.0 to 2.3.1 (#3417)

Bumps [socket.io-client](https://github.com/Automattic/socket.io-client) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/Automattic/socket.io-client/releases)
- [Changelog](https://github.com/socketio/socket.io-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Automattic/socket.io-client/compare/2.3.0...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.1 to 2.7.2 in /graders/python (#3412)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump beautifulsoup4 from 4.9.2 to 4.9.3 in /graders/python (#3389)

Bumps [beautifulsoup4](http://www.crummy.com/software/BeautifulSoup/bs4/) from 4.9.2 to 4.9.3.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 59.0.0 to 64.0.0 (#3461)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 59.0.0 to 64.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v59.0.0...v64.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @octokit/rest from 18.0.4 to 18.0.9 (#3460)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.4 to 18.0.9.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.4...v18.0.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.4 to 7.14.6 (#3457)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.4 to 7.14.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.8.1 to 7.13.0 (#3456)

Bumps [eslint](https://github.com/eslint/eslint) from 7.8.1 to 7.13.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.8.1...v7.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mocha from 8.1.3 to 8.2.1 (#3454)

Bumps [mocha](https://github.com/mochajs/mocha) from 8.1.3 to 8.2.1.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v8.1.3...v8.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump passport-azure-ad from 4.2.1 to 4.3.0 (#3425)

Bumps [passport-azure-ad](https://github.com/AzureAD/passport-azure-ad) from 4.2.1 to 4.3.0.
- [Release notes](https://github.com/AzureAD/passport-azure-ad/releases)
- [Changelog](https://github.com/AzureAD/passport-azure-ad/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/AzureAD/passport-azure-ad/compare/v4.2.1...v4.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump three from 0.120.1 to 0.122.0 (#3424)

Bumps [three](https://github.com/mrdoob/three.js) from 0.120.1 to 0.122.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @prairielearn/prairielib from 1.10.4 to 1.11.0 (#3423)

Bumps @prairielearn/prairielib from 1.10.4 to 1.11.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump archiver from 5.0.0 to 5.0.2 (#3420)

Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.0.0 to 5.0.2.
- [Release notes](https://github.com/archiverjs/node-archiver/releases)
- [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/archiverjs/node-archiver/compare/5.0.0...5.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump http-proxy-middleware from 1.0.5 to 1.0.6 (#3419)

Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 1.0.5 to 1.0.6.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v1.0.5...v1.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/chai from 4.2.12 to 4.2.14 (#3418)

Bumps [@types/chai](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chai) from 4.2.12 to 4.2.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chai)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.0.2 to 4.0.5 (#3414)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.2 to 4.0.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.2...v4.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mathjax from 3.1.0 to 3.1.2 (#3416)

Bumps [mathjax](https://github.com/mathjax/MathJax) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/mathjax/MathJax/releases)
- [Commits](https://github.com/mathjax/MathJax/compare/3.1.0...3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump bokeh from 2.2.1 to 2.2.3 in /graders/python (#3400)

Bumps [bokeh](https://github.com/bokeh/bokeh) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/bokeh/bokeh/releases)
- [Changelog](https://github.com/bokeh/bokeh/blob/2.2.3/CHANGELOG)
- [Commits](https://github.com/bokeh/bokeh/compare/2.2.1...2.2.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pulp from 2.3 to 2.3.1 in /environments/centos7-plbase (#3402)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3 to 2.3.1.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pulp from 2.3 to 2.3.1 in /graders/python (#3401)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3 to 2.3.1.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.1 to 2.7.2 in /environments/centos7-plbase (#3404)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Update deprecated mdast option (#3453)

This was changed in https://github.com/syntax-tree/mdast-util-to-hast/pull/39

Currently emits a harmless warning, but the option has been renamed and the old name is deprecated.

* Bump mkdocs-material from 6.0.1 to 6.1.4 in /environments/centos7-plbase (#3464)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.0.1 to 6.1.4.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.0.1...6.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.4.2 to 8.5.1 (#3462)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.4.2 to 8.5.1.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.4.2...pg@8.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/node from 14.6.3 to 14.14.7 (#3455)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.6.3 to 14.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Fix sync info button refreshing page on click (#3471)

* Fix client files access when no filename provided (#3474)

* Fix client files access when no filename provided

Fixes #3349

* Fix missing require()

* Fix array_agg call in groups_uid_list sproc (#3481)

* Fixes array_agg call in groups_uid_list sproc.

* Typo

* More elegant solution.

* Set submission to gradable when uploading grades (#3521)

* Fix thin lines in math on Chrome/Windows (#3520)

* Fix thin lines in math on Chrome/Windows

Fixes #3086

* remove svg hack

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Fix pl-dropdown to allow unescaped values (#3524)

* Fix pl-dropdown to allow unescaped values

* Updated submitted and correct values.

Co-authored-by: Jonatan Schroeder <jonatan@cs.ubc.ca>

* Fix unicode characters in server.py (#3523)

* Fix unicode characters in server.py

* add unicode flag to py trampoline

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Set instance question to complete when new grade is uploaded. (#3522)

* Set submission to gradable if grade uploaded.

* Set instance question to complete if grade uploaded.

* Fix Show/Hide answer button in instructor panel with Edge Chromium (#3528)

* Bump ini from 1.3.5 to 1.3.7 (#3527)

Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Security] Bump highlight.js from 10.3.2 to 10.4.1 (#3519)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 10.3.2 to 10.4.1. **This update includes a security fix.**
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/master/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/10.3.2...10.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.6 to 7.14.7 (#3514)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.6 to 7.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump debug from 4.1.1 to 4.3.1 (#3511)

Bumps [debug](https://github.com/visionmedia/debug) from 4.1.1 to 4.3.1.
- [Release notes](https://github.com/visionmedia/debug/releases)
- [Commits](https://github.com/visionmedia/debug/compare/4.1.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump three from 0.122.0 to 0.123.0 (#3510)

Bumps [three](https://github.com/mrdoob/three.js) from 0.122.0 to 0.123.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.783.0 to 2.800.0 (#3509)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.783.0 to 2.800.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.783.0...v2.800.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/mocha from 8.0.3 to 8.0.4 (#3506)

Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump archiver from 5.0.2 to 5.1.0 (#3505)

Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.0.2 to 5.1.0.
- [Release notes](https://github.com/archiverjs/node-archiver/releases)
- [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/archiverjs/node-archiver/compare/5.0.2...5.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 64.0.0 to 65.0.0 (#3504)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 64.0.0 to 65.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v64.0.0...v65.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump http-status from 1.4.2 to 1.5.0 (#3503)

Bumps [http-status](https://github.com/adaltas/node-http-status) from 1.4.2 to 1.5.0.
- [Release notes](https://github.com/adaltas/node-http-status/releases)
- [Changelog](https://github.com/adaltas/node-http-status/blob/master/CHANGELOG.md)
- [Commits](https://github.com/adaltas/node-http-status/compare/v1.4.2...v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.13.0 to 7.14.0 (#3500)

Bumps [eslint](https://github.com/eslint/eslint) from 7.13.0 to 7.14.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.13.0...v7.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.0.5 to 4.1.2 (#3496)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.5 to 4.1.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.5...v4.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sphinx from 3.2.1 to 3.3.1 in /environments/centos7-plbase (#3497)

Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 3.2.1 to 3.3.1.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/3.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v3.2.1...v3.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pycryptodome from 3.9.8 to 3.9.9 in /environments/centos7-plbase (#3498)

Bumps [pycryptodome](https://github.com/Legrandin/pycryptodome) from 3.9.8 to 3.9.9.
- [Release notes](https://github.com/Legrandin/pycryptodome/releases)
- [Changelog](https://github.com/Legrandin/pycryptodome/blob/master/Changelog.rst)
- [Commits](https://github.com/Legrandin/pycryptodome/compare/v3.9.8...v3.9.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mkdocs-material from 6.1.4 to 6.1.6 in /environments/centos7-plbase (#3494)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.1.4 to 6.1.6.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.1.4...6.1.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.14.0 to 7.15.0 (#3536)

Bumps [eslint](https://github.com/eslint/eslint) from 7.14.0 to 7.15.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.14.0...v7.15.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/mocha from 8.0.4 to 8.2.0 (#3535)

Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.4 to 8.2.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 64.0.0 to 66.0.0 (#3531)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 64.0.0 to 66.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v64.0.0...v66.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs from 15.4.1 to 16.1.1 (#3515)

Bumps [yargs](https://github.com/yargs/yargs) from 15.4.1 to 16.1.1.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v15.4.1...v16.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump supports-color from 7.2.0 to 8.0.0 (#3501)

Bumps [supports-color](https://github.com/chalk/supports-color) from 7.2.0 to 8.0.0.
- [Release notes](https://github.com/chalk/supports-color/releases)
- [Commits](https://github.com/chalk/supports-color/compare/v7.2.0...v8.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump file-type from 15.0.0 to 16.0.1 (#3459)

Bumps [file-type](https://github.com/sindresorhus/file-type) from 15.0.0 to 16.0.1.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v15.0.0...v16.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs-parser from 19.0.4 to 20.2.4 (#3463)

Bumps [yargs-parser](https://github.com/yargs/yargs-parser) from 19.0.4 to 20.2.4.
- [Release notes](https://github.com/yargs/yargs-parser/releases)
- [Changelog](https://github.com/yargs/yargs-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs-parser/compare/v19.0.4...v20.2.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/fs-extra from 9.0.2 to 9.0.5 (#3534)

Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.2 to 9.0.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/node from 14.14.7 to 14.14.13 (#3532)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.7 to 14.14.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump diff from 4.0.2 to 5.0.0 (#3490)

Bumps [diff](https://github.com/kpdecker/jsdiff) from 4.0.2 to 5.0.0.
- [Release notes](https://github.com/kpdecker/jsdiff/releases)
- [Changelog](https://github.com/kpdecker/jsdiff/blob/master/release-notes.md)
- [Commits](https://github.com/kpdecker/jsdiff/compare/v4.0.2...v5.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Use SVG output for MathJax on Safari (#3545)

* Use SVG output for MathJax on Safari

Resolves #3540

* Fix linter

* Check for empty user-agent

* Check for non-null userAgent

* Add setting to change course git repos and branches (#3262)

* Adding remote address update for any repos that have been cloned

* Editing types to git sync options

* Updating comment

* Reverting sync4 --> sync2, as unintentionally modified

* Adding some branch column scaffolding

* Adding new branch entry to pl_courses

* Adding branch to courses insert query

* Now switches to configured branch during cloning or syncing

* Adding branch form submission when creating new course

* Adding branch in as option for course creation

* Updating database expectation

* Reverting data accidentally introduced on merge

* Reverting additional line

* Optimizing code and renaming config variable

* Adding default migration value of "master"

* Updating description of sync set

* Updating database table schema

* Adding default variable to include placeholder

* Adding placeholder back in

* Renamed default to placeholder, added in typeof checks as assuming variables is delicate in EJS

* Abstracting placeholder logic to higher level

* Fixed bug

* Making coding style consistent

* Adding remote address update for any repos that have been cloned

* Editing types to git sync options

* Updating comment

* Reverting sync4 --> sync2, as unintentionally modified

* Adding some branch column scaffolding

* Adding new branch entry to pl_courses

* Adding branch to courses insert query

* Now switches to configured branch during cloning or syncing

* Adding branch form submission when creating new course

* Adding branch in as option for course creation

* Updating database expectation

* Reverting data accidentally introduced on merge

* Reverting additional line

* Optimizing code and renaming config variable

* Adding default migration value of "master"

* Updating description of sync set

* Updating database table schema

* Adding default variable to include placeholder

* Adding placeholder back in

* Renamed default to placeholder, added in typeof checks as assuming variables is delicate in EJS

* Abstracting placeholder logic to higher level

* Fixed bug

* Making coding style consistent

* Update courses_update_column.sql

* Removing placeholder logic

* Assuming locals.course.branch is always valid

* Removing branch column validation

* Removing missed placeholder logic

* Removing missed placeholder logic

* Removed config default branch option, as locals.course.branch should be trusted

* Making more succinct

* Adding fallback default back to stop failure when branch not defined

* Took out config option

* Update pages/administratorOverview/courseInsertForm.ejs

Co-authored-by: Matthew West <mwest@illinois.edu>

* Adding default course repo branch to config

* Fixing syntax

Co-authored-by: Matthew West <mwest@illinois.edu>

* Add trust proxy config option (#3517)

* C autograder: minor fixes in cases where a test is worth more than one point. (#3544)

* C Grader: better formatting of default message if expected string has line breaks.

* C Grader: minor changes to avoid null name or message in tests.

* C Grader: program output limit size.

* Added documentation for size_limit argument in C grader.

* Better handling of non-string outputs in C grader.

* C Grader: minor change to support compilation worth no points.

* C autograder bugfix: proper handling of test_run if max_points is not the default 1.

* Use numeric version of points instead of boolean.

* Better message if program's output is blank.

* Allow course-level extensions for elements (#2507)

* initial draft

* lint lint lint

* be more sneaky with extensions in data

* remove yucky whitespace

* remove spurious whitespace deletion

* change caching behaviour, return python modules as namedtuple

* add example question to assessment

* Apply suggestions from code review

Co-authored-by: Nathan Walters <nwalters512@gmail.com>

* allow extension client files

* add initial docs draft

* fix formatting

* missing doublequote

* Update elementExtensions.md

* rewrite with async/await

* lint

* add tests

* update demo question text

* Apply suggestions from code review

Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>

* fixes from James's review

* add example extension to pl-graph

* clean up code to use async lib

* remove courseData param

* fix typechecker

* lint lint lint

* allow extension chunks

* clean code and fix silly mistakes

* ok i'm pretty certain this should be working now

* use centered fd

* add back checks for nondirectories

* update migration number

Co-authored-by: Nathan Walters <nwalters512@gmail.com>
Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>

* Add doc note about preventing 100 credit from locking question (#3285)

As noted in https://github.com/PrairieLearn/PrairieLearn/issues/3191 it would be ideal to get a real option for this rather than a workaround...

* Store user files in S3 rather than on disk (#3091)

* Introducing S3 extension to file store API

* Adding default storage type to file-store API

* Removing question ID from insert

* Reverting assessment id

* Reverting assessment id

* Changing fileStore function to anticipate buffer data type

* Removing next, as introduces front-end bug and adding error handling

* Removing unneeded code

* Removing on casecade delete

* Removing comment

* Removed unnecessary relationship and field

* Fixing semantic and syntax error

* Removing unnecessary code

* Adding back in error

* Unify AWS config loading

* Remove stale module

* Introducing new mock s3 bucket

* Importing S3/AWS packages from lib/aws.js

* Adding GET s3 method and TEMPORARILY hardcoding s3rver configuration for development

* Remove redundant load

* Convert lib/aws.init() to async

* Fixing type error

* Removing hardcoded development purpose code, adding new GET method commenting

* Taking out AWS object instantiation as now in lib/aws.js

* Renaming migration

* Removing code comments and error from typo

* Assuming buffer type for S3 uploads

* Running init in each s3 function

* Renaming enum file

* Fixing typo

* Moving init() to file-store

* Removing init function calls

* Declaring enum instead of text field in sql file insert

* Fix: Casting storage_type text to enum

* Moving init() and adding await

* Fixing enum naming mistake

* Using filesystem storage when editing file contents

* Restoring b64 encode unicode logic that I accidentally took out

* Removing extra param for query

* Making get return type consistent in api, fixing likely async error

* Fixing async issue with s3.getObject()

* Removing createReadStream now that promisified

* Returning s3 object buffer from promise

* Anticipating s3 files as buffers

* Fixing linting

* Expecting buffer as return type

* Moving line that storage_type falls on for db test diff

* Taking init() out for aws config

* Taking init() out for aws config (linting)

* Updating function comment and adding back init()

* Moving errors into s3 and filesystem branches

* Restoring original data structure on fileStore.get()

* Removing unnecessary code

* Removing old return statement

* Update pages/studentAssessmentInstanceFile/studentAssessmentInstanceFile.js

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Adding new line

* Fixing bug

* Writing new test to ensure deprecated files can be fetched

* Removing lint

* Removing deprecated file after test, as interferes with later assertions

* Adding additional test for instance question

* Initializing AWS library in test harness

* Incremening test numbers

* Update lib/config.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Update docker/start_s3rver.sh

Co-authored-by: Matthew West <mwest@illinois.edu>

* Update lib/file-store.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Keeping comment together with function

* Re-using else/if logic

* Updating config property reference

* Renaming filename

* Adding default storage type

* Removing unused block

* Removing extra line

* Adding option to return readable stream from file store API

* Removing duplicate code

* Implementing stream for reading files

* Defaulting to false for get() to return file with buffer

* Changing param boolean to return stream

* Fixing missed call param

* Replacing boolean with string for param option

* Fixing bug

* Update lib/workspace.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Adding default arg

* Update tests/testHomework.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Substiting sync logic for async

* Renaming migration

* Fixing comment

* Using promises property for async filesystem calls

* rename bucket prairielearn.dev.file-store -> file-store

* rename enum_file_storage -> enum_file_storage_type

* fix error handling in lib/aws

* remove circular require() config<->file-store

* small cleanups

* fix filename in get()

* remove spurious change to lib/workspace

* remove duplicate aws.init() in helperServer

* fix repeated migration index

* fix async route handler

* fix tests to do full FileStorage and S3 uploads

* fix linter

Co-authored-by: Tim Yang <timothy.d.yang@gmail.com>
Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>
Co-authored-by: Matthew West <mwest@illinois.edu>

* Add old feedback to manual grading download file (#3543)

* Fix repeated migration index 221 (#3554)

* Upgrade to Python 3.8, R 4.0, and NodeJS 14 (#3541)

* Upgrade to Python 3.8 and NodeJS 14

This changes the base image from CentOS (discontinued) to Amazon Linux.

Python is now being installed with https://github.com/conda-forge/miniforge

* Update python path for linter

* Remove need for init files to set PATH

* Update graders/python to Python 3.8

* Fix warning in questions/demo/randomPlot

* Add news item

* Use R 3.6 from EPEL, rather than 3.4

* Install CLI-only version of emacs

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Use R 4.0 from conda, rather than 3.6

* Re-enable installation of r-requirements.R

* Simplify R package installation

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Bump pulp from 2.3.1 to 2.4 in /environments/plbase (#3563)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3.1 to 2.4.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3.1...2.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump recommonmark from 0.6.0 to 0.7.1 in /environments/plbase (#3561)

Bumps [recommonmark](https://github.com/rtfd/recommonmark) from 0.6.0 to 0.7.1.
- [Release notes](https://github.com/rtfd/recommonmark/releases)
- [Changelog](https://github.com/readthedocs/recommonmark/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rtfd/recommonmark/compare/0.6.0...0.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.2 to 2.7.3 in /environments/plbase (#3560)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.2 to 2.7.3.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.2...2.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sympy from 1.6.2 to 1.7.1 in /environments/plbase (#3559)

Bumps [sympy](https://github.com/sympy/sympy) from 1.6.2 to 1.7.1.
- [Release notes](https://github.com/sympy/sympy/releases)
- [Commits](https://github.com/sympy/sympy/compare/sympy-1.6.2...sympy-1.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mkdocs-material from 6.1.6 to 6.1.7 in /environments/plbase (#3562)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.1.6 to 6.1.7.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.1.6...6.1.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump lxml from 4.5.2 to 4.6.2 in /environments/centos7-plbase (#3495)

Bumps [lxml](https://github.com/lxml/lxml) from 4.5.2 to 4.6.2.
- [Release notes](https://github.com/lxml/lxml/releases)
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt)
- [Commits](https://github.com/lxml/lxml/compare/lxml-4.5.2...lxml-4.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ansi2html from 1.5.2 to 1.6.0 in /environments/centos7-plbase (#3492)

Bumps [ansi2html](https://github.com/pycontribs/ansi2html) from 1.5.2 to 1.6.0.
- [Release notes](https://github.com/pycontribs/ansi2html/releases)
- [Changelog](https://github.com/pycontribs/ansi2html/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pycontribs/ansi2html/compare/1.5.2...1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump numpy from 1.19.2 to 1.19.4 in /environments/centos7-plbase (#3489)

Bumps [numpy](https://github.com/numpy/numpy) from 1.19.2 to 1.19.4.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/master/doc/HOWTO_RELEASE.rst.txt)
- [Commits](https://github.com/numpy/numpy/compare/v1.19.2...v1.19.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump regex from 2020.9.27 to 2020.11.13 in /environments/centos7-plbase (#3486)

Bumps [regex](https://bitbucket.org/mrabarnett/mrab-regex) from 2020.9.27 to 2020.11.13.
- [Commits](https://bitbucket.org/mrabarnett/mrab-regex/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump flake8 from 3.8.3 to 3.8.4 in /environments/centos7-plbase (#3409)

Bumps [flake8](https://gitlab.com/pycqa/flake8) from 3.8.3 to 3.8.4.
- [Release notes](https://gitlab.com/pycqa/flake8/tags)
- [Commits](https://gitlab.com/pycqa/flake8/compare/3.8.3...3.8.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pyquaternion from 0.9.5 to 0.9.9 in /environments/centos7-plbase (#3391)

Bumps [pyquaternion](https://github.com/KieranWynn/pyquaternion) from 0.9.5 to 0.9.9.
- [Release notes](https://github.com/KieranWynn/pyquaternion/releases)
- [Commits](https://github.com/KieranWynn/pyquaternion/compare/v0.9.5...v0.9.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump rpy2 from 3.3.5 to 3.3.6 in /environments/centos7-plbase (#3390)

Bumps [rpy2](https://github.com/rpy2/rpy2) from 3.3.5 to 3.3.6.
- [Release notes](https://github.com/rpy2/rpy2/releases)
- [Changelog](https://github.com/rpy2/rpy2/blob/master/NEWS)
- [Commits](https://github.com/rpy2/rpy2/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pandas from 1.1.2 to 1.1.5 in /environments/centos7-plbase (#3537)

Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.1.2 to 1.1.5.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Changelog](https://github.com/pandas-dev/pandas/blob/master/RELEASE.md)
- [Commits](https://github.com/pandas-dev/pandas/compare/v1.1.2...v1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump requests from 2.24.0 to 2.25.1 in /graders/python (#3566)

Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.25.1.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/master/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.25.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sympy from 1.6.2 to 1.7.1 in /graders/python (#3565)

Bumps [sympy](https://github.com/sympy/sympy) from 1.6.2 to 1.7.1.
- [Release notes](https://github.com/sympy/sympy/releases)
- [Commits](https://github.com/sympy/sympy/compare/sympy-1.6.2...sympy-1.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pandas from 1.1.2 to 1.1.5 in /graders/python (#3538)

Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.1.2 to 1.1.5.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Changelog](https://github.com/pandas-dev/pandas/blob/master/RELEASE.md)
- [Commits](https://github.com/pandas-dev/pandas/compare/v1.1.2...v1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump matplotlib from 3.3.2 to 3.3.3 in /graders/python (#3485)

Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](https://github.com/matplotlib/matplotlib/compare/v3.3.2...v3.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scipy from 1.5.2 to 1.5.4 in /environments/centos7-plbase (#3484)

Bumps [scipy](https://github.com/scipy/scipy) from 1.5.2 to 1.5.4.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.5.2...v1.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump matplotlib from 3.3.2 to 3.3.3 in /environments/centos7-plbase (#3482)

Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](https://github.com/matplotlib/matplotlib/compare/v3.3.2...v3.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pillow from 7.2.0 to 8.0.1 in /graders/python (#3407)

Bumps [pillow](https://github.com/python-pillow/Pillow) from 7.2.0 to 8.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/7.2.0...8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ipython from 7.16.1 to 7.19.0 in /graders/python (#3392)

Bumps [ipython](https://github.com/ipython/ipython) from 7.16.1 to 7.19.0.
- [Release notes](https://github.com/ipython/ipython/releases)
- [Commits](https://github.com/ipython/ipython/compare/7.16.1...7.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump numpy from 1.19.2 to 1.19.4 in /graders/python (#3487)

Bumps [numpy](https://github.com/numpy/numpy) from 1.19.2 to 1.19.4.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/master/doc/HOWTO_RELEASE.rst.txt)
- [Commits](https://github.com/numpy/numpy/compare/v1.19.2...v1.19.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nbformat from 5.0.7 to 5.0.8 in /graders/python (#3393)

Bumps [nbformat](http://jupyter.org) from 5.0.7 to 5.0.8.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scipy from 1.5.2 to 1.5.4 in /graders/python (#3488)

Bumps [scipy](https://github.com/scipy/scipy) from 1.5.2 to 1.5.4.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.5.2...v1.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nbconvert from 5.6.1 to 6.0.7 in /graders/python (#3370)

Bumps [nbconvert](https://github.com/jupyter/nbconvert) from 5.6.1 to 6.0.7.
- [Release notes](https://github.com/jupyter/nbconvert/releases)
- [Commits](https://github.com/jupyter/nbconvert/compare/5.6.1...6.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump supports-color from 8.0.0 to 8.1.0 (#3594)

Bumps [supports-color](https://github.com/chalk/supports-color) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/chalk/supports-color/releases)
- [Commits](https://github.com/chalk/supports-color/compare/v8.0.0...v8.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.15.0 to 7.16.0 (#3593)

Bumps [eslint](https://github.com/eslint/eslint) from 7.15.0 to 7.16.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.15.0...v7.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @octokit/rest from 18.0.9 to 18.0.12 (#3592)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.9 to 18.0.12.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.9...v18.0.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.1.2 to 4.1.3 (#3590)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.1.2 to 4.1.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.1.2...v4.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs from 16.1.1 to 16.2.0 (#3591)

Bumps [yargs](https://github.com/yargs/yargs) from 16.1.1 to 16.2.0.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v16.1.1...v16.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump uuid from 8.3.1 to 8.3.2 (#3588)

Bumps [uuid](https://github.com/uuidjs/uuid) from 8.3.1 to 8.3.2.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v8.3.1...v8.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.800.0 to 2.814.0 (#3587)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.800.0 to 2.814.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.800.0...v2.814.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.3.3 to 8.5.1 in /prairielib (#3586)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.3.3 to 8.5.1.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.3.3...pg@8.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @prairielearn/prairielib from 1.10.4 to 1.11.0 in /grader_host (#3585)

Bumps @prairielearn/prairielib from 1.10.4 to 1.11.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump js-yaml from 3.14.0 to 3.14.1 in /prairielib (#3584)

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.0 to 3.14.1.
- [Release notes](https://github.com/nodeca/js-yaml/releases)
- [Changelog](https://github.com/nodeca/js-yaml/blob/3.14.1/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.0...3.14.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump file-type from 16.0.1 to 16.1.0 (#3583)

Bumps [file-type](https://github.com/sindresorhus/file-type) from 16.0.1 to 16.1.0.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v16.0.1...v16.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.744.0 to 2.814.0 in /grader_host (#3582)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.744.0 to 2.814.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.744.0...v2.814.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump jest from 26.4.2 to 26.6.3 in /prairielib (#3580)

Bumps [jest](https://github.com/facebook/jest) from 26.4.2 to 26.6.3.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v26.4.2...v26.6.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scikit-image from 0.17.2 to 0.18.0 in /graders/python (#3574)

Bumps [scikit-image](https://github.com/scikit-image/scikit-image) from 0.17.2 to 0.18.0.
- [Release notes](https://github.com/scikit-image/scikit-image/releases)
- [Changelog](https://github.com/scikit-image/scikit-image/blob/master/RELEASE.txt)
- [Commits](https://github.com/scikit-image/scikit-image/compare/v0.17.2...v0.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* [Security] Bump node-notifier from 8.0.0 to 8.0.1 in /grader_host (#3573)

Bumps [node-notifier](https://github.com/mikaelbr/node-notifier) from 8.0.0 to 8.0.1. **This update includes a security fix.**
- [Release notes](https://github.com/mikaelbr/node-notifier/releases)
- [Changelog](https://github.com/mikaelbr/node-notifier/blob/v8.0.1/CHANGELOG.md)
- [Commits](https://github.com/mikaelbr/node-notifier/compare/v8.0.0...v8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump debug from 4.1.1 to 4.3.1 in /prairielib (#3572)

Bumps [debug](https://github.com/visionmedia/debug) from 4.1.1 to 4.3.1.
- [Release notes](https://github.com/visionmedia/debug/releases)
- [Commits](https://github.com/visionmedia/debug/compare/4.1.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-pr…
frankyhao added a commit to PrairieLearn/PrairieLearn that referenced this pull request Jan 19, 2021
* Python autograder: Add tensorflow v2.3.0 (#3365)

* Revert "Python autograder: Add tensorflow v2.3.0 (#3365)"

This reverts commit 46e6c5578cc8dffa9c229f4bb8a9332ca902316e.

* Add PuLP package to grader-python (#3371)

* C grader: formatting changes, output size limit and better null handling (#3366)

* C Grader: better formatting of default message if expected string has line breaks.

* C Grader: minor changes to avoid null name or message in tests.

* C Grader: program output limit size.

* Added documentation for size_limit argument in C grader.

* Better handling of non-string outputs in C grader.

* Python autograder: Upgrade pip (#3372)

* Python autograder: Upgrade pip

* Python grader: Add tensorflow

Co-authored-by: ctessum <ctessum@penguin>

* Update FAQ for Docker Toolbox deprecation (#3375)

* Add script to reassign questions to subdirectories (#3378)

* Add subdirectory reassignment.

* rename

* Add access control example for CBTF exams with outside students (#3381)

* Add access control example for CBTF exams with outside students

* Clarify order and timing

* Split the extra-CBTF-rules into its own section

* Fix section hierarchy in docs (#3382)

* Fix section links in docs (#3383)

* Bump chokidar from 3.4.2 to 3.4.3 (#3446)

Bumps [chokidar](https://github.com/paulmillr/chokidar) from 3.4.2 to 3.4.3.
- [Release notes](https://github.com/paulmillr/chokidar/releases)
- [Commits](https://github.com/paulmillr/chokidar/compare/3.4.2...3.4.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.744.0 to 2.783.0 (#3444)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.744.0 to 2.783.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.744.0...v2.783.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/fs-extra from 9.0.1 to 9.0.2 (#3443)

Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.1 to 9.0.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sinon from 9.0.3 to 9.2.1 (#3442)

Bumps [sinon](https://github.com/sinonjs/sinon) from 9.0.3 to 9.2.1.
- [Release notes](https://github.com/sinonjs/sinon/releases)
- [Changelog](https://github.com/sinonjs/sinon/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sinonjs/sinon/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump fabric from 4.1.0 to 4.2.0 (#3441)

Bumps [fabric](https://github.com/fabricjs/fabric.js) from 4.1.0 to 4.2.0.
- [Release notes](https://github.com/fabricjs/fabric.js/releases)
- [Changelog](https://github.com/fabricjs/fabric.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/fabricjs/fabric.js/compare/v4.1.0...v4.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nodemon from 2.0.4 to 2.0.6 (#3439)

Bumps [nodemon](https://github.com/remy/nodemon) from 2.0.4 to 2.0.6.
- [Release notes](https://github.com/remy/nodemon/releases)
- [Commits](https://github.com/remy/nodemon/compare/v2.0.4...v2.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @fortawesome/fontawesome-free from 5.14.0 to 5.15.1 (#3438)

Bumps [@fortawesome/fontawesome-free](https://github.com/FortAwesome/Font-Awesome) from 5.14.0 to 5.15.1.
- [Release notes](https://github.com/FortAwesome/Font-Awesome/releases)
- [Changelog](https://github.com/FortAwesome/Font-Awesome/blob/master/CHANGELOG.md)
- [Commits](https://github.com/FortAwesome/Font-Awesome/compare/5.14.0...5.15.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.3.3 to 8.4.2 (#3437)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.3.3 to 8.4.2.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.3.3...pg@8.4.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump bootstrap from 4.5.2 to 4.5.3 (#3436)

Bumps [bootstrap](https://github.com/twbs/bootstrap) from 4.5.2 to 4.5.3.
- [Release notes](https://github.com/twbs/bootstrap/releases)
- [Commits](https://github.com/twbs/bootstrap/compare/v4.5.2...v4.5.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump jsdoc from 3.6.5 to 3.6.6 (#3435)

Bumps [jsdoc](https://github.com/jsdoc/jsdoc) from 3.6.5 to 3.6.6.
- [Release notes](https://github.com/jsdoc/jsdoc/releases)
- [Changelog](https://github.com/jsdoc/jsdoc/blob/3.6.6/CHANGES.md)
- [Commits](https://github.com/jsdoc/jsdoc/compare/3.6.5...3.6.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ajv from 6.12.4 to 6.12.6 (#3433)

Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.12.4 to 6.12.6.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](https://github.com/ajv-validator/ajv/compare/v6.12.4...v6.12.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.4 to 7.14.5 (#3431)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.4 to 7.14.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump chart.js from 2.9.3 to 2.9.4 (#3430)

Bumps [chart.js](https://github.com/chartjs/Chart.js) from 2.9.3 to 2.9.4.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v2.9.3...v2.9.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump uuid from 8.3.0 to 8.3.1 (#3428)

Bumps [uuid](https://github.com/uuidjs/uuid) from 8.3.0 to 8.3.1.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v8.3.0...v8.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump highlight.js from 10.1.2 to 10.3.2 (#3426)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 10.1.2 to 10.3.2.
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/10.3.2/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/10.1.2...10.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump moment from 2.27.0 to 2.29.1 (#3421)

Bumps [moment](https://github.com/moment/moment) from 2.27.0 to 2.29.1.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.27.0...2.29.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump socket.io-client from 2.3.0 to 2.3.1 (#3417)

Bumps [socket.io-client](https://github.com/Automattic/socket.io-client) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/Automattic/socket.io-client/releases)
- [Changelog](https://github.com/socketio/socket.io-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Automattic/socket.io-client/compare/2.3.0...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.1 to 2.7.2 in /graders/python (#3412)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump beautifulsoup4 from 4.9.2 to 4.9.3 in /graders/python (#3389)

Bumps [beautifulsoup4](http://www.crummy.com/software/BeautifulSoup/bs4/) from 4.9.2 to 4.9.3.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 59.0.0 to 64.0.0 (#3461)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 59.0.0 to 64.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v59.0.0...v64.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @octokit/rest from 18.0.4 to 18.0.9 (#3460)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.4 to 18.0.9.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.4...v18.0.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.4 to 7.14.6 (#3457)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.4 to 7.14.6.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.8.1 to 7.13.0 (#3456)

Bumps [eslint](https://github.com/eslint/eslint) from 7.8.1 to 7.13.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.8.1...v7.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mocha from 8.1.3 to 8.2.1 (#3454)

Bumps [mocha](https://github.com/mochajs/mocha) from 8.1.3 to 8.2.1.
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v8.1.3...v8.2.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump passport-azure-ad from 4.2.1 to 4.3.0 (#3425)

Bumps [passport-azure-ad](https://github.com/AzureAD/passport-azure-ad) from 4.2.1 to 4.3.0.
- [Release notes](https://github.com/AzureAD/passport-azure-ad/releases)
- [Changelog](https://github.com/AzureAD/passport-azure-ad/blob/dev/CHANGELOG.md)
- [Commits](https://github.com/AzureAD/passport-azure-ad/compare/v4.2.1...v4.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump three from 0.120.1 to 0.122.0 (#3424)

Bumps [three](https://github.com/mrdoob/three.js) from 0.120.1 to 0.122.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @prairielearn/prairielib from 1.10.4 to 1.11.0 (#3423)

Bumps @prairielearn/prairielib from 1.10.4 to 1.11.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump archiver from 5.0.0 to 5.0.2 (#3420)

Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.0.0 to 5.0.2.
- [Release notes](https://github.com/archiverjs/node-archiver/releases)
- [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/archiverjs/node-archiver/compare/5.0.0...5.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump http-proxy-middleware from 1.0.5 to 1.0.6 (#3419)

Bumps [http-proxy-middleware](https://github.com/chimurai/http-proxy-middleware) from 1.0.5 to 1.0.6.
- [Release notes](https://github.com/chimurai/http-proxy-middleware/releases)
- [Changelog](https://github.com/chimurai/http-proxy-middleware/blob/master/CHANGELOG.md)
- [Commits](https://github.com/chimurai/http-proxy-middleware/compare/v1.0.5...v1.0.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/chai from 4.2.12 to 4.2.14 (#3418)

Bumps [@types/chai](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chai) from 4.2.12 to 4.2.14.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chai)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.0.2 to 4.0.5 (#3414)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.2 to 4.0.5.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.2...v4.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mathjax from 3.1.0 to 3.1.2 (#3416)

Bumps [mathjax](https://github.com/mathjax/MathJax) from 3.1.0 to 3.1.2.
- [Release notes](https://github.com/mathjax/MathJax/releases)
- [Commits](https://github.com/mathjax/MathJax/compare/3.1.0...3.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump bokeh from 2.2.1 to 2.2.3 in /graders/python (#3400)

Bumps [bokeh](https://github.com/bokeh/bokeh) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/bokeh/bokeh/releases)
- [Changelog](https://github.com/bokeh/bokeh/blob/2.2.3/CHANGELOG)
- [Commits](https://github.com/bokeh/bokeh/compare/2.2.1...2.2.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pulp from 2.3 to 2.3.1 in /environments/centos7-plbase (#3402)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3 to 2.3.1.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pulp from 2.3 to 2.3.1 in /graders/python (#3401)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3 to 2.3.1.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3...2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.1 to 2.7.2 in /environments/centos7-plbase (#3404)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.1 to 2.7.2.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.1...2.7.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Update deprecated mdast option (#3453)

This was changed in https://github.com/syntax-tree/mdast-util-to-hast/pull/39

Currently emits a harmless warning, but the option has been renamed and the old name is deprecated.

* Bump mkdocs-material from 6.0.1 to 6.1.4 in /environments/centos7-plbase (#3464)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.0.1 to 6.1.4.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.0.1...6.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.4.2 to 8.5.1 (#3462)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.4.2 to 8.5.1.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.4.2...pg@8.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/node from 14.6.3 to 14.14.7 (#3455)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.6.3 to 14.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Fix sync info button refreshing page on click (#3471)

* Fix client files access when no filename provided (#3474)

* Fix client files access when no filename provided

Fixes #3349

* Fix missing require()

* Fix array_agg call in groups_uid_list sproc (#3481)

* Fixes array_agg call in groups_uid_list sproc.

* Typo

* More elegant solution.

* Set submission to gradable when uploading grades (#3521)

* Fix thin lines in math on Chrome/Windows (#3520)

* Fix thin lines in math on Chrome/Windows

Fixes #3086

* remove svg hack

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Fix pl-dropdown to allow unescaped values (#3524)

* Fix pl-dropdown to allow unescaped values

* Updated submitted and correct values.

Co-authored-by: Jonatan Schroeder <jonatan@cs.ubc.ca>

* Fix unicode characters in server.py (#3523)

* Fix unicode characters in server.py

* add unicode flag to py trampoline

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Set instance question to complete when new grade is uploaded. (#3522)

* Set submission to gradable if grade uploaded.

* Set instance question to complete if grade uploaded.

* Fix Show/Hide answer button in instructor panel with Edge Chromium (#3528)

* Bump ini from 1.3.5 to 1.3.7 (#3527)

Bumps [ini](https://github.com/isaacs/ini) from 1.3.5 to 1.3.7.
- [Release notes](https://github.com/isaacs/ini/releases)
- [Commits](https://github.com/isaacs/ini/compare/v1.3.5...v1.3.7)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Security] Bump highlight.js from 10.3.2 to 10.4.1 (#3519)

Bumps [highlight.js](https://github.com/highlightjs/highlight.js) from 10.3.2 to 10.4.1. **This update includes a security fix.**
- [Release notes](https://github.com/highlightjs/highlight.js/releases)
- [Changelog](https://github.com/highlightjs/highlight.js/blob/master/CHANGES.md)
- [Commits](https://github.com/highlightjs/highlight.js/compare/10.3.2...10.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/pg from 7.14.6 to 7.14.7 (#3514)

Bumps [@types/pg](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/pg) from 7.14.6 to 7.14.7.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/pg)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump debug from 4.1.1 to 4.3.1 (#3511)

Bumps [debug](https://github.com/visionmedia/debug) from 4.1.1 to 4.3.1.
- [Release notes](https://github.com/visionmedia/debug/releases)
- [Commits](https://github.com/visionmedia/debug/compare/4.1.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump three from 0.122.0 to 0.123.0 (#3510)

Bumps [three](https://github.com/mrdoob/three.js) from 0.122.0 to 0.123.0.
- [Release notes](https://github.com/mrdoob/three.js/releases)
- [Commits](https://github.com/mrdoob/three.js/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.783.0 to 2.800.0 (#3509)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.783.0 to 2.800.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.783.0...v2.800.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/mocha from 8.0.3 to 8.0.4 (#3506)

Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.3 to 8.0.4.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump archiver from 5.0.2 to 5.1.0 (#3505)

Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.0.2 to 5.1.0.
- [Release notes](https://github.com/archiverjs/node-archiver/releases)
- [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/archiverjs/node-archiver/compare/5.0.2...5.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 64.0.0 to 65.0.0 (#3504)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 64.0.0 to 65.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v64.0.0...v65.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump http-status from 1.4.2 to 1.5.0 (#3503)

Bumps [http-status](https://github.com/adaltas/node-http-status) from 1.4.2 to 1.5.0.
- [Release notes](https://github.com/adaltas/node-http-status/releases)
- [Changelog](https://github.com/adaltas/node-http-status/blob/master/CHANGELOG.md)
- [Commits](https://github.com/adaltas/node-http-status/compare/v1.4.2...v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.13.0 to 7.14.0 (#3500)

Bumps [eslint](https://github.com/eslint/eslint) from 7.13.0 to 7.14.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.13.0...v7.14.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.0.5 to 4.1.2 (#3496)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.0.5 to 4.1.2.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.0.5...v4.1.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sphinx from 3.2.1 to 3.3.1 in /environments/centos7-plbase (#3497)

Bumps [sphinx](https://github.com/sphinx-doc/sphinx) from 3.2.1 to 3.3.1.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases)
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/3.x/CHANGES)
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v3.2.1...v3.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pycryptodome from 3.9.8 to 3.9.9 in /environments/centos7-plbase (#3498)

Bumps [pycryptodome](https://github.com/Legrandin/pycryptodome) from 3.9.8 to 3.9.9.
- [Release notes](https://github.com/Legrandin/pycryptodome/releases)
- [Changelog](https://github.com/Legrandin/pycryptodome/blob/master/Changelog.rst)
- [Commits](https://github.com/Legrandin/pycryptodome/compare/v3.9.8...v3.9.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mkdocs-material from 6.1.4 to 6.1.6 in /environments/centos7-plbase (#3494)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.1.4 to 6.1.6.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.1.4...6.1.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.14.0 to 7.15.0 (#3536)

Bumps [eslint](https://github.com/eslint/eslint) from 7.14.0 to 7.15.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.14.0...v7.15.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/mocha from 8.0.4 to 8.2.0 (#3535)

Bumps [@types/mocha](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mocha) from 8.0.4 to 8.2.0.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/mocha)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump googleapis from 64.0.0 to 66.0.0 (#3531)

Bumps [googleapis](https://github.com/googleapis/google-api-nodejs-client) from 64.0.0 to 66.0.0.
- [Release notes](https://github.com/googleapis/google-api-nodejs-client/releases)
- [Changelog](https://github.com/googleapis/google-api-nodejs-client/blob/master/CHANGELOG.md)
- [Commits](https://github.com/googleapis/google-api-nodejs-client/compare/v64.0.0...v66.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs from 15.4.1 to 16.1.1 (#3515)

Bumps [yargs](https://github.com/yargs/yargs) from 15.4.1 to 16.1.1.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v15.4.1...v16.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump supports-color from 7.2.0 to 8.0.0 (#3501)

Bumps [supports-color](https://github.com/chalk/supports-color) from 7.2.0 to 8.0.0.
- [Release notes](https://github.com/chalk/supports-color/releases)
- [Commits](https://github.com/chalk/supports-color/compare/v7.2.0...v8.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump file-type from 15.0.0 to 16.0.1 (#3459)

Bumps [file-type](https://github.com/sindresorhus/file-type) from 15.0.0 to 16.0.1.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v15.0.0...v16.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs-parser from 19.0.4 to 20.2.4 (#3463)

Bumps [yargs-parser](https://github.com/yargs/yargs-parser) from 19.0.4 to 20.2.4.
- [Release notes](https://github.com/yargs/yargs-parser/releases)
- [Changelog](https://github.com/yargs/yargs-parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs-parser/compare/v19.0.4...v20.2.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/fs-extra from 9.0.2 to 9.0.5 (#3534)

Bumps [@types/fs-extra](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/fs-extra) from 9.0.2 to 9.0.5.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/fs-extra)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @types/node from 14.14.7 to 14.14.13 (#3532)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 14.14.7 to 14.14.13.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump diff from 4.0.2 to 5.0.0 (#3490)

Bumps [diff](https://github.com/kpdecker/jsdiff) from 4.0.2 to 5.0.0.
- [Release notes](https://github.com/kpdecker/jsdiff/releases)
- [Changelog](https://github.com/kpdecker/jsdiff/blob/master/release-notes.md)
- [Commits](https://github.com/kpdecker/jsdiff/compare/v4.0.2...v5.0.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Use SVG output for MathJax on Safari (#3545)

* Use SVG output for MathJax on Safari

Resolves #3540

* Fix linter

* Check for empty user-agent

* Check for non-null userAgent

* Add setting to change course git repos and branches (#3262)

* Adding remote address update for any repos that have been cloned

* Editing types to git sync options

* Updating comment

* Reverting sync4 --> sync2, as unintentionally modified

* Adding some branch column scaffolding

* Adding new branch entry to pl_courses

* Adding branch to courses insert query

* Now switches to configured branch during cloning or syncing

* Adding branch form submission when creating new course

* Adding branch in as option for course creation

* Updating database expectation

* Reverting data accidentally introduced on merge

* Reverting additional line

* Optimizing code and renaming config variable

* Adding default migration value of "master"

* Updating description of sync set

* Updating database table schema

* Adding default variable to include placeholder

* Adding placeholder back in

* Renamed default to placeholder, added in typeof checks as assuming variables is delicate in EJS

* Abstracting placeholder logic to higher level

* Fixed bug

* Making coding style consistent

* Adding remote address update for any repos that have been cloned

* Editing types to git sync options

* Updating comment

* Reverting sync4 --> sync2, as unintentionally modified

* Adding some branch column scaffolding

* Adding new branch entry to pl_courses

* Adding branch to courses insert query

* Now switches to configured branch during cloning or syncing

* Adding branch form submission when creating new course

* Adding branch in as option for course creation

* Updating database expectation

* Reverting data accidentally introduced on merge

* Reverting additional line

* Optimizing code and renaming config variable

* Adding default migration value of "master"

* Updating description of sync set

* Updating database table schema

* Adding default variable to include placeholder

* Adding placeholder back in

* Renamed default to placeholder, added in typeof checks as assuming variables is delicate in EJS

* Abstracting placeholder logic to higher level

* Fixed bug

* Making coding style consistent

* Update courses_update_column.sql

* Removing placeholder logic

* Assuming locals.course.branch is always valid

* Removing branch column validation

* Removing missed placeholder logic

* Removing missed placeholder logic

* Removed config default branch option, as locals.course.branch should be trusted

* Making more succinct

* Adding fallback default back to stop failure when branch not defined

* Took out config option

* Update pages/administratorOverview/courseInsertForm.ejs

Co-authored-by: Matthew West <mwest@illinois.edu>

* Adding default course repo branch to config

* Fixing syntax

Co-authored-by: Matthew West <mwest@illinois.edu>

* Add trust proxy config option (#3517)

* C autograder: minor fixes in cases where a test is worth more than one point. (#3544)

* C Grader: better formatting of default message if expected string has line breaks.

* C Grader: minor changes to avoid null name or message in tests.

* C Grader: program output limit size.

* Added documentation for size_limit argument in C grader.

* Better handling of non-string outputs in C grader.

* C Grader: minor change to support compilation worth no points.

* C autograder bugfix: proper handling of test_run if max_points is not the default 1.

* Use numeric version of points instead of boolean.

* Better message if program's output is blank.

* Allow course-level extensions for elements (#2507)

* initial draft

* lint lint lint

* be more sneaky with extensions in data

* remove yucky whitespace

* remove spurious whitespace deletion

* change caching behaviour, return python modules as namedtuple

* add example question to assessment

* Apply suggestions from code review

Co-authored-by: Nathan Walters <nwalters512@gmail.com>

* allow extension client files

* add initial docs draft

* fix formatting

* missing doublequote

* Update elementExtensions.md

* rewrite with async/await

* lint

* add tests

* update demo question text

* Apply suggestions from code review

Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>

* fixes from James's review

* add example extension to pl-graph

* clean up code to use async lib

* remove courseData param

* fix typechecker

* lint lint lint

* allow extension chunks

* clean code and fix silly mistakes

* ok i'm pretty certain this should be working now

* use centered fd

* add back checks for nondirectories

* update migration number

Co-authored-by: Nathan Walters <nwalters512@gmail.com>
Co-authored-by: James J Balamuta <coatless@users.noreply.github.com>

* Add doc note about preventing 100 credit from locking question (#3285)

As noted in https://github.com/PrairieLearn/PrairieLearn/issues/3191 it would be ideal to get a real option for this rather than a workaround...

* Store user files in S3 rather than on disk (#3091)

* Introducing S3 extension to file store API

* Adding default storage type to file-store API

* Removing question ID from insert

* Reverting assessment id

* Reverting assessment id

* Changing fileStore function to anticipate buffer data type

* Removing next, as introduces front-end bug and adding error handling

* Removing unneeded code

* Removing on casecade delete

* Removing comment

* Removed unnecessary relationship and field

* Fixing semantic and syntax error

* Removing unnecessary code

* Adding back in error

* Unify AWS config loading

* Remove stale module

* Introducing new mock s3 bucket

* Importing S3/AWS packages from lib/aws.js

* Adding GET s3 method and TEMPORARILY hardcoding s3rver configuration for development

* Remove redundant load

* Convert lib/aws.init() to async

* Fixing type error

* Removing hardcoded development purpose code, adding new GET method commenting

* Taking out AWS object instantiation as now in lib/aws.js

* Renaming migration

* Removing code comments and error from typo

* Assuming buffer type for S3 uploads

* Running init in each s3 function

* Renaming enum file

* Fixing typo

* Moving init() to file-store

* Removing init function calls

* Declaring enum instead of text field in sql file insert

* Fix: Casting storage_type text to enum

* Moving init() and adding await

* Fixing enum naming mistake

* Using filesystem storage when editing file contents

* Restoring b64 encode unicode logic that I accidentally took out

* Removing extra param for query

* Making get return type consistent in api, fixing likely async error

* Fixing async issue with s3.getObject()

* Removing createReadStream now that promisified

* Returning s3 object buffer from promise

* Anticipating s3 files as buffers

* Fixing linting

* Expecting buffer as return type

* Moving line that storage_type falls on for db test diff

* Taking init() out for aws config

* Taking init() out for aws config (linting)

* Updating function comment and adding back init()

* Moving errors into s3 and filesystem branches

* Restoring original data structure on fileStore.get()

* Removing unnecessary code

* Removing old return statement

* Update pages/studentAssessmentInstanceFile/studentAssessmentInstanceFile.js

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Adding new line

* Fixing bug

* Writing new test to ensure deprecated files can be fetched

* Removing lint

* Removing deprecated file after test, as interferes with later assertions

* Adding additional test for instance question

* Initializing AWS library in test harness

* Incremening test numbers

* Update lib/config.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Update docker/start_s3rver.sh

Co-authored-by: Matthew West <mwest@illinois.edu>

* Update lib/file-store.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Keeping comment together with function

* Re-using else/if logic

* Updating config property reference

* Renaming filename

* Adding default storage type

* Removing unused block

* Removing extra line

* Adding option to return readable stream from file store API

* Removing duplicate code

* Implementing stream for reading files

* Defaulting to false for get() to return file with buffer

* Changing param boolean to return stream

* Fixing missed call param

* Replacing boolean with string for param option

* Fixing bug

* Update lib/workspace.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Adding default arg

* Update tests/testHomework.js

Co-authored-by: Matthew West <mwest@illinois.edu>

* Substiting sync logic for async

* Renaming migration

* Fixing comment

* Using promises property for async filesystem calls

* rename bucket prairielearn.dev.file-store -> file-store

* rename enum_file_storage -> enum_file_storage_type

* fix error handling in lib/aws

* remove circular require() config<->file-store

* small cleanups

* fix filename in get()

* remove spurious change to lib/workspace

* remove duplicate aws.init() in helperServer

* fix repeated migration index

* fix async route handler

* fix tests to do full FileStorage and S3 uploads

* fix linter

Co-authored-by: Tim Yang <timothy.d.yang@gmail.com>
Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>
Co-authored-by: Matthew West <mwest@illinois.edu>

* Add old feedback to manual grading download file (#3543)

* Fix repeated migration index 221 (#3554)

* Upgrade to Python 3.8, R 4.0, and NodeJS 14 (#3541)

* Upgrade to Python 3.8 and NodeJS 14

This changes the base image from CentOS (discontinued) to Amazon Linux.

Python is now being installed with https://github.com/conda-forge/miniforge

* Update python path for linter

* Remove need for init files to set PATH

* Update graders/python to Python 3.8

* Fix warning in questions/demo/randomPlot

* Add news item

* Use R 3.6 from EPEL, rather than 3.4

* Install CLI-only version of emacs

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Use R 4.0 from conda, rather than 3.6

* Re-enable installation of r-requirements.R

* Simplify R package installation

Co-authored-by: Nicolas Nytko <nicknytko@gmail.com>

* Bump pulp from 2.3.1 to 2.4 in /environments/plbase (#3563)

Bumps [pulp](https://github.com/coin-or/pulp) from 2.3.1 to 2.4.
- [Release notes](https://github.com/coin-or/pulp/releases)
- [Changelog](https://github.com/coin-or/pulp/blob/master/HISTORY)
- [Commits](https://github.com/coin-or/pulp/compare/2.3.1...2.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump recommonmark from 0.6.0 to 0.7.1 in /environments/plbase (#3561)

Bumps [recommonmark](https://github.com/rtfd/recommonmark) from 0.6.0 to 0.7.1.
- [Release notes](https://github.com/rtfd/recommonmark/releases)
- [Changelog](https://github.com/readthedocs/recommonmark/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rtfd/recommonmark/compare/0.6.0...0.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pygments from 2.7.2 to 2.7.3 in /environments/plbase (#3560)

Bumps [pygments](https://github.com/pygments/pygments) from 2.7.2 to 2.7.3.
- [Release notes](https://github.com/pygments/pygments/releases)
- [Changelog](https://github.com/pygments/pygments/blob/master/CHANGES)
- [Commits](https://github.com/pygments/pygments/compare/2.7.2...2.7.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sympy from 1.6.2 to 1.7.1 in /environments/plbase (#3559)

Bumps [sympy](https://github.com/sympy/sympy) from 1.6.2 to 1.7.1.
- [Release notes](https://github.com/sympy/sympy/releases)
- [Commits](https://github.com/sympy/sympy/compare/sympy-1.6.2...sympy-1.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump mkdocs-material from 6.1.6 to 6.1.7 in /environments/plbase (#3562)

Bumps [mkdocs-material](https://github.com/squidfunk/mkdocs-material) from 6.1.6 to 6.1.7.
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/docs/changelog.md)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/6.1.6...6.1.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump lxml from 4.5.2 to 4.6.2 in /environments/centos7-plbase (#3495)

Bumps [lxml](https://github.com/lxml/lxml) from 4.5.2 to 4.6.2.
- [Release notes](https://github.com/lxml/lxml/releases)
- [Changelog](https://github.com/lxml/lxml/blob/master/CHANGES.txt)
- [Commits](https://github.com/lxml/lxml/compare/lxml-4.5.2...lxml-4.6.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ansi2html from 1.5.2 to 1.6.0 in /environments/centos7-plbase (#3492)

Bumps [ansi2html](https://github.com/pycontribs/ansi2html) from 1.5.2 to 1.6.0.
- [Release notes](https://github.com/pycontribs/ansi2html/releases)
- [Changelog](https://github.com/pycontribs/ansi2html/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/pycontribs/ansi2html/compare/1.5.2...1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump numpy from 1.19.2 to 1.19.4 in /environments/centos7-plbase (#3489)

Bumps [numpy](https://github.com/numpy/numpy) from 1.19.2 to 1.19.4.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/master/doc/HOWTO_RELEASE.rst.txt)
- [Commits](https://github.com/numpy/numpy/compare/v1.19.2...v1.19.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump regex from 2020.9.27 to 2020.11.13 in /environments/centos7-plbase (#3486)

Bumps [regex](https://bitbucket.org/mrabarnett/mrab-regex) from 2020.9.27 to 2020.11.13.
- [Commits](https://bitbucket.org/mrabarnett/mrab-regex/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump flake8 from 3.8.3 to 3.8.4 in /environments/centos7-plbase (#3409)

Bumps [flake8](https://gitlab.com/pycqa/flake8) from 3.8.3 to 3.8.4.
- [Release notes](https://gitlab.com/pycqa/flake8/tags)
- [Commits](https://gitlab.com/pycqa/flake8/compare/3.8.3...3.8.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pyquaternion from 0.9.5 to 0.9.9 in /environments/centos7-plbase (#3391)

Bumps [pyquaternion](https://github.com/KieranWynn/pyquaternion) from 0.9.5 to 0.9.9.
- [Release notes](https://github.com/KieranWynn/pyquaternion/releases)
- [Commits](https://github.com/KieranWynn/pyquaternion/compare/v0.9.5...v0.9.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump rpy2 from 3.3.5 to 3.3.6 in /environments/centos7-plbase (#3390)

Bumps [rpy2](https://github.com/rpy2/rpy2) from 3.3.5 to 3.3.6.
- [Release notes](https://github.com/rpy2/rpy2/releases)
- [Changelog](https://github.com/rpy2/rpy2/blob/master/NEWS)
- [Commits](https://github.com/rpy2/rpy2/commits)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pandas from 1.1.2 to 1.1.5 in /environments/centos7-plbase (#3537)

Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.1.2 to 1.1.5.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Changelog](https://github.com/pandas-dev/pandas/blob/master/RELEASE.md)
- [Commits](https://github.com/pandas-dev/pandas/compare/v1.1.2...v1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump requests from 2.24.0 to 2.25.1 in /graders/python (#3566)

Bumps [requests](https://github.com/psf/requests) from 2.24.0 to 2.25.1.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/master/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.24.0...v2.25.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump sympy from 1.6.2 to 1.7.1 in /graders/python (#3565)

Bumps [sympy](https://github.com/sympy/sympy) from 1.6.2 to 1.7.1.
- [Release notes](https://github.com/sympy/sympy/releases)
- [Commits](https://github.com/sympy/sympy/compare/sympy-1.6.2...sympy-1.7.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pandas from 1.1.2 to 1.1.5 in /graders/python (#3538)

Bumps [pandas](https://github.com/pandas-dev/pandas) from 1.1.2 to 1.1.5.
- [Release notes](https://github.com/pandas-dev/pandas/releases)
- [Changelog](https://github.com/pandas-dev/pandas/blob/master/RELEASE.md)
- [Commits](https://github.com/pandas-dev/pandas/compare/v1.1.2...v1.1.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump matplotlib from 3.3.2 to 3.3.3 in /graders/python (#3485)

Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](https://github.com/matplotlib/matplotlib/compare/v3.3.2...v3.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scipy from 1.5.2 to 1.5.4 in /environments/centos7-plbase (#3484)

Bumps [scipy](https://github.com/scipy/scipy) from 1.5.2 to 1.5.4.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.5.2...v1.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump matplotlib from 3.3.2 to 3.3.3 in /environments/centos7-plbase (#3482)

Bumps [matplotlib](https://github.com/matplotlib/matplotlib) from 3.3.2 to 3.3.3.
- [Release notes](https://github.com/matplotlib/matplotlib/releases)
- [Commits](https://github.com/matplotlib/matplotlib/compare/v3.3.2...v3.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pillow from 7.2.0 to 8.0.1 in /graders/python (#3407)

Bumps [pillow](https://github.com/python-pillow/Pillow) from 7.2.0 to 8.0.1.
- [Release notes](https://github.com/python-pillow/Pillow/releases)
- [Changelog](https://github.com/python-pillow/Pillow/blob/master/CHANGES.rst)
- [Commits](https://github.com/python-pillow/Pillow/compare/7.2.0...8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump ipython from 7.16.1 to 7.19.0 in /graders/python (#3392)

Bumps [ipython](https://github.com/ipython/ipython) from 7.16.1 to 7.19.0.
- [Release notes](https://github.com/ipython/ipython/releases)
- [Commits](https://github.com/ipython/ipython/compare/7.16.1...7.19.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump numpy from 1.19.2 to 1.19.4 in /graders/python (#3487)

Bumps [numpy](https://github.com/numpy/numpy) from 1.19.2 to 1.19.4.
- [Release notes](https://github.com/numpy/numpy/releases)
- [Changelog](https://github.com/numpy/numpy/blob/master/doc/HOWTO_RELEASE.rst.txt)
- [Commits](https://github.com/numpy/numpy/compare/v1.19.2...v1.19.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nbformat from 5.0.7 to 5.0.8 in /graders/python (#3393)

Bumps [nbformat](http://jupyter.org) from 5.0.7 to 5.0.8.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scipy from 1.5.2 to 1.5.4 in /graders/python (#3488)

Bumps [scipy](https://github.com/scipy/scipy) from 1.5.2 to 1.5.4.
- [Release notes](https://github.com/scipy/scipy/releases)
- [Commits](https://github.com/scipy/scipy/compare/v1.5.2...v1.5.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump nbconvert from 5.6.1 to 6.0.7 in /graders/python (#3370)

Bumps [nbconvert](https://github.com/jupyter/nbconvert) from 5.6.1 to 6.0.7.
- [Release notes](https://github.com/jupyter/nbconvert/releases)
- [Commits](https://github.com/jupyter/nbconvert/compare/5.6.1...6.0.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump supports-color from 8.0.0 to 8.1.0 (#3594)

Bumps [supports-color](https://github.com/chalk/supports-color) from 8.0.0 to 8.1.0.
- [Release notes](https://github.com/chalk/supports-color/releases)
- [Commits](https://github.com/chalk/supports-color/compare/v8.0.0...v8.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump eslint from 7.15.0 to 7.16.0 (#3593)

Bumps [eslint](https://github.com/eslint/eslint) from 7.15.0 to 7.16.0.
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/master/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v7.15.0...v7.16.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @octokit/rest from 18.0.9 to 18.0.12 (#3592)

Bumps [@octokit/rest](https://github.com/octokit/rest.js) from 18.0.9 to 18.0.12.
- [Release notes](https://github.com/octokit/rest.js/releases)
- [Commits](https://github.com/octokit/rest.js/compare/v18.0.9...v18.0.12)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump typescript from 4.1.2 to 4.1.3 (#3590)

Bumps [typescript](https://github.com/Microsoft/TypeScript) from 4.1.2 to 4.1.3.
- [Release notes](https://github.com/Microsoft/TypeScript/releases)
- [Commits](https://github.com/Microsoft/TypeScript/compare/v4.1.2...v4.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump yargs from 16.1.1 to 16.2.0 (#3591)

Bumps [yargs](https://github.com/yargs/yargs) from 16.1.1 to 16.2.0.
- [Release notes](https://github.com/yargs/yargs/releases)
- [Changelog](https://github.com/yargs/yargs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yargs/yargs/compare/v16.1.1...v16.2.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump uuid from 8.3.1 to 8.3.2 (#3588)

Bumps [uuid](https://github.com/uuidjs/uuid) from 8.3.1 to 8.3.2.
- [Release notes](https://github.com/uuidjs/uuid/releases)
- [Changelog](https://github.com/uuidjs/uuid/blob/master/CHANGELOG.md)
- [Commits](https://github.com/uuidjs/uuid/compare/v8.3.1...v8.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.800.0 to 2.814.0 (#3587)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.800.0 to 2.814.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.800.0...v2.814.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump pg from 8.3.3 to 8.5.1 in /prairielib (#3586)

Bumps [pg](https://github.com/brianc/node-postgres) from 8.3.3 to 8.5.1.
- [Release notes](https://github.com/brianc/node-postgres/releases)
- [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md)
- [Commits](https://github.com/brianc/node-postgres/compare/pg@8.3.3...pg@8.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump @prairielearn/prairielib from 1.10.4 to 1.11.0 in /grader_host (#3585)

Bumps @prairielearn/prairielib from 1.10.4 to 1.11.0.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump js-yaml from 3.14.0 to 3.14.1 in /prairielib (#3584)

Bumps [js-yaml](https://github.com/nodeca/js-yaml) from 3.14.0 to 3.14.1.
- [Release notes](https://github.com/nodeca/js-yaml/releases)
- [Changelog](https://github.com/nodeca/js-yaml/blob/3.14.1/CHANGELOG.md)
- [Commits](https://github.com/nodeca/js-yaml/compare/3.14.0...3.14.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump file-type from 16.0.1 to 16.1.0 (#3583)

Bumps [file-type](https://github.com/sindresorhus/file-type) from 16.0.1 to 16.1.0.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v16.0.1...v16.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump aws-sdk from 2.744.0 to 2.814.0 in /grader_host (#3582)

Bumps [aws-sdk](https://github.com/aws/aws-sdk-js) from 2.744.0 to 2.814.0.
- [Release notes](https://github.com/aws/aws-sdk-js/releases)
- [Changelog](https://github.com/aws/aws-sdk-js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/aws/aws-sdk-js/compare/v2.744.0...v2.814.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump jest from 26.4.2 to 26.6.3 in /prairielib (#3580)

Bumps [jest](https://github.com/facebook/jest) from 26.4.2 to 26.6.3.
- [Release notes](https://github.com/facebook/jest/releases)
- [Changelog](https://github.com/facebook/jest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/facebook/jest/compare/v26.4.2...v26.6.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump scikit-image from 0.17.2 to 0.18.0 in /graders/python (#3574)

Bumps [scikit-image](https://github.com/scikit-image/scikit-image) from 0.17.2 to 0.18.0.
- [Release notes](https://github.com/scikit-image/scikit-image/releases)
- [Changelog](https://github.com/scikit-image/scikit-image/blob/master/RELEASE.txt)
- [Commits](https://github.com/scikit-image/scikit-image/compare/v0.17.2...v0.18.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* [Security] Bump node-notifier from 8.0.0 to 8.0.1 in /grader_host (#3573)

Bumps [node-notifier](https://github.com/mikaelbr/node-notifier) from 8.0.0 to 8.0.1. **This update includes a security fix.**
- [Release notes](https://github.com/mikaelbr/node-notifier/releases)
- [Changelog](https://github.com/mikaelbr/node-notifier/blob/v8.0.1/CHANGELOG.md)
- [Commits](https://github.com/mikaelbr/node-notifier/compare/v8.0.0...v8.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>

* Bump debug from 4.1.1 to 4.3.1 in /prairielib (#3572)

Bumps [debug](https://github.com/visionmedia/debug) from 4.1.1 to 4.3.1.
- [Release notes](https://github.com/visionmedia/debug/releases)
- [Commits](https://github.com/visionmedia/debug/compare/4.1.1...4.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-pr…
@wooorm wooorm added the 💪 phase/solved Post is done label Apr 12, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🗄 area/interface This affects the public interface 💪 phase/solved Post is done 🧒 semver/minor This is backwards-compatible change 🦋 type/enhancement This is great to have

Development

Successfully merging this pull request may close these issues.

Rename allowDangerousHTML > allowDangerousHtml

2 participants