Commit Graph

351 Commits

Author SHA1 Message Date
Matthew Piatetsky
101c9b6633 Remove uses of the active field on the schedule model in the code.
Removing the active field from the model itself and the database is broken out into a separate ticket (AA-574)
AA-488
2021-01-05 18:25:44 -05:00
Muhammad Soban Javed
bd601cf3a6 Update celery routing for celery 4+ (#25567)
* Update celery routing

- Used routing function instead of class
- Move task queues dictionary to Django settings
- Removed routing_key parameter
- Refactored routing for singleton celery instantiation

Co-authored-by: Awais Qureshi <awais.qureshi@arbisoft.com>
2020-12-16 13:40:47 +05:00
Dillon Dumesnil
99c6753eed Merge pull request #25761 from edx/ddumesnil/aa-454
AA-454 and AA-470: Update language and bug fix for highlights
2020-12-04 08:40:48 -08:00
Dillon Dumesnil
9e2eab506f AA-454 and AA-470: Update language and bug fix for highlights
Since Course Highlights aren't necessarily weekly (self-paced courses),
update the language to be more generic. And then includes a bug fix to
not send highlights to learners after they have unenrolled from a course.
2020-12-04 15:26:47 +00:00
Dillon Dumesnil
84930bd5e6 Merge pull request #25721 from edx/ddumesnil/aa-454
AA-454: Reenable CourseUpdateResolver for Instructor-paced Courses
2020-12-03 10:17:12 -08:00
Dillon Dumesnil
ef5832bc74 AA-454: Reenable CourseUpdateResolver for Instructor-paced Courses
When CourseNextSectionUpdate was created, it incorporated Personalized
Learner Schedules logic which didn't take into account release dates of
content and was only intended for self-paced courses that always have
all content released. This caused a bug where instructor-paced courses
could receive an update about content that had not been released yet.

This PR turns the CourseUpdateResolver back on for instructor-paced
courses so they can go back to receiving weekly highlights.
2020-12-03 17:07:26 +00:00
Régis Behmo
216b99264a Upgrade waffle classes to the new edx-toggles API
Waffle classes no longer have namespaces. All features are moved to the
WaffleFlag/WaffleSwitch classes.

Here we use the edx_toggles.toggles.__future__ API, which is available
in 1.2.0. This means that we don't have to upgrade edx-toggles. We
should remove the __future__ imports as soon as we upgrade to 2.0.0.
2020-12-03 16:40:43 +01:00
Régis Behmo
a16cd71046 Start waffle namespace deprecation
By explicitly importing the legacy namespace classes, we make it clear
that we are using soon-to-be-deprecated classes. We will then be able to
start removing the legacy classes, one module at a time.
2020-12-03 16:06:14 +01:00
Awais Jibran
64e26407f2 Logo Swap & Config for serving assets from cdn.
1. Header Logo
2. Footer Logo
3. Favicon
2020-12-03 17:30:13 +05:00
Robert Raposa
681ddabaa6 add code_owner for schedules tasks
Code owner details for monitoring some schedule
task transactions were missing.

ARCHBOM-1260
2020-11-25 10:19:21 -05:00
Robert Raposa
8eef18710d set code_owner for celery tasks
ARCHBOM-1260

Co-authored-by: Tim McCormack <tmccormack@edx.org>
2020-11-17 15:33:33 -05:00
Dillon Dumesnil
8824a137dc Merge pull request #25562 from edx/ddumesnil/no-updates-after-end-aa-422
AA-422: Ensure learners are not receiving updates after course end
2020-11-10 11:41:21 -08:00
Awais Qureshi
7201edb11d Revert "Update routing config" (#25536)" (#25549)" (#25553)" (#25561)
This reverts commit db4c3b1210.
2020-11-11 00:13:47 +05:00
Dillon Dumesnil
11f1347669 AA-422: Ensure learners are not receiving updates after course end 2020-11-10 14:07:31 -05:00
Awais Qureshi
db4c3b1210 Revert "Revert ""Update routing config" (#25536)" (#25549)" (#25553)
This reverts commit c1fe3c3a93.
2020-11-10 23:23:09 +05:00
Kyle McCormick
151bd13666 Use full names for common.djangoapps imports; warn when using old style (#25477)
* Generate common/djangoapps import shims for LMS
* Generate common/djangoapps import shims for Studio
* Stop appending project root to sys.path
* Stop appending common/djangoapps to sys.path
* Import from common.djangoapps.course_action_state instead of course_action_state
* Import from common.djangoapps.course_modes instead of course_modes
* Import from common.djangoapps.database_fixups instead of database_fixups
* Import from common.djangoapps.edxmako instead of edxmako
* Import from common.djangoapps.entitlements instead of entitlements
* Import from common.djangoapps.pipline_mako instead of pipeline_mako
* Import from common.djangoapps.static_replace instead of static_replace
* Import from common.djangoapps.student instead of student
* Import from common.djangoapps.terrain instead of terrain
* Import from common.djangoapps.third_party_auth instead of third_party_auth
* Import from common.djangoapps.track instead of track
* Import from common.djangoapps.util instead of util
* Import from common.djangoapps.xblock_django instead of xblock_django
* Add empty common/djangoapps/__init__.py to fix pytest collection
* Fix pylint formatting violations
* Exclude import_shims/ directory tree from linting
2020-11-10 07:02:01 -05:00
Muhammad Soban Javed
c1fe3c3a93 Revert ""Update routing config" (#25536)" (#25549)
This reverts commit 39a22734c1.
2020-11-09 23:43:47 +05:00
Awais Qureshi
39a22734c1 "Update routing config" (#25536)
* Revert "Revert "Update routing config"

* Removed settings from lms/celery.py and cms/celery.py

* Moved settings import from top-level to function's scopes

Co-authored-by: Soban Javed <iamsobanjaved@gmail.com>
2020-11-09 19:06:55 +05:00
Muhammad Soban Javed
5a2ea1f954 Revert "Update routing config" 2020-11-06 02:05:48 +05:00
Muhammad Soban Javed
bfa8f71f33 Update routing config #25419 2020-11-06 01:00:29 +05:00
Régis Behmo
4586002956 Import waffle classes from edx_toggles instead of waffle_utils
Those classes were ported to edx_toggles. The imports remain in
waffle_utils.__init__ for backward compatibility.
2020-11-03 19:25:37 +01:00
Régis Behmo
2307dff4c9 Deprecate WaffleFlag.override method
This allows us to get rid of waffle_utils' custom WaffleFlag method.
2020-11-03 19:25:37 +01:00
Soban Javed
3206d9cb9a Update celery routing
- Used routing function istead of class
- Move task queues to Djano settings
- Removed routing_key parameter
2020-11-02 15:03:53 +05:00
Dillon Dumesnil
6b16fcd9b3 AA-393: Update Next Section Logic
Inside content_highlights.py, we had code to calculate due dates
for when there isn't graded content, but we could only reach that
code path if the user had an assignment with a due date at the
target date. Now we will check for all learners who could be in
range of having an update and let the code in content_highlights.py
decide if a highlight should be sent
2020-10-30 15:02:03 -04:00
Dillon Dumesnil
96e83de1e5 AA-393: Add additional logging to CourseNextSectionUpdate
We have some helpful exception messages, but then we swallow them
and only log a generic message. Now we will log both!
2020-10-28 17:12:33 -04:00
Calen Pennington
f30d492164 Work around celery changes to class-based-task registration 2020-10-16 13:02:41 -04:00
Calen Pennington
f98eed972c Register class-based tasks used by the schedules app 2020-10-14 15:30:07 -04:00
Tim McCormack
705ad07524 A few other "metric" names in files touched in previous renaming PRs 2020-09-25 19:11:30 +00:00
Tim McCormack
ba9ee4e151 ARCHBOM-1494: Refer to custom attributes, not metrics, especially with edx-django-utils (#25010)
This uses the new names introduced in edx-django-utils
3.8.0 (edx/edx-django-utils#59), which we're already using, as
well as updating a few other locations where we incorrectly refer
to New Relic custom metrics instead of custom attributes.

Includes a couple of unrelated lint fixes in a file I modified.
2020-09-18 13:33:50 +00:00
Régis Behmo
307457a255 Simplify hack to obtain waffle module names
Instead of going up the stacktrace to find the module names of waffle
flags and switches, we manually pass the module __name__ whenever the
flag is created. This is similar to `logging.getLogger(__name__)`
standard behaviour.

As the waffle classes are used outside of edx-platform, we make the new
module_name argument an optional keyword argument. This will change once
we pull waffle_utils outside of edx-platform.

Note that the module name is normally only required to view the list of
existing waffle flags and switches. The module name should not be
necessary to verify if a flag is enabled. Thus, maybe it would make
sense to create a `add` class methor similar to:

    class WaffleFlag:
        @classmethod
        def add(cls, namespace, flag, module):
            instance = cls(namespace, flag)
            cls._class_instances.add((instance, module))
2020-09-14 09:30:24 +02:00
Nicholas D'Alfonso
e9e85d05c1 AA-282 course emails date sync
- send course emails to users based on whichever date is later,
  sedule start date or course start date.  This addresses the
  scenario when a user enrolls in a self paced course before it
  has actually started.
2020-08-17 16:01:21 -04:00
Manjinder Singh
c76ed6ae45 Extracting plugin app from edx-platform (#24678)
* Moving plugins infrastructure to edx-django-utils
This PR extracts the code that enables plugins in edx-platform and puts it in edx-django-utils. This is done to allow other IDAS to add plugin functionality.
2020-08-12 07:48:53 -04:00
Robert Raposa
77e490f057 ARCHBOM-1305: remove deprecated flag_undefined_default (#24426)
This is the final step in removing the deprecated
flag_undefined_default as explained by the following ADR:
https://github.com/edx/edx-platform/blob/master/openedx/core/djangoapps/waffle_utils/docs/decisions/0001-refactor-waffle-flag-default.rst

Notes:

* All uses of flag_undefined_default=False were always
  supposed to have been no-ops.
* All uses of flag_undefined_default=True that are removed
  in this PR have been replaced by migrations in past PRs.
* The temporary metric temp_flag_default_used id no longer
  reporting any data.

ARCHBOM-1305
2020-07-09 09:31:31 -04:00
Aarif
27480cdd2f Removed deprecated future imports 2020-06-23 18:51:43 +05:00
Michael Terry
557079042f Guard highlights against null module
Sometimes a course module will not exist and was causing exceptions
in our weekly highlights mail code. This will hopefully guard against
that a bit better.
2020-06-12 14:57:09 -04:00
Michael Terry
c520fe8f19 PROD-1633: fix highlights error case
When calculating course highlights, if we didn't manage to get
a course module, we were previously throwing an exception.
Handle that more gracefully.
2020-06-09 11:05:02 -04:00
Jeff LaJoie
5e6814c442 Enables weekly highlights job for relative dates 2020-06-03 12:07:56 -04:00
Waheed Ahmed
c7f4e16470 Fix XSS lint issues for course_cta_text
PROD-1602
2020-05-21 12:51:07 +05:00
Calen Pennington
76789e5a0d [AA-139] Record schedule updates to the history table when granting extensions 2020-05-14 15:56:13 -04:00
Michael Terry
3f2b2da22b Don't assume due dates on sections
The content highlights code assumed due dates existed on all
sections. But we recently broke that assumption. So now we
recalculate the spread of sections across the expected duration
ourselves rather than rely on due dates.
2020-05-14 09:26:49 -04:00
Jeff LaJoie
75f60af418 Adds more logging to course updates task 2020-05-13 08:37:44 -04:00
adeelehsan
5f26cde55f Merge pull request #23969 from edx/aehsan/PROD-1579/fixed_quality_violation
Fixed  xss lint violations
2020-05-13 06:39:01 +05:00
adeelehsan
3da5144fee Fixed python-wrap-html
PROD-1579
2020-05-13 06:12:30 +05:00
Jeff LaJoie
c180070a9a Fixes serialization of course key for celery in course updates command 2020-05-12 09:02:49 -04:00
Jeff LaJoie
c87269956a Changes type of objects that get serialized, removes a problematic log statement 2020-05-08 08:39:03 -04:00
Jeff LaJoie
4f32e5728b Merge pull request #23600 from edx/jlajoie/AA-67
AA-67: New resolver logic for weekly highlights
2020-05-06 09:31:39 -04:00
Simon Chen
262574b815 Move all the upgrade display logic into courseware.utils 2020-05-05 17:54:22 -04:00
Jeff LaJoie
542905bee4 AA-67: Adds in new resolver logic for Weekly Highlights to learners 2020-05-05 10:32:18 -04:00
zia.fazal@arbisoft.com
f70390d70f Added more info to log in SSO request/response flow
Added more info to log in SSO request/response flow
Fixed django admin links on model's link fields which are broken due to django 2.2 upgrade.
ENT-2798

Fixed quality violations and unit test

Fix xsscommitlint violation

Fixed pylint violation
2020-04-20 14:38:51 +05:00
Cory Lee
d0c3f16c2c DENG-17 Make schedules and schedulehistory the same (#23419) 2020-03-17 14:40:04 -04:00