Update the VideoModule to publish a completion event when the player
reaches 95% complete, and submit a BlockCompletion when that event
occurs.
OC-3091
MCKIN-5897
In the absence of an EDX_PLATFORM_VERSION OS env variable, we used to
calculate the current version by looking at the current git revision of
the edx-platform repo. This was an expensive calculation (~7% of startup
costs). It also turns out that at some point we stopped setting that env
variable anywhere, so it always fell back to recalculating it.
With this commit, we'll start reading the code version from the env JSON
files, and fall back to "unknown" rather than doing the dealer.git call.
The LMS and edx-enterprise currently communicate via REST APIs, even
though they are all running within the same service.
Currently API URLs are constructed using LMS_ROOT_URL, but that is
problematic on some systems where the external LMS_ROOT_URL is not
accessible from the private network, or routing internal requests via
the external URL is not desireable.
This patch introduces a new setting variable LMS_INTERNAL_ROOT_URL which
defaults to the value of LMS_ROOT_URL for backwards compatibility.
The LMS and edx-enterprise will use LMS_INTERNAL_ROOT_URL to construct
API URLs instead of LMS_ROOT_URL.
all dirs must now go into COMPREHENSIVE_THEME_DIRS.
Move comprehensive theming setup section out of startup.py and into
settings files using new 'derived' functionality.
Add 'derive_settings' at the end of all top-level Django settings files.
Move validation of comprehensive theming settings into new apps.py
theming file.
Split theming code into code safe to run before settings are initialized
-and- after settings are initialized.
This makes it possible to refer to multiple book from a single app.
This also means that Open edX branches will be able to pass bok-choy
tests (at least if the books have already been built.)
These changes unify four different approaches to JWT creation, moving the core of the AccessTokenView to a general-purpose JwtBuilder class. This utility class defaults to using the system's JWT configuration, but it will allow overriding of the signing key and audience claim to support those clients which still require this. Part of ECOM-4566.