Go to file
Spencer Olson e3737b3f91 make individual override dates preferred
When multiple overrides apply to a student on an assignment,
always pick the "individual" override due date and availability date,
if one exists. Previous behavior was to always pick the most lenient
override due date and availability date.

closes EVAL-2067
flag=prioritize_individual_overrides

[fsc-max-nodes=20]
[fsc-timeout=45]

Test Plan:
1. Enable the "Prioritize Individual Overrides" Site Admin feature flag.
2. Create an assignment with:
   a) An individual override for one student due tomorrow and with
      availability dates from yesterday to tomorrow, and
   b) A section override for the section the student is in with a due
      date 2 days from now, and with availability dates from a week ago
      to a week from now.
3. Log in as the student. Verify the assignment shows as being due
   tomorrow (not 2 days from now), and the availability dates show as
   from yesterday to tomorrow (not a week ago to a week from now).

Change-Id: I9571b9eee63ec06eccf2287415eea0fa9f129466
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/285841
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Kai Bjorkman <kbjorkman@instructure.com>
Product-Review: Jody Sailor
Reviewed-by: Eduardo Escobar <eduardo.escobar@instructure.com>
Reviewed-by: Kai Bjorkman <kbjorkman@instructure.com>
2022-06-10 15:20:27 +00:00
.github update github pr auto-assignees 2020-09-24 20:00:41 +00:00
.storybook webpack: remove support for virtual i18n! modules 2022-03-10 21:38:10 +00:00
.vscode Add configurations to enable remote IDE debugging with rdebug-ide 2021-09-16 18:33:11 +00:00
Gemfile.d Fix some rails 7.0 specs 2022-06-07 21:39:33 +00:00
app make individual override dates preferred 2022-06-10 15:20:27 +00:00
bin use canvas_rails_switcher for bin/spring try 2 2022-04-07 18:14:05 +00:00
build always upload junit results as artifact 2022-06-10 15:07:32 +00:00
config make individual override dates preferred 2022-06-10 15:20:27 +00:00
db/migrate Recurring events: calendar_events table update 2022-06-06 15:28:18 +00:00
doc Add LTI Substitution variable for "All due dates" 2022-05-31 15:36:38 +00:00
docker-compose Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
engines RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
gems remove canvas's i18n clone in RCE 2022-06-09 17:08:16 +00:00
hooks Fix git pre-commit hook 2022-03-10 22:50:42 +00:00
jest add 'extended' late_policy_status 2022-05-31 16:58:35 +00:00
lib make individual override dates preferred 2022-06-10 15:20:27 +00:00
log Update parallel_runtime_rspec.log from build 264 2021-10-25 16:59:25 +00:00
packages remove canvas's i18n clone in RCE 2022-06-09 17:08:16 +00:00
public update mastery connect icon in assignments 2022-03-30 20:20:51 +00:00
script set IS_MUTAGEN in linux/dev_setup.sh 2022-05-06 14:18:08 +00:00
spec make individual override dates preferred 2022-06-10 15:20:27 +00:00
tmp Alpine canvas-lms based image 2020-07-15 17:21:56 +00:00
ui Revert "compute total pages count for UI pagination" 2022-06-10 14:29:53 +00:00
ui-build Frontend ownership attribution tooling 2022-06-07 16:42:29 +00:00
.codeclimate.yml disable ESLint in code climate 2017-02-14 17:47:39 +00:00
.dive-ci Spec: Add dive build 2020-03-26 14:52:06 +00:00
.dockerignore modernize canvas_quizzes 2021-01-14 22:45:10 +00:00
.editorconfig Add EditorConfig configuration file to help maintain code style 2016-11-15 20:08:55 +00:00
.eslintignore rename frontend_build -> ui-build 2021-10-21 19:13:02 +00:00
.eslintrc.js babel independence: k5uploader & js-utils 2022-03-11 21:00:09 +00:00
.git-blame-ignore-revs rubocop: add .git-blame-ignore-revs 2021-11-29 20:56:29 +00:00
.gitignore Boot on rails 7.0 2022-06-06 13:55:46 +00:00
.gitmessage prepend some blank lines to .gitmessage 2019-08-09 16:12:53 +00:00
.groovylintrc.json fix linter rules 2021-05-19 15:43:33 +00:00
.i18nignore Don't try to extract translations from vendor 2022-03-03 17:48:51 +00:00
.i18nrc rename some things 2021-04-06 01:12:49 +00:00
.irbrc disable irb autocomplete 2022-03-29 21:34:33 +00:00
.lintstagedrc.js Initial pace plans import 2021-09-01 19:58:33 +00:00
.npmrc
.nvmrc upgrade to node14 2021-01-27 15:33:52 +00:00
.prettierrc restore prettier rules to match pre-2.0 defaults 2021-02-09 17:03:14 +00:00
.rspec spec: automatically require spec_helper 2021-10-26 17:39:19 +00:00
.rubocop.yml rubocop: disable Style/HashLikeCase 2022-03-15 16:59:27 +00:00
.sentryignore Only upload production source maps to Sentry 2022-03-24 18:17:54 +00:00
.stylelintrc modernize canvas_quizzes 2021-01-14 22:45:10 +00:00
.travis.yml
CONTRIBUTING.md Remove more freenode references 2021-06-02 16:18:53 +00:00
COPYRIGHT
Dockerfile enable Rails 6.1 for Jenkins / Dev 2022-05-19 15:35:44 +00:00
Dockerfile.githook Add precommit hook for auto fixing files 2018-11-27 21:07:31 +00:00
Dockerfile.jenkins enable Rails 6.1 for Jenkins / Dev 2022-05-19 15:35:44 +00:00
Dockerfile.jenkins-cache Boot on rails 7.0 2022-06-06 13:55:46 +00:00
Dockerfile.jenkins.final simplify Dockerfile template generation 2020-12-10 17:28:58 +00:00
Dockerfile.jenkins.karma-builder Properly support ruby 2.7 2021-06-11 21:06:37 +00:00
Dockerfile.jenkins.karma-runner remove translations/_core_en.js in production try 2 2022-02-18 00:08:38 +00:00
Dockerfile.jenkins.linters-final remove need to mount .git directory as volume for Linters 2021-05-10 18:57:42 +00:00
Dockerfile.jenkins.linters-runner Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
Dockerfile.jenkins.ruby-runner purge pulsar from canvas 2022-01-03 20:37:22 +00:00
Dockerfile.jenkins.webpack-builder split yarn from webpack-builder into yarn-runner 2020-12-14 18:49:51 +00:00
Dockerfile.jenkins.webpack-cache use _core_en as en translations for pre-merge build 2022-02-18 02:06:59 +00:00
Dockerfile.jenkins.yarn-runner upgrade & dedupe node packages 2021-06-21 19:46:52 +00:00
Dockerfile.package-translations babel independence: k5uploader & js-utils 2022-03-11 21:00:09 +00:00
Gemfile RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
Jenkinsfile add duration string to noisy channel 2022-06-02 19:29:18 +00:00
Jenkinsfile.axe always upload junit results as artifact 2022-06-10 15:07:32 +00:00
Jenkinsfile.cassandra fix docker sync job 2021-10-01 15:11:55 +00:00
Jenkinsfile.contract-tests convert contract tests to using docker bridge network 2021-06-15 16:37:49 +00:00
Jenkinsfile.coverage always upload junit results as artifact 2022-06-10 15:07:32 +00:00
Jenkinsfile.coverage-js add jest coverage in js coverage report 2022-03-29 19:50:14 +00:00
Jenkinsfile.crystalball remove mostly useless copy files script 2022-06-09 15:16:39 +00:00
Jenkinsfile.dive fix jenkins file linter issues autofixable 2021-05-18 16:48:15 +00:00
Jenkinsfile.docker-smoke Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
Jenkinsfile.docker-sync pin chrome and selenium hub versions 2022-05-20 13:44:46 +00:00
Jenkinsfile.dynamodb fix docker sync job 2021-10-01 15:11:55 +00:00
Jenkinsfile.js split packages into own node 2022-06-01 19:07:02 +00:00
Jenkinsfile.master-bouncer-check-all fix docker sync job 2021-10-01 15:11:55 +00:00
Jenkinsfile.package-translations More translations build improvements 2021-06-30 15:32:09 +00:00
Jenkinsfile.parallel_logs fix jenkins file linter issues autofixable 2021-05-18 16:48:15 +00:00
Jenkinsfile.postgres update copyright disclaimer 2021-10-01 15:44:27 +00:00
Jenkinsfile.redis improve readability jenkins redis 2021-11-18 20:17:08 +00:00
Jenkinsfile.rspecq remove mostly useless copy files script 2022-06-09 15:16:39 +00:00
Jenkinsfile.selenium.flakey_spec_catcher remove mostly useless copy files script 2022-06-09 15:16:39 +00:00
Jenkinsfile.selenium.performance.chrome remove mostly useless copy files script 2022-06-09 15:16:39 +00:00
Jenkinsfile.test-subbuild fix jenkins file linter issues autofixable 2021-05-18 16:48:15 +00:00
Jenkinsfile.vendored-gems purge pulsar from canvas 2022-01-03 20:37:22 +00:00
Jenkinsfile.xbrowser fix docker sync job 2021-10-01 15:11:55 +00:00
LICENSE
README.md Update README.md since Canvas is still modern 2016-12-15 03:18:28 +00:00
Rakefile RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
bower.json Move k5uplodaer to /packages 2019-05-10 18:30:51 +00:00
code_of_conduct.md
config.ru RuboCop: Style/StringLiterals, Style/StringLiteralsInInterpolation 2021-11-25 14:03:06 +00:00
docker-compose.new-jenkins-flakey-spec-catcher.yml update fsc to go into the plugin directory to do tests 2020-06-17 14:58:09 +00:00
docker-compose.new-jenkins-js.yml remove translations/_core_en.js in production try 2 2022-02-18 00:08:38 +00:00
docker-compose.new-jenkins-package-translations.yml Create shared translation infrastructure for packages 2019-11-06 22:42:03 +00:00
docker-compose.new-jenkins-selenium.yml pin chrome and selenium hub versions 2022-05-20 13:44:46 +00:00
docker-compose.new-jenkins.consumer.yml Bump rails 2021-12-23 15:26:13 +00:00
docker-compose.new-jenkins.vendored-gems.yml extract canvas::redis to canvas_cache 2021-03-02 14:38:55 +00:00
docker-compose.new-jenkins.yml don’t perform redundant DB operations in Jenkins test runs 2022-06-01 17:42:18 +00:00
docker-compose.spring.yml Revert "Replace old config ymls with newer mutagen ymls" 2022-03-28 17:38:37 +00:00
docker-compose.yml Revert "asset install in Dockerfile" 2021-06-29 13:36:09 +00:00
gulpfile.js replace node-sass with dart-sass 2021-07-15 17:35:35 +00:00
issue_template.md Update community urls to reflect platform move 2020-08-12 20:17:02 +00:00
jest.config.js remove coverage skip for deleted test 2022-03-30 12:24:46 +00:00
karma.conf.js re-enable canvas javascript coverage report 2022-02-28 15:36:57 +00:00
package.json run canvas-rce tests in parallel 2022-06-02 16:12:39 +00:00
tsconfig.json Update tsconfig.json for es2020 type libraries 2022-03-24 16:36:21 +00:00
webpack.config.js move crystalball webpack config into ui-build 2022-01-12 20:19:41 +00:00
yarn.lock remove canvas's i18n clone in RCE 2022-06-09 17:08:16 +00:00

README.md

Canvas LMS

Canvas is a modern, open-source LMS developed and maintained by Instructure Inc. It is released under the AGPLv3 license for use by anyone interested in learning more about or using learning management systems.

Please see our main wiki page for more information

Installation

Detailed instructions for installation and configuration of Canvas are provided on our wiki.